Unknown macro: {hivestonebreadcrumb}
Page tree
Skip to end of metadata
Go to start of metadata

To create an Account, you need to issue Account/Payment products to an Account Holder by using Bundles as per the value offering of the fintech.
Follow the below steps to issue an Account to an Account Holder:

  1. Retrieve all Accounts
  2. Issue an Account to an Account Holder
    1. Issue an Account having single or multiple Account Product /Payment Product
    2. Issue an Account: an Account Product
    3. Issue an Account: Single or Multiple Account Products
    4. Issue an Account: Single or Multiple Payment Products

These steps are briefly explained with corresponding API request and response samples in the following sections:

Get Account

Call /bundles endpoint to retrieve all the existing Accounts available for the IFI.

Endpoint URI 

GET

/api/v1/ifi/{ifiID}/bundles

Request parameters

  • ifiID: Required. Unique identifier of the IFI.

Response parameters

  • id: ID of the Bundle retrieved.
  • ifiID: Unique identifier of the IFI.
  • vboID: Unique identifier of the fintech.
  • name: Name of the retrieved Bundle.
  • status: Status of the retrieved Bundle.
  • createdAt: Timestamp of the Bundle creation.
  • updatedAt: Timestamp of the last Bundle update.

Example

Request

Response

cURL sample
curl -X GET \
https://fusion.preprod.zeta.in/api/v1/ifi/140827/bundles \
-H 'Content-Type: application/json' \
-H 'X-Zeta-AuthToken: {{AUTH_TOKEN}}'
JSON sample
[
{
"id": "ee64c930-c06f-49cb-9443-84b132b9d4e2",
"ifiID": 140827,
"fintechID": "zeta",
"name": "Account + Payment Product Bundle",
"accountProducts": [
{
"id": "9e97fc72-d692-4c0a-bccc-ba689954d9af",
"productID": "7706229683808022627",
"type": "ACCOUNT",
"programIDs": "",
"ifiID": 140827
}
],
"paymentProducts": [
{
"id": "86da4629-9c59-45d9-9c0e-61d78ccb196f",
"productID": "baefec67",
"type": "PAYMENT",
"programIDs": "",
"ifiID": 140827
}
],
"status": "active",
"createdAt": "Nov 9, 2019 10:19:49 AM",
"updatedAt": "Nov 28, 2019 2:01:13 PM"
},
{
"id": "31c30bca-7406-44e0-8d31-26bc3ed8a1ee",
"ifiID": 140827,
"fintechID": "zeta",
"name": "Account Product Bundle",
"accountProducts": [
{
"id": "942a4cf7-3749-4919-b6cb-4a5f2d29c77c",
"productID": "4732811754742423772",
"type": "ACCOUNT",
"programIDs": "",
"ifiID": 140827
}
],
"paymentProducts": [],
"status": "active",
"createdAt": "Nov 12, 2019 11:36:32 AM",
"updatedAt": "Nov 28, 2019 2:02:06 PM"
}
]

Create an Account

Use the /issueBundle endpoint to issue an Account to Account Holder. Pass the value of ID parameter from the previous step for bundleID as shown in the following cURL sample:

Endpoint URI

POST

/api/v1/ifi/{ifiID}/bundles/{bundleID}/issueBundle

Request parameters

  • ifiID: Required. Unique identifier of the IFI.
  • bundleID: Required. ID of the Bundle being issued.
  • accountHolderID: Required. ID of the Account Holder to whom the Account is being issued.
  • name: Required. Name of the issued Bundle.
  • phoneNumber: Required. Phone number associated with the Account Holder.

Response parameters

  • bundleID: ID of the issued Bundle.
  • accountHolderID: ID of the Account Holder.
  • accountID: ID of the Account Product.
  • resourceID: ID of the Resource associated with the Payment Instrument.
  • status: Status of the issued Bundle.
  • targetAccount: If the Bundle does not have any Account Products, the targetAccountID shall be used in the payment instrument field.

Example

Request

Response

cURL sample
curl -X POST \
https://fusion.preprod.zeta.in/api/v1/ifi/140827/bundles/ee64c930-c06f-49cb-9443-84b132b9d4e2/issueBundle \
-H 'Content-Type: application/json' \
-H 'Postman-Token: c98d6562-c8ff-4bcc-ba4f-c3f103951d11' \
-H 'X-Zeta-AuthToken: {{AUTH_TOKEN}}' \
-d '{
"accountHolderID": "b23ef097-8d7e-41e9-86da-c2072db6fa25",
"name": "Bundle",
"phoneNumber": "+919191919191"
}
JSON sample
{
"accounts": [
{
"bundleID": "ee64c930-c06f-49cb-9443-84b132b9d4e2",
"accountHolderID": "8563929b-f7f0-4e2f-9891-75a412383029",
"accountID": "4cdb45da-0ae5-46bf-8aae-c0943a5aae3f"
}
],
"paymentInstruments": [
{
"bundleID": "ee64c930-c06f-49cb-9443-84b132b9d4e2",
"resourceID": "908b3067",
"status": "ACTIVE",
"targetAccount": "4cdb45da-0ae5-46bf-8aae-c0943a5aae3f"
}
]
}

Create an Account: an Account Product

You can also create an Account with a single Account Product as per the Account Holder’s requirement. Use the /issueAccount endpoint to issue a specific Account Product to an Account Holder, identified by accountHolderID. Pass the accountProductID and ID of the Bundle that the Account Product belongs to. ID of the Bundle is retrieved from the response of the /bundles endpoint.

Endpoint URI

POST

/api/v1/ifi/{ifiID}/bundles/{bundleID}/issueAccount

