For the complete documentation index, see llms.txt. This page is also available as Markdown.

Ecom Payments

Initiate a payment

post
/api/v2/transactions/card

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

Transactions business models

Business model
Transaction type
Shopper Interaction
Stored Credential Contract
Stored Credential Processing Model

Online purchase with shopper present

One-off online purchase without storing card payment details for future use.

ECOMMERCE

Online purchase with shopper present

Online purchase where shopper agrees to store card details for future use. This can be a zero-value transaction account verification.

ECOMMERCE

CREDENTIAL_ON_FILE

Online purchase with shopper present

Online purchase where shopper uses previously stored card payment details.

ECOMMERCE

ONE_CLICK

CREDENTIAL_ON_FILE

Subscriptions

Initial transaction to sign up for a subscription.

ECOMMERCE

RECURRING

Subscriptions

Subsequent subscription charge.

ECOMMERCE

MERCHANT_INITIATED

RECURRING

Non-fixed in time contracts (such as auto account top-ups)

Initial transaction to sign up for the terms and conditions of later subsequent charges.

ECOMMERCE

UNSCHEDULED_CREDENTIAL_ON_FILE

Non-fixed in time contracts (such as auto account top-ups)

Subsequent charges as described in the initial terms and conditions during the sign-up transaction.

ECOMMERCE

MERCHANT_INITIATED

UNSCHEDULED_CREDENTIAL_ON_FILE

Authorizations
AuthorizationstringRequired
Header parameters
x-vfi-api-idempotencykeystring · uuidOptional

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
Body
or
Responses
201

Ecommerce Payment Result

application/json
idstring · uuid-flexibleOptional

The ID of the transaction.

Example: 76944d4b-89e6-48d2-ac04-675383c3eedf
payment_provider_contractstring · uuid-flexibleOptional

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

Example: 30b8bec8-5042-4e67-939c-5453fbe41711
amountintegerOptional

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.

Example: 0
blockedbooleanOptional

True if the transaction has been blocked by a ruleset, false otherwise

created_atstring · date-timeOptional

The time at which the transaction was created.

customerstringOptional

The ID of a customer

merchant_referencestringOptional

A reference specified by the merchant to identify the transaction

payment_productstringOptional

The payment product corresponding to this transaction

payment_product_typestringOptional

The name of the processor used for this transaction

processor_referencestringOptional

Reference identifying the transaction, as provided by the processor.

processor_detailsobjectOptional

Stores all details specific for the processor of the transaction.

statusstring · enumOptional

The outcome of the payment request.

Example: AUTHORIZEDPossible values:
status_reasonstringOptional

Message provided by the 3rd party service as additional information, when the transaction does not succeed.

arnstringOptional

Acquirer reference number. Generated by the Acquirer at the time of clearing for card transactions.

authorization_codestring · max: 6Optional
  • When the payment is authorized successfully, this field holds the authorization code for the payment.

  • When the payment is not authorized, this field is not returned.

Example: 5B1D4C
avs_resultstring · enumOptional

Address verification services result, which provides information about the outcome of the AVS check. The full list of codes and descriptions can be found here

Example: APossible values:
cardstringOptional

The token representing the payment card

created_bystringOptional

The ID of the user who initiated the transaction. Only set when shopper_interaction = moto, mail_order or telephone_order

cvv_presentbooleanOptional

True if the card was used with a cvv

cvv_resultstring · enumOptional

The CVC verification result, which provides information about the outcome of the CVC check.

CVC-CVV result codes:

  • 0 Unknown
  • 1 Matches.
  • 2 Doesn't match.
  • 3 Not checked.
  • 4 No CVC/CVV provided, but was required.
  • 5 Issuer not certified for CVC/CVV.
  • 6 No CVC/CVV provided.

The following are included only for backwards compatibility. They are deprecated and will be removed in the next major release. The client must take action now to ensure ongoing support.

  • M Match
  • Y Match
  • N No Match
  • P Not Processed
  • S CVV Should be present, but Merchant indicates not present.
  • U Issuer not certified or registered to process card verification.
Example: 1Possible values:
cavv_resultstring · enumOptional

This field will be populated for any Verified by Visa transaction and AVV Authorisation message sent by MasterCard SecureCode: This includes CAVV and AEVV from American Express SafeKey.

