Methods
You can choose the payment methods that you want to display on the payment form.
Use methods array in the Authentication request and specify the values that correspond to the payment methods.
As well, you can use the value of the payment method to add specific parameters to the Authentification request for the paramaters object. These parameters will be sent to the acquirer to pass the necessary data for successful payment.
Card
If the payer chooses the card payment method, fields with card data will be displayed on the Checkout page.
For some connector services, it is necessary to send additional parameters in the Authenticaion request for the paramaters object (for more information, contact your manager).
Additional parameters - Set 1 (BNG)
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
bnrg_installm_def | Numeric justified to 2 digits | Required | Indicates the number of months that will elapse from the purchase until the total or partial charge is made to the cardholder's account (initial deferral). Possible values: 01 - one month 00 - no delay initial |
bnrg_installm_months | Numeric justified to 2 digits | Required | Indicates the number of monthly payments in which the total amount of the transaction will be divided. Example: 03 - 3 months |
bnrg_installm_plan | Numeric justified to 2 digits | Required | Indicates if the promotion It will be ́ with interest or without interest. Possible values: 03 - no interest05 - with interest07 - defer only initial. |
Authentication request example
curl --location -g --request POST '{{CHECKOUT_HOST}}/api/v1/session' \
--header 'Content-Type: application/json' \
--data-raw '{
"merchant_key": "xxxxx-xxxxx-xxxxx",
"operation": "purchase",
"methods": [
"card"
],
"parameters": {
"card": {
"bnrg_installm_def": "03",
"bnrg_installm_months": "03",
"bnrg_installm_plan": "03"
}
},
"order": {
"number": "order-1234",
"amount": "1000.19",
"currency": "MXN",
"description": "Important gift"
},
"cancel_url": "https://example.com/cancel",
"success_url": "https://example.com/success",
"customer": {
"name": "John Doe",
"email": "test@gmail.com"
},
"billing_address": {
"country": "US",
"state": "CA",
"city": "Los Angeles",
"address": "Moor Building 35274",
"zip": "123456",
"phone": "347771112233"
},
"hash": "{{session_hash}}",
}
'
Additional parameters - Set 2 (FCP)
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
document_type | String | Required | Type of the document number specified above. Possibe values: cpf |
document_number | String | Required | Client’s document number |
social_name | String | Required | Client's social name |
fiscal_country | String | Required | An alpha-2 country code of the customer’s tax country |
Authentication request example
curl --location -g --request POST '{{CHECKOUT_HOST}}/api/v1/session' \
--header 'Content-Type: application/json' \
--data-raw '{
"merchant_key": "xxxxx-xxxxx-xxxxx",
"operation": "purchase",
"methods": [
"card"
],
"parameters": {
"card": {
"document_type": "cpf",
"document_number": "231.002.999-00",
"social_name": "Harry Potter",
"fiscal_country": "BR",
"toBankAccountId": "a1a1134a-32c6-442c-90c9-66b587d5be00"
}
},
"order": {
"number": "order-1234",
"amount": "1000.19",
"currency": "BRL",
"description": "Important gift"
},
"cancel_url": "https://example.com/cancel",
"success_url": "https://example.com/success",
"customer": {
"name": "John Doe",
"email": "test@gmail.com"
},
"billing_address": {
"country": "US",
"state": "CA",
"city": "Los Angeles",
"address": "Moor Building 35274",
"zip": "123456",
"phone": "347771112233"
},
"hash": "{{session_hash}}",
}'
Additional parameters - Set 3 (LBP)
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
descriptor | String (20 characters) | Optional | Transaction descriptor |
Authentication request example
curl --location -g --request POST '{{CHECKOUT_HOST}}/api/v1/session' \
--header 'Content-Type: application/json' \
--data-raw '{
"merchant_key": "xxxxx-xxxxx-xxxxx",
"operation": "purchase",
"methods": [
"card"
],
"parameters": {
"card": {
"descriptor": "Testy International LTD"
}
},
"order": {
"number": "order-1234",
"amount": "1000.19",
"currency": "BRL",
"description": "Important gift"
},
"cancel_url": "https://example.com/cancel",
"success_url": "https://example.com/success",
"customer": {
"name": "John Doe",
"email": "test@gmail.com"
},
"billing_address": {
"country": "US",
"state": "CA",
"city": "Los Angeles",
"address": "Moor Building 35274",
"zip": "123456",
"phone": "347771112233"
},
"hash": "{{session_hash}}",
}
'
Additional parameters - set 4 TWD
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
customer_phone | String | Optional | Phone number of the customer. |
customer_telnocc | String | Optional | Country phone code of the customer. |
shipping_street1 | String | Optional | Building name, and/or street name of the customer's shipping address. |
shipping_city | String | Optional | City of the customer's shipping address. |
shipping_state | String | Optional | State or region of the customer's shipping address. |
shipping_postcode | String | Optional | Postal code/ Zip code of the customer's shipping address. Max – 9 digits. |
shipping_country | String | Optional | Country of the shipping address. 3-digits code |
Authentication request example
curl --location -g --request POST '{{CHECKOUT_HOST}}/api/v1/session' \
--header 'Content-Type: application/json' \
--data-raw '{
"merchant_key": "xxxxx-xxxxx-xxxxx",
"operation": "purchase",
"methods": [
"card"
],
"parameters": {
"card": {
"customer_phone": "1234567890",
"customer_telnocc ": "123",
"shipping_street1": " Moor Building 35274",
"shipping_ city": "Los Angeles",
"shipping_state": "CA",
"shipping_postcode": "809654321",
"shipping_ country": "US"
}
},
"order": {
"number": "order-1234",
"amount": "1000.19",
"currency": "USD",
"description": "Important gift"
},
"cancel_url": "https://example.com/cancel",
"success_url": "https://example.com/success",
"customer": {
"name": "John Doe",
"email": "test@gmail.com"
},
"billing_address": {
"country": "US",
"state": "CA",
"city": "Los Angeles",
"address": "Moor Building 35274",
"zip": "123456",
"phone": "347771112233"
},
"hash": "{{session_hash}}"
}
'
Additional parameters - Set 5 (ERS)
This set should be used for debit operation.
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
payer_identity_type | String | Optional | The type of Senders identification document |
payer_identity_id | String | Optional | The number of Senders identification document |
payer_identity_country | String | Optional | The country of issuance of the Senders identification document |
payer_identity_exp_date | String | Optional | The expiration date of the Senders identification document |
payer_nationality | String | Optional | Senders nationality |
payer_country_of_birth | String | Optional | Senders country of birth |
payee_first_name | String | Optional | Receivers first name |
payer_last_name | String | Optional | Receivers last name |
payee_middle_name | String | Optional | Receivers middle name |
payee_address | String | Optional | Receivers street |
payee_city | String | Optional | Receivers city |
payee_state | String | Optional | Receivers state |
payee_country | String | Optional | Receivers country |
payee_zip | String | Optional | Receivers postal code |
payee_phone | String | Optional | Receivers phone number |
payee_birth_date | String | Optional | Receivers date of birth |
payee_identity_type | String | Optional | The type of Receivers identification document |
payee_identity_id | String | Optional | The number of Receivers identification document |
payee_identity_country | String | Optional | The country of issuance of Receivers identification document |
payee_identity_exp_date | String | Optional | The expiration date of Receivers identification document |
payee_nationality | String | Optional | Receivers nationality |
payee_country_of_birth | String | Optional | Receivers country of birth |
Authentication request example
curl --location -g --request POST '{{CHECKOUT_HOST}}/api/v1/session' \
--header 'Content-Type: application/json' \
--data-raw '{
"merchant_key": "xxxxx-xxxxx-xxxxx",
"operation": "purchase",
"methods": [
"card"
],
"parameters": {
"card": {
"payer_identity_type": "Passport",
"payer_identity_id": "ABC123456",
"payer_identity_country": "KZ",
"payer_identity_exp_date": "2026-05-15",
"payer_nationality": "Kazakhstani",
"payer_country_of_birth": "Kazakhstan",
"payee_first_name": "John",
"payer_last_name": "Doe",
"payee_middle_name": "Smith",
"payee_address": "123 Main Street",
"payee_city": "Almaty",
"payee_state": "Almaty Province",
"payee_country": "Kazakhstan",
"payee_zip": "050000",
"payee_phone": "77123456789",
"payee_birth_date": "1990-01-01",
"payee_identity_type": "National ID",
"payee_identity_id": "XYZ987654",
"payee_identity_country": "Kazakhstan",
"payee_identity_exp_date": "2030-12-31",
"payee_nationality": "Kazakhstani",
"payee_country_of_birth": "Kazakhstan"
}
},
"order": {
"number": "order-1234",
"amount": "1000.19",
"currency": "USD",
"description": "Important gift"
},
"cancel_url": "https://example.com/cancel",
"success_url": "https://example.com/success",
"customer": {
"name": "John Doe",
"email": "test@gmail.com"
},
"billing_address": {
"country": "US",
"state": "CA",
"city": "Los Angeles",
"address": "Moor Building 35274",
"zip": "123456",
"phone": "347771112233"
},
"hash": "{{session_hash}}"
}
'
Additional parameters - set 6 (APC)
Shipping Parameters
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
parameters[shipping][street1] | AN100 | Conditional | The door number, floor, building number, building name, and/or street name of the shipping address |
parameters[shipping][street2] | AN100 | Conditional | The adjoining road or locality (if required) of the shipping address |
parameters[shipping][houseNumber1] | AN100 | Optional | Primary house number (door number or building number) of the shipping address |
parameters[shipping][houseNumber2] | AN100 | Optional | Secondary house number of the shipping address |
parameters[shipping][city] | AN80 | Conditional | The town, district or city of the shipping address |
parameters[shipping][state] | AN50 | Conditional | The county, state or region of the shipping address |
parameters[shipping][postcode] | AN16 | Conditional | The postal code or zip code of the shipping address |
parameters[shipping][country] | A2 [A-Za-z]2 | Conditional | The country of the shipping address (ISO 3166-1) |
parameters[shipping][method] | AN30 | Conditional | Method of the shipping |
parameters[shipping][cost] | N13 | Conditional | The total amount of the shipping costs |
parameters[shipping][comment] | AN160 | Conditional | A comment for the shipping |
parameters[shipping][expectedDate] | AN10 | Optional | The expected delivery date |
parameters[shipping][logisticsProvider] | AN255 | Optional | The logistics provider of the shipping |
parameters[shipping][trackingNumber] | AN255 | Optional | The tracking number of the shipping |
parameters[shipping][returnTrackingNumber] | AN255 | Optional | The tracking number issued for returns |
parameters[shipping][normalized] | AN255 | Optional | The normalized shipping address |
parameters[shipping][validationStatus] | AN255 | Optional | Indicates whether an address got validated and normalized address got confirmed by the consumer |
parameters[shipping][warehouse] | AN100 | Optional | The warehouse that fulfilled the order |
parameters[shipping][preference] | AN21 | Optional | Indicates the shipping preference |
parameters[shipping][middleName] | AN | Optional | The middle name for the shipping address |
parameters[shipping][companyName] | AN60 | Optional | The company name for the shipping address |
parameters[shipping][phone] | AN25 | Optional | The phone number for shipping address |
parameters[shipping][workPhone] | AN25 | Optional | The work phone number for shipping address |
parameters[shipping][mobile] | AN25 | Optional | The mobile number for shipping address |
parameters[shipping][email] | AN128 | Optional | The email address for shipping address |
parameters[shipping][type] | AN8 | Optional | Defines type of shipping if return or shipment |
Cart Items Parameters
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
parameters[cart][items][n][name] | AN255 | Conditional | The name of the item in the shopping cart |
parameters[cart][items][n][merchantItemId] | AN255 | Conditional | The unique identifier of the item in the shopping cart |
parameters[cart][items][n][quantity] | N5 | Conditional | The number of items in the shopping cart |
parameters[cart][items][n][type] | AN255 | Conditional | The type of the purchased item in the shopping cart |
parameters[cart][items][n][sku] | AN255 | Optional | The sku cart item |
parameters[cart][items][n][currency] | A3 | Conditional | The currency of the price of the shopping cart |
parameters[cart][items][n][description] | AN2048 | Conditional | The description of the item in the shopping cart |
parameters[cart][items][n][commodityCode] | N8 | Optional | L3 Card data, product commodity code |
parameters[cart][items][n][commodityDescription] | AN50 | Optional | L3 Card data, product commodity description |
parameters[cart][items][n][originalPrice] | AN255 | Optional | The price of the item in the shopping cart (excluding tax and discount) |
parameters[cart][items][n][price] | N13 | Conditional | The price of the item in the shopping cart (including tax and discount) |
parameters[cart][items][n][totalAmount] | N13 | Conditional | The total amount of the cart item including quantity |
parameters[cart][items][n][taxAmount] | N13 | Conditional | The tax amount of the cart item (independent of the quantity) |
parameters[cart][items][n][totalTaxAmount] | N13 | Conditional | The total tax amount of the cart item |
parameters[cart][items][n][tax] | AN6 | Conditional | The tax percentage applied to the price of the item |
parameters[cart][items][n][taxCategory] | AN2 | Conditional | Mandatory L3 Card data tax category |
parameters[cart][items][n][shipping] | N10.N2 | Conditional | The shipping amount applied to the item |
parameters[cart][items][n][discount] | N13 | Conditional | The discount percentage applied to the price |
parameters[cart][items][n][giftMessage] | AN255 | Optional | Gift Message for the specific cart item |
parameters[cart][items][n][shippingMethod] | AN255 | Optional | Shipping method for the cart item |
parameters[cart][items][n][shippingInstructions] | AN255 | Optional | Shipping instructions for the cart item |
parameters[cart][items][n][shippingTrackingNumber] | AN255 | Optional | Shipping tracking number for the cart item |
parameters[cart][items][n][quantityUnit] | M, CM, KG, G, COUNT | Optional | The cart item's unit of quantity |
parameters[cart][items][n][productUrl] | Valid URL | Optional | The cart item's URL |
parameters[cart][items][n][imageUrl] | Valid URL | Optional | The cart item's image URL |
parameters[cart][items][n][totalDiscountAmount] | N10.N2 | Optional | The cart item's total discount amount (related to discount percentage) |
parameters[cart][items][n][productCode] | AN30 | Optional | The cart item's product code given by merchant |
parameters[cart][items][n][partNumber] | AN30 | Optional | The cart item's manufacturer provided part number |
parameters[cart][items][n][itemNumber] | N3 | Optional | The cart item's line number on the invoice |
parameters[cart][items][n][vatReferenceNumber] | AN30 | Optional | Reference number used to identify the VAT invoice or tax receipt |
parameters[cart][items][n][sellerId] | AN255 | Optional | The unique identifier of the marketplace seller for this item |
parameters[cart][items][n][recipient][salutation] | AN5 | Optional | The cart item's recipient title |
parameters[cart][items][n][recipient][firstName] | AN48 | Optional | The cart item's recipient first name |
parameters[cart][items][n][recipient][middleName] | AN50 | Optional | The cart item's recipient middle name |
parameters[cart][items][n][recipient][lastName] | AN48 | Optional | The cart item's recipient last name |
parameters[cart][items][n][recipient][apartment] | AN100 | Optional | The cart item's recipient apartment number |
parameters[cart][items][n][recipient][street] | AN100 | Optional | The cart item's recipient address line 1 |
parameters[cart][items][n][recipient][address] | AN100 | Optional | The cart item's recipient address line 2 |
parameters[cart][items][n][recipient][city] | AN80 | Optional | The cart item's recipient city |
parameters[cart][items][n][recipient][state] | AN50 | Optional | The cart item's recipient state |
parameters[cart][items][n][recipient][postcode] | AN16 | Optional | The cart item's recipient postal code |
parameters[cart][items][n][recipient][country] | A2 [A-Za-z]2, N3 [0-9]3 | Optional | The cart item's recipient country code |
parameters[cart][items][n][recipient][phone] | N25 | Optional | The cart item's recipient phone number |
parameters[cart][items][n][recipient][email] | AN128 | Optional | The cart item's recipient email address |
parameters[cart][items][n][deliveryDate] | AN10 | Optional | The cart item's delivery date |
Cart Payments Parameters
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
parameters[cart][payments][n][name] | AN255 | Optional | The name of the payment method (e.g., promotion giftcard 50) |
parameters[cart][payments][n][type] | AN255 | Optional | The type of the used payment (GIFTCARD, PROMOTION) |
parameters[cart][payments][n][amount] | N10.N2 | Optional | The amount of the associated and already used payment method |
parameters[cart][payments][n][currency] | A3 | Optional | The currency of the already used payment amount |
parameters[cart][payments][n][status] | AN255 | Optional | The status of the already used payment (pending, authorized, captured) |
parameters[cart][payments][n][brand] | AN255 | Optional | The brand of the already used payment method (e.g., SVS) |
parameters[cart][payments][n][primary] | true/false | Optional | Identifies this payment method as primary (true/false) |
Marketplace Sellers Parameters
| Parameter | Type | Mandatory | Description |
|---|---|---|---|
parameters[marketPlace][sellers][n][id] | AN255 | Optional | The unique identifier of the seller |
parameters[marketPlace][sellers][n][amount] | N13 | Optional | The total amount of the items under the seller |
Payload data example
{
"parameters": {
"card": {
"shipping": {
"street1": "123 Main St",
"street2": "Apt 4B",
"houseNumber1": "123",
"houseNumber2": "B",
"city": "New York",
"state": "NY",
"postcode": "10001",
"country": "US",
"method": "UPS",
"cost": "15.00",
"comment": "Leave at front door",
"expectedDate": "2025-06-01",
"logisticsProvider": "UPS",
"trackingNumber": "1Z999AA10123456784",
"returnTrackingNumber": "1Z999AA10123456785",
"normalized": true,
"validationStatus": "VALID",
"warehouse": "WH-001",
"preference": "Evening delivery",
"middleName": "Lee",
"companyName": "Acme Inc",
"phone": "+12125551234",
"workPhone": "+12125554321",
"mobile": "+12125556789",
"email": "user@example.com",
"type": "residential"
},
"cart": {
"items": [
{
"name": "Widget A",
"merchantItemId": "A001",
"quantity": 2,
"type": "product",
"sku": "SKU-A001",
"currency": "USD",
"description": "High-quality widget",
"commodityCode": "123456",
"commodityDescription": "Widgets",
"originalPrice": "25.00",
"price": "20.00",
"totalAmount": "40.00",
"taxAmount": "2.00",
"totalTaxAmount": "4.00",
"tax": "10%",
"taxCategory": "standard",
"shipping": "5.00",
"discount": "5.00",
"giftMessage": "Happy Birthday!",
"shippingMethod": "Express",
"shippingInstructions": "Fragile",
"shippingTrackingNumber": "TRK123456A",
"quantityUnit": "pcs",
"productUrl": "https://example.com/product-a",
"imageUrl": "https://example.com/product-a.jpg",
"totalDiscountAmount": "10.00",
"productCode": "PCA001",
"partNumber": "PART-A",
"itemNumber": "ITEM001",
"vatReferenceNumber": "VAT123456",
"sellerId": "SELLER001",
"recipient": {
"salutation": "Mr.",
"firstName": "John",
"middleName": "A.",
"lastName": "Doe",
"apartment": "Apt 4B",
"street": "123 Main St",
"address": "123 Main St, Apt 4B",
"city": "New York",
"state": "NY",
"postcode": "10001",
"country": "US",
"phone": "+12125556789",
"email": "john.doe@example.com"
},
"deliveryDate": "2025-06-01"
},
{
"name": "Widget B",
"merchantItemId": "B002",
"quantity": 1,
"type": "product",
"sku": "SKU-B002",
"currency": "USD",
"description": "Another great widget",
"commodityCode": "654321",
"commodityDescription": "Gadgets",
"originalPrice": "50.00",
"price": "45.00",
"totalAmount": "45.00",
"taxAmount": "4.50",
"totalTaxAmount": "4.50",
"tax": "10%",
"taxCategory": "standard",
"shipping": "7.00",
"discount": "0.00",
"giftMessage": "",
"shippingMethod": "Standard",
"shippingInstructions": "",
"shippingTrackingNumber": "TRK654321B",
"quantityUnit": "pcs",
"productUrl": "https://example.com/product-b",
"imageUrl": "https://example.com/product-b.jpg",
"totalDiscountAmount": "0.00",
"productCode": "PCB002",
"partNumber": "PART-B",
"itemNumber": "ITEM002",
"vatReferenceNumber": "VAT654321",
"sellerId": "SELLER002",
"recipient": {
"salutation": "Ms.",
"firstName": "Jane",
"middleName": "B.",
"lastName": "Smith",
"apartment": "Suite 5C",
"street": "456 Broadway",
"address": "456 Broadway, Suite 5C",
"city": "Los Angeles",
"state": "CA",
"postcode": "90012",
"country": "US",
"phone": "+13105557890",
"email": "jane.smith@example.com"
},
"deliveryDate": "2025-06-03"
}
],
"payments": [
{
"name": "promotion giftcard 50",
"type": "GIFTCARD",
"amount": "50.00",
"currency": "USD",
"status": "captured",
"brand": "SVS",
"primary": false
},
{
"name": "spring promo",
"type": "PROMOTION",
"amount": "10.00",
"currency": "USD",
"status": "authorized",
"brand": "StorePromo",
"primary": true
}
]
},
"marketPlace": {
"sellers": [
{
"id": "SELLER001",
"amount": "450.00"
},
{
"id": "SELLER002",
"amount": "600.00"
}
]
}
}
}
}
Apple Pay
To use the applepay 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 protocol:
Checkout Page: No additional development is required on your side.
S2S 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 Developer 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).
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 Checkout 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. Download the verification file and provide it to support to complete the domain verification.
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."
Apple Pay Payment Flow
By default, all Apple Pay payments on the platform are classified as virtual. As a result:
- Card details are not stored for these transactions.
- Functionality is limited for DMS payments and the creation of recurring transactions.
You can maximize the benefits of Apple Pay payments by leveraging card flow for digital wallets:
- Access to post-transaction operations, such as capture in DMS mode
- Support for recurring payments (MIT) – scheduled or on-demand
- Smart routing for optimized payment processing
- Payment cascading for improved success rates
Note! Ensure your provider supports these operations.
To access the card flow for Apple Pay payments, you need to:
- Set up the Processing Private Key in the admin panel settings ("Merchants" section → "Wallets" tab) to enable token decryption.
- Verify that your payment provider supports card flow processing (ask your support if available).
How It Works:
- If both requirements are met, the system will always decrypt the Apple Pay token during payment and store the decrypted card data for future transactions.
- You can view decrypted card details in the Transaction Details section of the admin panel.
- If any requirement is not met, the payment will be processed using the virtual flow instead.
- If your provider supports card flow but does not accept decrypted data, platform can still store the card details for processing. However, some features (e.g., smart routing and cascading) will not be available.
Google Pay
To provide the payers with the possibility of Google Pay™ payment you can connect to the Checkout or work directly via S2S protocol.
If you are using Checkout integration to work with googlepay payment method, it requires no additional code implementation.
If you are using S2S integration to work with googlepay payment method, you must be able to obtain the Google Pay payment token and include it in the SALE request.
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.
⚠️ 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
To set up Google Pay, you first need to determine who acts as the gateway when processing payments: the platform or the payment provider. This depends on which side decrypts the Google Pay payment token.
- If the platform decrypts the token and then sends the decrypted payment data to the payment provider, the platform acts as the gateway.
- If the payment provider decrypts the token (i.e., expects to receive an encrypted payment token in the payment request), the payment provider is the gateway.
The gateway (whether it is the platform or the payment provider processing Google Pay) must provide the following information:
- Gateway: The name of the gateway.
- Gateway Merchant ID: The merchant identifier in the gateway's system.
⚠️ Note
If the payment provider is the gateway, it is important to clarify whether they expect the token to include additional information, such as the payer's address or phone number.
The next step is to enter the data into the admin panel.
Go to the "Merchants" section, initiate editing, open the "Wallets" tab, navigate to the Google Pay settings, and fill in the following fields:
- Merchant Identifier: Enter the identifier from the Google Business Console. If the platform is the gateway, you can duplicate the Gateway Merchant ID here.
- Gateway: The gateway for interaction with Google Pay.
- Gateway Merchant ID: The merchant identifier in the Google gateway.
- Private Key (required for decrypted token): The key for decrypting the payment token. If the platform is the gateway, the key should be provided by the platform. If the payment provider is the gateway, the key is not required.
- Include Additional Parameters to Google Token: Depending on the payment provider's requirements.
Additionally, to work with Google Pay payments, you must verify the checkout domains from which Google Pay is processed in the Google Business Console. For domain verification, you may need to contact support.
Google Pay Payment Flow
By default, all Google Pay payments on the platform are classified as virtual. As a result:
- Card details are not stored for these transactions.
- Functionality is limited for DMS payments and the creation of recurring transactions.
You can maximize the benefits of Google Pay payments by leveraging card flow for digital wallets:
- Access to post-transaction operations, such as capture in DMS mode
- Support for recurring payments (MIT) – scheduled or on-demand
- Smart routing for optimized payment processing
- Payment cascading for improved success rates
Note! Ensure your provider supports these operations.
To access the card flow for Google Pay payments, you need to:
- Set up the Private Key in the admin panel settings ("Merchants" section → "Wallets" tab) to enable token decryption.
- Verify that your payment provider supports card flow processing (ask your support if available).
How It Works:
- If both requirements are met, the system will always decrypt the Google Pay token during payment and store the decrypted card data for future transactions.
- You can view decrypted card details in the Transaction Details section of the admin panel.
- If any requirement is not met, the payment will be processed using the virtual flow instead.
- If your provider supports card flow but does not accept decrypted data, platform can still store the card details for processing. However, some features (e.g., smart routing and cascading) will not be available.
naps
payment_method = naps
om-wallet
If the payer chooses the om-wallet payment method, the field for entering the phone number in international format will be additionally displayed on the Checkout page.