- Created by user-8f2bd, last modified by user-5c3b0 on Jul 21, 2020
Introduction
API reference guide contains technical reference information for RESTful APIs in accordance with E-com payment flow, App2App and Auto-Debit payment flows. You can make use of below APIs during a payment scenario. This section explains about all RESTful operations, including their request and response parameters.
Payment exceptions occur when an API operation fails to process a request payload. See Error Codes to know more about exception response codes.
POST Create a Transaction
This operation enables you to create a transaction.
Functional Behaviour
POST | /v1.0/zeta/transactions |
Input Details
Input Parameters
Request Header
Request Sample
Parameter | Description |
---|---|
apiKey (mandatory) | Unique identifier provided to requester during onboarding. This parameter is required to access the operation. |
Content-Type (mandatory) | The MIME type for data must be set to application/json. |
requestId | Unique transaction identifier generated by the requester. Zeta will reject a duplicate transaction ID. |
sourceId (optional) | Unique identifier for the saved payment source when transaction is created. Use this parameter to allow customer to choose from saved sources when completing a transaction. |
amount | Transaction value in Rupees. Possible value supported for currencies: INR |
merchantInfo | Information of the merchant (payee) for which payment is requested. mid: merchant ID given by Zeta. tid: terminal ID given by Zeta. |
purposes | The purpose of transaction. Each purpose should have amount (in the base currency of transaction). Possible values: "FOOD", "FUEL". |
failureUrl | Requester’s URL to which Zeta will redirect on failed transaction authorization. |
successUrl | Requester’s URL to which Zeta will redirect on successful transaction authorization. |
{ "apiKey" : "w9e75yifheq09tyehqriofhy0q349htorehtlGJKHu095338kehqo" "Content-Type" : "application/json" }
{ "requestId": "req_spar_vbdjkahffoasdh874627wqufid", "sourceId": "src_wqe47hxfjksor89y4", "amount": { "currency": "INR", "value": "20.00" }, "merchantInfo": { "aid": "sodexo", "mid": "usdfhaki879yh", "tid": "56273158bj", }, "purposes": [ { "purpose": "FOOD", "amount": { "currency": "INR", "value": "20.00" } } ], "failureUrl": "http://merchant-site/failed.php", "successUrl": "http://merchant-site/success.php" }
Output Details
Output Parameters
Response Sample
Parameters | Description |
---|---|
redirectUserTo | URL to which requester redirects user to complete authorization of transaction. The redirection returns an HTML page which collects the user’s vector (phoneNo, CardDetails) along with authentication details (PIN, password, OTP). In cases where sourceId is already passed while creating a transaction, user’s vectors are not collected and only authentication details are collected. After authorization Zeta redirects back to requester’s success/failure URL. |
requestId | Same as in request payload. |
transactionId | Transaction ID generated by Zeta. |
transactionState | 'WAITING_FOR_CONSENT' OR 'WAITING_FOR_SOURCE'. |
{ "transactionId": "txn_hfsadh98iadsofi", "requestId": "req_spar_vbdjkahffoasdh8746", "amount": { "currency": "INR", "value": "20.00" }, "transactionState": "WAITING_FOR_CONSENT", "sourceId": "src_iwuehy89yhlfkjfd", "redirectUserTo": "https://ecom.zetaapps.in/v1.0/zeta/transactions/initiate?q=8o3769houfsdo9" }
Error Codes
Possible error codes are - ER000, ER007, ER011, ER012, ER013, ER014, ER015, ER016, ER017, ER019, ER024.
For more details, see Error Codes.
POST Create Transaction with SourceInfo
This operation enables you to create a transaction using source details like phone number or card details. This enables a requester to collect the source details on their own domain and later get the authorization done on Zeta’s ACS page.
Functional Behaviour
POST | /v1.0/zeta/transactions/createWithSourceInfo |
Input Details
Input Parameters
Request Header
Request Sample
Parameter | Description |
---|---|
apiKey (mandatory) | Unique identifier provided to requester during onboarding. The parameter must be provided while accessing the operation. |
Content-Type (mandatory) | The MIME type for data must be set to application/json. |
requestId | Unique transaction identifier generated by the requester. Zeta will reject a duplicate transaction ID. |
sourceInfo | Source used for a transaction can be of various types (CARD, PHONE_NUMBER). Currently, the only allowed source type for this mode of transaction is PHONE_NUMBER. |
amount | Transaction value in Rupees. Possible value supported for currencies: INR |
merchantInfo | Information of the merchant (payee) for which payment is requested. mid: merchant ID given by Zeta. tid: terminal ID given by Zeta. |
purposes | The purpose of transaction. Each purpose should have amount (in the base currency of transaction). Possible values: "FOOD", "FUEL". |
failureUrl | Requester’s URL to which Zeta will redirect on failed transaction authorization. |
successUrl | Requester’s URL to which Zeta will redirect on successful transaction authorization. |
permissions | Requester needs to take consent for these permissions from the user on their domain and pass in this request. SAVE_FOR_FUTURE: With this permission, a GET_BALANCE: With this permission, balance (accountBalances) is returned in GetSource API. |
{ "apiKey" : "w9e75yifheq09tyehqriofhy0q349htorehtlGJKHu095338kehqo" "Content-Type" : "application/json" }
{ "merchantInfo": { "mid": "137953", "tid": "1_1", "aid": "zeta_1" }, "sourceInfo": { "sourceType": "PHONE_NUMBER", "phoneNumber": "+918xxxxxxxx5" }, "amount": { "currency": "INR", "value": "0.01" }, "purposes": [ { "amount": { "currency": "INR", "value": "0.01" }, "purpose": "FOOD" } ], "requestId": "test_2_76433395_145", "permissions": [ "SAVE_FOR_FUTURE", "GET_BALANCE" ], "failureUrl": "http://merchant-site/failed.php", "successUrl": "http://merchant-site/success.php" }
Output Details
Output Parameters
Response Sample
Parameters | Description |
---|---|
requestId | Same as in request payload. |
amount | Same as in request payload. |
transactionState | 'WAITING_FOR_CONSENT' OR 'WAITING_FOR_SOURCE'. |
redirectUserTo | URL where requester redirects user to complete authorization of transaction. The redirection returns an HTML page which collects the user’s vector (phoneNo, CardDetails) along with authentication details (PIN, password, OTP). In cases where sourceId is already passed while creating a transaction, user’s vectors are not collected and only authentication details are collected. After authorization Zeta redirects back to requester’s success/failure URL. |
{ "transactionId": "txn_hfsadh98iadsofi", "requestId": "req_spar_vbdjkahffoasdh8746", "amount": { "currency": "INR", "value": "20.00" }, "transactionState": "WAITING_FOR_CONSENT", "redirectUserTo": "https://ecom.zetaapps.in/v1.0/zeta/transactions/initiate?q=8o32hjsfad93" }
Error Codes
Possible error codes are - ER000, ER007, ER011, ER012, ER013, ER014, ER015, ER016, ER017, ER019, ER024, ER047.
For more details, see Error Codes.
POST Cancel a Transaction
This operation enables you to cancel a transaction. A transaction can be cancelled only before the user attempts to authorize it. Transactions in any of the following states can be cancelled:
- WAITING_FOR_SOURCE
- WAITING_FOR_CONSENT
Use Case
The merchant may wish to cancel a transaction in the following scenarios:
- If the merchant wishes to give a time limit to the user to complete the transaction and the transaction is not completed within that time frame, then the merchant can check the state of the transaction and cancel the same.
- If the merchant provides a back button to user while they are within Zeta Payment context, then the user should be shown that going back will cancel their payment and then call the Cancel a Transaction API to gracefully conclude the transaction.
Functional Behaviour
POST | /v1.0/zeta/transactions/{transactionId}/cancel |
Input Details
Input Parameters
Request Header
Parameter | Description |
---|---|
apiKey | Unique identifier provided to requester during onboarding. The parameter must be provided while accessing the operation. |
Content-Type (mandatory) | The MIME type for data must be set to application/json. |
{ "apiKey" : "w9e75yifheq09tyehqriofhy0q349htorehtlGJKHu095338kehqo" "Content-Type" : "application/json" }
Output Details
Output Parameters
Response Sample
Parameters | Description |
---|---|
cancellationStatus | SUCCESS, FAILED. |
reason | Reason in case of cancellation failure. |
{ "transactionId" : "txn_hfsadh98iadsofi", "cancellationStatus" : "SUCCESS", "reason" : null }
Error Codes
Possible error codes are - ER000, ER007, ER008, ER010, ER023.
For more details, see Error Codes.
GET Get Transaction Details
This operation enables you to retrieve the transaction details. This API should be used only for Purchase transactions and not for Refund transactions.
Functional Behaviour
GET | /v1.0/zeta/transactions/{transaction_id} /v1.0/zeta/transactions/request_id/{request_id} |
Input Details
Input Parameters
Request Header
Parameter | Description |
---|---|
apiKey (mandatory) | Unique identifier provided to requester during onboarding. The parameter must be provided while accessing the operation. |
Content-Type (mandatory) | The MIME type for data must be set to application/json. |
{ "apiKey" : "w9e75yifheq09tyehqriofhy0q349htorehtlGJKHu095338kehqo" "Content-Type" : "application/json" }
Output Details
Output Parameters
Response Sample
Parameters | Description |
---|---|
transactionState | WAITING_FOR_SOURCE, WAITING_FOR_CONSENT, CANCELLED, CANCELLED_BY_USER_AGENT, UNAUTHORIZED, REFUND_INITIATED, REFUND_FAILED, REFUND_COMPLETED, REFUND_DROPPED |
transactionReceipt | Transaction receipt object with receiptID, payerInfo, payeeInfo and other details. |
{ "transactionId": "txn_hfsadh98iadsofi", "requestId": "req_spar_vbdjkahffoasdh8746", "amount": { "currency": "INR", "value": "21" }, "purposes": [ { "purpose": "FOOD", "amount": { "currency": "INR", "value": "21" } } ], "transactionState": "AUTHORIZED", "failureReason" : null, "sourceId": "src_iwuehy89yhlfkjfd", "requestTime": "1505637992486", "transactionReceipt": { "authorisedAmount": { "amount": "21", "currency": "INR" }, "debits": [ { "ifi": 156699, "postingID": "852730", "value": { "amount": "20", "currency": "INR" }, "productType": "Meal" }, { "ifi": 156699, "postingID": "852731", "value": { "amount": "1", "currency": "INR" }, "productType": "Meal" } ], "credits": [ { "ifi": 156699, "postingID": "4254095", "value": { "amount": "21", "currency": "INR" } } ], "receiptID": 58275009977, "payeeInfo": { "name": "Mountain Trail Foods P", "location": "Bangalore", "type": "EXTERNAL_BUSINESS" }, "payerInfo": { "imageURL": "", "name": "Archit Verma", "type": "ZETA_INDIVIDUAL" }, "authorisationTime": 1505637992488 } }
Error Codes
Possible error codes are - ER000, ER007, ER010, ER013, ER017, ER019.
For more details, see Error Codes.
POST Refund a Transaction
The operation enables you to refund partial or full amount for a successful transaction.
Functional Behaviour
POST | /v1.0/zeta/transactions/refund |
Input Details
Input Parameters
Request Header
Request Sample
Parameter | Description |
---|---|
amount | Total or partial amount to be refunded. |
Content-Type (mandatory) | The MIME type for data must be set to application/json. |
requestId | Reference ID for the refund request. It is unique across transactions. |
transactionId | Transaction ID returned by Zeta for original purchase transaction. |
{ "apiKey" : "w9e75yifheq09tyehqriofhy0q349htorehtlGJKHu095338kehqo" "Content-Type" : "application/json" }
{ "requestId" : "requestIdStage10000026", "amount" : { "currency" : "INR", "value" : "6.00" }, "transactionId" : "txn_69a2f3a5-0afb-46a3-86d2-1ec62881e067", "purposes" : [ { "purpose" : "FOOD", "amount" : { "currency" : "INR", "value" : "6.00" } } ] }
Output Details
Output Parameters
Response Sample
Parameters | Description |
---|---|
requestId | Request ID echoed back from the request payload. |
purchaseTransactionId | Purchase transaction ID echoed back from the request payload. |
refundTransactionId | Refund transaction ID generated by Zeta for the requested refund. |
{ "requestId": "requestIdStage10000026", "purchaseTransactionId": "txn_28802c2f-2943-4bfc-bb87-a70dfbd936de", "refundTransactionId": "txn_f2a7802c-ef84-43c3-8615-5f706b995c23", }
Error Codes
Possible refund-related error codes are - ER041, ER042.
For more details, see Error Codes.POST Charge Transaction with Authorization V1
This operation enables you to make a transaction request by passing a Payment Authorization which is obtained using the Request app2app authorization API.
Functional Behaviour
POST | /v1.0/zeta/transactions/chargeWithAuth |
Input Details
Input Parameters
Request Header
Request Sample
Parameter | Description |
---|---|
apiKey (mandatory) | Unique identifier provided to requester during onboarding. This parameter is required to access the operation. |
Content-Type (mandatory) | The MIME type for data must be set to application/json. |
requestId | Unique transaction identifier generated by the requester. Zeta will reject a duplicate transaction ID. |
sourceId (optional) | Unique identifier for the saved payment source when transaction is created. Use this parameter to allow customer to choose from saved sources when completing a transaction. |
{ "apiKey" : "w9e75yifheq09tyehqriofhy0q349htorehtlGJKHu095338kehqo" "Content-Type" : "application/json" }
{ "requestId": "req_spar_vbdjkahffoasdh874627wqufid", "sourceId": "src_wqe47hxfjksor89y4", "amount": { "currency": "INR", "value": "20.00" }, "merchantInfo": { "aid": "sodexo", "mid": "usdfhaki879yh", "tid": "56273158bj", }, "purposes": [ { "purpose": "FOOD", "amount": { "currency": "INR", "value": "20.00" } } ], "failureUrl": "http://merchant-site/failed.php", "successUrl": "http://merchant-site/success.php" }
Output Details
Output Parameters
Response Sample
Parameters | Description |
---|---|
redirectUserTo | URL to which requester redirects user to complete authorization of transaction. The redirection returns an HTML page which collects the user’s vector (phone No, Card Details) along with authentication details (PIN, password, OTP). In cases where sourceId is already passed while creating a transaction, user’s vectors are not collected and only authentication details are collected. After authorization Zeta redirects back to requester’s success/failure URL. |
requestId | Same as in request payload. |
transactionId | Transaction ID generated by Zeta. |
transactionState | 'WAITING_FOR_CONSENT' OR 'WAITING_FOR_SOURCE'. |
{ "transactionId": "txn_hfsadh98iadsofi", "requestId": "req_spar_vbdjkahffoasdh8746", "amount": { "currency": "INR", "value": "20.00" }, "transactionState": "WAITING_FOR_CONSENT", "sourceId": "src_iwuehy89yhlfkjfd", "redirectUserTo": "https://ecom.zetaapps.in/v1.0/zeta/transactions/initiate?q=8o3769houfsdo9" }
Error Codes
Possible error codes are - ER000, ER007, ER011, ER012, ER013, ER014, ER015, ER016, ER017, ER019, ER024.
For more details, see Error Codes.
POST Charge Transaction with Authorization V2
This operation allows you to automatically debit funds from the user, provided the user has given auto-debit permissions in Save a Source API.
Functional Behaviour
POST | /v2.0/zeta/transactions/chargeWithAuth |
Input Details
Input Parameters
Request Header
Request Sample
Parameter | Description |
---|---|
apiKey (mandatory) | Unique identifier provided to requester during onboarding. This parameter is required to access the operation. |
Content-Type (mandatory) | The MIME type for data must be set to application/json. |
requestId | Unique transaction identifier generated by the requester. Zeta will reject a duplicate transaction ID. |
amount | Transaction value in Rupees. Possible value supported for currencies: INR |
merchantInfo | Information of the merchant (payee) for which payment is requested. mid: merchant ID given by Zeta. tid: terminal ID given by Zeta. |
purposes | The purpose of transaction. Each purpose should have amount (in the base currency of transaction). For example, "FOOD", "FUEL" and so on. |
validUntil | Timestamp until the requested authorization key is valid. Value must be in Epoch time format. |
authorization | Contains details of requested amount like currency and value to authorize. |
authorizationType | Pre-defined type of the requested authorization. |
{ "apiKey" : "EbWfNeNaB08u8aTEVYC4WEXCoLhxsEkPQMbAYlW03ecegquilaFMEt47z7EiX6RB" "Content-Type" : "application/json" }
{ "requestId": "AutoDebit-15", "merchantInfo": { "aid": "zeta_1", "mid": "158127", "tid": "1_1" }, "authorizationType": "PREAUTHORIZED_AUTH", "authorization": { "request": { "amount": { "currency": "INR", "value": "0.01" }, "purposes": [ { "amount": { "currency": "INR", "value": "0.01" }, "purpose": "FOOD" } ] }, "validUntil": 1625623739555, "sourceId" : "src_232aa26d-0758-4992-9d11-498ba53cfe5e" } }
Output Details
Output Parameters
Response Sample
Parameters | Description |
---|---|
purchaseTransactionId | Transaction ID of the purchase. |
transactionState | 'WAITING_FOR_CONSENT' OR 'WAITING_FOR_SOURCE'. |
amount | Transaction value in Rupees. Possible value supported for currencies: INR |
purposes | The purpose of transaction. Each purpose should have amount (in the base currency of transaction). For example, "FOOD", "FUEL" and so on. |
{ "captureRequestId": null, "purchaseTransactionId": "txn_bca6f4f7-582b-4dba-84d6-4d88c74230b2", "purchaseRequestId": "AutoDebit-692e1", "amount": { "currency": "INR", "value": "0.01" }, "purposes": [ { "purpose": "FOOD", "amount": { "currency": "INR", "value": "0.01" } } ], "sourceId": null, "transactionState": "AUTHORIZED", "failureReason": null, "failureCode": null, "requestTime": 1566800719449, "merchantInfo": { "name": "name:287863:1", "mid": "287863", "aid": "zeta_1", "tid": "1_1" }, "transactionReceipt": { "authorisedAmount": { "currency": "INR", "value": "0.01" }, "debits": null, "credits": null, "receiptID": 1198211168769, "payeeInfo": { "name": "name:287863:1", "location": null, "type": null }, "payerInfo": null, "authorisationTime": 1566800719449 }, "retrievalReferenceNumber": null }
Error Codes
Possible error codes are - ER000, ER007, ER011, ER012, ER013, ER014, ER015, ER016, ER017, ER019, ER024.
For more details, see Error Codes.
GET Get a Source
This operation enables you to retrieve the details of a source.
Functional Behaviour
GET | /v1.0/zeta/sources/{sourceId} /v1.0/zeta/sources/{saveSourceRequestId} |
Input Details
Input Parameters
Request Header
Parameter | Description |
---|---|
apiKey (mandatory) | Unique identifier provided to requester during onboarding. The parameter must be provided while accessing the operation. |
Content-Type (mandatory) | The MIME type for data must be set to application/json. |
{ "apiKey" : "w9e75yifheq09tyehqriofhy0q349htorehtlGJKHu095338kehqo" "Content-Type" : "application/json" }
Output Details
Output Parameters
Response Sample
Parameters | Description |
---|---|
sourceId | Source ID for which details are fetched. |
sourceType | CARD, WALLET, PHONE_NUMBER. |
{ "sourceId": "src_iwuehy89yhlfkjfd", "sourceInfo" : { "sourceType" : "PHONE_NUMBER", "phoneNumber" : "+918xxxxxxxx5" } }
Error Codes
Possible error codes are - ER000, ER007, ER013, ER014, ER017, ER019.
For more details, see Error Codes.POST Has Balance
This operation enables you to check if the user has sufficient balance to make a transaction of specific amount to a specific merchant.
Use Case
Suggested to be used before directing the user to PayWithZeta option so that the merchant can ensure that the user will have sufficient balance to complete the transaction, else they can suggest a different payment option to the user.
Functional Behaviour
POST | /v1.0/zeta/sources/hasBalance |
Input Details
Input Parameters
Request Header
Request Sample
Parameter | Description |
---|---|
merchantInfo | Information of the merchant (payee) for which the user balance has to be checked for making a transaction for a specific amount. |
Content-Type (mandatory) | The MIME type for data must be set to application/json. |
amount | Amount against which user balance has to be checked. |
{ "apiKey" : "w9e75yifheq09tyehqriofhy0q349htorehtlGJKHu095338kehqo" "Content-Type" : "application/json" }
{ "merchantInfo": { "aid": "zeta_01", "mid": "usdfhaki879yh", "tid": "56273158bj", }, "sourceId" : "src_wqe47hxfjksor89y4", "amount" : { "currency": "INR", "value": "20.00" }, "purposes": [ { "purpose": "FOOD", "amount": { "currency": "INR", "value": "20.00" } } ] }
Output Details
Output Parameters
Response Sample
Parameters | Description |
---|---|
sourceId | Source ID echoed back from request payload. |
sourceInfo | Basic information about the sourceId. |
hasBalance | Indicates whether the user owning the source has sufficient balance to pay the amount mentioned in the request payload to the merchant. |
{ "sourceId": "src_iwuehy89yhlfkjfd", "sourceInfo" : { "sourceType" : "PHONE_NUMBER", "phoneNumber" : "+918xxxxxxxxx5" }, "hasBalance" : true }
Error Codes
Possible error codes are - ER000, ER007, ER013, ER014, ER017, ER019.
For more details, see Error Codes.POST Save a Source
This operation enables you to save a source.
Use Case
User can be asked to first link his Zeta account (save source) and then take him to the transaction flow.
Functional Behaviour
POST | /v1.0/zeta/sources/save |
Input Details
Input Parameters
Request Header
Request Sample
Parameter | Description |
---|---|
requestId | Generated by the requester. Should be globally unique. Zeta will reject a duplicate requestId. |
failureUrl | Requester’s URL to which Zeta will redirect on failed transaction authorization. |
Content-Type (mandatory) | The MIME type for data must be set to application/json. |
successUrl | Requester’s URL to which Zeta will redirect on successful transaction authorization. |
{ "apiKey" : "w9e75yifheq09tyehqriofhy0q349htorehtlGJKHu095338kehqo" "Content-Type" : "application/json" }
{ "requestId": "req_spar_vbdjkahffoasdh874627wqufid", "failureUrl": "http://merchant-site/cardsavefailed.php", "successUrl": "http://merchant-site/cardsavesuccess.php", "sourceInfo": { "sourceType": "PHONE_NUMBER", "phoneNumber": "+918xxxxxxxx85" }, "permissions": [ "SAVE_FOR_FUTURE", "GET_BALANCE" ] }
Output Details
Output Parameters
Response Sample
Parameters | Description |
---|---|
requestId | Request ID echoed back from request payload. |
redirectUserTo | URL where requester should redirect the user to complete the card save flow. |
{ "requestId": "req_spar_vbdjkahffoasdh8746", "redirectUserTo": "https://ecom.zetaapps.in/v1.0/zeta/transactions/initiate?q=8o32hjsfad930uklfsajdfo" }
Error Codes
Possible error codes are - ER000, ER007, ER013, ER014, ER017, ER019.
For more details, see Error Codes.This API enables you to get authorization for a given payment request. It is exposed by Zeta mobile apps and should be called via deep link.
Functional Behaviour
Zeta app deep link | Android/iOS: zeta://payAuth |
Input Details
Input Parameters
Request Sample
Parameter | Description |
---|---|
requestId | Unique transaction Request ID generated by the merchant. Zeta will reject a duplicate Transaction ID. |
Content-Type (mandatory) | The MIME type for data must be set to application/json. |
certificate | This will be shared by Zeta with the merchant during the integration process. |
merchantUA | Merchant user agent details. |
amount | Possible values supported for currencies INR for now. Value is in Rupees. |
purposes | The purpose of transaction. Each purpose should have amount (in the base currency of transaction). |
callbackUrl | This is specific to iOS applications. The callback URL where the Zeta app will return back the response of this API call. |
{ "request": { "version": "1.0", "merchantUA": "Android/NA/Spar/1.96", "requestId": "req_spar_vbdjkahffoasdh874627wqufid", "amount": { "currency": "INR", "value": "20.00" }, "purposes": [ { "purpose": "FOOD", "amount": { "currency": "INR", "value": "20.00" } } ], "logoURL": "https://s3.spar.com/logo.png", "description": "String merchants wants to show to user", "callbackUrl": "" }, "certificate": { "certID": "cert_hfasifd-hfkadjsh-fhjasdkj", "type": "PUBLIC_KEY", "issuerJID": "zetamerchant.services.olympus", "subjectJID": "zeta_1-12-3242_21321@business.zeta.in", "issuedOn": 1515430884684, "validTill": 1565430885684, "isRevoked": false, "base64EncodedPublicKey": "hfsdahifio89fafkld90sufodsaihfihhfjsadhlfidsaklfdho==", "certificateAttributes": { "name": "Spar.com", "Environment": "production", "allowedIFIs": "SDX, ZETA_ANY", "paymentTo": "137953:1:1" }, "purposeWithAttributes": { "appToApp": {} }, "headers": { "signatoryJID": "zetamerchant.services.olympus", "signature": "jkfhsadfgsdagfyisa8o908ygdskjhf890-=yisdfha" } } }
Output Details
Output Parameters
Response Sample
Parameter | Description |
---|---|
merchantUA | Merchant user agent details. Format: Platform/SDKVersion/AppId/AppVersion |
requestId | Unique transaction Request ID generated by merchant. Zeta will reject a duplicate Transaction ID. |
certificate | This will be shared by Zeta with the merchant during the integration process. |
purposes | The purpose of transaction. Each purpose should have amount (in the base currency of transaction). |
amount | Possible values supported for currencies INR for now. Value is in Rupees. |
{ "headers": { "signature": "AAGDhSwwRAIgeSIoejAq6aRWYWVqD...", "signatoryJID": "fullUserJID" }, "zetaUA": "Android/NA/Zeta/486", "version": "1.0", "request": { "version": "1.0", "merchantUA": "Android/NA/Spar/1.96", "requestId": "req_spar_vbdjkahffoasdh874627wqufid", "amount": { "currency": "INR", "value": "20.00" }, "purposes": [ { "purpose": "FOOD", "amount": { "currency": "INR", "value": "20.00" } } ], "description": "String merchants wants to show to user" }, "certificate": { "certID": "cert_hfasifd-hfkadjsh-fhjasdkj", "type": "PUBLIC_KEY", "issuerJID": "zetamerchant.services.olympus", "subjectJID": "zeta_1-137953-1_1@business.zeta.in", "issuedOn": 1515430884684, "validTill": 1565430888684, "isRevoked": false, "base64EncodedPublicKey": "hfsdahifio89fsjdhafkld90sufodsaihfihhfjsadhlfidsaklfdho==", "certificateAttributes": { "name": "Spar.com", "environment": "production", "allowedIFIs": "SDX, ZETA_ANY", "paymentTo": "137953:1:1" }, "purposeWithAttributes": { "appToApp": {} }, "headers": { "signatoryJID": "zetamerchant.services.olympus", "signature": "jkfhsadfgsdagfyisa8o908ygdskjhf890-yisdfha" } }, "issuedAt": 1515431182000, //in epoch "validUntil": 1565431182000, "authorisationId": "app2app_gfhsdgakf-fsdjkafhdiou-fhsdajfhdoial-fhjsdaibk", "hmac": "auth_jfhasdfh-fhsakjdhfo-fksajdbhk" }
Decline Codes
Auth Decline By User (300) :
Declined By User
Auth Decline By UserAgent (3XX):
Abuse Limits(301)
Repeated Request ID with same certificate(302)
Stale Request(303)
User didn’t respond in time(304)
Unsupported currency(305)
User is not logged in(306)
Invalid Request (4XX):
Invalid Cert(400)
Missing parameters(401)
Invalid Data Types for parameters(402)
Unsupported Version(403)
Related Articles
There is no content with the specified labels