CAVV Transaction Response Code Values:

  • 0 CAVV or AEVV Not Validated due to erroneous data submitted.

  • 1 CAVV or AEVV Failed Validation - Authentication Transaction. This is an indication of potential bad or fraudulent data submitted.

  • 2 CAVV or AEVV Passed Validation – Authentication Transaction.

  • 3 CAVV or AEVV Passed Validation – Attempted Authentication Transaction. (Determined that the Issuer ACS generated this value from the use of the Issuer’s CAVV/AEVV key[s]).

  • 4 CAVV or AEVV Failed Validation – Attempted Authentication Transaction. Attempted Authentication Transaction. This is an indication of potential bad or fraudulent data submitted as the CAVV/AEVV. (Determined that Visa generated this value from the use of CAVV/AEVV key[s]).

  • 5 Reserved.

  • 6 CAVV or AEVV Not Validated – Issuer not participated. This value is generated when an Issuer requests the do not verify flag to be established for its BINs. This parameter enables an Issuer to temporarily stop CAVV/AEVV verification while resolving CAVV/AEVV key issues. VisaNet processes this value as a valid CAVV/AEVV.

  • 7 CAVV or AEVV Failed Validation – Attempted Authentication Transaction. This is an indication of potential bad or fraudulent data submitted as the CAVV/AEVV. (CAVV/AEVV generated with Visa Key).

  • 8 CAVV or AEVV Passed Validation – Attempted Authentication Transaction. (CAVV/AEVV generated with Visa Key).

  • 9 CAVV or AEVV Failed Validation – Attempted Authentication Transaction. This is an indication of potential bad or fraudulent data submitted as the CAVV/AEVV (CAVV/AEVV generated with Visa Key – Issuer ACS unavailable).

  • 99 An unknown value was returned from the processor.

  • A CAVV or AEVV Passed Validation – Attempted Authentication Transaction. (CAVV/AEVV generated with Visa Key – Issuer ACS unavailable).

  • B CAVV or AEVV Failed Validation – Attempted Authentication Transaction. This is an indication of potential bad or fraudulent data submitted as the CAVV/AEVV. (CAVV/AEVV generated with Visa Key).

  • C CAVV or AEVV Not Validated – Attempted Authentication Transaction. Issuer did not return a CAVV/AEVV results code in the authorisation response. VisaNet will treat this as valid CAVV/AEVV if the Issuer approves the authorisation.

  • D CAVV or AEVV Not Validated – Authentication. Issuer did not return a CAVV/AEVV results code in the authorisation response. VisaNet will treat this as valid CAVV/AEVV if the Issuer approves the authorisation.

  • I Invalid Security Data.

  • U Issuer does not participate or 3-D Secure data not utilised.

  • NA Blank CAVV or AEVV Not Present.

Example: 99Possible values:
invoice_numberstring · max: 127Optional

Optional. The invoice number to track this payment.

reason_codestring · max: 4Optional

A reason code assigned by the acquiring platform; '0000' in case of success

rrnstring · max: 12Optional

A client (user friendly) identifier for the transaction generated at the outset of a business event. The format will be dependent on the calling system.

A reference supplied by the system retaining the original source information and used to assist in locating that transaction or a copy of the transaction. This value is critical in matching values that are sent to other Payment processors or Acquirers. This value would correspond to the ISO8583 specification as RRN in attribute DE 37, which limits the value to being an alphanumeric value 12 characters.

For the GSC client android application the format will correspond to YYMMdd<stan 6 digits>.

Example: 200211654321
shopper_interactionstring · enumOptional

Determines the point of sale of a customer. Possible values: pos, moto, mail_order, telephone_order, ecommerce and cont_auth

Possible values:
stanstringOptional

System Trace Audit Number.

reversal_statusstring · enumOptional

Indicates to the API client if a technical reversal has been completed by Verifone.

Default: NONEPossible values:
geo_locationnumber[]Optional

The latitude / longitude resolved from the customer's ip address.

Example: ["52.370216","4.895168"]
citystringOptional

The city resolved from the customer's ip address.

Example: West Roxbury
country_codestringOptional

The country code resolved from the customer's ip address.

Example: US
promo_codestringOptional

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

purchase_order_numberstring · max: 17Optional

The purchase order number. It can be provided in transactions with purchase or procurement cards for the cardholder to get better interchange rates (note that this functionality needs alignment with the acquirer and the scheme). This field is part of so-called Level 2 data.

balance_amountintegerOptional

Balance amount is the amount remaining on a card or account of cardholder without a decimal place e.g. $1.5 = 150.

The required number of decimal places for a currency code is according to ISO 4217. However the following table takes precedence over ISO 4217:

post
/api/v2/transactions/card

Initiate a wallet payment using Google Pay or Apple Pay

post
/api/v2/transactions/wallet

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

Transactions business models

Business model
Transaction type
Shopper Interaction
Stored Credential Contract
Token Preference or Reference
Stored Credential Request Type
Stored Credential Processing Model

Online purchase with shopper present

One-off online purchase without storing card payment details for future use.

ECOMMERCE

Online purchase with shopper present

Online purchase where shopper agrees to store card details for future use. This can be a zero-value transaction account verification.

ECOMMERCE

REUSE

SIGNUP

NONE

Subscriptions

Initial transaction to sign up for a subscription.

ECOMMERCE

