Prerequisites
Parameter name | Parameter value |
---|---|
Ifi id | 304876 |
API endpoint | https://fusion.gw.zetapay.in/api/v1 |
Access token | {{token}} |
Bundle id | {{BundleID}} |
Simulator for card payments | https://prod-card-simulator.gw.zetapay.in/ |
Funding Account ID | {{FundingAccountID}} |
Vbo id | {{VboID}} |
cardSkuIDs | {{SkuID} |
About Fusion
Fusion is an API-based Platform-as-a-Service (PaaS) offering. It enables fintechs to build and manage financial products for unique use-cases. Fusion offers seamless integration with banks, payment networks, card printers, push servers, and several other services.
Fusion APIs solve many use-cases like customer loyalty cards, employee benefits, corporate gifting, expense management, merchant payouts, just-in-time account funding, and so on.
Get instant access to the complete financial environment via simple and powerful API integrations with Fusion.
Pre-requisites
- Access token to be embedded as a header in
X-Zeta-AuthToken
. - The system will not take in requests unless this auth token is passed as part of the header.
- The API endpoint that needs to be called for testing is https://fusion.gw.zetapay.in/api/v1.
- There are several steps to do if you want to orchestrate a user journey for a fintech user on Zeta’s system. We will give you sample curls throughout the document to go through the journey points as mentioned below.
- For all the following APIs, invocation has to be driven through the issuer (or the bank). In this case, fintech has to use a static, assigned
IFI id
of304876
. - Also, for most of the APIs you can use either postman or curl. We have provided curl examples for now in the documentation.
- Mandatory Fields Highlighted Colour.
- Response used in other API Highlighted Colour.
Issuance of Bundle
Bundle is used to issue account product & payment product to the account holder. Bundle can be issued in the following ways:
Issue Bundle (Single Account & Payment Product)
Bundles are issued to the end users of VBO via the issueBundle API. Issue Bundle API is used to issue an account product & payment product. This API will create one account product and payment product. Below are the list of mandatory parameters that need to be added in the request body:
Parameters | Description |
---|---|
X-Zeta-AuthToken | It should be same as mentioned in the prerequisite table. |
ifiID | Unique identifier of the IFI. |
bundleID | Pass the bundleID as provided in pre-requisite table. |
accountHolderID | ID of the Account Holder to whom the Account is being issued.(individualID). |
name | Name of the issued Bundle. |
phoneNumber | Phone number. |
curl --location --request POST 'https://fusion.gw.zetapay.in/api/v1/ifi/304876/bundles/502cb813-8ccb-49ec-8e32-63a95f8fb6e8/issueBundle' \
--header 'X-Zeta-AuthToken: {{token}}' \
--header 'Cookie: {{Cookie}}' \
--data-raw '{
"accountHolderID": "8f481b75-afff-4ef2-ab9b-97b3e08fb17c",
"name": "VBO_bundle_01",
"phoneNumber": "+919843543897"
}'
{
"requestID": "81f8c12e-2980-4233-8dca-7fa0db5b2b2d",
"accounts": [
{
"bundleID": "502cb813-8ccb-49ec-8e32-63a95f8fb6e8",
"accountHolderID": "8f481b75-afff-4ef2-ab9b-97b3e08fb17c",
"accountID": "dc97c156-1fed-44c0-a7e4-5158f1fac042"
}
],
"paymentInstruments": [
{
"bundleID": "502cb813-8ccb-49ec-8e32-63a95f8fb6e8",
"resourceID": "1f57ea91-6dc2-40cf-9a55-e5fc2c124524",
"status": "ACTIVE",
"targetAccount": "account://dc97c156-1fed-44c0-a7e4-5158f1fac042"
}
]
}
The following parameters will be received in response & will be used in further APIs.|Parameters|API Involved| |———-|————| |accountID|issuePaymentProduct to issue payment products| |resourceID|getResource API to fetch the details of Form Factor|
issueAccountProduct (Multiple Account Product)
This API is used to issue multiple accounts to the account holder. Below are the list of mandatory parameters that need to be added in the request body:
Parameters | Description |
---|---|
X-Zeta-AuthToken | It should be same as mentioned in the prerequisite table. |
ifiID | Unique identifier of the IFI. |
bundleID | Pass the bundleID as provided in pre-requisite table. |
requestID | Unique identifier for each request. |
accountHolderID | ID of the Account Holder to whom the Account is being issued.(individualID) |
accountProductID | This is fetched from getBundle API. |
name | Any name can be given to the accounts. Ex: Parent_Current & Parent_Savings . |
curl --location --request POST 'https://fusion.gw.zetapay.in/api/v1/ifi/304876/bundles/502cb813-8ccb-49ec-8e32-63a95f8fb6e8/issueAccountProducts' \
--header 'X-Zeta-AuthToken: {{token}}' \
--header 'Cookie: {{Cookie}}' \
--data-raw '{
"requestID": "issue_account_random11",
"accountHolderID": "8f481b75-afff-4ef2-ab9b-97b3e08fb17c",
"issueAccountArtifactRequests": [
{
"accountProductID": "1966ef63-5d02-4f3f-aa32-f9c7146f3831",
"name": "Parent_current"
},
{
"accountProductID": "1966ef63-5d02-4f3f-aa32-f9c7146f3831",
"name": "Parent_savings"
}
]
}'
[
{
"bundleID": "502cb813-8ccb-49ec-8e32-63a95f8fb6e8",
"accountHolderID": "8f481b75-afff-4ef2-ab9b-97b3e08fb17c",
"accountID": "c934cbe4-df6e-44f2-8fe0-2ac7e7767262"
},
{
"bundleID": "502cb813-8ccb-49ec-8e32-63a95f8fb6e8",
"accountHolderID": "8f481b75-afff-4ef2-ab9b-97b3e08fb17c",
"accountID": "1cd911fd-0894-4aed-880d-a7124a5bbe4a"
}
]
The following parameters will be received in response & will be used in further APIs.|Parameters|Description| |———-|———–| |accountID|This is a unique identifier for the accounts that are created. (In above response we have 2 accountID as we have issued 2 accounts to single Account Holder Ex - Parent_current and Parent_savings)|
issuePaymentProduct (Multiple Payment Product)
This API is used to create multiple payment products of type card and Phone no to the account holder. Below are the list of mandatory parameters that need to be added in the request body:
Parameters | Description |
---|---|
X-Zeta-AuthToken | It should be same as mentioned in the prerequisite table. |
ifiID | Unique identifier of the IFI. |
bundleID | Pass the bundleID as provided in pre-requisite table. |
accountHolderID | ID of the Account Holder to whom the Account is being issued.(individualID). |
requestID | Unique identifier for each request. |
targetAccountID | Get this information from issuebundle API (In case want to associate card with the single account). For multiple account fetch this from issuePaymentProducts API (in case wants to associate cards with multiple account). |
paymentProductID | This is fetched from getBundle API. |
phoneNumber | User needs to provide a contact number that he wants to associate with cards. |
curl --location --request POST 'https://fusion.gw.zetapay.in/api/v1/ifi/304876/bundles/502cb813-8ccb-49ec-8e32-63a95f8fb6e8/issuePaymentProducts' \
--header 'X-Zeta-AuthToken: {{token}}' \
--header 'Cookie: {{Cookie}}' \
--data-raw '{
"requestID": "issue_payment_product_random15",
"accountHolderID": "8f481b75-afff-4ef2-ab9b-97b3e08fb17c",
"issuePaymentProductRequests": [
{
"targetAccountID": "dc97c156-1fed-44c0-a7e4-5158f1fac042",
"paymentProductID": "1ca677a1-0b8a-4d55-b2ee-d91fbec21fab",
"phoneNumber": "+919818413422",
"attributes": {}
},
{
"targetAccountID": "dc97c156-1fed-44c0-a7e4-5158f1fac042",
"paymentProductID": "1ca677a1-0b8a-4d55-b2ee-d91fbec21fab",
"phoneNumber": "+919818413522",
"attributes": {}
}
]
}'
[
{
"bundleID": "502cb813-8ccb-49ec-8e32-63a95f8fb6e8",
"resourceID": "399c7d4e-c941-4ad4-ab6c-e6af7690b2c0",
"targetUri": "account://dc97c156-1fed-44c0-a7e4-5158f1fac042",
"status": "ACTIVE"
},
{
"bundleID": "502cb813-8ccb-49ec-8e32-63a95f8fb6e8",
"resourceID": "4316daa9-1d61-48a1-a906-9a7528cfd03c",
"targetUri": "account://dc97c156-1fed-44c0-a7e4-5158f1fac042",
"status": "ACTIVE"
}
]
The following parameters will be received in response & will be used in further APIs.|Parameters|Description| |———-|———–| |resourceID|Used in Get Resource API to fetch FFID.|
Get Bundles
Bundles combine Account Products & Payment products.
The Get bundle API will fetch the details of Account products & Payment products only if a bundle is issued to an account holder.
Below are the list of mandatory parameters that need to be added in the request body:
Parameters | Description |
---|---|
X-Zeta-AuthToken | It should be same as mentioned in the prerequisite table. |
ifiID | Unique identifier of the IFI. |
bundleID | Pass the bundleID as provided in pre-requisite table. |
The curl below will give you 2 account bundles. One of these bundles needs to be used for the personal account/wallet of the user.
curl --location --request GET 'https://fusion.gw.zetapay.in/api/v1/ifi/304876/bundles/502cb813-8ccb-49ec-8e32-63a95f8fb6e8' \
--header 'X-Zeta-AuthToken: {{token}}' \
--header 'Cookie: {{cookie}}'
{
"id": "502cb813-8ccb-49ec-8e32-63a95f8fb6e8",
"ifiID": 304876,
"vboID": "ea4f06a3-6b9f-4948-bc75-e4bdb4d6cc9b",
"name": "VBOUAT Bundle(GPR Min KYC With Pan)",
"accountProducts": [
{
"id": "1966ef63-5d02-4f3f-aa32-f9c7146f3831",
"productName": "GPR_MIN_KYC_WITH_PAN_UAT",
"description": "",
"productID": "1678556640324530811",
"type": "ACCOUNT",
"programIDs": "",
"ifiID": 304876,
"attributes": {}
}
],
"paymentProducts": [
{
"id": "1ca677a1-0b8a-4d55-b2ee-d91fbec21fab",
"productName": "PAYMENT_PRODUCT_VBOUAT",
"description": "PAYMENT_PRODUCT_VBOUAT",
"productID": "f19883e7-c917-4732-a67d-1896b2a38d8b",
"type": "PAYMENT",
"programIDs": "",
"ifiID": 304876,
"attributes": {}
}
],
"status": "active",
"attributes": {},
"createdAt": "Nov 23, 2020 11:27:14 AM",
"updatedAt": "Nov 23, 2020 11:27:14 AM",
"shortCode": "BUNINJU01"
}
The following parameters will be received in response & will be used in further APIs.|Parameters|API Involved| |———-|————| |Id (accountProducts, paymentProducts)| issueAccountProduct, issue payment product (to issue multiple accounts and payments).| productID (accountProducts, paymentProducts)| issueAccountProduct, issue payment product (to issue multiple accounts and payments).|