v1

latestOpenAPI 3.0.1Apache 2.02026-07-2647148658.0 KB
Ecom Payments

Initiate a wallet payment using Google Pay or Apple Pay

Initiate a wallet payment or verification request when amount is set to 0 (zero).

post/api/v2/transactions/wallet

Headers

x-vfi-api-idempotencykeystring uuid

A value you specify that uniquely identifies this transaction. This must be used to trigger a reversal if there is a timeout.

Example:63bbc548-d2de-4546-b106-880a5018461c

Request body

payment_provider_contractstring uuid-flexible required

The identifier of payment provider contract you want to process the transaction request with.

amountinteger required

Amount is charged without a decimal place e.g. $1.5 = 150. Currencies can have different decimals/exponentials, see Currencies Section for more details. For Account Verification transactions, provide 0 as value for this field.

auth_type'PRE_AUTH' | 'FINAL_AUTH'

Flags a payment request for either pre-authorization or final authorization.

  • PRE_AUTH is used when the authorized amount is unknown and can be adjusted later.

  • FINAL_AUTH is used when a final authorized amount is known and the transaction will definitely be captured in whole.

capture_nowboolean

Whether auto-capture or not. Setting the value to 'false' will only authorize the transaction.

customerstring uuid-flexible

The ID of a customer.

merchant_referencestring

A reference specified by the merchant to identify the transaction.

shopper_interaction'ECOMMERCE' | 'MAIL' | 'TELEPHONE'

Determines the sales channel the shopper gives their card details through:

  • ECOMMERCE Online transactions where the cardholder is present.

  • MAIL order transactions where the shopper is in contact with the merchant via email.

  • TELEPHONE order transactions where the shopper is in contact with the merchant via telephone.

user_agentstring

The full user agent string of the device the customer used to submit the transaction.

sales_descriptionstring

A reference used by the merchant to typically capture a description of the service provided. It could then be used by the merchant to help locate transactions. One could envision a situation where a merchant is trying to locate a transaction/ receipt but in speaking with the customer, the only (or at least a predominant) detail is what service was rendered

sca_exemption'1' | '2' | '3' | '4' | '5' | '6'

Use this field to request your transaction to be exempted from the application of the Strong Customer Authentication (SCA). Be advised that the use of this field may result to your liability in case of fraudulent transaction.

Possible Values:

1 - Low value payment

2 - Acquirer Transaction Risk Analysis

3 - Trusted beneficiary exemption

4 - Secure Corporate Payment (SCP) exemption

5 - Merchant Initiated Transaction

6 - SCA Delegation

currency_code'AUD' required

Three-letter ISO 4217 alphabetical currency code. Supported values are: AUD

card_brandstring

Represents a Card type or brand. It should correspond to a consistent name, the list of standard names is as follows:

ValueDescription
AMEXAmerican Express
JCBJapan Credit Bureau
MASTERCARDMasterCard
VISAVisa
encrypted_cvvstring

This is an optional field that is only supported with reuse_token or stored_credentials.reference.

wallet_type'APPLE_PAY' | 'GOOGLE_PAY' required
wallet_payloadobject required

The encrypted payload object provided by the Wallet on the frontend

sca_compliance_level'NONE' | 'WALLET' | 'FORCE_3DS'

Determines if 3ds is needed:

sca_compliance_levelWalletPayload authMethodAdditional 3ds
NONEN/ANO
WALLETPAN_ONLYYES
WALLET3DS_CRYPTOGRAMNO
FORCE_3DSN/AYES
promo_codestring

A code defined by the merchant that affects the calculation of the total amount.

tax_indicator'TAX_PROVIDED' | 'TAX_NOT_PROVIDED' | 'NON_TAXABLE'

This field indicates the taxable status of the transaction (if any of the purchased items are taxable). This field is part of so-called Level 2 data. If the value TAX_PROVIDED is sent, tax_amount should also be provided

Example request

{
  "payment_provider_contract": "30b8bec8-5042-4e67-939c-5453fbe41711",
  "customer": "0a57b387-2ba7-4f65-be2f-e176bb49d2ce",
  "merchant_reference": "7a1db7a8-6f24-4bc5-a51b-cef33fc05140",
  "threed_authentication": {
    "eci_flag": "02",
    "enrolled": "Y",
    "pares_status": "A",
    "threeds_version": "1.0.2",
    "signature_verification": "Y",
    "additional_data": {
      "network_score": "20"
    }
  },
  "shipping_information": {
    "address": "3732  Metz Lane",
    "city": "West Roxbury",
    "country": "US",
    "postal_code": "1114",
    "first_name": "Thelma",
    "last_name": "Tatro",
    "phone": 8577532706,
    "state": "MA"
  },
  "customer_details": {
    "shipping": {
      "address": "3732  Metz Lane",
      "city": "West Roxbury",
      "country": "US",
      "postal_code": "1114",
      "first_name": "Thelma",
      "last_name": "Tatro",
      "phone": "8577532706",
      "state": "MA"
    }
  },
  "shopper_interaction": "ECOMMERCE",
  "token_preference": {
    "token_scope": "0e48425a-f1bc-431a-b7d8-f866de8ba276"
  },
  "detailed_amount": {
    "gratuity_amount": 150,
    "tax_amount": 150,
    "surcharge_amount": 150
  }
}

Response

Wallet Result

OR

Example response

{
  "encrypted_card": "U3dhZ2dlciByb2Nrcw==",
  "public_key_alias": "KEY00101"
}