REUSE or reuse_token

SIGNUP

RECURRING

Non-fixed in time contracts (such as auto account top-ups)

Initial transaction to sign up for the terms and conditions of later subsequent charges.

ECOMMERCE

REUSE

SIGNUP

NONE

Note: To initiate a transaction with reference to previously stored credentials ( `CHARGE` ) use ``/v2/transactions/card`` endpoint instead.

Authorizations
AuthorizationstringRequired
Header parameters
x-vfi-api-idempotencykeystring · uuidOptional

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
Body
payment_provider_contractstring · uuid-flexibleRequired

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

Example: 30b8bec8-5042-4e67-939c-5453fbe41711
amountintegerRequired

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.

Example: 0
auth_typestring · enumOptional

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.

Default: FINAL_AUTHPossible values:
capture_nowbooleanOptional

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

Default: trueExample: false
customerstring · uuid-flexibleOptional

The ID of a customer.

Example: 0a57b387-2ba7-4f65-be2f-e176bb49d2ce
customer_ipone of · max: 15Optional

The IP Address of the customer where the transaction was initiated.

Example: 127.0.0.1
string · ipv4Optional
or
string · ipv6Optional
dynamic_descriptorstring · max: 25Optional

A short descriptor to be shown on bank statement of the customer. Please refer to the integration guide for the format requirements.

merchant_referencestring · max: 50Optional

A reference specified by the merchant to identify the transaction.

Example: 7a1db7a8-6f24-4bc5-a51b-cef33fc05140
receipt_typestring · enumOptional

Defines the type of receipt to be generated

Possible values:
shopper_interactionstring · enumOptional

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.

Default: ECOMMERCEExample: ECOMMERCEPossible values:
user_agentstring · max: 256Optional

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

sales_descriptionstring · max: 200Optional

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_exemptionstring · enumOptional

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

Possible values:
currency_codestring · enumRequired

Three-letter ISO 4217 alphabetical currency code. e.g. USD.

Values correspond to ISO 4217.

Possible values:
card_brandstringOptional

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

ValueDescription
AMEXAmerican Express
CBCarte Bancaires
DINERSDiners Club International
DISCOVERDiners Club Discover
JCBJapan Credit Bureau
MAESTROMulti-national Debit (MasterCard)
MASTERCARDMasterCard
VISAVisa
UPIUnion Pay International
GIFT_CARDGift Card (Generic)
PLCCPrivate Label Credit Card
Other local schemes as applicable. Enter a pre-defined name to represent the scheme or type.
Note: 1. For gift cards, card brand is mandatory and the value should be GIFT_CARD.
  1. This parameter is mandatory for dual branded cards.
encrypted_cvvstringOptional

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

brand_choicestring · enumOptional

For dual-branded cards identifies whether selection is made by a cardholder or merchant.

Default: MERCHANTPossible values:
refusal_reasonstring · enumOptional

The reason a transaction has been refused within the payment ecosystem by the client/Verifone/acquirer. This needs to be set by the component that is refusing this transaction request.

Possible values:
wallet_typestring · enumRequiredPossible values:
wallet_payloadobjectRequired

The encrypted payload object provided by the Wallet on the frontend

sca_compliance_levelstring · enumOptional

Determines if 3ds is needed:

sca_compliance_levelWalletPayload authMethodAdditional 3ds
NONEN/ANO
WALLETPAN_ONLYYES
WALLET3DS_CRYPTOGRAMNO
FORCE_3DSN/AYES
Default: WALLETPossible values:
promo_codestringOptional

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

purchase_order_numberstring · max: 17Optional

The purchase order number. It can be provided in transactions with purchase or procurement cards for the cardholder to get better interchange rates (note that this functionality needs alignment with the acquirer and the scheme). This field is part of so-called Level 2 data.

tax_indicatorstring · enumOptional

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

Default: TAX_NOT_PROVIDEDPossible values:
Responses
201

Wallet Result

application/json
or
post
/api/v2/transactions/wallet

Start payment session for Apple Pay wallet transactions

post
/api/v2/apple-pay/validation

Create a merchant payment session

Authorizations
AuthorizationstringRequired
Body
validation_urlstringRequired

The URL pointing to the Apple Pay validation location.

Note: Use the URL below according to your Verifone environment:

domainstringRequired

The domain from which the payment request will be initiated.

payment_provider_contractstring · uuid-flexibleRequired

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

Example: 30b8bec8-5042-4e67-939c-5453fbe41711
Responses
201

The Apple Pay Validation Response.

application/json
objectOptional

object (Apple Pay opaque session object)

post
/api/v2/apple-pay/validation

Initiate a Vipps payment

post
/api/v2/transactions/vipps

Initiate a Vipps payment.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Header parameters
x-vfi-api-idempotencykeystring · uuidOptional

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
Body
payment_provider_contractstring · uuid-flexibleRequired

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

