Appendix B
Appendix B
You have to add to your SALE request specific list of parameters which is determined by the value for the brand parameter.
You should get additional information from account manager.
Allpay-payout
| Parameter (merchant sends) | Required | Type | Max len | Description |
|---|---|---|---|---|
| payer_first_name + payer_last_name | Required | string | 60 | Customer name |
| payer_email | Required | string | 2–60 | Recipient’s email |
| order_amount | Required | number | — | e.g. 50.00 |
| order_currency | Required | — | — | — |
| order_description | Required | string | 5–200 | — |
| parameters[SecurityQuestion] | Required | string | 10–40 | Security question |
| parameters[SecurityQuestionAnswer] | Required | string | 3–40 | Security answer |
| account_uuid | Required | string | — | From MID setting (ACCOUNT_UUID) |
| fee_calculation_method | Required | — | — | MID option: account_level (default) / transaction_level |
vcard
To make payments on Test connector, set the value “vcard” for the brand parameter.
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&brand=vcard&
order_id=ORDER12345&order_amount=1.99&order_currency=USD&order_description=Product&
identifier=success@gmail.com&payer_ip=123.123.123.123&
return_url=https://client.site.com/return.php&hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com/post-va -k
To simulate success scenario use identifier parameter value success@gmail.com and fail@gmail.com for decline.
Apple Pay
To use the Apple Pay payment method, configure the Wallets setting in the admin dashboard. Ensure that the payment provider has confirmed the Apple Pay certificates and verified your domain in the Apple Pay account.
To enable payers to make Apple Pay payments, you can either connect to the Checkout page or work directly via the S2S APM protocol:
Checkout Page: No additional development is required on your side.
S2S APM Protocol: You must be able to obtain the Apple Pay payment token and include it in the SALE request.
Regardless of the protocol you have to make settings in the admin panel and set the following configurations:
• Merchant Identifier, Country and Shop Name – according to the merchant’s data from Apple Pay Developper account
• Certificate and Private Key – generated Apple Pay certificate and private key
• Merchant Capabilities and Supported Networks – configurations for Apple Pay payments
• Processing Private Key – private key that uses for payment token decryption (requires if payment provider supports).
Apple Pay protocol mapping
Before using Apple Pay via S2S APM protocol, you should review next section carefully. There is a description on how you can obtain Apple Pay payment token (it refers to the official Apple Pay documentation)
- Each payment must be checked for Apple Pay accessibility
- Show Apple Pay button to your payers
- Validate the merchant identity
- Provide a payment request and create a session
- Receive Apple Pay payment token (paymentData object)
After you implement Apple Pay payment tokens generation on your site, you need to pass for the SALE request:
• brand = applepay
• parameters[paymentToken] - Apple Pay payment token
Request example
curl -d "action=SALE&client_key=YOUR_CLIENT_KEY&brand=applepay&order_id=ORDER12345&order_amount=100.01&order_currency=USD&order_description=Product&payer_ip=123.123.123.123&return_url=http://client.site.com/return.php&identifier=USER_IDENTIFIER¶meters[paymentToken]={\"paymentData\":{\"data\":\"YOUR_ENCRYPTED_DATA\",\"signature\":\"YOUR_SIGNATURE\",\"header\":{\"publicKeyHash\":\"YOUR_PUBLIC_KEY_HASH\",\"ephemeralPublicKey\":\"YOUR_EPHEMERAL_PUBLIC_KEY\",\"transactionId\":\"YOUR_TRANSACTION_ID\"},\"version\":\"EC_v1\"},\"paymentMethod\":{\"displayName\":\"Visa 6244\",\"network\":\"Visa\",\"type\":\"credit\"},\"transactionIdentifier\":\"YOUR_TRANSACTION_IDENTIFIER\"},{\"transactionId\":\"TRANSACTION_ID_2\",\"version\":\"EC_v1\"},\"paymentMethod\":{\"displayName\":\"Visa 0224\",\"network\":\"Visa\",\"type\":\"debit\"},\"transactionIdentifier\":\"TRANSACTION_IDENTIFIER_2\"}&hash=YOUR_HASH" https://test.apiurl.com/post-va -k
We also recommend checking out the demo provided by Apple for Apple Pay: https://applepaydemo.apple.com/
Set Up Apple Pay
If you are using the S2S protocol for Apple Pay payments, you will need to configure your Apple Developer account. Follow these steps to set up Apple Pay in your Apple Developer account:
1. Create a Merchant ID in the "Certificates, Identifiers & Profiles" section.
2. Register and verify the domains involved in the interaction with Apple Pay (e.g., the checkout page URL where the Apple Pay button is placed) in the "Merchant Domains" section.
3. Create a Merchant Identity Certificate in the "Merchant Identity Certificate" section:
- Generate a pair of certificates (*.csr and *.key) and upload the *.csr file in the "Merchant Identity Certificate" section.
- Create a Merchant Identity Certificate based on the generated CSR file.
- Download the *.pem file from the portal.
⚠️ Note
The *.csr file can be obtained from the payment provider that processes Apple Pay, and the *.pem file should be uploaded to your payment provider's dashboard, following their instructions.
4. Create a Processing Private Key in the "Apple Pay Payment Processing Certificate" section:
- Generate a pair of certificates (*.csr and *.key) and upload the *.csr file.
- Create a Payment Processing Certificate based on the generated CSR file.
For more detailed instructions on setting up Apple Pay, refer to the following resource: Learn more about setting up Apple Pay
Next, enter the data from your Apple Pay developer account into the platform's admin panel: Go to the "Merchants" section, initiate editing, open the "Wallets" tab, navigate to the Apple Pay settings, and fill in the following fields:
- Merchant Identifier: Enter the Merchant ID.
- Certificate: Upload the *.pem file downloaded from the "Merchant Identity Certificate" section.
- Private Key: Upload the *.key file from the certificate pair generated for the Merchant Identity Certificate.
- Processing Private Key (required for token decryption): Paste the text from the Processing Private Key file. Ensure it is a single line of text (without spaces or breaks) placed between "BEGIN" and "END."
axxi-pin
If you set the value “axxi-pin” for the brand parameter you have to specify in your request the next parameters as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
pin | Flexepin 16-digit pin number | String 16 characters | + |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&brand=axxi-pin&order_id=ORDER12345
&order_amount=1.99&order_currency=USD&order_description=Product
&identifier=0987654321-abcd&payer_first_name=John&payer_last_name=Doe&payer_address=BigStreet
&payer_country=US&payer_state=CA&payer_city=City&payer_zip=123456&payer_email=doe@example.com
&payer_phone=199999999&payer_ip=123.123.123.123¶meters[pin]=0123456789012345
&hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com/post-va -k
beeline
| Parameter | Description | Values | Required |
|---|---|---|---|
productReceiver | Recipient's phone number/contract number | String | - |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&
brand=beeline&order_id=ORDER12345&order_amount=1.99&order_currency=USD&
order_description=Product&identifier=7053031133&payer_first_name=John&
payer_last_name=Doe&payer_address=BigStreet&payer_country=US&payer_state=CA&
payer_city=City&payer_zip=123456&payer_email=doe@example.com
&payer_phone=199999999&payer_ip=123.123.123.123¶meters[productReceiver]= 7053031177
&hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com/post-va -k
billplz
Take into account that payer_first_name and payer_last_name parameters are required for this brand.
If you set the billplz value for the brand parameter you have to specify in your request the next parameters as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
bank_code | SWIFT Bank Code | String | + |
bank_account_number | Bank account number | String | + |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&
brand=billplz&order_id=ORDER12345&order_amount=1.99&order_currency=USD&
order_description=Product&identifier=NA&payer_first_name=John&
payer_last_name=Doe&payer_address=BigStreet&payer_country=US&payer_state=CA&
payer_city=City&payer_zip=123456&payer_email=doe@example.com&
payer_phone=199999999&payer_ip=123.123.123.123¶meters[bank_account_number]=1234567890¶meters[bank_code]=1234567890&
hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com -k
bts-ars
The payer sends the bts-ars brand.
During the interaction, we request the payer’s CUIL (payer’s bank code) and store the CUIL in the transaction.
During the interaction, we display the CLABE from the MID settings, to which the payment will be made.
We wait for the callback; the payer has 5 minutes to complete the payment in an external application.
If the payment is not completed within this time, the transaction is declined.
If you set the value bts-ars for the brand parameter you have to specify in your request the next parameter as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
bank_cuil | Unique personal identification number of the customer in Argentina (CUIL). *If the parameter is not sent, its value will be requested from the payer. | String | - |
Sample curl request
curl -X POST https://api.test.com/post-va \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: */*" \
-H "Accept-Encoding: gzip, deflate, br" \
-H "User-Agent: PostmanRuntime/7.51.0" \
-H "Cookie: PHPSESSID=hfjlv7ns2lkdgnaur7jp16ocqu" \
-H "X-Forwarded-For: 146.200.199.188" \
-H "X-Real-IP: 146.200.199.188" \
-H "X-Forwarded-Proto: https" \
-H "X-Forwarded-Port: 443" \
-H "X-Forwarded-Host: api.test.com" \
-H "X-Request-Id: 946968abbaf4e2671473e4a2e9ce3912" \
-d "action=SALE&client_key=f8b81d40-iiii-11f0-aff1-xxzxzxxx&brand=bts-ars&order_id=94eezxzxzr2nWMkk&order_amount=5931.99&order_currency=ARS&order_description=4aSlHkL6rMIklRqS&identifier=94eeobSGXr2nWMkk&payer_ip=231.23.11.1&payer_email=success@gmail.com&return_url=https://example.com/cancel&hash=89e824e8b4b9b3f5eb7520329789f48e" \
-k
bts-mxn
The payer sends the bts-mxn brand.
During the interaction, we request the payer’s CURP (payer’s bank code) and store the CURP in the transaction.
During the interaction, we display the CLABE from the MID settings, to which the payment will be made.
We wait for the callback; the payer has 5 minutes to complete the payment in an external application.
If the payment is not completed within this time, the transaction is declined.
If you set the value bts-mxn for the brand parameter you have to specify in your request the next parameter as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
bank_curp | Unique personal identification code of the customer in Mexico (CURP). *If the parameter is not sent, its value will be requested from the payer. | String | - |
Sample curl request
curl -X POST https://api.test.com/post-va \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: */*" \
-H "Accept-Encoding: gzip, deflate, br" \
-H "User-Agent: PostmanRuntime/7.51.0" \
-H "Cookie: PHPSESSID=hfjlv7ns2lkdgnaur7jp16ocqu" \
-H "X-Forwarded-For: 146.200.199.188" \
-H "X-Real-IP: 146.200.199.188" \
-H "X-Forwarded-Proto: https" \
-H "X-Forwarded-Port: 443" \
-H "X-Forwarded-Host: api.test.com" \
-H "X-Request-Id: 946968abbaf4e2671473e4a2e9ce3912" \
-d "action=SALE&client_key=f8b81d40-iiii-11f0-aff1-xxzxzxxx&brand=bts-mxn&order_id=94eezxzxzr2nWMkk&order_amount=5931.99&order_currency=MXN&order_description=4aSlHkL6rMIklRqS&identifier=94eeobSGXr2nWMkk&payer_ip=231.23.11.1&payer_email=success@gmail.com&return_url=https://example.com/cancel&hash=89e824e8b4b9b3f5eb7520329789f48e" \
-k
dl
If you set the value dl for the brand parameter you have to specify in your request the next parameters as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
document_number | Customer's personal ID | String | + |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&
brand=dl&order_id=ORDER12345&order_amount=1.99&order_currency=USD&order_description=Product&identifier=NA&
payer_first_name=John&payer_last_name=Doe&payer_address=BigStreet&payer_country=US&payer_state=CA&payer_city=City&
payer_zip=123456&payer_email=doe@example.com&payer_phone=199999999&
payer_ip=123.123.123.123¶meters[document_number]=1234567890&
hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com -k
dlocal
If you set the value dlocal for the brand parameter you have to specify in your request the next parameters as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
document_number | Customer's personal ID | String | + |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&
brand=dlocal&order_id=ORDER12345&order_amount=1.99&order_currency=USD&order_description=Product&identifier=NA&
payer_first_name=John&payer_last_name=Doe&payer_address=BigStreet&payer_country=US&payer_state=CA&payer_city=City&
payer_zip=123456&payer_email=doe@example.com&payer_phone=199999999&
payer_ip=123.123.123.123¶meters[document_number]=1234567890&
hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com -k
doku-hpp
If the payer chooses the doku-hpp payment brand, the redirection to another page will happen to finish the payment.
You can add to the Authentication request a specific list of parameters which may be required for the doku-hpp payment brand.
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
product_reference_id | String | Conditional | SKU/item ID of the item in this transaction. This parameter is mandatory if you want to use Akulaku, Kredivo and Indodana. Allowed chars: alphabetic, numeric, special chars. Max Length: 64. |
product_name | String | Conditional | Name of the product item. This parameter is mandatory if you want to use Kredivo, Jenius and Indodana. Allowed chars: alphabetic, numeric, special chars. Max Length: 255 |
product_quantity | Number | Conditional | Quantity of the product item. This paramater mandatory if you want to use Kredivo, Akulaku, Indodana and Jenius. Allowed chars: numeric. Max Length: 4 |
product_sku | String | Conditional | SKU of the product item. This paramater mandatory if you want to use Kredivo, Akulaku and Indodana. |
product_category | String | Conditional | Category of the product item. This paramater mandatory if you want to use Kredivo, Akulaku and Indodana. |
product_url | String | Conditional | URL to the product item on merchant site. This paramater mandatory if you want to use Kredivo and Indodana. |
product_image_url | String | Conditional | URL (image) of the product item on merchant site. This paramater mandatory if you want to use Indodana. |
product_type | String | Conditional | Type of the item in this transaction. This paramater mandatory if you want to use Indodana |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&brand=doku-hpp&order_id=ORDER12345&order_amount=1.99&order_currency=USD&order_description=Product&identifier=NA&payer_first_name=John&payer_last_name=Doe&payer_address=BigStreet&payer_country=US&payer_state=CA&payer_city=City&payer_zip=123456&payer_email=doe@example.com&payer_phone=199999999&payer_ip=123.123.123.123¶meters[product_reference_id]=1¶meters[product_name]=Fresh flowers¶meters[product_quantity]=1¶meters[product_sku]=FF01¶meters[product_category]=gift-and-flowers¶meters[product_url]=http://example.com¶meters[product_image_url]=http://example.com¶meters[product_type]=ABC&hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com -k
fairpay
If you set the value fairpay for the brand parameter you have to specify in your request the next parameters as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
personalId | Customer's personal ID. It is only required for Brazil and Chile and Colombia (For Brazil, only numeric symbols are allowed, for Chile and Colombia letters can be used as well) | String | - |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&brand=fairpay&order_id=ORDER12345
&order_amount=1.99&order_currency=USD&order_description=Product&identifier=doe@example.com
&payer_first_name=John&payer_last_name=Doe&payer_address=BigStreet&payer_country=BR&payer_city=City
&payer_email=doe@example.com&payer_phone=5512345678901&payer_ip=123.123.123.123
¶meters[personalId]=98680500&hash=2702ae0c4f99506dc29b5615ba9ee3c0
Google Pay™
To provide the payers with the possibility of Google Pay™ payment you can connect to the Checkout or work directly via S2S APM protocol.
Before using googlepay payment method, you should review this section carefully to meet all the Google Pay™ requirements:
- Overview the documentation on Google Pay Integration first:
• for sites - Google Pay Web developer documentation
• for Android app - Google Pay Android developer documentation - Make sure you complete all the items on the integration checklist:
• for sites - Google Pay Web integration checklist
• for Android app - Google Pay Android integration checklist - To brand your site with Google Pay elements, you must meet the requirements:
• for sites - Google Pay Web Brand Guidelines
• for Android app - Google Pay Android brand guidelines - The merchants must adhere to the Google Pay APIs Acceptable Use Policy and accept the terms that the Google Pay API Terms of Service defines.
To work with Google Pay™ payments through gateway, you need to make settings in the admin panel. You can set the following configurations:
• choose the environment: TEST or PRODUCTION
• specify "Allowed Auth Method" - PAN_ONLY or CRYPTOGRAM_3DS
• determine "Supported Networks" - MASTERCARD, VISA, AMEX, DISCOVER, JCB
These configuration will be applied and used when platform interacts with Google Pay.
If you are using Checkout integration to work with googlepay payment method, it requires no additional code implementation.
If you are using S2S APM integration to work with googlepay payment method, you need to pass the additional parameters in the SALE request:
• brand = googlepay
• parameters[paymentToken] - Google Pay payment token.
To obtain Google Pay payment token you should get the PaymentData according to the Google Pay API Integration documentation (see the links above).
Pass the following parameters to receive PaymentData:
• allowPaymentMethods: CARD
• tokenizationSpecification = { "type": "PAYMENT_GATEWAY" }
• allowedCardNetworks = ['MASTERCARD', 'VISA', 'AMEX', 'DISCOVER', 'JCB'];
• allowedCardAuthMethods = ['PAN_ONLY', 'CRYPTOGRAM_3DS'];
• gateway = value provided by your support manager
• gatewayMerchantId = CLIENT_KEY (API key)
Example of data to get PaymentData
{
"apiVersionMinor": 0,
"apiVersion": 2,
"paymentMethodData": {
"description": "Mastercard •••• 5179",
"tokenizationData": {
"type": "PAYMENT_GATEWAY",
"token": {
"signature": "MEYCIQC+IHxUu9Wwra2Vu6tBa2wJPCMT3pWtN1VphLGYtNVLLwIhAOkdbNje//eLrXVc+n6LOlc4PqxWOUcqwrmki/CNA1ur",
"intermediateSigningKey": {
"signedKey": "{\"keyValue\":\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwhRrvGB0kZ1248MEJAPwX0YfrQInhyyRM7nyGFjQuzGSViZG3QC9NMvXR9Zd6uVcVzAz+6K/+NEGIWbX8zbk6A\\u003d\\u003d\",\"keyExpiration\":\"1571208568000\"}",
"signatures": [
"MEUCIQCR6vIEiyHB8qmlho4/tLd7W8CIGrZDJlCI48CBHeFPvQIgLZJIe4cZv6pYtYYa56QCI/vvg1GqXTP3bTBjO49r5mI="
]
},
"protocolVersion": "ECv2",
"signedMessage": {
"encryptedMessage": "k85CGUMmd5PaGmQlHFqHc0HrDZmjM1yG82rFB/p31ZyUleN5nihzjOZif/BKXwg3XA2oLXqBSSWcAdfZwXxCEOqvAQE+kpTC7qVO4wTPip6RruraT6vO9M9FtIf0kcqzYSAN7pl1SUA5jC9rHrqucPoh0Sspup78SWBt8TnmVKC9O3sQhIZ3SMoGOG4mdjtIrgCwWH2cbrxUH0dHAqOe5ANGOY/mII4nTEp7xaKu41hK/kFE15zVyqgPJXP9bPxzMVk/ozEZSfhSzVTS+9stjkUkT5EibKB3O1bbxyybKcGQ5vxBOtNOBKKdNuqNmN2eEK3UbSKb1M3gv45gT9cCeEvlzO7Wg0N100vUBp9RPDN9TH4tj4w578sWFKfTi6FsSrZB27SGWcU0EaKHO9buo94mRBY5yqffF3bKg5mAMPzjDhyHSujqWKAs9C5fBzMEuEr2z7A23kfLqBceH5uS9LJMiZyVKCwfpY9u2XyCjKdp7Iu003d",
"ephemeralPublicKey": "BAMDAtfgcPNuzItrwGLigGj3rtxmyHhZLwx1B4RJZ2oo11jpFf3SA6a3utryCMmlCEcqLfLn6WDH2ArrNBGnEwu003d",
"tag": "TqhZXY53Fe4QBKafm6NqS6EzwVeiKXhRlp8NeWrAu003d"
}
}
},
"type": "CARD",
"info": {
"cardNetwork": "MASTERCARD",
"cardDetails": "5179"
}
}
}
As a result you receive you will be returned a dataset with PaymentData.token object contains data that you need add to the SALE request as parameters[paymentToken] parameter.
Request Example
curl -d "action=SALE&client_key=YOUR_CLIENT_KEY&brand=googlepay&order_id=ORDER_ID&order_amount=100.01&order_currency=USD&order_description=Product&payer_ip=123.123.123.123&return_url=http://client.site.com/return.php&identifier=USER_IDENTIFIER¶meters[paymentToken]={\"apiVersionMinor\": 0, \"apiVersion\": 2, \"paymentMethodData\": {\"description\": \"Mastercard •••• 5179\", \"tokenizationData\": {\"type\": \"PAYMENT_GATEWAY\", \"token\": {\"signature\": \"YOUR_SIGNATURE\", \"intermediateSigningKey\": {\"signedKey\": \"YOUR_SIGNED_KEY\", \"signatures\": [\"YOUR_SIGNATURE_2\"]}, \"protocolVersion\": \"ECv2\", \"signedMessage\": {\"encryptedMessage\": \"ENCRYPTED_MESSAGE\", \"ephemeralPublicKey\": \"EPHEMERAL_PUBLIC_KEY\", \"tag\": \"TAG\"}}}, \"type\": \"CARD\", \"info\": {\"cardNetwork\": \"MASTERCARD\", \"cardDetails\": \"5179\"}}}&hash=YOUR_HASH" https://test.apiurl.com/post-va -k
⚠️ Pay attention
in the case of PAN_ONLY, the responsibility for passing 3ds is transferred to the acquirer, through which the payment is processed
Set up Google Pay
The admin panel settings apply to merchants integrated with the platform via the Checkout protocol.
For merchants using the S2S protocol and obtaining the Google Pay payment token independently, these settings will not apply.
Exceptions are "Environment" and “Private Key” configurations.
The "Environment" configuration remains relevant, as it defines the environment where the token was generated and from which the platform expects to receive payment data. Ensure that the environment used to generate the payment token matches the corresponding setting in the admin panel to avoid processing issues.
The “Private Key” is required for Google token decryption. If it is absent, the card flow cannot be applied to the payment.
Additionally, to work with Google Pay payments, you must verify the website domains from which Google Pay is processed in the Google Business Console.
hayvn
| Parameter | Description | Values | Required |
|---|---|---|---|
payment_currency | Currency for the specified payment amount. Available values: BTC ETH USDC USDT | String | + |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&
brand=hayvn&order_id=ORDER12345&order_amount=1.99&order_currency=USD&
order_description=Product&identifier=NA&payer_first_name=John&
payer_last_name=Doe&payer_address=BigStreet&payer_country=US&payer_state=CA&
payer_city=City&payer_zip=123456&payer_email=doe@example.com
&payer_phone=199999999&payer_ip=123.123.123.123¶meters[payment_currency]= BTC
&hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com/post-va -k
hayvn-wdwl
| Parameter | Description | Values | Required |
|---|---|---|---|
address | Address of the recipient. | String | + |
currency | Recipient address currency. BTC ETH USDC USDT | String | + |
network | Recipient address network. BTC ETH BSC TRX | String | + |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&
brand=hayvn-wdwl&order_id=ORDER12345&order_amount=1.99&order_currency=USD&
order_description=Product&identifier=NA&payer_first_name=John&
payer_last_name=Doe&payer_address=BigStreet&payer_country=US&payer_state=CA&
payer_city=City&payer_zip=123456&payer_email=doe@example.com
&payer_phone=199999999&payer_ip=123.123.123.123&
parameters[address]=tb1qz8xs2xrun82tzaug9uaj206p34l3eu0tjw52qd
¶meters[currency]=BTC¶meters[network]=BTC
&hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com/post-va -k
ips
brand = ips
QR method
-
Brand IPS
-
Engine VA
-
SALE with REDIRECT (QR-code)
-
Currencies:
- EUR
- RSD
- BAM
- MKD
-
The
ipsmethod works on both S2S APM and Checkout. Who produces and displays the QR the payer scans differs by protocol:- S2S APM (this protocol): the SALE response returns the QR code in
redirect_params.qr_codeas a Base64-encoded value; you generate the QR from it and display it to the payer. - Checkout: the Payment Platform displays the QR code itself, together with the order number, amount, and description.
- S2S APM (this protocol): the SALE response returns the QR code in
-
The QR code expires after 1 minute by default.
-
Status via GET_TRANS_STATUS:
- executed → SETTLED
- rejected → DECLINED
- pending → PENDING
-
Final status also arrives via bank callback (ACSC → success, RJCT → decline).
kunnect
If you set the value kunnect for the brand parameter you have to specify in your request the next parameter as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
cryptoCurrency | Currency for the specified payment amount | String | + |
Sample curl request
curl -d "action=SALE&
client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&
brand=kunnect&
order_id=ORDER12345&
order_amount=1.99&
order_currency=USD&
order_description=Product&identifier=NA&
payer_first_name=John&
payer_last_name=Doe&
payer_address=BigStreet&
payer_country=US&
payer_state=CA&
payer_city=City&
payer_zip=123456&
payer_email=doe@example.com&
payer_phone=199999999&
payer_ip=123.123.123.123&
parameters[cryptoCurrency]=BTC&
hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com/post-va -k
m2p-debit
If you set the value m2p-debit for the brand parameter you have to specify in your request the next parameters as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
paymentGatewayName | Name of payment gateway that will be used for deposit | String | + |
paymentCurrency | Name of payment currency that will be used for deposit | String | + |
tradingAccountLogin | Depositor’s trading account id | String | - |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&brand=m2p-debit&order_id=ORDER12345
&order_amount=1.99&order_currency=USD&order_description=Product
&identifier=0987654321-abcd&payer_first_name=John&payer_last_name=Doe&payer_address=BigStreet
&payer_country=US&payer_state=CA&payer_city=City&payer_zip=123456&payer_email=doe@example.com
&payer_phone=199999999&payer_ip=123.123.123.123¶meters[paymentGatewayName]=gateway¶meters[paymentCurrency]=BTC¶meters[tradingAccountLogin]=login
&hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com/post-va -k
m2p-withdrawal
If you set the value m2p-withdrawal for the brand parameter you have to specify in your request the next parameters as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
withdrawCurrency | CRYPTO currency Cryptocurrency to which currency is converted | String | + |
address | User cryptocurrency wallet address to withdraw | String | + |
tradingAccountLogin | Trading account ID of a user requesting a withdrawal | String | - |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&brand=m2p-withdrawal&order_id=ORDER12345
&order_amount=1.99&order_currency=USD&order_description=Product
&identifier=0987654321-abcd&payer_first_name=John&payer_last_name=Doe&payer_address=BigStreet
&payer_country=US&payer_state=CA&payer_city=City&payer_zip=123456&payer_email=doe@example.com
&payer_phone=199999999&payer_ip=123.123.123.123¶meters[withdrawalCurrency]=BTC¶meters[address]=43j5hg734rhbfj¶meters[tradingAccountLogin]=login
&hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com/post-va -k
next-level-finance
If the payer chooses the next-level-finance payment brand, the redirection to another page will happen to finish the payment.
The following parameter is required:
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
toCurrency | String | + | The type of currency to convert to. Should be a valid currency code. |
Sample curl request
curl --location 'https://test.apiurl.com/post-va' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'action=SALE' \
--data-urlencode 'client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004' \
--data-urlencode 'brand=next-level-finance' \
--data-urlencode 'order_id=ORDER12345' \
--data-urlencode 'order_amount=1.99' \
--data-urlencode 'order_currency=EUR' \
--data-urlencode 'order_description=Product' \
--data-urlencode 'identifier=NA' \
--data-urlencode 'payer_first_name=John' \
--data-urlencode 'payer_last_name=Doe' \
--data-urlencode 'payer_address=BigStreet' \
--data-urlencode 'payer_country=BR' \
--data-urlencode 'payer_city=City' \
--data-urlencode 'payer_zip=123456' \
--data-urlencode 'payer_email=doe@example.com' \
--data-urlencode 'payer_phone=199999999' \
--data-urlencode 'payer_ip=123.123.123.123' \
--data-urlencode 'parameters[toCurrency]=USDC' \
--data-urlencode 'return_url=https://example.com' \
--insecure
pagsmile
If you set the value pagsmile for the brand parameter you have to specify in your request the next parameters. The following parameters are required, except for transactions in Guatemala, Panama, or Costa Rica:
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
document_number | String | Conditional | Customer's ID. Condition: If the parameter is NOT specified in the request, then it will be collected on the Checkout page |
document_type | String | Conditional | Customer's identification type. Condition: If the parameter is NOT specified in the request, then it will be collected on the Checkout page |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&
brand=pagsmile&order_id=ORDER12345&order_amount=1.99&order_currency=BRL&
order_description=Product&identifier=NA&payer_first_name=John&
payer_last_name=Doe&payer_address=BigStreet&payer_country=BR&
payer_city=City&payer_zip=123456&payer_email=doe@example.com&
payer_phone=199999999&payer_ip=123.123.123.123&
parameters[document_number]=11032341882&
parameters[document_type]=CPF&
hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com -k
payok-upi
If you set the value payok-upi for the brand parameter you have to specify in your request the next parameter required for India:
| Parameter | Description | Values | Required |
|---|---|---|---|
personal_id | UPI ID Condition: If the parameter is NOT specified in the request for India, then it will be collected on the Checkout page | String | +/- |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&
brand=payok-upi&order_id=ORDER12345&order_amount=1.99&order_currency=USD&
order_description=Product&identifier=NA&payer_first_name=John&
payer_last_name=Doe&payer_address=BigStreet&payer_country=US&payer_state=CA&
payer_city=City&payer_zip=123456&payer_email=doe@example.com&
payer_phone=199999999&payer_ip=123.123.123.123¶meters[personal_id]=1234567890&
hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com -k
paythrough-upi
If you set the value paythrough-upi for the brand parameter you have to specify in your request the next parameters as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
upi_id | UPI ID | String | + |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&brand=paythrough-upi
&order_id=ORDER12345&order_amount=100.99&order_currency=INR&order_description=Product
&identifier=0987654321-abcd&payer_first_name=John&payer_last_name=Doe
&payer_address= Shop No.12, Rendezvous, Raviraj Oberoi Cmplx
&payer_country=IN&payer_state= Maharashtra&payer_city=Mumbai
&payer_zip= 400053&payer_email=doe@example.com&payer_phone= 9818218660 &payer_ip=123.123.123.123¶meters[upi_id]= joyoberoihrl@okaxis
&hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com/post-va -k
ptn-email
If you set the value ptn-email for the brand parameter you have to specify in your request the next parameters as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
SecurityQuestion | The security question | String | - |
SecurityQuestionAnswer | SecurityQuestionAnswer standards: - No spaces. - Length must be between 3 and 25 characters long | String | + |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&
brand=ptn-email&order_id=ORDER12345&order_amount=1.99&order_currency=USD&
order_description=Product&identifier=NA&payer_first_name=John&
payer_last_name=Doe&payer_address=BigStreet&payer_country=US&payer_state=CA&
payer_city=City&payer_zip=123456&payer_email=doe@example.com
&payer_phone=199999999&payer_ip=123.123.123.123&
parameters[SecurityQuestion]=color&
parameters[SecurityQuestionAnswer]=red
&hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com -k
ptn-sms
If you set the value ptn-sms for the brand parameter you have to specify in your request the next parameters as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
SecurityQuestion | The security question | String | - |
SecurityQuestionAnswer | SecurityQuestionAnswer standards: - No spaces. - Length must be between 3 and 25 characters long | String | - |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&
brand= ptn-sms&order_id=ORDER12345&order_amount=1.99&order_currency=USD&
order_description=Product&identifier=NA&payer_first_name=John&
payer_last_name=Doe&payer_address=BigStreet&payer_country=US&payer_state=CA&
payer_city=City&payer_zip=123456&payer_email=doe@example.com
&payer_phone=199999999&payer_ip=123.123.123.123&
parameters[SecurityQuestion]=color&
parameters[SecurityQuestionAnswer]=red
&hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com -k
pyk-bkmexpress
If you set the value pyk-bkmexpress for the brand parameter you have to specify in your request the next parameter required for Turkey:
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
orgCode | String | Conditional | Payer's Institution (Bank) Code. Condition: If the parameter is NOT specified in the request for Turkey, then it will be collected on the Checkout page |
accountName | String | Conditional | Payer's name, length 1~64 characters; Example: Colin Ford. Must be exactly the same as the actual payer's name. Condition: If the parameter is NOT specified in the request for Turkey, then it will be collected on the Checkout page |
accountNumber | String | Conditional | Payer's Institution (Bank) account number. Must be exactly the same as the account number of the actual payment. Condition: If the parameter is NOT specified in the request for Turkey, then it will be collected on the Checkout page |
Sample curl request
curl -X POST https://test.apiurl.com/post-va -k \
-d "action=SALE" \
-d "client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004" \
-d "brand=pyk-bkmexpress" \
-d "order_id=ORDER12345" \
-d "order_amount=1.99" \
-d "order_currency=TRY" \
-d "order_description=Product" \
-d "payer_first_name=John" \
-d "payer_last_name=Doe" \
-d "payer_address=BigStreet" \
-d "payer_country=US" \
-d "payer_state=CA" \
-d "payer_city=City" \
-d "payer_zip=123456" \
-d "payer_email=doe@example.com" \
-d "payer_phone=199999999" \
-d "payer_ip=123.123.123.123" \
-d "parameters[orgCode]=orgCode" \
-d "parameters[accountName]=accountName" \
-d "parameters[accountNumber]=accountNumber" \
-d "hash=2702ae0c4f99506dc29b5615ba9ee3c0"
pyk-momo
If you set the value pyk-momo for the brand parameter you have to specify in your request the next parameter required for Vietnam:
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
personal_id | String | Conditional | Payer's Identity ID. Condition: If the parameter is NOT specified in the request for Vietnam, then it will be collected on the Checkout page |
Sample curl request
curl -X POST https://test.apiurl.com/post-va -k \
-d "action=SALE" \
-d "client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004" \
-d "brand=pyk-momo" \
-d "order_id=ORDER12345" \
-d "order_amount=1.99" \
-d "order_currency=TRY" \
-d "order_description=Product" \
-d "payer_first_name=John" \
-d "payer_last_name=Doe" \
-d "payer_address=BigStreet" \
-d "payer_country=US" \
-d "payer_state=CA" \
-d "payer_city=City" \
-d "payer_zip=123456" \
-d "payer_email=doe@example.com" \
-d "payer_phone=199999999" \
-d "payer_ip=123.123.123.123" \
-d "parameters[personal_id]=personal_id" \
-d "hash=2702ae0c4f99506dc29b5615ba9ee3c0"
pyk-nequipush
If you set the value pyk-nequipush for the brand parameter you have to specify in your request the next parameter required for Colombia:
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
personal_id | String | Conditional | Payer's Identity ID. Condition: If the parameter is NOT specified in the request for Colombia, then it will be collected on the Checkout page |
Sample curl request
curl -X POST https://test.apiurl.com/post-va -k \
-d "action=SALE" \
-d "client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004" \
-d "brand=pyk-nequipush" \
-d "order_id=ORDER12345" \
-d "order_amount=1.99" \
-d "order_currency=TRY" \
-d "order_description=Product" \
-d "payer_first_name=John" \
-d "payer_last_name=Doe" \
-d "payer_address=BigStreet" \
-d "payer_country=US" \
-d "payer_state=CA" \
-d "payer_city=City" \
-d "payer_zip=123456" \
-d "payer_email=doe@example.com" \
-d "payer_phone=199999999" \
-d "payer_ip=123.123.123.123" \
-d "parameters[personal_id]=personal_id" \
-d "hash=2702ae0c4f99506dc29b5615ba9ee3c0"
pyk-paparawallet
If you set the value pyk-paparawallet for the brand parameter you have to specify in your request the next parameter required for Turkey:
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
orgCode | String | Conditional | Payer's Institution (Bank) Code. Condition: If the parameter is NOT specified in the request for Turkey, then it will be collected on the Checkout page |
accountName | String | Conditional | Payer's name, length 1~64 characters; Example: Colin Ford. Must be exactly the same as the actual payer's name. Condition: If the parameter is NOT specified in the request for Turkey, then it will be collected on the Checkout page |
accountNumber | String | Conditional | Payer's Institution (Bank) account number. Must be exactly the same as the account number of the actual payment. Condition: If the parameter is NOT specified in the request for Turkey, then it will be collected on the Checkout page |
Sample curl request
curl -X POST https://test.apiurl.com/post-va -k \
-d "action=SALE" \
-d "client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004" \
-d "brand=pyk-paparawallet" \
-d "order_id=ORDER12345" \
-d "order_amount=1.99" \
-d "order_currency=TRY" \
-d "order_description=Product" \
-d "payer_first_name=John" \
-d "payer_last_name=Doe" \
-d "payer_address=BigStreet" \
-d "payer_country=US" \
-d "payer_state=CA" \
-d "payer_city=City" \
-d "payer_zip=123456" \
-d "payer_email=doe@example.com" \
-d "payer_phone=199999999" \
-d "payer_ip=123.123.123.123" \
-d "parameters[orgCode]=orgCode" \
-d "parameters[accountName]=accountName" \
-d "parameters[accountNumber]=accountNumber" \
-d "hash=2702ae0c4f99506dc29b5615ba9ee3c0"
pyk-promptpay
If you set the value pyk-promptpay for the brand parameter you have to specify in your request the next parameter required for Thailand:
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
orgCode | String | Conditional | Payer's Institution (Bank) Code. Condition: If the parameter is NOT specified in the request for Thailand, then it will be collected on the Checkout page |
accountName | String | Conditional | Payer's name, length 1~64 characters; Example: Colin Ford. Must be exactly the same as the actual payer's name. Condition: If the parameter is NOT specified in the request for Thailand, then it will be collected on the Checkout page |
accountNumber | String | Conditional | Payer's Institution (Bank) account number. Must be exactly the same as the account number of the actual payment. Condition: If the parameter is NOT specified in the request for Thailand, then it will be collected on the Checkout page |
Sample curl request
curl -X POST https://test.apiurl.com/post-va -k \
-d "action=SALE" \
-d "client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004" \
-d "brand=pyk-promptpay" \
-d "order_id=ORDER12345" \
-d "order_amount=1.99" \
-d "order_currency=TRY" \
-d "order_description=Product" \
-d "payer_first_name=John" \
-d "payer_last_name=Doe" \
-d "payer_address=BigStreet" \
-d "payer_country=US" \
-d "payer_state=CA" \
-d "payer_city=City" \
-d "payer_zip=123456" \
-d "payer_email=doe@example.com" \
-d "payer_phone=199999999" \
-d "payer_ip=123.123.123.123" \
-d "parameters[orgCode]=orgCode" \
-d "parameters[accountName]=accountName" \
-d "parameters[accountNumber]=accountNumber" \
-d "hash=2702ae0c4f99506dc29b5615ba9ee3c0"
pyk-truemoney
If you set the value pyk-truemoney for the brand parameter you have to specify in your request the next parameter required for Thailand:
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
orgCode | String | Conditional | Payer's Institution (Bank) Code. Condition: If the parameter is NOT specified in the request for Thailand, then it will be collected on the Checkout page |
accountName | String | Conditional | Payer's name, length 1~64 characters; Example: Colin Ford. Must be exactly the same as the actual payer's name. Condition: If the parameter is NOT specified in the request for Thailand, then it will be collected on the Checkout page |
accountNumber | String | Conditional | Payer's Institution (Bank) account number. Must be exactly the same as the account number of the actual payment. Condition: If the parameter is NOT specified in the request for Thailand, then it will be collected on the Checkout page |
Sample curl request
curl -X POST https://test.apiurl.com/post-va -k \
-d "action=SALE" \
-d "client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004" \
-d "brand=pyk-truemoney" \
-d "order_id=ORDER12345" \
-d "order_amount=1.99" \
-d "order_currency=TRY" \
-d "order_description=Product" \
-d "payer_first_name=John" \
-d "payer_last_name=Doe" \
-d "payer_address=BigStreet" \
-d "payer_country=US" \
-d "payer_state=CA" \
-d "payer_city=City" \
-d "payer_zip=123456" \
-d "payer_email=doe@example.com" \
-d "payer_phone=199999999" \
-d "payer_ip=123.123.123.123" \
-d "parameters[orgCode]=orgCode" \
-d "parameters[accountName]=accountName" \
-d "parameters[accountNumber]=accountNumber" \
-d "hash=2702ae0c4f99506dc29b5615ba9ee3c0"
pyk-upi
If you set the value pyk-upi for the brand parameter you have to specify in your request the next parameter required for India:
| Parameter | Description | Values | Required |
|---|---|---|---|
personal_id | Payer's Identity ID. Condition: If the parameter is NOT specified in the request for India, then it will be collected on the Checkout page | String | +/- |
Sample curl request
curl -X POST https://test.apiurl.com/post-va -k \
-d "action=SALE" \
-d "client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004" \
-d "brand=pyk-upi" \
-d "order_id=ORDER12345" \
-d "order_amount=1.99" \
-d "order_currency=TRY" \
-d "order_description=Product" \
-d "payer_first_name=John" \
-d "payer_last_name=Doe" \
-d "payer_address=BigStreet" \
-d "payer_country=US" \
-d "payer_state=CA" \
-d "payer_city=City" \
-d "payer_zip=123456" \
-d "payer_email=doe@example.com" \
-d "payer_phone=199999999" \
-d "payer_ip=123.123.123.123" \
-d "parameters[personal_id]=personal_id" \
-d "hash=2702ae0c4f99506dc29b5615ba9ee3c0"
pyk-viettelpay
If you set the value pyk-viettelpay for the brand parameter you have to specify in your request the next parameter required for Vietnam:
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
personal_id | String | Conditional | Payer's Identity ID. Condition: If the parameter is NOT specified in the request for Vietnam, then it will be collected on the Checkout page |
Sample curl request
curl -X POST https://test.apiurl.com/post-va -k \
-d "action=SALE" \
-d "client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004" \
-d "brand=pyk-viettelpay" \
-d "order_id=ORDER12345" \
-d "order_amount=1.99" \
-d "order_currency=TRY" \
-d "order_description=Product" \
-d "payer_first_name=John" \
-d "payer_last_name=Doe" \
-d "payer_address=BigStreet" \
-d "payer_country=US" \
-d "payer_state=CA" \
-d "payer_city=City" \
-d "payer_zip=123456" \
-d "payer_email=doe@example.com" \
-d "payer_phone=199999999" \
-d "payer_ip=123.123.123.123" \
-d "parameters[personal_id]=personal_id" \
-d "hash=2702ae0c4f99506dc29b5615ba9ee3c0"
pyk-zalopay
If you set the value pyk-zalopay for the brand parameter you have to specify in your request the next parameter required for Vietnam:
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
personal_id | String | Conditional | Payer's Identity ID. Condition: If the parameter is NOT specified in the request for Vietnam, then it will be collected on the Checkout page |
Sample curl request
curl -X POST https://test.apiurl.com/post-va -k \
-d "action=SALE" \
-d "client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004" \
-d "brand=pyk-zalopay" \
-d "order_id=ORDER12345" \
-d "order_amount=1.99" \
-d "order_currency=TRY" \
-d "order_description=Product" \
-d "payer_first_name=John" \
-d "payer_last_name=Doe" \
-d "payer_address=BigStreet" \
-d "payer_country=US" \
-d "payer_state=CA" \
-d "payer_city=City" \
-d "payer_zip=123456" \
-d "payer_email=doe@example.com" \
-d "payer_phone=199999999" \
-d "payer_ip=123.123.123.123" \
-d "parameters[personal_id]=personal_id" \
-d "hash=2702ae0c4f99506dc29b5615ba9ee3c0"
pyk-iban
If you set the value pyk-iban for the brand parameter you have to specify in your request the next parameter required for Turkey:
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
personal_id | String | Conditional | Payer's Identity ID. Condition: If the parameter is NOT specified in the request for Turkey, then it will be collected on the Checkout page |
Sample curl request
curl -X POST https://test.apiurl.com/post-va -k \
-d "action=SALE" \
-d "client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004" \
-d "brand=pyk-iban" \
-d "order_id=ORDER12345" \
-d "order_amount=1.99" \
-d "order_currency=TRY" \
-d "order_description=Product" \
-d "payer_first_name=John" \
-d "payer_last_name=Doe" \
-d "payer_address=BigStreet" \
-d "payer_country=US" \
-d "payer_state=CA" \
-d "payer_city=City" \
-d "payer_zip=123456" \
-d "payer_email=doe@email.com" \
-d "payer_phone=199999999" \
-d "payer_ip=123.123.123.123" \
-d "parameters[personal_id]=personal_id" \
-d "hash=2702ae0c4f99506dc29b5615ba9ee3c0"
sz-in-upi
If you set the value sz-in-upi for the brand parameter you have to specify in your request the next parameters as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
upiAddress | Payer's UPI address | String | + |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&brand=sz-in-upi&order_id=ORDER12345
&order_amount=1.99&order_currency=INR&order_description=Product&identifier=doe@example.com
&payer_first_name=John&payer_last_name=Doe&payer_email=doe@example.com&payer_ip=123.123.123.123
¶meters[upiAddress]=address@upi&hash=2702ae0c4f99506dc29b5615ba9ee3c0
tabby
If you set the value tabby for the brand parameter you have to specify in your request the next parameters as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
category | Required as name of high-level category (Clothes, Electronics,etc.); or a tree of category-subcategory1-subcategory2; or id of the category and table with category-ids data mapped provided. | String | + |
buyer_registered_since | Time the customer got registred with you, in UTC, and displayed in ISO 8601 datetime format. | String | + |
buyer_loyalty_level | Default: 0 Customer's loyalty level within your store, should be sent as a number of successfully placed orders in the store with any payment methods. | Number | + |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&brand=tabby
&order_id=ORDER12345&order_amount=100.99&order_currency=SAR
&order_description=Product&identifier=0987654321-abcd
&payer_first_name=John&payer_last_name=Doe&payer_address=BigStreet
&payer_country=US&payer_state=CA&payer_city=City&payer_zip=123456
&payer_email=doe@example.com&payer_phone=0987654321&payer_ip=123.123.123.123
¶meters[category]=Clothes¶meters[buyer_registered_since]=2019-08-2414:15:22¶meters[buyer_loyalty_level]=0
&hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com/post-va -k
tamara
If you set the value tamara for the brand parameter you have to specify in your request the next parameters as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
shipping_amount | Shipping amount | Number | + |
tax_amount | Tax amount | Number | + |
product_reference_id | The unique id of the item from merchant's side | String | + |
product_type | Product type | String | + |
product_sku | Product sku | String | + |
product_amount | Product amount | Number | + |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004
&brand=tamara&order_id=ORDER12345&order_amount=100.99&order_currency=SAR
&order_description=Product&identifier=0987654321-abcd
&payer_first_name=John&payer_last_name=Doe&payer_address=BigStreet
&payer_country=US&payer_state=CA&payer_city=City&payer_zip=123456
&payer_email=doe@example.com&payer_phone=0987654321&payer_ip=123.123.123.123
¶meters[shipping_amount]=1.01¶meters[tax_amount]=1.01
¶meters[product_reference_id]=item125430¶meters[product_type]=Clothes
¶meters[product_sku]=ABC-12345-S-BL¶meters[product_amount]=998.17
&hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com/post-va -k
yapily
If you set the value yapily for the brand parameter you have to specify in your request the next parameters as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
payee_name | Provide here the account provider code of the institution holding the account indicated in the Account parameter. | String | + |
payee_country | This parameter enables you to attach a file to the transaction. This is useful, for example, in the case where you may want to attach a scanned receipt, or a scanned payment authorization, depending on your internally established business rules. This parameter requires you to provide the name of the file you are attaching, as a string, for example “receipt.doc” or “receipt.pdf”. Note that the contents of this parameter are ignored if you have not provided the contents of the file using NarrativeFileBase64 below. | String | + |
payee_identifications | The account identifications that identify the Payer bank account. Array should contain the objects with the Identifications combinations: type and identification parameters. | Array | + |
type | Used to describe the format of the account. Possible values: • SORT_CODE • ACCOUNT_NUMBER • IBAN • BBAN • BIC • PAN • MASKED_PAN • MSISDN • BSB • NCC • ABA • ABA_WIRE • ABA_ACH • ROLL_NUMBER • BLZ • IFS • CLABE • CTN • BRANCH_CODE • VIRTUAL_ACCOUNT_ID | String | + |
identification | Account Identification. The value associated with the account identification type. | String | + |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&brand=yapily&order_id=ORDER12345&order_amount=1.99&order_currency=GBP&order_description=Product&identifier=0987654321-abcd&payer_first_name=John&payer_last_name=Doe&payer_address=BigStreet&payer_country=GB&payer_state=Region&payer_city=City&payer_zip=123456&payer_email=doe@example.com&payer_phone=199999999&payer_ip=123.123.123.123¶meters[payee_name]=Jane Smith¶meters[payee_country]=GB¶meters[payee_identifications][0][type]=SORT_CODE¶meters[payee_identifications][0][identification]=123456&hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com/post-va -k
yo-uganda-limited
If you set the value yo-uganda-limited for the brand parameter you have to specify in your request the next parameters as well:
| Parameter | Description | Values | Required |
|---|---|---|---|
AccountProviderCode | Provide here the account provider code of the institution holding the account | String | - |
NarrativeFileName | This parameter enables you to attach a file to the transaction. This is useful, for example, in the case where you may want to attach a scanned receipt, or a scanned payment authorization, depending on your internally established business rules. This parameter requires you to provide the name of the file you are attaching, as a string, for example “receipt.doc” or “receipt.pdf”. Note that the contents of this parameter are ignored if you have not provided the contents of the file using NarrativeFileBase64 below. | String | - |
NarrativeFileBase64 | This parameter enables you to attach a file to the transaction. This is useful, for example, in the case where you may want to attached a scanned receipt, or a scanned payment authorization, depending on your business rules. This parameter requires you to provide the contents of the file you are attaching, encoded in base-64 encoding. Note that the contents of this parameter are ignored if you have not provided a file name using NarrativeFileName above. | String | - |
ProviderReferenceText | In this field, enter text you wish to be present in any confirmation message which the mobile money provider network sends to the subscriber upon successful completion of the transaction. Some mobile money providers automatically send a confirmatory text message to the subscriber upon completion of transactions. This parameter allows you to provide some text which will be appended to any such confirmatory message sent to the subscriber. | String | - |
Sample curl request
curl -d "action=SALE&client_key=c2b8fb04-110f-11ea-bcd3-0242c0a85004&brand=yo-uganda-limited&order_id=ORDER12345
&order_amount=1.99&order_currency=UGX&order_description=Product
&identifier=0987654321-abcd&payer_first_name=John&payer_last_name=Doe&payer_address=BigStreet
&payer_country=US&payer_state=CA&payer_city=City&payer_zip=123456&payer_email=doe@example.com
&payer_phone=199999999&payer_ip=123.123.123.123¶meters[AccountProviderCode]=provider54321
¶meters[NarrativeFileName]=file.img¶meters[NarrativeFileBase64]= iVBORw0KGgoAAAANSUhE
UgAAAAEAAAADCAYAAABS3WWCAAAABHNCSVQICAgIfAhkiAAAABl0RVh0U29mdHdhcmUAZ25vbWUtc2NyZWVuc2hvdO8Dvz
4AAAA1aVRYdENyZWF0aW9uIFRpbWUAAAAAANGB0YAsIDEwLdGC0YDQsC0yMDIzIDEyOjA4OjQ3ICswMzAwEHyhlwAAABdJ
REFUCJlj+P///38mBgYGBiYGBgYGADH7BAGR0RGuAAAAAElFTkSuQmCC¶meters[ProviderReferenceText]=thank you
&hash=2702ae0c4f99506dc29b5615ba9ee3c0" https://test.apiurl.com/post-va -k