# Common object definitions
# payment
# id
stringIdentifier of the payment resource created.
# reference_id
stringIn case of referenced payment (e.g., Capture or Refund), this fields included to see which payment was referenced.
# state
stringThe state of the payment, authorization, or order transaction. The value is:
Authorised. The transaction was successfully authorised.Pending. The transaction is currently pending.Captured. The transaction has been captured.Refunded. The transaction has been refunded.Declined. The transaction has been declined.Expired. The transaction has been expired.Cancelled. The transaction has been cancelled.Voided. The transaction has been voided.Timeout. The transaction has been timeout.Deferred Refund. The transaction refund has been deferred.Flagged. The transaction has been flagged.Deferred Capture. The transaction Capture has been deferred.Card Verified. The card has been verified.
# result
objectContain result of the payment request
# intent
stringThe payment intent. Value is:
sale. Makes an immediate payment.auth. Authorizes a payment for capture later
Allowed values:
sale,auth.# payer
objectSource of the funds for this payment represented by a direct credit card.
# payee
objectA resource representing a Payee who receives the funds and fulfills the order.
# transaction
objectTransactional details including the amount and item details.
# custom
objectFree-form field for the use of clients
# create_time
datetimePayment creation time as defined in RFC 3339 Section 5.6 (opens new window).
# three_d
objectThreeD Secure details pertaining to the transaction
# capture_delay
decimalThe payment will be captured after the number of hours that you specify,
If Value is not specified and intent is Auth, then the transaction should be captured manually. If Value is specified and equal to 0 and intent is AUTH, then the transaction is captured after the default period of 7 days. If Value is specified and intent is AUTH, then the transaction is captured after the specified number of hours.
Value cannot be > 168 hours (7 days)
# delayed_capture_time
datetimePayment capture time in case the capture is delayed. (as defined in RFC 3339 Section 5.6 (opens new window).
# metadata
ArrayOf(KeyValuePair(string, string))contains additional information about the transaction
# merchant_initiated
boolFlags the payment as a merchant-initiated transaction (MIT).
# previous_payment_id
stringFor payments that use stored card details, such as subscription payments - an existing payment identifier from the subscription series.
# previous_scheme_transaction_id
stringPrevious Scheme Transaction Id as returned by the scheme. In merchant initiated transaction this will help to reference the initial payment. (Used only if the referenced payment is not done using our payment platform)
# one_dollar_retry
boolIndicates whether we retry with 1 dollar if a $0 authorization fails.
# result
# code
stringCode identifying the result on our system
# message
stringMessage related to the code
# description
stringLong description of the code identifying the result on our system
# authorisation_code
stringAuthorisation code:
When the payment is authorised successfully, this field holds the authorisation code for the payment. When the payment is not authorised, this field is empty.
Example: 58747
# cascaded
stringIndicates whether the transaction has cascaded to another acquirer
# risk_check
stringIndicate whether risk checks was enabled and performed
# redirect_url
stringWhen the payment flow requires a redirect, this contains information about the redirect URL.
# authenticate_url
stringWhen the payment flow requires an authentication via OTP, this contains information about the authentication URL.
# actions
ArrayOf(action)List of actions performed by the payment transaction and its corresponding results.
# action
# code
stringCode identifying the result on our system
# message
stringMessage related to the code
# description
stringLong description of the code identifying the result on our system
# action
stringThe name of the action performed by the payment transaction to obtain the corresponding result
# id
stringIdentifier of the payment resource created corresponding to the action performed.
# state
stringState of the payment action performed. The value is:
Authorised. The transaction was successfully authorised.Pending. The transaction is currently pending.Captured. The transaction has been captured.Refunded. The transaction has been refunded.Declined. The transaction has been declined.Expired. The transaction has been expired.Cancelled. The transaction has been cancelled.Voided. The transaction has been voided.Timeout. The transaction has been timeout.Deferred Refund. The transaction refund has been deferred.Flagged. The transaction has been flagged.Deferred Capture. The transaction Capture has been deferred.Card Verified. The card has been verified.
# Payer
# payment_type
enumPayment type being used. Value is:
CC: Credit cardAP: Alternative Payment
# payer_info
objectInformation related to the Payer.
# funding_instrument
objectFunding instrument to be used to fund the payment. The object must include either a credit_card or credit_card_token or credit_card_nonce or alternative_payment object. If the array contains more than one instrument, the payment is declined.
# payer_info
# id
stringEncrypted Payer ID.
# email
stringEmail address representing the payer. 127 characters max.
# ip
stringIP Address of the payer
# name
stringFull Name of the payer
# birth_date
stringBirth date of the Payer in ISO8601 format (yyyy-mm-dd).
# billing_address
objectBirth date of the Payer in ISO8601 format (yyyy-mm-dd).
# billing_address
# line1
stringThe first line of the address. For example, number, street, and so on.
Maximum length: 100.
# line2
stringThe second line of the address. For example, suite or apartment number.
Maximum length: 100.
# city
stringThe city name.
Maximum length: 64.
# country_code
stringtwo-character ISO 3166-1 code that identifies the country or region. Note: The country code for Great Britain is
GBand notUKas used in the top- level domain names for that country.Minimum length: 2.
Maximum length: 2.
Pattern:
^([A-Z]{2}|C2)$.# postal_code
stringThe postal code, which is the zip code or equivalent.
# state
string2 letter code for US states, and the equivalent for other countries. Required for INDIA (List of valid state for India can be found here)
# phone
objectInformation related phone number.
# phone
# country_code
stringCountry code (from in E.164 format)
# number
stringIn-country phone number (from in E.164 format). Maximum length is 25 characters.
# funding_instrument
Only one of the object described below is required:
# credit_card
objectThe credit card details. You can use this instrument to fund a payment.
# credit_card_nonce
objectThe tokenized credit card details. You can use this instrument to fund only one payment .
# credit_card_token
objectThe tokenized credit card details. You can use this instrument to fund a payment.
# alternative_payment
objectThe alternative payment details. You can use this instrument to fund a payment using an alternative payment method.
# credit_cards
arrayOf(credit_card)Array containing credit cards associated to the payer. The first one in the list is the default one.
# credit_card
# id
stringID of the credit card being saved for later use.
# number
stringThe credit card number. Value is numeric characters only with no spaces or punctuation. Must conform to the modulo and length required by each credit card type.
# expire_month
integerThe expiration month with no leading zero. Value is from
1to12.# expire_year
integerThe four-digit expiration year.
# cvv2
stringThe three- to four-digit card validation code.
# name
stringThe card holder's name as displayed on the card.
# stored
boolIndicate the origin of the card details on a full card API Call. Default : false This must be set to true for payments that use store card details (usually if you have a merchant which is PCI Compliant and they are sending you the full card details and the origin of these card details is On File)
# type
stringCredit card type. Valid types are:
visa,mastercard,discover,amex,UPI,JCB,RuPay# state
stringState of the credit card funding instrument.
# cvv_check
stringRaw CVV result received from the acquirer, where available
# avs_check
stringThe AVS result code of the payment, which provides information about the outcome of the AVS check.
# last4
stringLast 4 digit of a credit card number
# bin
stringThe Bank Identification Number of a credit card, which is the first six digits of a card number.
# is_default
boolIndicate if the card is the default one associated to a Payer.
# fingerprint
stringA string containing the credit card fingerprint.
# bin_data
objectBin data corresponding to the credit card
# bin_data
# bin
stringone time use tokenized credit card details
# country_code
stringIssuing bank country code
# country_name
stringIssuing bank country name
# bank_name
stringIssuing bank name
# card_scheme
stringCredit card scheme
# card_type
stringType of the card, DEBIT, CREDIT
# card_category
stringCategory of the card
# credit_card_nonce
# nonce
stringone time use tokenized credit card details
# name
stringThe card holder's name as displayed on the card.
# credit_card_token
# credit_card_id
stringID of credit card previously stored.
# cvv2
string3-4 digit card validation code. In case of card token the cvv is not stored in the DB but we does not omit the case where the merchant provide it to us.
# alternative_payment
# code
stringCode Identifying the alternative payment method to use.
30: Paytm31: PhonePe32: RelianceJio33: NetBanking34: UPI37: Interbank (WPAY)
# userdata
ArrayOf(KeyValuePair(string, string))Define additional userdata required to perform an alternative payment.
- NetBanking requires
bank_codeto be defined (List of valid bank codes can be find here) - UPI requires
upi_idto be defined - Interbank we have multiple provider requiring different userdata
- WPAY requires:
bank_code: Member’s bank code. (List of valid bank codes can be find here)deposit_type: Possible values defined below- 0 : member deposit
- 1 : merchant topup
deposit_channel: Possible values defined below- 1 : eBanking
- 3 : Promptpay QR
- 10 : Momo Pay
- 11 : Zalo Pay
- 12 : VNQR Pay
- 20 : VAOffline
- 22 : TrueWallet
- WPAY requires:
- NetBanking requires
# payee
# email
stringEmail Address associated with the Payee's Account.
# merchant_id
stringEncrypted Merchant account identifier for the Payee.
# transaction
# amount
objectThe amount to collect.
# type
stringDescribe the transaction type. Possible value:
- 1 : Regular
- 2 : Subscription
- 3 : MOTO
Defaulted to 1 (regular) if not provided
# mode
stringDescribe the transaction mode. Possible value:
- 1 : Non 3D
- 2 : 3D
Defaulted to 1 (regular) if not provided
# attempt_non_3d
boolDescribe if the 3Ds fails, we attempt the transaction without 3Ds.
# description
stringDescription of what is being paid for.
# items
array(item)List of items being paid for.
# shipping_address
objectThe shipping address.
# shipping_method
stringShipping method used for this payment like USPSParcel etc.
# return_url
stringURL to send payment notifications(Maximum length: 2048.)
# cancel_url
stringUrl to send payer incase payment is denied.
# invoice_number
stringinvoice number to track this payment (Maximum length: 50.)
# soft_descriptor
objectDynamic Soft descriptor used when charging this funding source.
# amount
# currency
stringThe three-character ISO-4217 currency code.
# total
stringThe total amount charged to the payee by the payer. Maximum length is 10 characters, which includes:
- Seven digits before the decimal point.
- The decimal point.
- Two digits after the decimal point.
# shipping_address
# recipient_name
stringName of the recipient at this address.
# line1
stringThe first line of the address. For example, number, street, and so on.
Maximum length: 100.
# line2
stringThe second line of the address. For example, suite or apartment number.
Maximum length: 100.
# city
stringThe city name.
Maximum length: 64.
# country_code
stringtwo-character ISO 3166-1 code that identifies the country or region.
Note: The country code for Great Britain is
GBand notUKas used in the top- level domain names for that country.Minimum length: 2.
Maximum length: 2.
Pattern:
^([A-Z]{2}|C2)$.# postal_code
stringThe postal code, which is the zip code or equivalent.
# state
string2 letter code for US states, and the equivalent for other countries.
# phone
objectInformation related phone number.
# soft_descriptor
# text
stringThe soft descriptor text to use to charge this funding source. If greater than the maximum allowed length, the API truncates the string.
Maximum length: 22.
# country
stringThe soft descriptor country to use to charge this funding source.
two-character ISO 3166-1 code that identifies the country or region.
# item
# sku
stringThe stock keeping unit (SKU) for the item.
# name
stringThe item name. If this value is greater than the maximum allowed length, the API truncates the string.
# description
stringThe item description.
# quantity
stringThe item quantity. Must be a whole number. Maximum length: 10.
Pattern:
^[0-9]{0,10}$.# price
stringThe item cost. Supports two decimal places. Pattern:
^[0-9]{0,10}(\.[0-9]{0,2})?$# shipping
stringThe shipping cost
# currency
stringThe three-character ISO-4217 currency code that identifies the currency.
# image
stringURI to an image representing the item
# tangible
boolIdentifies if the item is a tangible or not
# id
stringUnique id
# custom
# field1
stringfree-form field for the use of clients. maximum length of 100
# field2
stringfree-form field for the use of clients. maximum length of 100
# field3
stringfree-form field for the use of clients. maximum length of 100
# field4
stringfree-form field for the use of clients. maximum length of 100
# field5
stringfree-form field for the use of clients. maximum length of 100
# field6
stringfree-form field for the use of clients. maximum length of 100
# field7
stringfree-form field for the use of clients. maximum length of 100
# field8
stringfree-form field for the use of clients. maximum length of 100
# field9
stringfree-form field for the use of clients. maximum length of 100
# field10
stringfree-form field for the use of clients. maximum length of 100
# three_d
# enabled
stringWhether to process this payment as a 3D Secure payment
# enrolled
string3DS: whether the card was enrolled or not.
Y - Issuer enrolled N - Customer not enrolled U - Unknown
# authenticated
stringauthenticationStatus 3DS:The authentication status for the 3D secure request. Required when using a third-party MPI.
Indicates whether or not the cardholder was authenticated
Y - Customer authenticated N - Customer not authenticated A - An authentication attempt occurred but could not be completed U - Unable to perform authenticationK
# eci
string3DS: Defines the E-Commerce Indicator security level associated with the transaction. The Electronic Commerce Indicator security level associated with the 3D Secure enrollment result. Required if using a third-party merchant plug-in (MPI)
# cryptogram
string3DS: Cryptographic identifier used by the card schemes to validate the integrity of the 3D secure transaction data. A Base64 encoded cryptographic identifier (CAVV) used by the card schemes to validate the cardholder authentication result (3D Secure). Required if using an external MPI
# xid
string3DS: Unique identifier for the transaction assigned by the MPI. The 3D Secure transaction identifier. Required if using an external MPI with 3D Secure 2.X.X and a Mastercard card, or with 3D Secure 1.X.X for any supported card scheme
# version
stringIndicates the version of 3D Secure that was used for authentication. Defaults to 1.0.0 if not provided
# ds_transactionid
stringTransaction ID assigned by the directory server. Used when the transaction was already authenticated via 3D Secure version 2, using an external MPI.
# challenge_indicator
stringIndicates whether a challenge is requested for this transaction. Can be sent when 3D Secure version 2.2 or higher is used.
# authenticate_payment
# referencer_id
stringIdentifier referencing the payment
# otp
objectOne time password to authenticate the payment
# Payout
# id
stringIdentifier of the payout resource created.
# destination
objectDescribe the destination of the funds. The object can contain a
credit_card,credit_card_tokenor analternative_method(required)# name
stringName of the beneficiary. (required)
# amount
objectThe amount being disbursed. Definition here (required)
# state
stringThe state of the payout. The value is:
Authorised. The payout was successfully authorised.Requested. The payout is currently pending.Declined. The payout has been declined.
# result
objectContain result of the payout request
# description
stringDescription of what is being disbursed for. (required)
# invoice_number
stringinvoice number to track this payout. (required)
# destination
# alternative_method
Alternative payment method for payout. (required)object# credit_card
Credit Card instrument. (not implemented)object# credit_card_token
Vaulted credit Card instrument.. (not implemented)object
# alternative_method
# provider
stringCode Identifying the payout provider. Possible values are:
AKWPAY
# userdata
ArrayOf(KeyValuePair(string, string))Define additional userdata required to perform payout.
For provider
AKthe additional data required are :benificiary_nick_name: nick name/ account name of the beneficiaryaccount_no: Account number of the beneficiaryifsc: IFSC code for beneficiary banks.type: Can be eitherNEFT,RTGSorIMPS.
For provider
WPAYthe additional data required are :bank_code(Max length: 16) : Member’s Bank Code (List of valid bank codes can be find here)account_no(Max length: 64) : Account number of the beneficiaryaccount_name(Max length: 64) : Account name of the beneficiary
For provider
WPAYthe additional data optional are :province(Max length: 64) : Member Bank located within a countrycity(Max length: 64) : Member Bank located Citybranch(Max length: 64) : Member Bank branch
# result
# code
string
Code identifying the result on our system
# message
string
Message related to the code
# description
string
Long description of the code identifying the result on our system
# authorisation_code
string
Authorisation code.
# Additional Information
# List of valid
bank_codefor provider AK
| bank_code | Bank |
|---|---|
50 | Axis Bank |
310 | Bank of Baroda Retail |
750 | Bank of Maharashtra |
930 | Canara Bank |
740 | Central Bank of India |
1130 | CSB Bank Ltd |
370 | Dhanlaxmi Bank |
270 | Federal Bank |
300 | HDFC Bank |
490 | Indian Bank |
420 | Indian Overseas NetBanking |
350 | Jammu and Kashmir Bank |
140 | Karnataka Bank |
760 | Karur Vysya Bank |
2370 | Lakshmi Vilas |
2390 | Punjab and Sind Bank |
1220 | Punjab National Bank |
1500 | RBL Bank Limited |
1700 | Shamrao Vithal Co-op. Bank Ltd |
180 | South Indian Bank |
450 | Standard Chartered Bank |
620 | Tamilnad Mercantile Bank |
2030 | Uco Bank |
190 | Union Bank of India |
200 | Vijaya Bank |
# List of valid
bank_codeper currency for WPAY
| Currency | bank_code | Bank |
|---|---|---|
| THB | BAY | Bank of Ayudhya (Krungsri) |
| BBL | Bangkok Bank | |
| CIMBT | CIMB THAI | |
| GSB | Government Savings Bank | |
| KBANK | Kasikorn Bank | |
| KKB | Kiatnakin Bank | |
| KTB | KrungThai Bank | |
| SCB | Siam Commercial Bank | |
| TBANK | Thanachart Bank |
| Currency | bank_code | Bank |
|---|---|---|
| VND | ACB | Asia Commercial Bank |
| DAB | Donga Bank | |
| VCB | Vietcombank | |
| VTB | Vietin Bank | |
| SACOM | Sacombank | |
| TCB | Techcombank | |
| EXIM | Eximbank | |
| BIDV | BIDV Bank |
| Currency | bank_code | Bank |
|---|---|---|
| IDR | BNI | Bank Negara Indonesia |
| Mandiri | Bank Mandiri | |
| BCA | KlikBCA | |
| BRI | Bank Rakyat Indonesia | |
| MBI | Maybank Indonesia |
# List of valid
State# For India
state Description ANAndaman and Nicobar Islands APAndhra Pradesh ARArunachal Pradesh ASAssam BRBihar CHChandigarh CTChhattisgarh DNDadra and Nagar Haveli DDDaman and Diu DLDelhi GAGoa GJGujarat HRHaryana HPHimachal Pradesh JKJammu and Kashmir JHJharkhand KAKarnataka INKerala KL LDLakshadweep MPMadhya Pradesh MHMaharashtra MNManipur MLMeghalaya MZMizoram NLNagaland OROdisha PYPuducherry PBPunjab RJRajasthan SKSikkim TNTamil Nadu TGTelangana TRTripura UPUttar Pradesh UTUttarakhand WBWest Bengal