Example: 30b8bec8-5042-4e67-939c-5453fbe41711
app_phone_numberstring · max: 18Optional

The Phone Number registered with Vipps Mobile APP.

Example: +31-6-11223344
redirect_urlstring · max: 2048Required

Checkout Redirect URL which will be used by Vipps on Payment Completion.

is_appbooleanOptional

Flag to identify the transaction originated from APP or Browser.

Default: falseExample: false
amountintegerRequired

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.

Example: 150
auth_typestring · enumOptional

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.
Default: FINAL_AUTHPossible values:
capture_nowbooleanOptional

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

Default: trueExample: false
customerstring · uuid-flexibleRequired

The ID of a customer.

Example: 0a57b387-2ba7-4f65-be2f-e176bb49d2ce
customer_ipone of · max: 15Optional

The IP Address of the customer where the transaction was initiated.

Example: 127.0.0.1
string · ipv4Optional
or
string · ipv6Optional
dynamic_descriptorstring · max: 25Optional

A short descriptor to be shown on bank statement of the customer. Please refer to the integration guide for the format requirements.

merchant_referencestring · max: 50Required

A reference specified by the merchant to identify the transaction.

Example: 7a1db7a8-6f24-4bc5-a51b-cef33fc05140
user_agentstring · max: 256Optional

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

sales_descriptionstring · max: 200Optional

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

currency_codestring · enumRequired

Three-letter ISO 4217 alphabetical currency code. e.g. USD. Values correspond to ISO 4217.

Please note that Klarna only supports Norwegian krone (NOK).

Possible values:
sca_compliance_levelstring · enumOptional
  • NONE: No SCA required.
  • WALLET: Depend on the wallet SCA mechanism. For Google Pay this means that MasterCard will shift liability, Visa will not.
  • FORCE_3DS: Do an additional 3DS step regardless of whether the wallet indicates the token is SCA-compliant.
Default: WALLETPossible values:
sca_exemptionstring · enumOptional

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.

NOTE: This only applies when sca_compliance_level = NONE

Possible values:
Responses
201

The Vipps Payment Initiation Response.

application/json
idstring · uuid-flexibleOptional

The ID of the transaction.

Example: 76944d4b-89e6-48d2-ac04-675383c3eedf
redirect_urlstringOptional

Vipps Host Redirection URL.

amountintegerOptional

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.

Example: 150
blockedbooleanOptional

True if the transaction has been blocked by a ruleset, false otherwise

created_atstring · date-timeOptional

The time at which the transaction was created.

customerstringOptional

The ID of a customer

merchant_referencestring · max: 50Optional

A reference specified by the merchant to identify the transaction.

Example: 7a1db7a8-6f24-4bc5-a51b-cef33fc05140
processorstringOptional

The name of the processor used for this transaction

Default: NETS
payment_productstringOptional

The payment product corresponding to this transaction

Default: CARD
payment_product_typestring · enumOptional

The payment product type corresponding to this transaction. Fees applied to the transaction, is based on the payment product

Default: UnknownPossible values:
statusstring · enumOptional

The outcome of the payment request.

Example: AUTHORIZEDPossible values:
status_reasonstringOptional

Message provided by the 3rd party service as additional information, when the transaction does not succeed.

created_bystringOptional

The ID of the user who initiated the transaction. Only set when shopper_interaction = moto, mail_order or telephone_order

shopper_interactionstring · enumOptional

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.

Default: ECOMMERCEExample: ECOMMERCEPossible values:
geo_locationnumber[]Optional

The latitude / longitude resolved from the customer's ip address.

Example: [52.370216,4.895168]
citystringOptional

The city resolved from the customer's ip address.

Example: West Roxbury
country_codestringOptional

The ISO 3166-1 alpha-2 country code.

Note: The country code for Great Britain is GB and not UK as is used in that country's top-level domain names.
.

Example: AU
post
/api/v2/transactions/vipps

Initiate a MobilePay payment

post
/api/v2/transactions/mobilepay

Initiate a MobilePay payment.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Header parameters
x-vfi-api-idempotencykeystring · uuidOptional

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
Body
payment_provider_contractstring · uuid-flexibleRequired

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

Example: 30b8bec8-5042-4e67-939c-5453fbe41711
redirect_urlstring · max: 2048Required

Checkout Redirect URL which will be used by MobilePay on Payment Completion.

amountintegerRequired

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.

Example: 0
auth_typestring · enumOptional

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.
Default: FINAL_AUTHPossible values:
capture_nowbooleanOptional

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

Default: trueExample: false
customerstring · uuid-flexibleRequired

The ID of a customer.

Example: 0a57b387-2ba7-4f65-be2f-e176bb49d2ce
customer_ipone of · max: 15Optional

The IP Address of the customer where the transaction was initiated.