Request parameters

  • ifiID: Required. Unique identifier of the IFI.
  • bundleID: Required. ID of the Bundle whose Account Product is being issued.
  • accountHolderID: Required. ID of the Account Holder to whom the Account Product is being issued.
  • accountProductID: Required. ID of the Account Product being issued.
  • name: Required. Preferred name in the Account.

Example

Request

Response

cURL sample
POST /api/v1/ifi/140827/bundles/1e4b5bac-636a-47b7-8013-2f2680c5d397/issueAccount HTTP/1.1
Host: {{base_url}}
Content-Type: application/json
X-Zeta-AuthToken: {{newtoken}}
cache-control: no-cache
Postman-Token: b5e5ece4-7168-4dca-a895-6064fab1f177
{
"accountHolderID": "d9fa39df-59c2-4949-be28-cf57131f2a17",
"accountProductID": "9e97fc72-d692-4c0a-bccc-ba689954d9af",
"bundleID":"ee64c930-c06f-49cb-9443-84b132b9d4e2",
"name": "beneficiary account in test1232456"
}------WebKitFormBoundary7MA4YWxkTrZu0gW--

N/A

Create an Account: Single or Multiple Account Products

An array of Account Products are taken as request by providing accountProductID. The response returns the type and status of the Account Product. The status depends on the issuance state of the Account Product.

Endpoint URI

POST

/api/v1/ifi/{ifiID}/bundles/{bundleID}/issueAccountProducts

Request parameters

  • ifiID: Required. Unique identifier of the IFI.
  • bundleID: Required. ID of the Bundle whose Account Product is being issued.
  • requestID: Required. This is the idempotency field. ID used by fintech to identify a unique request.
  • accountHolderID: Required. ID of the Account Holder to whom the Account Product is being issued.
  • accountProductID: Required. ID of the Account Product being issued.
  • name: Required. Preferred name in the Account.

Response parameters

  • accountHolderID: ID of the Account Holder to whom the Account Product is issued.
  • accountID: ID of the issued Account Product.
  • bundleID: ID of the Bundle whose Account Product is issued.
  • name: Preferred name in the Account.
  • status: Status of the issued Account Products.
  • type: Type of Account.

Example

Request

Response

cURL sample
curl --location --request POST 'https://fusion.preprod.zeta.in/api/v1/ifi/140793/bundles/b5cb1ce2-89e3-4435-88d5-2d392e3fe938/issueAccountProducts' \
--header 'Content-Type: application/json' \
--header 'Postman-Token: 5999cf66-4b78-4684-ad73-64529cc2d9cb,ca5cfcd7-634d-4341-a3ea-7d1a16b792ba' \
--header 'X-Zeta-AuthToken: {{AUTH_TOKEN}}' \
--header 'cache-control: no-cache,no-cache' \
--data-raw '{
"requestID": "atlantis_capital_issue_account_12",
"accountHolderID": "c8e31da5-b467-4354-8877-4823730898c5",
"issueAccountArtifactRequests": [
{
"accountProductID": "f07f65b2-9048-437d-a0cc-94ad2b24c007",
"name": "Parent"
},
{
"accountProductID": "f07f65b2-9048-437d-a0cc-94ad2b24c007",
"name": "Child"
}
]
}'
JSON sample
{
"accountHolderID": "string",
"accountID": "string",
"bundleID": "string",
"id": "string",
"name": "string",
"status": "string",
"type": "string"
}

Create an Account: Single or Multiple Payment Products

An array of Payment Products are taken as request by providing paymentProductID. The response returns the type and status of the Account Product. The status depends on the issuance state of the Account Product.

Endpoint URI

POST

/api/v1/ifi/{ifiID}/bundles/{bundleID}/issuePaymentProducts

Request parameters

  • ifiID: Required. Unique identifier of the IFI.
  • bundleID: Required. ID of the Bundle whose Payment Product is being issued.
  • requestID: Required. This is the idempotency field. ID used by fintech to identify a unique request.
  • targetAccountID: Optional. If the Bundle does not have any Account Products, the targetAccountID shall be used in the payment instrument field.
  • paymentProductID: Required. ID of the Payment Product being issued.
  • phonenumber: Required. Phone number being associated with the Account.

Response parameters

  • accountHolderID: ID of the Account Holder to whom the Account Product is issued.
  • accountID: ID of the issued Account Product.
  • bundleID: ID of the Bundle whose Account Product is issued.
  • name: Preferred name in the Account.
  • status: Status of the issued Account Products.
  • type: Type of Account.

Example

Request

Response

cURL sample
curl --location --request POST 'http://localhost:8888/api/v1/ifi/140827/bundles/fe6b7566-6796-4e7e-8c81-1549a537e068/issuePaymentProducts' \
--header 'Content-Type: application/json' \
--header 'X-Zeta-AuthToken: {{AUTH_TOKEN}}' \
--data-raw '{
"requestID": "request-12566",
"accountHolderID": "e757baf5-c777-4151-bce4-4c35d30b830f",
"issuePaymentProductRequests": [
{
"targetAccountID": "f35f88dd-481c-4b0f-84b5-8be991c008ae",
"paymentProductID": "79cc92f3-d722-40b7-aae0-4b53313cfd52",
"phoneNumber": "+91017765432",
"attributes": {}
},
{
"targetAccountID": "f35f88dd-481c-4b0f-84b5-8be991c008ae",
"paymentProductID": "79cc92f3-d722-40b7-aae0-4b53313cfd52",
"phoneNumber": "+9125773447983",
"attributes": {}
}
]
}'
JSON sample
{
"accountHolderID": "string",
"accountID": "string",
"bundleID": "string",
"id": "string",
"name": "string",
"status": "string",
"type": "string"
}

On this page

Need Help?

Drop a mail at fusion-support@zeta.tech or call us on 080-6690 5995.

  • No labels