VAS Codes
The following parameters and codes are applicable when integrating value added services (VAS) with Velocity API.
Split Payment: Initialize Payment Response Parameters
The description of the response parameters is as follows:
Parameter | Type | Required | Description |
---|---|---|---|
version | Integer | Yes | The version of the API or application that sends the request. |
id | Integer | Yes | The unique ID of a merchant for Velocity platform. |
name | String | Yes | The name of a merchant. |
callback-url | String | Yes | The absolute URL to a merchant’s back office where Velocity sends the payment status. Note: If you do not provide this parameter, Velocity uses the default URL. This parameter is not applicable for most of the API based integrations. |
account | Integer | No | The number for the sub-account with which the payment transaction is associated. The Account ID is an integer greater than 100000 and account number is an integer smaller than 1000. The payment transaction is associated with the default sub-account if you do not provide this parameter. CPD recommends you provide this parameter. |
Store-card | Integer | Yes | It defines the type of configuration merchants have done to store cards. See the Store-card table below. |
max-stored-cards | String | No | The maximum number of cards stored by a customer. |
accept-url | String | Yes | The absolute URL where Velocity directs a customer after successfully completing a payment transaction. Note: If you do not provide this parameter, Velocity uses the default URL. This parameter is not applicable for most of the API based integrations. |
auto-capture | Boolean | Yes | Shows if you have enabled auto-capture |
eua-id | Integer | No | A parameter which identifies if the API to be called is for saving account or saving card. |
mode | Integer | No | A parameter used in SDK to switch between production and staging environment. |
callback-url | String | No | The absolute URL to a merchant’s back office where Velocity sends the payment status. Velocity uses the default URL if you do not provide this parameter for the callback URL. |
Store-card
Store-card
The table below shows values used in the Store-card
parameter:
Integer | Meaning |
---|---|
0 | Cards are not stored |
1 | INVALID! |
2 | Stored cards are available only for specific accounts. |
3 | Use only stored cards and make them available only for specific accounts. The e-money based prepaid account is unavailable. |
4 | Stored cards are available for all accounts. Note: Velocity must be hosted by a Master Merchant. |
Transaction Information Parameters
Parameter | Type | Required | Description |
---|---|---|---|
id | Integer | Yes | The ID of a transaction. |
order-no | String | Yes | The order number used for the transaction. |
type-id | Integer | Yes | The type of application used for a transaction. For example: 40 indicates a mobile application purchase and 30 indicates a web purchase. |
amount | Integer | Yes | The total amount a customer is charged for a payment transaction in a country’s smallest currency. |
currency | String | Yes | The format of currency used for a transaction. |
format | String | Yes | The format in which price is presented. |
country-id | Integer | Yes | The CPD-specific country code, provided to merchants on request. |
mobile | Integer | No | The MSISDN of a customer without international dialing code. |
country-id | Integer | Yes | The CPD-specific country code, provided to merchants on request |
operator | Integer | Yes | The ID of a customer’s mobile network operator, it is recommended to include this parameter in the request to ensure that Velocity interacts with the operator correctly. |
String | No | The email address of a customer. If your customer provides this parameter, the email input field on the Send E-Mail Receipt page is automatically populated with this value. | |
id | Integer | Yes | The ID of a transaction. |
Card Parameters
Parameter | Type | Required | Description |
---|---|---|---|
cvc | Integer | Yes | The card verification value of a credit or debit card. |
payment-type | String | Yes | The type of payment such as card, wallet, or APM. |
processor-type | String | Yes | The type of processor used to process payment. |
id | Integer | Yes | The Velocity stored card ID for a stored card payment. • The ID of the card scheme for a new card payment. • The ID of the payment method for a wallet or APM. |
type-id | Integer | Yes | The type of payment method. It can be one of the following: • The ID of the card scheme for a new card payment. For example, 7 for Mastercard and 8 for Visa. • ID of the payment method for a wallet or APM. |
psp-id | Integer | Yes | The ID of a PSP used for a card. |
min-length | Integer | Yes | The minimum length of a card number. |
max-length | Integer | Yes | The maximum length of a card number. |
cvc-length | Integer | Yes | The length of CVC number on a card. |
name | String | Yes | The name of a card type. It can be your card scheme name. |
min | Integer | Yes | The minimum prefixed number that a card can have. |
Other Parameters
Parameter | Type | Required | Description |
---|---|---|---|
enabled | Boolean | Yes | Shows if the card was enabled. |
state-id | Integer | Yes | The state of a card. For example, enabled or disabled by PSP. |
url method | String | No | The method used for submitting the authorization request. For example, app, GET, and POST. |
split_payment
Parameter
split_payment
ParameterParameter | Type | Required | Description |
---|---|---|---|
combination | Object | Yes | The object which contains one or more combination for making payment. |
payment_type | Object | Yes | The object which contains card ID and sequence number. |
id | Integer | Yes | The type of payment such as card, wallet, or APM. |
sequence | Integer | Yes | The sequence number of a split payment. |
active_split | Object | No | This node represents the information of current active split transactions. |
current_split_sequence | Integer | No | Sequence number of the current transaction in active split. |
transactions | Object | No | Transactions in the current active split. |
transaction/payment_type | Integer | No | Payment type of a transaction. |
transaction/id | Integer | No | Transaction ID |
transaction/sequence | Integer | No | Sequence number of the transaction in the split. |
Note: The wallets, APM, and gateways have the same parameters as card parameters in this table.
Card Details Required by Pay API
This information is used for the construction of Velocity card object used for calling the pay and authorize APIs.
Element | Description |
---|---|
card | Used for showing the different cards or payment methods configured for a merchant. |
psp-id | Used internally by Velocity to process payment |
type-id | The card type: this is internal id identify the payment type used within Velocity. |
Generic Codes
Generic codes applicable when integrating VAS with Velocity API.
Generic Code | Description |
---|---|
200 | Request validated and accepted by Velocity |
400 | Request has been rejected by Velocity due to a validation error |
401 | Authentication required |
403 | Access denied |
415 | Message was transmitted in an unknown format or using an unsupported Content Type |
500 | Velocity server error |
502 | Payment Service Provider returned an unknown error |
504 | A timeout occurred while communicating with the PSP |
2002 | Payment refunded |
2003 | Payment cancelled |
2201 | Partial capture |
2202 | Partial cancel |
2203 | Partial refund |
2009 | Card stored |
2084 | Card not found |
20109 | Payment timeout |
Status Codes
Status codes applicable when integrating VAS with Velocity API.
Status Code | Category | Type | Description |
---|---|---|---|
1001 | Payment | Payment Initialized with Velocity | The payment transaction is created in the Velocity database. |
1009 | Payment | Payment Initialized with PSP | The payment processor responsible for authorizing the payment has been initialized. |
1991 | Callback | Merchant Callback Constructed | The callback to the merchant application sent to ‘callback-url’ has been constructed. |
1992 | Callback | Callback Connected | The connection with the merchant callback URL is established. |
1993 | Callback | Callback Connection Failed | The connection with the merchant callback URL failed. |
1990 | Callback | Callback Accepted | The merchant system returned an HTTP 200 OK and received the callback. |
1995 | Callback | Callback Rejected | The merchant system returned an HTTP $XX/5XX Error and rejected the callback. |
2000 | Payment | Authorized | The payment has been successfully authorized by the PSP. |
2002 | Payment | Cancelled | The authorized payment successfully cancelled by the PSP. |
2003 | Payment | Refunded | The captured payment successfully refunded (full / partial) by the PSP. The manual operation / delayed refund - pending states, initiated. |
2008 | Payment | Payment via Stored | Initialized payment with stored card. |
2009 | Payment | Authorized and Card Stored | The payment successfully authorized by the PSP and the card stored on successful authorization. |
2001 | Payment | Captured | The payment successfully captured by the PSP initiated for refund? |
2010 | Payment | Rejected | The payment was rejected by the PSP or Acquirer need more granular states - message tbl front end can continue handling the generic state. |
20109 | Payment | Rejected sub state on timeout | Issuer down time, SDK returns this to Velocity core. |
20108 | Payment | Rejected sub state on timeout | PSP down time, SDK returns this to Velocity core. |
2011 | refund Payment | Declined | The payment was declined by the PSP / Acquirer while performing capture, refund or cancel. |
4021 | Session | Session Failed | No vision impact however all declines have common state 2011. |
4030 | Session | Session Complete | The session failed (maximum attempt exceeds). |
4031 | Session | Session Partial | One or more transaction attempt failed. |
4020 | Session | Session Failed | The session successfully completed. The transactions in the session are complete and successful. |
Code | Description |
---|---|
0 | Payment not made |
1003 | Card expired |
1005 | Invalid card number |
1011 | Invalid card name |
1012 | Invalid card address |
1013 | Invalid card date of birth |
1014 | Card is inactive |
2007 | Payment processed |
2019 | Payment duplicated |
2084 | Card not found |
4030 | Payment success |
40031 | Partial payment success |
200 | Request validated and accepted by back end |
400 | Request rejected by back end because of validation error |
401 | Authentication required |
403 | Access denied |
415 | Message transmitted in an unknown format or by using an unsupported content type |
500 | Velocity server error |
502 | PSP returned an unknown error |
504 | A timeout occurred while communicating with the PSP |
Status Code | Type | Description |
---|---|---|
2004 | Card not enrolled | Card is not enrolled for 3DS by issuer. |
2005 | 3DS authentication required | Cardholder authentication required by issuer. |
2006 | 3DS authentication success | Cardholder authenticated by issuer. |
2010 | Rejected | The payment was rejected by the PSP or Acquirer. |
2011 | Declined | The payment was declined by the PSP or Acquirer while performing capture, refund or cancel. |
2016 | 3DS authentication failed | Cardholder not authenticated by issuer. |
2017 | Authorization not attempted due to rule | Authorization not attempted due to rule set by the merchant. |
4020 | Session failed | The session failed or declined. One or more transactions in the session failed |
4021 | Session failed | The session failed as user exceeded maximum attempts. |
4030 | Session complete | The session successfully completed. The transactions in the session are complete and successful. |
4031 | Session partial | The session was partially completed. One or more transactions in the session were incomplete. |
20109 | Rejected sub state on timeout | Issuer down time, SDK returns this to Velocity POP. |
20108 | Rejected sub state on timeout | PSP down time, SDK returns this to Velocity POP. |
Capture Payment Codes
Capture Payment codes applicable when integrating VAS with Velocity API.
Capture Payment Code | Description |
---|---|
400 | Invalid Request |
997 | Capture not supported |
998 | Network Error |
999 | Declined |
1000 | Transaction captured successfully |
2001 | Payment successfully captured by the PSP / Acquirer |
40031 | Partial payment success |
Granular Error Codes
Granular error codes unique to integrating VAS with Velocity API. All others can be found in the general Error Descriptions section.
User errors
Granular Error Code | Description |
---|---|
2010201 | Invalid access credentials |
2010202 | Invalid PIN or OTP |
2010203 | Insufficient funds or over credit limit |
2010204 | Expired card |
2010205 | Unable to authorize |
2010206 | Exceeds withdrawal count limit OR authentication requested |
2010207 | Do not honor |
2010208 | Transaction not permitted to user |
2010209 | Transaction aborted by user / card holder abandoned 3DS/wallet |
2010210 | User inactive or session expired |
2010211 | Only a partial amount was approved |
DDC Status Codes
The following codes are applicable for Device Data Collection (DDC).
Status Code | Name | Description |
---|---|---|
200501 | DDC Required for Authorization | Denotes DDC verification is required. |
200601 | DDC Successful | Denotes DDC verification successful. |
201601 | DDC Failed | Denotes DDC verification failed. |
201602 | DDC Expired | Denotes DDC verification expired (could not able to collect DDC due to time limit exceeded). |
201603 | DDC Unknown | Denotes DDC verification status is unknown. |
Updated 3 months ago