Example: 127.0.0.1
string · ipv4Optional
or
string · ipv6Optional
dynamic_descriptorstring · max: 25Optional

A short descriptor to be shown on bank statement of the customer. Please refer to the integration guide for the format requirements.

merchant_referencestring · max: 50Required

A reference specified by the merchant to identify the transaction.

Example: 7a1db7a8-6f24-4bc5-a51b-cef33fc05140
user_agentstring · max: 256Optional

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

sales_descriptionstring · max: 200Optional

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

currency_codestring · enumRequired

Three-letter ISO 4217 alphabetical currency code. e.g. USD. Values correspond to ISO 4217.

Please note that Klarna only supports EURO (EUR) and Danish krone (DKK).

Possible values:
sca_compliance_levelstring · enumOptional
  • NONE: No SCA required.
  • WALLET: Depend on the wallet SCA mechanism. For Google Pay this means that MasterCard will shift liability, Visa will not.
  • FORCE_3DS: Do an additional 3DS step regardless of whether the wallet indicates the token is SCA-compliant.
Default: WALLETPossible values:
sca_exemptionstring · enumOptional

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.

NOTE: This only applies when sca_compliance_level = NONE

Possible values:
Responses
201

The MobilePay Payment Initiation Response.

application/json
idstring · uuid-flexibleOptional

The ID of the transaction.

Example: 76944d4b-89e6-48d2-ac04-675383c3eedf
redirect_urlstringOptional

MobilePay Host Redirection URL.

amountintegerOptional

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.

Example: 150
blockedbooleanOptional

True if the transaction has been blocked by a ruleset, false otherwise

created_atstring · date-timeOptional

The time at which the transaction was created.

customerstringOptional

The ID of a customer

merchant_referencestring · max: 50Optional

A reference specified by the merchant to identify the transaction.

Example: 7a1db7a8-6f24-4bc5-a51b-cef33fc05140
processorstringOptional

The name of the processor used for this transaction

Default: NETS
payment_productstringOptional

The payment product corresponding to this transaction

Default: CARD
payment_product_typestring · enumOptional

The payment product type corresponding to this transaction. Fees applied to the transaction, is based on the payment product

Default: UnknownPossible values:
statusstring · enumOptional

The outcome of the payment request.

Example: AUTHORIZEDPossible values:
status_reasonstringOptional

Message provided by the 3rd party service as additional information, when the transaction does not succeed.

created_bystringOptional

The ID of the user who initiated the transaction. Only set when shopper_interaction = moto, mail_order or telephone_order

shopper_interactionstring · enumOptional

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.

Default: ECOMMERCEExample: ECOMMERCEPossible values:
geo_locationnumber[]Optional

The latitude / longitude resolved from the customer's ip address.

Example: [52.370216,4.895168]
citystringOptional

The city resolved from the customer's ip address.

Example: West Roxbury
country_codestringOptional

The ISO 3166-1 alpha-2 country code.

Note: The country code for Great Britain is GB and not UK as is used in that country's top-level domain names.
.

Example: AU
post
/api/v2/transactions/mobilepay

Initiate a Klarna payment.

post
/api/v2/transactions/klarna

Initiate a Klarna payment.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Header parameters
x-vfi-api-idempotencykeystring · uuidOptional

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
Body
entity_idstring · uuid-flexibleRequired

The identifier of merchant entity you want to process the transaction request with. Entity Id can be located on the organization level as Organization ID (Administration > Organizations > [Organization] > Organisation ID value)

Example: 30b8bec8-5042-4e67-939c-5453fbe41711
amountintegerRequired

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.

Example: 150
tax_amountintegerOptional

Tax Amount is charged without a decimal place e.g. $1.5 = 150. Currencies can have different decimals/exponentials, see Currencies Section for more details.

redirect_urlstring · max: 2048Required

Checkout Redirect URL which will be used by Klarna on Payment Completion.

capture_nowbooleanOptional

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

Default: trueExample: false
customerstring · uuid-flexibleRequired

The ID of a customer.

Example: 0a57b387-2ba7-4f65-be2f-e176bb49d2ce
customer_ipone of · max: 15Optional

The IP Address of the customer where the transaction was initiated.

Example: 127.0.0.1
string · ipv4Optional
or
string · ipv6Optional
dynamic_descriptorstring · max: 25Optional

A short descriptor to be shown on bank statement of the customer. Please refer to the integration guide for the format requirements.

merchant_referencestring · max: 50Optional

A reference specified by the merchant to identify the transaction.

Example: 7a1db7a8-6f24-4bc5-a51b-cef33fc05140
user_agentstring · max: 256Optional

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

sales_descriptionstring · max: 200Optional

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

currency_codestring · enumRequired

Three-letter ISO 4217 alphabetical currency code. e.g. EUR. Values correspond to ISO 4217.

Please note that Klarna only supports EURO (EUR), Norwegian krone (NOK) , Swedish krona (SEK) and Danish krone (DKK).

Possible values:
Responses
201

Klarna Initiate Payment Result.

application/json
idstring · uuid-flexibleOptional

The ID of the transaction.

Example: 76944d4b-89e6-48d2-ac04-675383c3eedf
instore_referencestringOptional

In-store reference for the transaction

client_tokenstringOptional

Client token returned by klarna host to initialize the payment process

amountintegerOptional

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.

Example: 150
blockedbooleanOptional

True if the transaction has been blocked by a ruleset, false otherwise

created_bystringOptional

The ID of the user who initiated the transaction. Only set when shopper_interaction = moto, mail_order or telephone_order

created_atstring · date-timeOptional

The time at which the transaction was created.

customerstringOptional

The ID of a customer

merchant_referencestring · max: 50Optional

A reference specified by the merchant to identify the transaction.

Example: 7a1db7a8-6f24-4bc5-a51b-cef33fc05140
processorstringOptional

The name of the processor used for this transaction

Default: KLARNA
payment_productstringOptional

The payment product corresponding to this transaction

Default: KLARNA
payment_product_typestring · enumOptional

The payment product type corresponding to this transaction. Fees applied to the transaction, is based on the payment product

Default: UnknownPossible values:
statusstring · enumOptional

The outcome of the payment request.

Example: AUTHORIZEDPossible values:
status_reasonstringOptional

Message provided by the 3rd party service as additional information, when the transaction does not succeed.

shopper_interactionstring · enumOptional

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.

Default: ECOMMERCEExample: ECOMMERCEPossible values:
geo_locationnumber[]Optional

The latitude / longitude resolved from the customer's ip address.

Example: [52.370216,4.895168]
citystringOptional

The city resolved from the customer's ip address.

Example: West Roxbury
country_codestringOptional

The ISO 3166-1 alpha-2 country code.

Note: The country code for Great Britain is GB and not UK as is used in that country's top-level domain names.
.

Example: AU
post
/api/v2/transactions/klarna

Initiate a Swish payment

post
/api/v2/transactions/swish

Initiate a Swish payment.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Header parameters
x-vfi-api-idempotencykeystring · uuidOptional

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
Body
entity_idstring · uuid-flexibleOptional

The identifier of merchant entity you want to process the transaction request with. Entity Id can be located on the organization level as Organization ID (Administration > Organizations > [Organization] > Organisation ID value)

Example: 30b8bec8-5042-4e67-939c-5453fbe41711
app_phone_numberstring · max: 18Optional

The Phone Number registered with Swish Mobile APP. This field is required for ECommerce flow, not needed MCommerce flow.

Example: +31-6-11223344
amountintegerRequired

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.

Example: 150
customerstring · uuid-flexibleOptional

The ID of a customer.

Example: 0a57b387-2ba7-4f65-be2f-e176bb49d2ce
customer_ipone of · max: 15Optional

The IP Address of the customer where the transaction was initiated.

Example: 127.0.0.1
string · ipv4Optional
or
string · ipv6Optional
dynamic_descriptorstring · max: 50Optional

A short descriptor to be shown on bank statement of the customer and also shown in the Swish application. Max 50 chars, allowed characters are the letters a-ö, A-Ö, the numbers 0-9 and the special characters :;.,?!()” and space

merchant_referencestring · max: 50Required

A reference specified by the merchant to identify the transaction.

Example: 7a1db7a8-6f24-4bc5-a51b-cef33fc05140
user_agentstring · max: 256Optional

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

sales_descriptionstring · max: 200Optional

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

currency_codestring · enumRequired

Three-letter ISO 4217 alphabetical currency code. e.g. USD. Values correspond to ISO 4217.

Please note that Swish only supports Swedish krona (SEK).

Possible values:
Responses
201

The Swish Payment Initiation Response.

application/json
idstring · uuid-flexibleOptional

The ID of the transaction.

Example: 76944d4b-89e6-48d2-ac04-675383c3eedf
amountintegerOptional

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.

Example: 150
blockedbooleanOptional

True if the transaction has been blocked by a ruleset, false otherwise

created_atstring · date-timeOptional

The time at which the transaction was created.

customerstringOptional

The ID of a customer

merchant_referencestring · max: 50Optional

A reference specified by the merchant to identify the transaction.

Example: 7a1db7a8-6f24-4bc5-a51b-cef33fc05140
processorstringOptional

The name of the processor used for this transaction

Default: SWISH
payment_productstringOptional

The payment product corresponding to this transaction

Default: SWISH
payment_product_typestring · enumOptional

The payment product type corresponding to this transaction. Fees applied to the transaction, is based on the payment product

Default: UnknownPossible values:
statusstring · enumOptional

The outcome of the payment request.

Example: AUTHORIZEDPossible values:
status_reasonstring · enumOptional

The outcome of the payment request.

Example: AUTHORIZEDPossible values:
created_bystringOptional

The ID of the user who initiated the transaction. Only set when shopper_interaction = moto, mail_order or telephone_order

shopper_interactionstring · enumOptional

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.

Default: ECOMMERCEExample: ECOMMERCEPossible values:
geo_locationnumber[]Optional

The latitude / longitude resolved from the customer's ip address.

Example: [52.370216,4.895168]
citystringOptional

The city resolved from the customer's ip address.

Example: West Roxbury
country_codestringOptional

The ISO 3166-1 alpha-2 country code.

Note: The country code for Great Britain is GB and not UK as is used in that country's top-level domain names.
.

Example: AU
payment_request_tokenstringOptional

Returned when creating an m-commerce payment request. The token to use when opening the Swish app. Please find more details at Swish documentation.

post
/api/v2/transactions/swish

Initiate a OP Online payment

post
/api/v2/transactions/op-online-payment

Initiate a OP Online payment.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Header parameters
x-vfi-api-idempotencykeystring · uuidOptional

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
Body
payment_provider_contractstring · uuid-flexibleRequired

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

Example: 30b8bec8-5042-4e67-939c-5453fbe41711
bank_idstring · max: 40Required

OP bank ID for the bank to be used

bank_namestringOptional

Bank name for the selected Bank

amountintegerRequired

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.

Example: 150
customerstring · uuid-flexibleOptional

The ID of a customer.

Example: 0a57b387-2ba7-4f65-be2f-e176bb49d2ce
dynamic_descriptorstring · max: 50Optional

A short descriptor to be shown on the invoice of the customer. Please refer to the integration guide for the format requirements.

merchant_referencestring · max: 50Required

A reference specified by the merchant to identify the transaction.

Example: 7a1db7a8-6f24-4bc5-a51b-cef33fc05140
user_agentstring · max: 256Optional

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

currency_codestring · enumRequired

Three-letter ISO 4217 alphabetical currency code. e.g. USD. Values correspond to ISO 4217.

Deprecated: BYR (replaced by BYN), FRF (replaced by EUR), LTL (replaced by EUR), LVL (replaced by EUR), MRO (replaced by MRU), STD (replaced by STN), USS (no replacement), VEF (replaced by VES), ZMK (replaced by ZMV) and BTC (Bitcoin only supported as Crypto Amount).

Possible values:
languagestring · min: 2 · max: 11Optional

The BCP-47 language tag. Composed of:

  • The ISO-639 alpha-1 or ISO-639 alpha-2 language code
  • (Optional) The ISO-15924 script tag
  • The ISO-3166 alpha-2 country code

Example: es-419
message_to_customerstring · max: 500Optional

this message will be shown on OP's payment list

return_urlstringRequired

redirect url for successful payments

cancel_urlstringRequired

redirect url for cancelled payments

reject_urlstringRequired

redirect url for rejected payments

payout_referencestring · min: 4 · max: 20Optional

A settlement reference specified by the merchant to identify the transaction including checksum digit.

Example: 12345678912345680000Pattern: ^[0-9]{4,20}$
Responses
201

The OP Online Payment Initiation Response.

application/json
idstring · uuid-flexibleOptional

The ID of the transaction.

Example: 76944d4b-89e6-48d2-ac04-675383c3eedf
payment_urlstring · uriOptional

The payment URL can be used to redirect to transfer the money.

amountintegerOptional

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.

Example: 150
created_atstring · date-timeOptional

The time at which the transaction was created.

customerstringOptional

The ID of a customer

merchant_referencestring · max: 50Optional

A reference specified by the merchant to identify the transaction.

Example: 7a1db7a8-6f24-4bc5-a51b-cef33fc05140
processorstringOptional

The name of the processor used for this transaction

Default: OP_ONLINE_PAYMENT
payment_productstringOptional

The payment product corresponding to this transaction

Default: OP_ONLINE_PAYMENT
payment_product_typestring · enumOptional

The payment product type corresponding to this transaction. Fees applied to the transaction, is based on the payment product

Default: UnknownPossible values:
statusstring · enumOptional

The outcome of the payment request.

Example: AUTHORIZEDPossible values:
status_reasonstringOptional

Message provided by the 3rd party service as additional information, when the transaction does not succeed.

geo_locationnumber[]Optional

The latitude / longitude resolved from the customer's ip address.

Example: [52.370216,4.895168]
citystringOptional

The city resolved from the customer's ip address.

Example: West Roxbury
country_codestringOptional

The ISO 3166-1 alpha-2 country code.

Note: The country code for Great Britain is GB and not UK as is used in that country's top-level domain names.
.

Example: AU
payout_referencestring · min: 4 · max: 20Optional

A settlement reference specified by the merchant to identify the transaction including checksum digit.

Example: 12345678912345680000Pattern: ^[0-9]{4,20}$
post
/api/v2/transactions/op-online-payment

Get a list of Banks supported by OP Online Payment

get
/api/v2/get-op-banks

Get a list of Banks supported by OP Online Payment.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Responses
201

The OP Online Payment list of Banks Response.

application/json
bank_idstringOptional
bank_namestringOptional
get
/api/v2/get-op-banks

Initiate a Affirm payment.

post
/api/v2/transactions/affirm

With Affirm, you will never owe more than you agree to up front. Instead, you’ll always get a flexible, transparent, and convenient way to pay over time.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Header parameters
x-vfi-api-idempotencykeystring · uuidRequired

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
Body
payment_provider_contractstring · uuid-flexibleRequired

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

Example: 30b8bec8-5042-4e67-939c-5453fbe41711
amountintegerRequired

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.

Example: 150
tax_amountintegerOptional

Tax Amount is charged without a decimal place e.g. $1.5 = 150. Currencies can have different decimals/exponentials, see Currencies Section for more details.

redirect_urlstring · max: 2048Required

Checkout Redirect URL which will be used by Affirm on Payment Completion.

cancel_urlstring · max: 2048Required

Checkout Cancel URL which will be used by Affirm on Payment Completion.

capture_nowbooleanOptional

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

Default: trueExample: false
customerstring · uuid-flexibleOptional

The ID of a customer.

Example: 0a57b387-2ba7-4f65-be2f-e176bb49d2ce
customer_ipone of · max: 15Optional

The IP Address of the customer where the transaction was initiated.

Example: 127.0.0.1
string · ipv4Optional
or
string · ipv6Optional
merchant_referencestring · max: 50Optional

A reference specified by the merchant to identify the transaction.

Example: 7a1db7a8-6f24-4bc5-a51b-cef33fc05140
user_agentstring · max: 256Optional

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

currency_codestring · enumRequired

Three-letter ISO 4217 alphabetical currency code. e.g. USD. Values correspond to ISO 4217.

Deprecated: BYR (replaced by BYN), FRF (replaced by EUR), LTL (replaced by EUR), LVL (replaced by EUR), MRO (replaced by MRU), STD (replaced by STN), USS (no replacement), VEF (replaced by VES), ZMK (replaced by ZMV) and BTC (Bitcoin only supported as Crypto Amount).

Possible values:
modestring · enumOptional

Set to modal to enable the modal checkout flow (default uses redirect checkout flow). Possible values: authorization.

  • MODAL: Users go through the Affirm flow in a modal window while remaining on merchant site. Modal checkout with the help of affirm.js will enable client-side callbacks so that merchant can do post checkout confirmation procedures on merchant site.
  • REDIRECT: Users are redirected to Affirm site, where they authenticate and go through the checkout flow. Once they complete checkout, they're returned to the merchant site.
Default: REDIRECTPossible values:
Responses
201

The Affirm Initiation Response.

application/json
idstring · uuid-flexibleOptional

The ID of the transaction.

Example: 76944d4b-89e6-48d2-ac04-675383c3eedf
checkout_idstringOptional

A unique identifier representing the Payment Host checkout ID. This value is optional and available only in MODAL mode.

Example: HTSZAGURU7PZ8ZAG
public_api_keystringOptional

The merchants public api key. This value is optional and available only in MODAL mode.

payment_urlstring · uriOptional

The payment URL can be used to redirect to transfer the money.

amountintegerOptional

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.

Example: 150
created_atstring · date-timeOptional

The time at which the transaction was created.

customerstringOptional

The ID of a customer

merchant_referencestring · max: 50Optional

A reference specified by the merchant to identify the transaction.

Example: 7a1db7a8-6f24-4bc5-a51b-cef33fc05140
processorstringOptional

The name of the processor used for this transaction

Default: AFFIRM
payment_productstringOptional

The payment product corresponding to this transaction

Default: AFFIRM
payment_product_typestring · enumOptional

The payment product type corresponding to this transaction. Fees applied to the transaction, is based on the payment product

Default: UnknownPossible values:
statusstring · enumOptional

The outcome of the payment request.

Example: AUTHORIZEDPossible values:
status_reasonstringOptional

Message provided by the 3rd party service as additional information, when the transaction does not succeed.

geo_locationnumber[]Optional

The latitude / longitude resolved from the customer's ip address.

Example: [52.370216,4.895168]
citystringOptional

The city resolved from the customer's ip address.

Example: West Roxbury
country_codestringOptional

The ISO 3166-1 alpha-2 country code.

Note: The country code for Great Britain is GB and not UK as is used in that country's top-level domain names.
.

Example: AU
post
/api/v2/transactions/affirm

Last updated

Was this helpful?