openapi: 3.0.1
info:
title: 3D Secure 3DS Authentication Ecom Payments API
version: 3.43.0
description: Operations for listing and retrieving 3DS authentication records. Use these endpoints to query historical authentication results filtered by amount, currency, card, status, and more.
servers:
- url: https://emea.gsc.verifone.cloud/oidc/3ds-service
description: EMEA Production
- url: https://us.gsc.verifone.cloud/oidc/3ds-service
description: Americas Production
- url: https://nz.gsc.verifone.cloud/oidc/3ds-service
description: New Zealand Production
- url: https://cst.test-gsc.vfims.com/oidc/3ds-service
description: Global Sandbox
- url: https://uscst-gb.gsc.vficloud.net/oidc/3ds-service
description: Americas Sandbox
security:
- BearerAuth: []
- BasicAuth: []
tags:
- name: Ecom Payments
paths:
/api/v2/transactions/card:
post:
operationId: saleTransaction
summary: Initiate a payment
description: "Initiate a card payment or card verification request when amount is set to 0 (zero).\n\n Transactions business models\n\n| Business model | Transaction type | Shopper Interaction | Stored Credential Contract | Stored Credential Processing Model |\n| -------------- | ---------------- | ------------------- | ------------------ | -------------------------- |\n| Online purchase with shopper present | One-off online purchase without storing card payment details for future use.| `ECOMMERCE` | | |\n| 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` |\n| Online purchase with shopper present | Online purchase where shopper uses previously stored card payment details.| `ECOMMERCE` | `ONE_CLICK` | `CREDENTIAL_ON_FILE` |\n| Subscriptions | Initial transaction to sign up for a subscription.| `ECOMMERCE` | | `RECURRING` |\n| Subscriptions | Subsequent subscription charge. | `ECOMMERCE` | `MERCHANT_INITIATED` | `RECURRING` |\n| 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` |\n| 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` |"
parameters:
- name: x-vfi-api-idempotencykey
required: false
in: header
schema:
type: string
description: A value you specify that uniquely identifies this transaction. This must be used to trigger a reversal if there is a timeout.
format: uuid
requestBody:
required: true
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/EncryptedCardPaymentRequest'
- $ref: '#/components/schemas/TokenPaymentRequest'
responses:
'201':
description: Ecommerce Payment Result
content:
application/json:
schema:
$ref: '#/components/schemas/EcomResponseCard'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestV2Docs'
'401':
description: Unauthorised
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedV2Docs'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenV2Docs'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundV2Docs'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalErrorV2Docs'
tags:
- Ecom Payments
/api/v2/transactions/wallet:
post:
operationId: walletTransaction
summary: Initiate a wallet payment using Google Pay or Apple Pay
description: "Initiate a card payment or card verification request when amount is set to 0 (zero).\n\n Transactions business models\n\n| Business model | Transaction type | Shopper Interaction | Stored Credential Contract | Token Preference or Reference | Stored Credential Request Type | Stored Credential Processing Model |\n| ------------------- | ---------------- | ------------------- | ------------------ | ------------------ | ---------------- | -------------------------- |\n| Online purchase with shopper present | One-off online purchase without storing card payment details for future use.| `ECOMMERCE` | | | | |\n| 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` |\n| Subscriptions | Initial transaction to sign up for a subscription.| `ECOMMERCE` | | `REUSE` or `reuse_token` | `SIGNUP` | `RECURRING` |\n| 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` |\n
Note: To initiate a transaction with reference to previously stored credentials ( `CHARGE` ) use ``/v2/transactions/card`` endpoint instead.
"
parameters:
- name: x-vfi-api-idempotencykey
required: false
in: header
schema:
type: string
description: A value you specify that uniquely identifies this transaction. This must be used to trigger a reversal if there is a timeout.
format: uuid
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateWalletDto'
responses:
'201':
description: Wallet Result
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/VerificationAdvice'
- $ref: '#/components/schemas/EcomResponseCard'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestV2Docs'
'401':
description: Unauthorised
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedV2Docs'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenV2Docs'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundV2Docs'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalErrorV2Docs'
tags:
- Ecom Payments
/api/v2/apple-pay/validation:
post:
operationId: validationUrl
summary: Start payment session for Apple Pay wallet transactions
description: Create a merchant payment session
parameters: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ApplePayMerchantValidationDto'
responses:
'201':
description: The Apple Pay Validation Response.
content:
application/json:
schema:
type: object
description: object (Apple Pay opaque session object)
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestV2Docs'
'401':
description: Unauthorised
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedV2Docs'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenV2Docs'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundV2Docs'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalErrorV2Docs'
tags:
- Ecom Payments
/api/v2/transactions/vipps:
post:
tags:
- Ecom Payments
summary: Initiate a Vipps payment
description: Initiate a Vipps payment.
operationId: vippsTransaction
parameters:
- name: x-vfi-api-idempotencykey
required: false
in: header
schema:
type: string
description: A value you specify that uniquely identifies this transaction. This must be used to trigger a reversal if there is a timeout.
format: uuid
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/vippsPaymentInitiationRequest'
responses:
'201':
description: The Vipps Payment Initiation Response.
content:
application/json:
schema:
$ref: '#/components/schemas/vippsPaymentInitiationResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestV2Docs'
'401':
description: Unauthorised Request
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedV2Docs'
'403':
description: Forbidden Request
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenV2Docs'
'404':
description: Not Found Request
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundV2Docs'
'500':
description: Internal Error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalErrorV2Docs'
/api/v2/transactions/mobilepay:
post:
tags:
- Ecom Payments
summary: Initiate a MobilePay payment
description: Initiate a MobilePay payment.
operationId: mobilePayTransaction
parameters:
- name: x-vfi-api-idempotencykey
required: false
in: header
schema:
type: string
description: A value you specify that uniquely identifies this transaction. This must be used to trigger a reversal if there is a timeout.
format: uuid
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mobilePayPaymentInitiationRequest'
responses:
'201':
description: The MobilePay Payment Initiation Response.
content:
application/json:
schema:
$ref: '#/components/schemas/mobilePayPaymentInitiationResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestV2Docs'
'401':
description: Unauthorised Request
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedV2Docs'
'403':
description: Forbidden Request
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenV2Docs'
'404':
description: Not Found Request
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundV2Docs'
'500':
description: Internal Error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalErrorV2Docs'
/api/v2/transactions/klarna:
post:
tags:
- Ecom Payments
summary: Initiate a Klarna payment.
description: Initiate a Klarna payment.
operationId: klarnaInitTransaction
parameters:
- name: x-vfi-api-idempotencykey
required: false
in: header
schema:
type: string
description: A value you specify that uniquely identifies this transaction. This must be used to trigger a reversal if there is a timeout.
format: uuid
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/klarnaPaymentInitiationRequest'
responses:
'201':
description: Klarna Initiate Payment Result.
content:
application/json:
schema:
$ref: '#/components/schemas/klarnaPaymentInitiationResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestV2Docs'
'401':
description: Unauthorised Request
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedV2Docs'
'403':
description: Forbidden Request
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenV2Docs'
'404':
description: Not Found Request
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundV2Docs'
'500':
description: Internal Error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalErrorV2Docs'
/api/v2/transactions/swish:
post:
tags:
- Ecom Payments
summary: Initiate a Swish payment
description: Initiate a Swish payment.
operationId: swishTransaction
parameters:
- name: x-vfi-api-idempotencykey
required: false
in: header
schema:
type: string
description: A value you specify that uniquely identifies this transaction. This must be used to trigger a reversal if there is a timeout.
format: uuid
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/swishPaymentInitiationRequest'
responses:
'201':
description: The Swish Payment Initiation Response.
content:
application/json:
schema:
$ref: '#/components/schemas/swishPaymentInitiationResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestV2Docs'
'401':
description: Unauthorised Request
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedV2Docs'
'403':
description: Forbidden Request
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenV2Docs'
'404':
description: Not Found Request
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundV2Docs'
'500':
description: Internal Error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalErrorV2Docs'
/api/v2/transactions/op-online-payment:
post:
tags:
- Ecom Payments
summary: Initiate a OP Online payment
description: Initiate a OP Online payment.
operationId: opOnlinePaymentTransaction
parameters:
- name: x-vfi-api-idempotencykey
required: false
in: header
schema:
type: string
description: A value you specify that uniquely identifies this transaction. This must be used to trigger a reversal if there is a timeout.
format: uuid
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/opOnlinePaymentInitiationRequest'
responses:
'201':
description: The OP Online Payment Initiation Response.
content:
application/json:
schema:
$ref: '#/components/schemas/opOnlinePaymentInitiationResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestV2Docs'
'401':
description: Unauthorised Request
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedV2Docs'
'403':
description: Forbidden Request
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenV2Docs'
'404':
description: Not Found Request
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundV2Docs'
'500':
description: Internal Error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalErrorV2Docs'
/api/v2/get-op-banks:
get:
tags:
- Ecom Payments
summary: Get a list of Banks supported by OP Online Payment
description: Get a list of Banks supported by OP Online Payment.
operationId: getOpBanks
responses:
'201':
description: The OP Online Payment list of Banks Response.
content:
application/json:
schema:
$ref: '#/components/schemas/opOnlinePaymentGetBanksResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestV2Docs'
'401':
description: Unauthorised Request
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedV2Docs'
'403':
description: Forbidden Request
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenV2Docs'
'404':
description: Not Found Request
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundV2Docs'
'500':
description: Internal Error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalErrorV2Docs'
/api/v2/transactions/affirm:
post:
tags:
- Ecom Payments
summary: Initiate a Affirm payment.
description: 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.
operationId: affirmInitTransaction
parameters:
- name: x-vfi-api-idempotencykey
required: true
in: header
schema:
type: string
description: A value you specify that uniquely identifies this transaction. This must be used to trigger a reversal if there is a timeout.
format: uuid
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/affirmPaymentInitiationRequest'
responses:
'201':
description: The Affirm Initiation Response.
content:
application/json:
schema:
$ref: '#/components/schemas/affirmPaymentInitiationResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestV2Docs'
'401':
description: Unauthorised Request
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedV2Docs'
'403':
description: Forbidden Request
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenV2Docs'
'404':
description: Not Found Request
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundV2Docs'
'500':
description: Internal Error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalErrorV2Docs'
components:
schemas:
ecomPaymentResponse_issuer_instalment_result:
type: object
properties:
instalment_program:
type: string
description: The name of special program designated by scheme or issuer.
enum:
- MCINST
payment_option:
type: string
description: Available payment mode allowed by issuer for the transaction.
enum:
- FULL
- FULL_OR_INSTALMENT
- INSTALMENT
payment_plan_option:
type: array
description: The issuer may offer more than one instalment options within certain instalment programs.
items:
$ref: '#/components/schemas/paymentPlanOption'
number_of_instalments:
minimum: 0
type: integer
description: The number of individual parts that the total amount should be paid in.
min_number_of_instalments:
type: integer
description: The minimal number of individual parts that the total amount could be paid in, if choice is available.
max_number_of_instalments:
type: integer
description: The maximal number of individual parts that the total amount could be paid in, if choice is available.
interest_rate:
type: number
description: The interest rate.
format: float
annual_percentage_rate:
type: number
description: The interest rate expressed in Annual Percentage Rate.
format: float
handling_fee:
$ref: '#/components/schemas/amountDecimal'
down_payment_amount:
$ref: '#/components/schemas/amountDecimal'
instalment_amount:
$ref: '#/components/schemas/amountDecimal'
total_amount_with_cost:
$ref: '#/components/schemas/amountDecimal'
additionalProperties: false
description: Issuer-managed instalment response. May be used to inform on supported instalment options for the transaction in specific programs (e.g., Mastercard Instalment Payment Service).
LineItem:
title: Ecommerce basket line items
required:
- name
- quantity
- tax_rate
- total_amount
- total_tax_amount
type: object
properties:
image_url:
type: string
description: Image URL for the line item
name:
maxLength: 255
type: string
description: Descriptive name of the order line item
quantity:
type: integer
description: Quantity of the order line item
unit_price:
type: integer
description: Unit Price is charged without a decimal place e.g. $1.5 = 150. Currencies can have different decimals/exponentials, see Currencies Section for more details.
unit_price_tax:
type: integer
description: Unit Price Tax is charged without a decimal place e.g. $1.5 = 150. Currencies can have different decimals/exponentials, see Currencies Section for more details.
tax_rate:
type: number
description: Item Tax (VAT) Rate.
format: float
discount_amount:
type: integer
description: Discount inclusive of tax. This is charged without a decimal place e.g. $1.5 = 150. Currencies can have different decimals/exponentials, see Currencies Section for more details.
total_tax_amount:
type: integer
description: Total 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.
total_amount:
type: integer
description: Total Amount is charged without a decimal place e.g. $1.5 = 150. Currencies can have different decimals/exponentials, see Currencies Section for more details.
sku:
maxLength: 127
type: string
description: The stock keeping unit (SKU) for the item.
description:
maxLength: 127
type: string
description: The detailed item description.
category:
type: string
description: 'The item category type.
The possible values are:
* DIGITAL_GOODS - Goods that are stored, delivered, and used in their electronic format. This value is not currently supported for API callers that leverage the [PayPal for Commerce Platform](https://www.paypal.com/us/webapps/mpp/commerce-platform) product.
* DIGITAL_GOODS - A tangible item that can be shipped with proof of delivery.
'
enum:
- DIGITAL_GOODS
- PHYSICAL_GOODS
description: The description of item(s) that was included in a transaction or purchase.
ThreeDSecure:
type: object
properties:
eci_flag:
type: string
title: Electronic Commerce Indicator.
enum:
- '00'
- '01'
- '02'
- '03'
- '04'
- '05'
- '06'
- '07'
enrolled:
type: string
title: The enrolment response status of Authentication eligibility from the Directory Server.
description: "Possible Values:\n Y - Yes, Bank is participating in 3-D Secure protocol and will return the ACSUrl.\n N - No, Bank is not participating in 3-D Secure protocol.\n U - Unavailable, the DS or ACS is not available for authentication at the time of the request.\n B - Bypass, merchant authentication rule is triggered to bypass authentication in this use case.\n NOTE: If the Enrolled value is NOT Y, then the Consumer is NOT eligible for Authentication."
cavv:
type: string
maxLength: 48
title: Cardholder Authentication Verification Value (CAVV)
description: Base64-encoded values of 28 or 32 characters. Hex-encoded values of 40 or 48 characters.
cavv_algorithm:
type: string
description: Indicates the algorithm used to generate the CAVV value.Please refer to the integration guide for information on its usage.
pares_status:
type: string
title: Authentication response code.
description: "Possible Values:\n Y - Successful Authentication.\n U - Unable to Complete Authentication\n A - Successful Attempts Transaction."
xid:
type: string
description: Transaction identifier resulting from authentication processing.Please refer to the integration guide for information on its usage.
ds_transaction_id:
type: string
title: The unique transaction identifier
description: The unique transaction identifier assigned by the Directory Server. Supported for 3D Secure v2 only.
threeds_version:
type: string
title: The 3DS version used to process the transaction.
enum:
- 1.0.2
- 2.1.0
- 2.2.0
affirmPaymentInitiationResponse:
title: Affirm Initiate Payment Result
type: object
properties:
id:
title: Transaction ID
type: string
description: The ID of the transaction.
format: uuid-flexible
checkout_id:
title: Checkout Id
description: A unique identifier representing the Payment Host checkout ID. This value is optional and available only in `MODAL` mode.
type: string
public_api_key:
description: The merchants public api key. This value is optional and available only in `MODAL` mode.
type: string
payment_url:
description: The payment URL can be used to redirect to transfer the money.
type: string
format: uri
amount:
type: integer
description: 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.
created_at:
type: string
format: date-time
description: The time at which the transaction was created.
customer:
description: The ID of a customer
type: string
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction.
maxLength: 50
processor:
description: The name of the processor used for this transaction
type: string
default: AFFIRM
payment_product:
description: The payment product corresponding to this transaction
type: string
default: AFFIRM
payment_product_type:
$ref: '#/components/schemas/PaymentProductType'
status:
type: string
description: The outcome of the payment request.
title: Ecommerce Transaction Status
enum:
- INITIATED
- AUTHORIZED
- AUTHORIZATION_VOIDED
- CANCELLED
- CUSTOMER_ACCEPTED
- REFUNDED
- FAILED
- PENDING
- DECLINED
- SETTLEMENT_CANCELLED
- SETTLEMENT_REQUESTED
- SETTLEMENT_SUBMITTED
- SETTLEMENT_COMPLETED
- SETTLEMENT_PARTIAL
- SETTLEMENT_DECLINED
- VOIDED
- UNKNOWN
status_reason:
type: string
description: Message provided by the 3rd party service as additional information, when the transaction does not succeed.
geo_location:
type: array
description: The latitude / longitude resolved from the customer's ip address.
items:
type: number
city:
type: string
description: The city resolved from the customer's ip address.
country_code:
title: Country Code
type: string
description: The [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/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.
.
TokenPreferenceDto:
type: object
properties:
token_scope:
type: string
title: Token Scope
description: The token scope under which this token was created.
format: uuid
reuse_token_type:
title: Reuse Token Type
description: 'The type of Reuse Token. This indicates if the reuse token is an internal Verifone type or an external Third-Party type.
**Note**: `reuse_token_details` is **mandatory** when `reuse_token_type` is set to `TAVE` or `CHASE`.
'
type: string
enum:
- CHASE
- INTERNAL
- TAVE
default: INTERNAL
token_type:
type: string
title: Token Type
description: Token type
enum:
- REUSE
- ANALYTICS
- REUSE_AND_ANALYTICS
token_expiry_date:
type: string
description: When this Token will expire.
format: date
required:
- token_scope
ShippingInformation:
type: object
properties:
address:
type: string
maxLength: 300
description: Street address of the recipient.
city:
type: string
maxLength: 28
description: City of the recipient.
country:
type: string
maxLength: 2
minLength: 2
format: country-code
description: A 2-letter ISO3166 alpha-2 country code for the address.
postal_code:
type: string
minLength: 1
maxLength: 16
description: A postal code for the address.
email:
type: string
title: Email Address
minLength: 3
maxLength: 254
format: email
description: A valid internationalized email address, as defined by RFC 5322, RFC 6530, and other RFCs. Due to RFC 5321, an email address can be up to 254 characters long even though up to 64 characters are allowed before and 255 characters are allowed after the @ sign. This pattern verifies only that the string contains an unquoted @ sign. See https://tools.ietf.org/html/rfc5322#section-3.4.1.
first_name:
type: string
maxLength: 100
description: First name of the recipient.
last_name:
type: string
maxLength: 100
description: Last name of the recipient.
phone:
type: number
maxLength: 15
description: Numbers only, no dash or any other separator.
state:
type: string
maxLength: 35
description: A region / state / province for the address.
required:
- address
- city
- country
- postal_code
swishPaymentInitiationRequest:
title: Swish Payment Initiation Request
required:
- amount
- currency_code
- merchant_reference
- payment_provider_contract
type: object
properties:
entity_id:
type: string
description: 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)
format: uuid-flexible
app_phone_number:
maxLength: 18
type: string
description: The Phone Number registered with Swish Mobile APP. This field is required for ECommerce flow, not needed MCommerce flow.
amount:
type: integer
description: 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.
customer:
type: string
description: The ID of a customer.
format: uuid-flexible
title: Customer ID
customer_ip:
description: The IP Address of the customer where the transaction was initiated.
maxLength: 15
oneOf:
- type: string
format: ipv4
- type: string
format: ipv6
dynamic_descriptor:
type: string
description: A short [descriptor](https://en.wikipedia.org/wiki/Billing_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
maxLength: 50
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction.
maxLength: 50
shipping_information:
allOf:
- $ref: '#/components/schemas/ShippingInformationDto'
user_agent:
type: string
description: The full user agent string of the device the customer used to submit the transaction.
maxLength: 256
sales_description:
type: string
description: 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
maxLength: 200
currency_code:
title: Currency Code
type: string
description: 'Three-letter ISO 4217 alphabetical currency code. e.g. USD. Values correspond
to [ISO 4217](https://wikipedia.org/wiki/ISO_4217).
Please note that Swish only supports Swedish krona (SEK).'
enum:
- SEK
ThreedAuthenticationDto:
type: object
properties:
eci_flag:
type: string
description: Electronic Commerce Indicator (ECI). The ECI value is part of the 2 data elements that indicate the transaction was processed electronically.This should be passed on the authorization transaction to the Gateway/Processor.Please refer to the integration guide for information on its usage.
enum:
- '05'
- '06'
- '07'
- '02'
- '01'
- '00'
enrolled:
type: string
enum:
- Y
- N
- U
- B
description: "The enrolment response status of Authentication eligibility from the Directory Server.\n\nPossible Values:\n\n * `Y` - Yes, Bank is participating in 3-D Secure protocol and will return the ACSUrl.\n\n * `N` - No, Bank is not participating in 3-D Secure protocol.\n\n * `U` - Unavailable, the DS or ACS is not available for authentication at the time of the request.\n\n * `B` - Bypass, merchant authentication rule is triggered to bypass authentication in this use case.\n\nNOTE: If the Enrolled value is NOT Y, then the Consumer is NOT eligible for Authentication."
cavv:
type: string
minLength: 28
maxLength: 48
description: Cardholder Authentication Verification Value (CAVV). Base64-encoded values of 28 or 32 characters. Hex-encoded values of 40 or 48 characters.
cavv_algorithm:
type: string
description: The algorithm used to generate the CAVV value. Supported for 3D Secure v1 only.
pares_status:
type: string
enum:
- Y
- N
- U
- A
- C
- R
description: "Authentication response code.\n\nPossible Values:\n\n * `Y` - Successful Authentication.\n\n * `N` - Failed Authentication.\n\n * `U` - Unable to Complete Authentication\n\n * `A` - Successful Attempts Transaction.\n\n * `C` - Challenge Required for Authentication.\n\n * `R` - Authentication Rejected."
xid:
type: string
description: The transaction identifier assigned by Directory Server. Supported for 3D Secure v1 only.
threeds_version:
type: string
enum:
- 1.0.2
- 2.1.0
- 2.2.0
description: The 3DS version used to process the transaction.
ds_transaction_id:
type: string
description: The unique transaction identifier assigned by the Directory Server. Supported for 3D Secure v2 only.
signature_verification:
type: string
enum:
- Y
- N
description: "Transaction Signature status identifier.\n\n Possible Values:\n\n * `Y` - Indicates that the signature of the PARes has been validated successfully and the message contents can be trusted.\n\n * `N` - Indicates that the PARes could not be validated. This result could be for a variety of reasons; tampering, certificate expiration, etc., and the result should not be trusted."
verification:
type: array
description: Any verification/authentication responses captured as part of the submission of the transaction. e.g. 3DS response values or ACRQ/ARCP. For some mPos transactions the verification may be performed on-device e.g. ApplePay, Face ID or Touch ID.
items:
type: string
enum:
- DENIED
- NON_PARTICIPATION
- UNABLE_TO_AUTHENTICATE
- MERCHANT_NOT_ENROLLED
- WITH_CRYPTOGRAM
- WITHOUT_CRYPTOGRAM
error_desc:
type: string
description: "Application error description for the associated error number(s).\n\n NOTE: Multiple error descriptions are separated by a comma."
error_no:
type: string
description: "Application error number(s). A non-zero value represents the error encountered while attempting to process the message request.\n\n NOTE: Multiple error numbers are separated by a comma."
authentication_amount:
type: integer
title: amount
description: 'Amount is charged without a decimal place e.g. $1.5 = 150.
The required number of decimal places for a currency code is according to ISO 4217.
For Account Verification transactions, provide 0 as value for this field.'
additional_data:
allOf:
- $ref: '#/components/schemas/AdditionalDataDto'
description: Additional 3DS data, which may be required in the particular payment request.
BillingDto:
type: object
additionalProperties: false
properties:
address_1:
type: string
maxLength: 40
description: Customer's primary billing address information.
address_2:
type: string
maxLength: 40
description: Customer's secondary billing address information.
address_3:
type: string
maxLength: 40
description: Customer's third billing address information.
city:
type: string
maxLength: 28
description: Customer's city on their billing address
country:
type: string
title: Country Code
description: The ISO 3166-1 alpha-3 country code.
enum:
- ZZ
- AD
- AE
- AF
- AG
- AI
- AL
- AM
- AO
- AQ
- AR
- AS
- AT
- AU
- AW
- AX
- AZ
- BA
- BB
- BD
- BE
- BF
- BG
- BH
- BI
- BJ
- BL
- BM
- BN
- BO
- BQ
- BR
- BS
- BT
- BV
- BW
- BY
- BZ
- CA
- CC
- CD
- CF
- CG
- CH
- CI
- CK
- CL
- CM
- CN
- CO
- CR
- CU
- CV
- CW
- CX
- CY
- CZ
- DE
- DJ
- DK
- DM
- DO
- DZ
- EC
- EE
- EG
- EH
- ER
- ES
- ET
- FI
- FJ
- FK
- FM
- FO
- FR
- GA
- GB
- GD
- GE
- GF
- GG
- GH
- GI
- GL
- GM
- GN
- GP
- GQ
- GR
- GS
- GT
- GU
- GW
- GY
- HK
- HM
- HN
- HR
- HT
- HU
- ID
- IE
- IL
- IM
- IN
- IO
- IQ
- IR
- IS
- IT
- JE
- JM
- JO
- JP
- KE
- KG
- KH
- KI
- KM
- KN
- KP
- KR
- KW
- KY
- KZ
- LA
- LB
- LC
- LI
- LK
- LR
- LS
- LT
- LU
- LV
- LY
- MA
- MC
- MD
- ME
- MF
- MG
- MH
- MK
- ML
- MM
- MN
- MO
- MP
- MQ
- MR
- MS
- MT
- MU
- MV
- MW
- MX
- MY
- MZ
- NA
- NC
- NE
- NF
- NG
- NI
- NL
- 'NO'
- NP
- NR
- NU
- NZ
- OM
- PA
- PE
- PF
- PG
- PH
- PK
- PL
- PM
- PN
- PR
- PS
- PT
- PW
- PY
- QA
- RE
- RO
- RS
- RU
- RW
- SA
- SB
- SC
- SD
- SE
- SG
- SH
- SI
- SJ
- SK
- SL
- SM
- SN
- SO
- SR
- SS
- ST
- SV
- SX
- SY
- SZ
- TC
- TD
- TF
- TG
- TH
- TJ
- TK
- TL
- TM
- TN
- TO
- TR
- TT
- TV
- TW
- TZ
- UA
- UG
- UM
- US
- UY
- UZ
- VA
- VC
- VE
- VG
- VI
- VN
- VU
- WF
- WS
- YE
- YT
- ZA
- ZM
- ZW
phone:
type: string
maxLength: 25
description: Customer's phone number for billing address. This should be un formatted without hyphens. (e.g. 4422345678)
postal_code:
type: string
maxLength: 10
description: Customer's postal code of their billing address.
state:
type: string
maxLength: 35
description: Customer's state or province of their billing address. (e,g. Ohio = OH, Texas = TX)
StoredCredential:
type: object
properties:
reference:
type: string
description: Reference of a successfully processed initial COF transaction. Only used by subsequent COF transactions.
stored_credential_type:
type: string
scheme_reference:
type: string
description: Scheme Reference Data received from issuer/acquirer.
processing_model:
type: string
enum:
- UNSCHEDULED_CREDENTIAL_ON_FILE
- CREDENTIAL_ON_FILE
- RECURRING
- REAUTHORIZATION
- NONE
description: Processing model to use for COF transaction. Refer to the card integration guide for more information on the usage.
details:
deprecated: true
type: string
enum:
- UNSCHEDULED_CREDENTIAL_ON_FILE
- CREDENTIAL_ON_FILE
- RECURRING
description: Processing model to use for COF transaction. Refer to the card integration guide for more information on the usage.
Locale:
title: Locale
required:
- countryCode
type: object
properties:
countryCode:
title: Country Code
type: string
description: The [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/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.
.
language:
$ref: '#/components/schemas/Language'
timezoneId:
$ref: '#/components/schemas/TimeZone'
description: JSON schema for locale. Based off the BCP-47 language tag, ISO-3166 alpha-2 country code, and Olsen IANA time zone ID.
klarnaPaymentInitiationRequest:
title: Klarna Initiate Payment Request
required:
- amount
- currency_code
- customer
- entity_id
- line_items
- locale
- purchase_country
- redirect_url
type: object
properties:
entity_id:
type: string
description: 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)
format: uuid-flexible
amount:
type: integer
description: 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.
tax_amount:
type: integer
description: 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_url:
maxLength: 2048
type: string
description: Checkout Redirect URL which will be used by Klarna on Payment Completion.
capture_now:
type: boolean
description: Whether auto-capture or not. Setting the value to 'false' will only authorize the transaction.
default: true
customer:
type: string
description: The ID of a customer.
format: uuid-flexible
title: Customer ID
customer_ip:
description: The IP Address of the customer where the transaction was initiated.
maxLength: 15
oneOf:
- type: string
format: ipv4
- type: string
format: ipv6
dynamic_descriptor:
maxLength: 25
type: string
description: A short [descriptor](https://en.wikipedia.org/wiki/Billing_descriptor) to be shown on bank statement of the customer. Please refer to the integration guide for the format requirements.
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction.
maxLength: 50
shipping_information:
allOf:
- $ref: '#/components/schemas/ShippingInformationDto'
line_items:
type: array
description: The array of items being purchased.
items:
$ref: '#/components/schemas/LineItem'
user_agent:
type: string
description: The full user agent string of the device the customer used to submit the transaction.
maxLength: 256
sales_description:
type: string
description: 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
maxLength: 200
currency_code:
type: string
description: 'Three-letter ISO 4217 alphabetical currency code. e.g. EUR. Values correspond
to [ISO 4217](https://wikipedia.org/wiki/ISO_4217).
Please note that Klarna only supports EURO (EUR), Norwegian krone (NOK) , Swedish krona (SEK) and Danish krone (DKK).'
enum:
- EUR
- NOK
- SEK
- DKK
locale:
$ref: '#/components/schemas/Locale'
ShippingInformationDto:
type: object
additionalProperties: false
description: The address where the purchased goods should be delivered to.
title: Shipping Address
properties:
address:
type: string
maxLength: 300
description: Street address of the recipient.
city:
type: string
maxLength: 28
description: City of the recipient.
country:
type: string
maxLength: 2
minLength: 2
format: country-code
description: A 2-letter ISO3166 alpha-2 country code for the address.
postal_code:
type: string
minLength: 1
maxLength: 16
description: A postal code for the address.
email:
type: string
title: Email Address
minLength: 3
maxLength: 254
format: email
description: A valid internationalized email address, as defined by RFC 5322, RFC 6530, and other RFCs. Due to RFC 5321, an email address can be up to 254 characters long even though up to 64 characters are allowed before and 255 characters are allowed after the @ sign. This pattern verifies only that the string contains an unquoted @ sign. See https://tools.ietf.org/html/rfc5322#section-3.4.1.
first_name:
type: string
maxLength: 100
description: First name of the recipient.
last_name:
type: string
maxLength: 100
description: Last name of the recipient.
phone:
type: number
maxLength: 15
description: Numbers only, no dash or any other separator.
state:
type: string
maxLength: 35
description: A region / state / province for the address.
required:
- address
- city
- country
- postal_code
paymentPlanOption:
title: Instalment payment plan option
type: object
properties:
number_of_instalments:
minimum: 1
type: integer
description: The number of individual parts that the total amount should be paid in.
first_instalment_amount:
$ref: '#/components/schemas/amountDecimal'
instalment_amount:
$ref: '#/components/schemas/amountDecimal'
interest_rate:
type: number
description: The interest rate.
format: float
annual_percentage_rate:
type: number
description: The interest rate expressed in Annual Percentage Rate.
format: float
handling_fee:
$ref: '#/components/schemas/amountDecimal'
total_amount_with_cost:
$ref: '#/components/schemas/amountDecimal'
description: An instalment plan option available for the transaction. Instalments are managed by the issuer. To the merchant this is just another transaction.
TimeZone:
maxLength: 127
minLength: 1
type: string
description: A time zone, following the format defined in the IANA tz database (https://www.iana.org/time-zones). Valid examples are America/New_York and Etc/UTC. Do not use ambiguous, non-qualified values such as EST or GB. Before including this type in your interface, please consider whether it is actually appropriate to convey time zone information with your type. It is almost always the case that this should be transformed from UTC at the time of display to the user; this type might therefore be most associated with user-preference APIs.
InstalmentDto:
type: object
properties:
down_payment_amount:
type: number
title: Amount Simple Type
description: 'The value, which can be anything from: An integer - for currencies that are not typically fractional, such as JPY. A three-place decimal fraction - for currencies that are subdivided into thousandths, such as TND. An eight-place decimal fraction - for currencies such as Bitcoin. For the required number of decimal places for a currency code, see ISO 4217'
number_of_instalments:
type: number
description: The number of individual parts that the total amount should be paid in.
instalment_amount:
type: number
title: Amount Simple Type
description: 'The value, which can be anything from: An integer - for currencies that are not typically fractional, such as JPY. A three-place decimal fraction - for currencies that are subdivided into thousandths, such as TND. An eight-place decimal fraction - for currencies such as Bitcoin. For the required number of decimal places for a currency code, see ISO 4217'
VerificationAdvice:
type: object
properties:
advice:
type: string
enum:
- 3DS_REQUIRED
encrypted_card:
type: string
title: Client encrypted cardholder data
description: "The cardholder data encrypted using the Verifone provided public key. This can be obtained using either Verifone.JS solution or Verifone Checkout in capture mode.\n\n The data to encrypt is a JSON with possible tags being cardNumber, sequenceNumber, cardholderName, startMonth, startYear, expiryMonth, expiryYear, cvv. This should be a single JSON line and should not contain any spaces. Read Secure card capture key for details.\n\n Additionally, a tag called captureTime must be presenting indicating the time the card was captured in UTC in format RFC 3339, section 5.6. eg. 2019-08-24T14:15:22Z. Encrypted card is valid for only 15 minutes."
public_key_alias:
type: string
title: Public Key Alias
description: The alias for the public key used to encrypt this card.
TokenPaymentRequest:
type: object
properties:
payment_provider_contract:
type: string
description: The identifier of payment provider contract you want to process the transaction request with.
format: uuid-flexible
amount:
type: integer
description: 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:
type: string
description: '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.'
enum:
- PRE_AUTH
- FINAL_AUTH
default: FINAL_AUTH
capture_now:
type: boolean
description: Whether auto-capture or not. Setting the value to 'false' will only authorize the transaction.
default: true
customer:
type: string
description: The ID of a customer.
format: uuid-flexible
title: Customer ID
customer_ip:
description: The IP Address of the customer where the transaction was initiated.
maxLength: 15
oneOf:
- type: string
format: ipv4
- type: string
format: ipv6
dynamic_descriptor:
type: string
description: A short [descriptor](https://en.wikipedia.org/wiki/Billing_descriptor) to be shown on bank statement of the customer. Please refer to the integration guide for the format requirements.
maxLength: 25
invoice_number:
type: string
title: Invoice Number
description: Optional. The invoice number to track this payment.
maxLength: 127
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction.
maxLength: 50
threed_authentication:
allOf:
- $ref: '#/components/schemas/ThreedAuthenticationDto'
description: MPI authentication data. Please refer to the integration guide for information on its usage.
encrypted_cvv:
type: string
description: "The CVV encrypted using the Verifone provided public key. This can be obtained using either Verifone.JS solution or Verifone Checkout in capture mode.\n\n The data to encrypt is a JSON with tag cvv.\n\n Additionally a tag called captureTime must be presenting indicating the time the cvv was captured in UTC in format RFC 3339, section 5.6. eg. 2019-08-24T14:15:22Z.\n\n Sample JSON to encrypt:\n\n {\n\n \"cvv\": \"123\"\n\n \"captureTime\": \"2021-04-27T14:15:22Z\"\n\n }"
encrypted_svc_access_code:
type: string
title: Client encrypted SVC Access Code
description: 'The SVC Access Code encrypted using the Verifone provided public key. This can be obtained using either Verifone.JS solution or Verifone Checkout in capture mode.
The data to encrypt is a JSON with tag svcAccessCode.
Additionally a tag called captureTime must be presenting indicating the time the cvv was captured in UTC in format RFC 3339, section 5.6. eg. 2019-08-24T14:15:22Z.'
public_key_alias:
type: string
title: Public Key Alias
description: The alias for the public key used to encrypt this card.
stored_credential:
allOf:
- $ref: '#/components/schemas/StoredCredentialDto'
- title: Stored Credential Payment
description: The definition of a stored credential payment.
discriminator:
propertyName: stored_credential_type
mapping:
SIGNUP: '#/components/schemas/StoredCredentialSignUp'
CHARGE: '#/components/schemas/StoredCredentialSubsequentCharge'
receipt_type:
type: string
description: Defines the type of receipt to be generated
enum:
- FULL_RECEIPT
- INVOICE
- INVOICE_RECEIPT
- SIMPLE_RECEIPT
- NONE
shipping_information:
allOf:
- $ref: '#/components/schemas/ShippingInformation'
- title: Shipping Address
description: 'The address where the purchased goods should be delivered to.
Please use customer_details.shipping.'
deprecated: true
customer_details:
allOf:
- $ref: '#/components/schemas/CustomerDetailsDto'
shopper_interaction:
type: string
description: "Determines the sales channel the shopper gives their card details through:\n\n * `ECOMMERCE` Online transactions where the cardholder is present.\n\n * `MAIL` order transactions where the shopper is in contact with the merchant via email.\n\n * `TELEPHONE` order transactions where the shopper is in contact with the merchant via telephone."
enum:
- ECOMMERCE
- MAIL
- TELEPHONE
default: ECOMMERCE
user_agent:
type: string
description: The full user agent string of the device the customer used to submit the transaction.
maxLength: 256
sales_description:
type: string
description: 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
maxLength: 200
sca_exemption:
type: string
description: "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.\n\n Possible Values:\n\n 1 - Low value payment\n\n 2 - Acquirer Transaction Risk Analysis\n\n 3 - Trusted beneficiary exemption\n\n 4 - Secure Corporate Payment (SCP) exemption\n\n 5 - Merchant Initiated Transaction\n\n 6 - SCA Delegation"
enum:
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
currency_code:
type: string
title: Currency Code
description: "Three-letter ISO 4217 alphabetical currency code. e.g. USD.\n\n Values correspond to [ISO 4217](https://wikipedia.org/wiki/ISO_4217)."
enum:
- AED
- AFN
- ALL
- AMD
- ANG
- AOA
- ARS
- AUD
- AWG
- AZN
- BAM
- BBD
- BDT
- BGN
- BHD
- BIF
- BMD
- BND
- BOB
- BOV
- BRL
- BSD
- BTN
- BWP
- BYR
- BZD
- CAD
- CDF
- CHE
- CHF
- CHW
- CLF
- CLP
- CNY
- COP
- COU
- CRC
- CUC
- CUP
- CVE
- CZK
- DJF
- DKK
- DOP
- DZD
- EGP
- ERN
- ETB
- EUR
- FJD
- FKP
- GBP
- GEL
- GHS
- GIP
- GMD
- GNF
- GTQ
- GYD
- HKD
- HNL
- HRK
- HTG
- HUF
- IDR
- ILS
- INR
- IQD
- IRR
- ISK
- JMD
- JOD
- JPY
- KES
- KGS
- KHR
- KMF
- KPW
- KRW
- KWD
- KYD
- KZT
- LAK
- LBP
- LKR
- LRD
- LSL
- LTL
- LVL
- LYD
- MAD
- MDL
- MGA
- MKD
- MMK
- MNT
- MOP
- MRO
- MUR
- MVR
- MWK
- MXN
- MXV
- MYR
- MZN
- NAD
- NGN
- NIO
- NOK
- NPR
- NZD
- OMR
- PAB
- PEN
- PGK
- PHP
- PKR
- PLN
- PYG
- QAR
- RON
- RSD
- RUB
- RWF
- SAR
- SBD
- SCR
- SDG
- SEK
- SGD
- SHP
- SLL
- SOS
- SRD
- SSP
- STD
- SVC
- SYP
- SZL
- THB
- TJS
- TMT
- TND
- TOP
- TRY
- TTD
- TWD
- TZS
- UAH
- UGX
- USD
- USN
- USS
- UYI
- UYU
- UZS
- VEF
- VND
- VUV
- WST
- XAF
- XAG
- XAU
- XBA
- XBB
- XBC
- XBD
- XCD
- XDR
- XOF
- XPD
- XPF
- XPT
- XTS
- XXX
- YER
- ZAR
- ZMK
- ZMW
- BTC
card_brand:
$ref: '#/components/schemas/CardBrand'
brand_choice:
type: string
description: For dual-branded cards identifies whether selection is made by a cardholder or merchant.
enum:
- MERCHANT
- CARDHOLDER
default: MERCHANT
credit_term:
type: string
description: An indicator to show under which terms the credit was provided.
default: STANDARD
enum:
- STANDARD
- PREFERED
- DEBIT
- INSTALMENT_STANDARD
- INSTALMENT_CREDIT
instalment:
allOf:
- $ref: '#/components/schemas/InstalmentDto'
title: instalment
description: The details on the instalment-scheme that should be enacted by the issuer.
refusal_reason:
type: string
title: Refusal Reason
description: 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.
enum:
- ACQUIRER_COMMS_FAILURE
- ACQUIRER_REFUSED
- CARD_BRAND_NOT_ACCEPTED
- CARD_EXPIRED
- CARD_NOT_ACCEPTED
- CARD_NOT_VALID
- CARD_PRODUCT_NOT_ACCEPTED
- ORIGINAL_TRANSACTION_NOT_FOUND
- INVALID_BIN
- PARTIAL_AUTH_NOT_ALLOWED
- RECEIPT_FAILURE
- REFUND_NOT_ACCEPTED
- THREEDSECURE_FAILED_ACS
- THREEDSECURE_FAILED_AUTH
- THREEDSECURE_FAILED_COMMS
- UNAPPROVED_OPERATOR
- UNKNOWN_REASON
reuse_token:
type: string
title: Reuse Token
description: The Verifone issued reuse token used to represent the previously stored cardholder data.
minLength: 14
maxLength: 255
reuse_token_type:
title: Reuse Token Type
description: 'The type of Reuse Token. This indicates if the reuse token is an internal Verifone type or an external Third-Party type.
**Note**: `reuse_token_details` is **mandatory** when `reuse_token_type` is set to `TAVE` or `CHASE`.
'
type: string
enum:
- CHASE
- INTERNAL
- TAVE
default: INTERNAL
reuse_token_details:
$ref: '#/components/schemas/TokenDetailsRequestBody'
promo_code:
type: string
description: A code defined by the merchant that affects the calculation of the total amount.
promo_financing_details:
$ref: '#/components/schemas/PromoFinancingDetails'
purchase_order_number:
title: Purchase Order Number
description: '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.
'
type: string
maxLength: 17
tax_indicator:
title: Tax Indicator
description: '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
'
type: string
enum:
- TAX_PROVIDED
- TAX_NOT_PROVIDED
- NON_TAXABLE
default: TAX_NOT_PROVIDED
detailed_amount:
$ref: '#/components/schemas/DetailedAmount'
required:
- payment_provider_contract
- amount
- currency_code
- reuse_token
Details:
type: object
properties:
auto_capture:
type: boolean
mid:
type: string
format: integer
description: Merchant ID (MID)
UnauthorizedV2Docs:
type: object
properties:
details:
type: object
additionalProperties:
type: object
timestamp:
type: number
description: Error timestamp
reversal_status:
type: string
description: Indicates to the API client if a technical reversal has been completed by Verifone.
default: NONE
enum:
- NONE
- REQUIRED
- COMPLETED
code:
type: number
enum:
- 401
default: 401
message:
type: string
enum:
- Access is restricted to authenticated users only. The query can't be made without a valid JWT token (check the Authorization header of your request).
default: Access is restricted to authenticated users only. The query can't be made without a valid JWT token (check the Authorization header of your request).
required:
- message
TokenDetails:
type: object
properties:
reuse_token:
type: string
description: The Verifone issued reuse token used to represent the previously stored cardholder data.
minLength: 14
maxLength: 255
reuse_token_type:
title: Reuse Token Type
description: The type of Reuse Token. This indicates if the reuse token is an internal Verifone type or an external Third-Party type.
type: string
enum:
- CHASE
- INTERNAL
- TAVE
analytics_token:
type: string
description: A token that cannot be reversed to Card Holder data. This is included in a Payment for auditing and tracking purposes.
token_expiry_date:
type: string
format: date
description: When this Token will expire.
token_scope:
type: string
format: uuid
description: The token scope under which this token was created.
token_status:
type: string
enum:
- DELETED
- ACTIVE
- SUSPENDED
description: The status of the Token.
created_at:
type: string
format: date
description: The date when this token was first created.
updated_at:
type: string
format: date
description: The last date token was updated.
variant:
type: string
description: The variant of the card. eg. NEW_WORLD
type:
type: string
enum:
- CREDIT
- DEBIT
description: The type of card application or account selection.
issuer_name:
type: string
description: The issuer of this card. eg. HSBC, BARCLAYS.
issuer_country:
$ref: '#/components/schemas/issuerCountryEnum'
brand:
type: string
description: The brand of this card. eg. VISA, MASTERCARD, AMEX.
expiry_year:
type: integer
description: A 4 digit value as shown on card.
maximum: 9999
expiry_month:
type: integer
description: A 2 digit value as shown on card. ISO8583 - DE 14
maximum: 12
card_holder_name:
type: string
description: The Card holder name as it appears on the card.
maxLength: 30
last_four:
type: string
description: The last 4 digits of the card number.
maxLength: 4
bin:
type: string
description: The Bank Identification Number (also called IIN - Issuer Identification Number) of this card.
minLength: 4
maxLength: 11
currency_code:
type: string
title: Currency Code
description: 'Three-letter ISO 4217 alphabetical currency code. e.g. USD. Values correspond
to [ISO 4217](https://wikipedia.org/wiki/ISO_4217).'
enum:
- AED
- AFN
- ALL
- AMD
- ANG
- AOA
- ARS
- AUD
- AWG
- AZN
- BAM
- BBD
- BDT
- BGN
- BHD
- BIF
- BMD
- BND
- BOB
- BOV
- BRL
- BSD
- BTN
- BWP
- BYR
- BZD
- CAD
- CDF
- CHE
- CHF
- CHW
- CLF
- CLP
- CNY
- COP
- COU
- CRC
- CUC
- CUP
- CVE
- CZK
- DJF
- DKK
- DOP
- DZD
- EGP
- ERN
- ETB
- EUR
- FJD
- FKP
- GBP
- GEL
- GHS
- GIP
- GMD
- GNF
- GTQ
- GYD
- HKD
- HNL
- HRK
- HTG
- HUF
- IDR
- ILS
- INR
- IQD
- IRR
- ISK
- JMD
- JOD
- JPY
- KES
- KGS
- KHR
- KMF
- KPW
- KRW
- KWD
- KYD
- KZT
- LAK
- LBP
- LKR
- LRD
- LSL
- LTL
- LVL
- LYD
- MAD
- MDL
- MGA
- MKD
- MMK
- MNT
- MOP
- MRO
- MUR
- MVR
- MWK
- MXN
- MXV
- MYR
- MZN
- NAD
- NGN
- NIO
- NOK
- NPR
- NZD
- OMR
- PAB
- PEN
- PGK
- PHP
- PKR
- PLN
- PYG
- QAR
- RON
- RSD
- RUB
- RWF
- SAR
- SBD
- SCR
- SDG
- SEK
- SGD
- SHP
- SLL
- SOS
- SRD
- SSP
- STD
- SVC
- SYP
- SZL
- THB
- TJS
- TMT
- TND
- TOP
- TRY
- TTD
- TWD
- TZS
- UAH
- UGX
- USD
- USN
- USS
- UYI
- UYU
- UZS
- VEF
- VND
- VUV
- WST
- XAF
- XAG
- XAU
- XBA
- XBB
- XBC
- XBD
- XCD
- XDR
- XOF
- XPD
- XPF
- XPT
- XTS
- XXX
- YER
- ZAR
- ZMK
- ZMW
- BTC
settlementDate:
description: This will reflect either the desired Merchant settlement date or the actual settlement date depending where the transaction request is within the payment lifecycle. A transaction may be assigned an intended settlement date, but it is possible that this date will not occur for technical reasons hence there should be a subsequent event to indicate the actual date of settlement. Format is date only as per RFC 3339.
type: string
format: date
PromoFinancingResults:
title: Promo Financing Results
type: object
description: Details of the special financing offer returned from the issuer.
properties:
promoFinancingType:
description: Type of special financing information provided. * `PROMO_APR ` - APR information provided only for the duration of the promo period; * `PROMO_AND_AFTER_APR ` - APR information provided for the duration of and after the promo period; * `PROMO_AND_AFTER_APR ` - No promotional financing available; * `ERROR ` - error.
type: string
enum:
- PROMO_APR
- PROMO_AND_AFTER_APR
- NO_PROMO
- ERROR
promoAnnualPercentageRateType:
description: The type of APR applicable during promo period.
type: string
enum:
- FIXED
- VARIABLE
promoAnnualPercentageRate:
description: The interest rate expressed in Annual Percentage Rate (APR), applicable during the promo period.
type: number
format: float
annualPercentageRateType:
description: The type of APR applicable after promo period.
type: string
enum:
- FIXED
- VARIABLE
annualPercentageRate:
description: The interest rate expressed in Annual Percentage Rate (APR).
type: number
format: float
promoDurationDescription:
description: Information or description of the promo period duration, e.g. 6 months
type: string
promoDescription:
description: Description of the promotional financing plan.
type: string
ForbiddenV2Docs:
type: object
properties:
details:
type: object
additionalProperties:
type: object
timestamp:
type: number
description: Error timestamp
reversal_status:
type: string
description: Indicates to the API client if a technical reversal has been completed by Verifone.
default: NONE
enum:
- NONE
- REQUIRED
- COMPLETED
code:
type: number
enum:
- 403
default: 403
message:
type: string
enum:
- Insufficient permissions. Your current user roles don't allow you to perform this query. Should you believe this error to be incorrect, please contact an administrator.
default: Insufficient permissions. Your current user roles don't allow you to perform this query. Should you believe this error to be incorrect, please contact an administrator.
required:
- message
affirmLineItem:
title: Affirm basket line items
description: The description of item(s) that was included in a transaction or purchase.
required:
- name
- suk
- unit_price
- quantity
- image_url
- item_url
- total_tax_amount
- total_amount
type: object
properties:
image_url:
type: string
description: Image URL for the line item
name:
maxLength: 255
type: string
description: Descriptive name of the order line item
quantity:
type: integer
description: Quantity of the order line item
unit_price:
type: integer
description: Unit Price is charged without a decimal place e.g. $1.5 = 150. Currencies can have different decimals/exponentials, see Currencies Section for more details.
unit_price_tax:
type: integer
description: Unit Price Tax is charged without a decimal place e.g. $1.5 = 150. Currencies can have different decimals/exponentials, see Currencies Section for more details.
tax_rate:
type: number
description: Item Tax (VAT) Rate.
format: float
discount_amount:
type: integer
description: Discount inclusive of tax. This is charged without a decimal place e.g. $1.5 = 150. Currencies can have different decimals/exponentials, see Currencies Section for more details.
total_tax_amount:
type: integer
description: Total 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.
total_amount:
type: integer
description: Total Amount is charged without a decimal place e.g. $1.5 = 150. Currencies can have different decimals/exponentials, see Currencies Section for more details.
sku:
maxLength: 127
type: string
description: The stock keeping unit (SKU) for the item.
description:
maxLength: 127
type: string
description: The detailed item description.
category:
type: string
description: 'The item category type.
The possible values are:
* DIGITAL_GOODS - Goods that are stored, delivered, and used in their electronic format. This value is not currently supported for API callers that leverage the [PayPal for Commerce Platform](https://www.paypal.com/us/webapps/mpp/commerce-platform) product.
* DIGITAL_GOODS - A tangible item that can be shipped with proof of delivery.
'
enum:
- DIGITAL_GOODS
- PHYSICAL_GOODS
AdditionalData:
type: object
additionalProperties: false
description: Additional payment result data, which may be required to return in a particular payment response.
properties:
acquirer_response_code:
$ref: '#/components/schemas/acquirerResponseCode'
acquirer_response_message:
$ref: '#/components/schemas/acquirerResponseMessage'
acquirer_authorizing_network_id:
$ref: '#/components/schemas/acquirerAuthorizingNetworkID'
acquirer_authorizing_network_id_descriptor:
$ref: '#/components/schemas/acquirerAuthorizingNetworkIdDescriptor'
initiator_trace_id:
$ref: '#/components/schemas/initiatorTraceId'
settlement_date:
$ref: '#/components/schemas/settlementDate'
issuer_receipt_text:
type: string
description: Additional text to print on transaction receipt, which optionally may be provided by the Issuer.
amountDecimal:
type: number
description: Amount including decimal place.
opOnlinePaymentInitiationRequest:
title: OP Online Payment Initiation Request
required:
- amount
- bank_id
- cancel_url
- currency_code
- merchant_reference
- payment_provider_contract
- reject_url
- return_url
type: object
properties:
payment_provider_contract:
type: string
description: The identifier of payment provider contract you want to process the transaction request with.
format: uuid-flexible
title: paymentProviderContractId
bank_id:
maxLength: 40
type: string
description: OP bank ID for the bank to be used
bank_name:
type: string
description: Bank name for the selected Bank
amount:
type: integer
description: 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.
customer:
title: Customer ID
type: string
description: The ID of a customer.
format: uuid-flexible
dynamic_descriptor:
maxLength: 50
type: string
description: A short [descriptor](https://en.wikipedia.org/wiki/Billing_descriptor) to be shown on the invoice of the customer. Please refer to the integration guide for the format requirements.
line_items:
type: array
description: The array of items being purchased.
items:
$ref: '#/components/schemas/LineItem'
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction.
maxLength: 50
user_agent:
type: string
description: The full user agent string of the device the customer used to submit the transaction.
maxLength: 256
currency_code:
$ref: '#/components/schemas/CurrencyCodeEnum'
language:
$ref: '#/components/schemas/Language'
message_to_customer:
maxLength: 500
type: string
description: this message will be shown on OP's payment list
return_url:
type: string
description: redirect url for successful payments
cancel_url:
type: string
description: redirect url for cancelled payments
reject_url:
type: string
description: redirect url for rejected payments
payout_reference:
maxLength: 20
minLength: 4
pattern: ^[0-9]{4,20}$
type: string
description: A settlement reference specified by the merchant to identify the transaction including checksum digit.
EncryptedCardPaymentRequest:
type: object
properties:
payment_provider_contract:
type: string
description: The identifier of payment provider contract you want to process the transaction request with.
format: uuid-flexible
amount:
type: integer
description: 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:
type: string
description: '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.'
enum:
- PRE_AUTH
- FINAL_AUTH
default: FINAL_AUTH
capture_now:
type: boolean
description: Whether auto-capture or not. Setting the value to 'false' will only authorize the transaction.
default: true
customer:
type: string
description: The ID of a customer.
format: uuid-flexible
title: Customer ID
customer_ip:
description: The IP Address of the customer where the transaction was initiated.
maxLength: 15
oneOf:
- type: string
format: ipv4
- type: string
format: ipv6
dynamic_descriptor:
type: string
description: A short [descriptor](https://en.wikipedia.org/wiki/Billing_descriptor) to be shown on bank statement of the customer. Please refer to the integration guide for the format requirements.
maxLength: 25
invoice_number:
type: string
title: Invoice Number
description: Optional. The invoice number to track this payment.
maxLength: 127
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction.
maxLength: 50
threed_authentication:
allOf:
- $ref: '#/components/schemas/ThreedAuthenticationDto'
description: MPI authentication data. Please refer to the integration guide for information on its usage.
stored_credential:
allOf:
- $ref: '#/components/schemas/StoredCredentialDto'
- title: Stored Credential Payment
description: The definition of a stored credential payment.
discriminator:
propertyName: stored_credential_type
mapping:
SIGNUP: '#/components/schemas/StoredCredentialSignUp'
shipping_information:
allOf:
- $ref: '#/components/schemas/ShippingInformation'
- title: Shipping Address
description: 'The address where the purchased goods should be delivered to.
Please use customer_details.shipping.'
deprecated: true
customer_details:
allOf:
- $ref: '#/components/schemas/CustomerDetailsDto'
shopper_interaction:
type: string
description: "Determines the sales channel the shopper gives their card details through:\n\n * `ECOMMERCE` Online transactions where the cardholder is present.\n\n * `MAIL` order transactions where the shopper is in contact with the merchant via email.\n\n * `TELEPHONE` order transactions where the shopper is in contact with the merchant via telephone."
enum:
- ECOMMERCE
- MAIL
- TELEPHONE
default: ECOMMERCE
user_agent:
type: string
description: The full user agent string of the device the customer used to submit the transaction.
maxLength: 256
sales_description:
type: string
description: 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
maxLength: 200
sca_exemption:
type: string
description: "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.\n\n Possible Values:\n\n 1 - Low value payment\n\n 2 - Acquirer Transaction Risk Analysis\n\n 3 - Trusted beneficiary exemption\n\n 4 - Secure Corporate Payment (SCP) exemption\n\n 5 - Merchant Initiated Transaction\n\n 6 - SCA Delegation"
enum:
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
currency_code:
type: string
title: Currency Code
description: "Three-letter ISO 4217 alphabetical currency code. e.g. USD.\n\n Values correspond to [ISO 4217](https://wikipedia.org/wiki/ISO_4217)."
enum:
- AED
- AFN
- ALL
- AMD
- ANG
- AOA
- ARS
- AUD
- AWG
- AZN
- BAM
- BBD
- BDT
- BGN
- BHD
- BIF
- BMD
- BND
- BOB
- BOV
- BRL
- BSD
- BTN
- BWP
- BYR
- BZD
- CAD
- CDF
- CHE
- CHF
- CHW
- CLF
- CLP
- CNY
- COP
- COU
- CRC
- CUC
- CUP
- CVE
- CZK
- DJF
- DKK
- DOP
- DZD
- EGP
- ERN
- ETB
- EUR
- FJD
- FKP
- GBP
- GEL
- GHS
- GIP
- GMD
- GNF
- GTQ
- GYD
- HKD
- HNL
- HRK
- HTG
- HUF
- IDR
- ILS
- INR
- IQD
- IRR
- ISK
- JMD
- JOD
- JPY
- KES
- KGS
- KHR
- KMF
- KPW
- KRW
- KWD
- KYD
- KZT
- LAK
- LBP
- LKR
- LRD
- LSL
- LTL
- LVL
- LYD
- MAD
- MDL
- MGA
- MKD
- MMK
- MNT
- MOP
- MRO
- MUR
- MVR
- MWK
- MXN
- MXV
- MYR
- MZN
- NAD
- NGN
- NIO
- NOK
- NPR
- NZD
- OMR
- PAB
- PEN
- PGK
- PHP
- PKR
- PLN
- PYG
- QAR
- RON
- RSD
- RUB
- RWF
- SAR
- SBD
- SCR
- SDG
- SEK
- SGD
- SHP
- SLL
- SOS
- SRD
- SSP
- STD
- SVC
- SYP
- SZL
- THB
- TJS
- TMT
- TND
- TOP
- TRY
- TTD
- TWD
- TZS
- UAH
- UGX
- USD
- USN
- USS
- UYI
- UYU
- UZS
- VEF
- VND
- VUV
- WST
- XAF
- XAG
- XAU
- XBA
- XBB
- XBC
- XBD
- XCD
- XDR
- XOF
- XPD
- XPF
- XPT
- XTS
- XXX
- YER
- ZAR
- ZMK
- ZMW
- BTC
card_brand:
$ref: '#/components/schemas/CardBrand'
brand_choice:
type: string
description: For dual-branded cards identifies whether selection is made by a cardholder or merchant.
enum:
- MERCHANT
- CARDHOLDER
default: MERCHANT
credit_term:
type: string
description: An indicator to show under which terms the credit was provided.
default: STANDARD
enum:
- STANDARD
- PREFERED
- DEBIT
- INSTALMENT_STANDARD
- INSTALMENT_CREDIT
instalment:
allOf:
- $ref: '#/components/schemas/InstalmentDto'
title: instalment
description: The details on the instalment-scheme that should be enacted by the issuer.
refusal_reason:
type: string
title: Refusal Reason
description: 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.
enum:
- ACQUIRER_COMMS_FAILURE
- ACQUIRER_REFUSED
- CARD_BRAND_NOT_ACCEPTED
- CARD_EXPIRED
- CARD_NOT_ACCEPTED
- CARD_NOT_VALID
- CARD_PRODUCT_NOT_ACCEPTED
- ORIGINAL_TRANSACTION_NOT_FOUND
- INVALID_BIN
- PARTIAL_AUTH_NOT_ALLOWED
- RECEIPT_FAILURE
- REFUND_NOT_ACCEPTED
- THREEDSECURE_FAILED_ACS
- THREEDSECURE_FAILED_AUTH
- THREEDSECURE_FAILED_COMMS
- UNAPPROVED_OPERATOR
- UNKNOWN_REASON
encrypted_card:
type: string
title: Client encrypted cardholder data
description: "The cardholder data encrypted using the Verifone provided public key. This can be obtained using either Verifone.JS solution or Verifone Checkout in capture mode.\n\n The data to encrypt is a JSON with possible tags being cardNumber, sequenceNumber, cardholderName, startMonth, startYear, expiryMonth, expiryYear, cvv. This should be a single JSON line and should not contain any spaces. Read Secure card capture key for details.\n\n Additionally, a tag called captureTime must be presenting indicating the time the card was captured in UTC in format RFC 3339, section 5.6. eg. 2019-08-24T14:15:22Z. Encrypted card is valid for only 15 minutes."
token_preference:
allOf:
- $ref: '#/components/schemas/TokenPreferenceDto'
title: Token Preference
description: Contains the properties required to create a token
encrypted_svc_access_code:
type: string
title: Client encrypted SVC Access Code
description: 'The SVC Access Code encrypted using the Verifone provided public key. This can be obtained using either Verifone.JS solution or Verifone Checkout in capture mode.
The data to encrypt is a JSON with tag svcAccessCode.
Additionally a tag called captureTime must be presenting indicating the time the cvv was captured in UTC in format RFC 3339, section 5.6. eg. 2019-08-24T14:15:22Z.'
public_key_alias:
type: string
title: Public Key Alias
description: The alias for the public key used to encrypt this card.
promo_code:
type: string
description: A code defined by the merchant that affects the calculation of the total amount.
promo_financing_details:
$ref: '#/components/schemas/PromoFinancingDetails'
purchase_order_number:
title: Purchase Order Number
description: '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.
'
type: string
maxLength: 17
tax_indicator:
title: Tax Indicator
description: '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
'
type: string
enum:
- TAX_PROVIDED
- TAX_NOT_PROVIDED
- NON_TAXABLE
default: TAX_NOT_PROVIDED
receipt_type:
type: string
description: Defines the type of receipt to be generated
enum:
- FULL_RECEIPT
- INVOICE
- INVOICE_RECEIPT
- SIMPLE_RECEIPT
- NONE
required:
- payment_provider_contract
- amount
- currency_code
- encrypted_card
- public_key_alias
initiatorTraceId:
description: "A number assigned by a transaction initiator(originator) to assist in identifying a transaction uniquely. The trace identifier remains unchanged for all messages within a two-message exchange, e.g. request/repeat and response. This property can be used to store the System trace audit number (STAN) as used in the ISO8583 specification (DE 11). Note the contents of this field are mandatory in many specifications - ISO8583, AS2805 (DE11) and are often related to the Retrieval Reference Number (RRN) as also specified in ISO8583. Unfortunately due to the usage in these earlier specifications, a STAN was limited to 6 digits which means that it cannot be utilised as a general purpose unique id. In addition, this entry is often printed on the receipt at a POI.\n This value will correspond to **ISO8583 DE11.**\n `Note: Use response.stan value for initiator_trace_id`"
type: string
maxLength: 40
deprecated: true
DetailedAmount:
title: Detailed Amount
description: A structure that represents a breakdown all of the different amounts that may appear on a single transaction.
type: object
properties:
gratuity_amount:
description: 'An optional additional amount representing the tip or gratuity associated with a payment. This should be included in the total ''amount'' of the transaction.
Amount is specified without a decimal place e.g. $1.5 = 150.
The required number of decimal places for a currency code is according to ISO 4217.'
type: integer
tax_amount:
title: Tax Amount
description: 'An optional value to specify the amount of any tax that was included within the total amount for the transaction. This should be included in the total ''amount'' of the transaction.
Amount is specified a decimal place e.g. $1.5 = 150.
The required number of decimal places for a currency code is according to ISO 4217.'
type: integer
surcharge_amount:
title: Surchange Amount
description: 'An optional additional amount representing the surcharge associated with a payment. This should be included in the total ''amount'' of the transaction.
Amount is specified without a decimal place e.g. $1.5 = 150.
The required number of decimal places for a currency code is according to ISO 4217.'
type: integer
CustomerDetailsDto:
type: object
title: Customer
description: Customer information containing billing and shipping details.
additionalProperties: false
properties:
title:
type: string
description: The prefix to the party name. This is sometimes referred to as a title, salutation or appellation.
maxLength: 120
first_name:
type: string
description: The first name of the Customer. This may be a proper name or some form of entity name or nickname.
maxLength: 100
middle_name:
type: string
description: The middle name of the Customer. This may be a proper name or some form of entity name or nickname.
maxLength: 100
last_name:
type: string
description: The last name or family name of the Customer.
maxLength: 100
company_name:
type: string
description: Where the Customer is an organisation or company this name should be used rather than the firstName lastName
maxLength: 100
phone_number:
type: string
description: Customers phone number for billing address.
maxLength: 25
email_address:
type: string
title: email
format: email
description: Customer email address, which might be used during refund flow.
shipping:
allOf:
- $ref: '#/components/schemas/CustomerDetailsShippingInformationDto'
billing:
allOf:
- $ref: '#/components/schemas/BillingDto'
- description: The address of billing.
title: Billing Address
language:
type: string
title: language
description: "The BCP-47 language tag. The tag is composed of:\n\n* The ISO-639 alpha-1 or ISO-639 alpha-2 language code\n\n* (Optional) The ISO-15924 script tag\n\n* The ISO-3166 alpha-2 country code\n\n `NOTE:`The value is case-insensitive, so for example \"he\" and \"HE\" should be considered equal."
PromoFinancingDetails:
title: Promo Financing
type: object
description: Additional details of the special financing offers to customers using private label cards, typically in combination with `promo_code` field.
properties:
promoFinancingType:
description: Type of special financing information requested. Promotional information may be requested for duration of the promo only (`PROMO_APR`) or for during and after promo period (`PROMO_AND_AFTER_APR`).",
type: string
enum:
- PROMO_APR
- PROMO_AND_AFTER_APR
promoPlan:
description: The code or name of a promotional financing plan as set up between merchant and issuer.
type: string
promoPlanExpiry:
description: Expiry date for the requested promo plan.
type: string
format: date
acquirerResponseMessage:
description: The response description generated by the acquirer corresponding to the acquirer response code.
type: string
EcomResponseCard:
type: object
properties:
id:
type: string
title: Transaction ID
format: uuid-flexible
description: The ID of the transaction.
payment_provider_contract:
type: string
description: The identifier of payment provider contract you want to process the transaction request with.
format: uuid-flexible
amount:
type: integer
description: 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.
blocked:
type: boolean
description: True if the transaction has been blocked by a ruleset, false otherwise
created_at:
type: string
description: The time at which the transaction was created.
format: date-time
customer:
type: string
description: The ID of a customer
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction
payment_product:
type: string
description: The payment product corresponding to this transaction
payment_product_type:
type: string
description: The name of the processor used for this transaction
processor_reference:
type: string
description: Reference identifying the transaction, as provided by the processor.
processor_details:
type: object
description: Stores all details specific for the processor of the transaction.
status:
type: string
description: The outcome of the payment request.
title: Ecommerce Transaction Status
enum:
- INITIATED
- AUTHORIZED
- AUTHORIZATION_VOIDED
- CANCELLED
- CUSTOMER_ACCEPTED
- REFUNDED
- FAILED
- PENDING
- DECLINED
- SETTLEMENT_CANCELLED
- SETTLEMENT_REQUESTED
- SETTLEMENT_SUBMITTED
- SETTLEMENT_COMPLETED
- SETTLEMENT_PARTIAL
- SETTLEMENT_DECLINED
- VOIDED
- UNKNOWN
status_reason:
type: string
description: Message provided by the 3rd party service as additional information, when the transaction does not succeed.
shipping_information:
allOf:
- $ref: '#/components/schemas/ShippingInformation'
- title: Shipping Address
description: 'The address where the purchased goods should be delivered to.
Please use customer_details.shipping.'
deprecated: true
customer_details:
allOf:
- $ref: '#/components/schemas/CustomerDetailsDto'
arn:
type: string
description: Acquirer reference number. Generated by the Acquirer at the time of clearing for card transactions.
authorization_code:
type: string
description: '* 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.'
maxLength: 6
avs_result:
type: string
description: 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
enum:
- A
- B
- C
- D
- E
- F
- G
- I
- K
- L
- M
- N
- O
- P
- R
- S
- T
- U
- W
- X
- Y
- Z
card:
type: string
description: The token representing the payment card
created_by:
type: string
description: The ID of the user who initiated the transaction. Only set when shopper_interaction = moto, mail_order or telephone_order
cvv_present:
type: boolean
description: True if the card was used with a cvv
cvv_result:
type: string
description: "The CVC verification result, which provides information about the outcome of the CVC check.\n\n CVC-CVV result codes:\n * `0` Unknown\n * `1` Matches.\n * `2` Doesn't match.\n * `3` Not checked.\n * `4` No CVC/CVV provided, but was required.\n * `5` Issuer not certified for CVC/CVV.\n * `6` No CVC/CVV provided.\n\nThe 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.\n * `M` Match\n * `Y` Match\n * `N` No Match\n * `P` Not Processed\n * `S` CVV Should be present, but Merchant indicates not present.\n * `U` Issuer not certified or registered to process card verification."
enum:
- '0'
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
- '9'
- M
- Y
- N
- P
- S
- U
cavv_result:
type: string
description: "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.\n\n\n CAVV Transaction Response Code Values:\n\n* `0` CAVV or AEVV Not Validated due to erroneous data submitted.\n\n\n* `1` CAVV or AEVV Failed Validation - Authentication Transaction. This is an indication of potential bad or fraudulent data submitted.\n\n\n* `2` CAVV or AEVV Passed Validation – Authentication Transaction.\n\n\n* `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]).\n\n\n* `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]).\n\n\n* `5` Reserved.\n\n\n* `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.\n\n\n* `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).\n\n\n* `8` CAVV or AEVV Passed Validation – Attempted Authentication Transaction. (CAVV/AEVV generated with Visa Key).\n\n\n* `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).\n\n\n* `99` An unknown value was returned from the processor.\n\n\n* `A` CAVV or AEVV Passed Validation – Attempted Authentication Transaction. (CAVV/AEVV generated with Visa Key – Issuer ACS unavailable).\n\n\n* `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).\n\n\n* `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.\n\n\n* `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.\n\n\n* `I` Invalid Security Data.\n\n\n* `U` Issuer does not participate or 3-D Secure data not utilised.\n\n\n* `NA` Blank CAVV or AEVV Not Present.\n\n\n"
enum:
- '0'
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
- '7'
- '8'
- '9'
- '99'
- A
- B
- C
- D
- I
- U
- NA
invoice_number:
type: string
title: Invoice Number
description: Optional. The invoice number to track this payment.
maxLength: 127
stored_credential:
allOf:
- $ref: '#/components/schemas/StoredCredential'
description: Defines a recurring payment type
details:
$ref: '#/components/schemas/Details'
reason_code:
type: string
description: A reason code assigned by the acquiring platform; '0000' in case of success
maxLength: 4
rrn:
type: string
description: "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.\n\nA 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.\n 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.**\n\n For the GSC client android application the format will correspond to YYMMdd."
maxLength: 12
shopper_interaction:
type: string
description: 'Determines the point of sale of a customer. Possible values: pos, moto, mail_order, telephone_order, ecommerce and cont_auth'
enum:
- ECOMMERCE
- MAIL
- TELEPHONE
stan:
type: string
description: System Trace Audit Number.
threed_authentication:
allOf:
- $ref: '#/components/schemas/ThreedAuthentication'
description: MPI authentication data. Please refer to the integration guide for information on its usage.
reversal_status:
type: string
description: Indicates to the API client if a technical reversal has been completed by Verifone.
enum:
- NONE
- REQUIRED
- COMPLETED
default: NONE
geo_location:
type: array
description: The latitude / longitude resolved from the customer's ip address.
items:
type: number
city:
type: string
description: The city resolved from the customer's ip address.
country_code:
type: string
description: The country code resolved from the customer's ip address.
additional_data:
$ref: '#/components/schemas/AdditionalData'
token_details:
allOf:
- $ref: '#/components/schemas/TokenDetails'
description: This object is returned as the response to a request for Create/Update Token.
promo_code:
type: string
description: A code defined by the merchant that affects the calculation of the total amount.
promo_financing_result:
$ref: '#/components/schemas/PromoFinancingResults'
purchase_order_number:
title: Purchase Order Number
description: '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.
'
type: string
maxLength: 17
issuer_instalment_result:
$ref: '#/components/schemas/ecomPaymentResponse_issuer_instalment_result'
balance_amount:
type: integer
title: balanceAmount
description: '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:'
ThreedAuthentication:
type: object
properties:
eci_flag:
type: string
description: Electronic Commerce Indicator (ECI). The ECI value is part of the 2 data elements that indicate the transaction was processed electronically.This should be passed on the authorization transaction to the Gateway/Processor.Please refer to the integration guide for information on its usage.
enum:
- '05'
- '06'
- '07'
- '02'
- '01'
- '00'
enrolled:
type: string
enum:
- Y
- N
- U
- B
description: "The enrolment response status of Authentication eligibility from the Directory Server.\n\nPossible Values:\n\n * `Y` - Yes, Bank is participating in 3-D Secure protocol and will return the ACSUrl.\n\n * `N` - No, Bank is not participating in 3-D Secure protocol.\n\n * `U` - Unavailable, the DS or ACS is not available for authentication at the time of the request.\n\n * `B` - Bypass, merchant authentication rule is triggered to bypass authentication in this use case.\n\nNOTE: If the Enrolled value is NOT Y, then the Consumer is NOT eligible for Authentication."
cavv:
type: string
minLength: 28
maxLength: 48
description: Cardholder Authentication Verification Value (CAVV). Base64-encoded values of 28 or 32 characters. Hex-encoded values of 40 or 48 characters.
cavv_algorithm:
type: string
description: The algorithm used to generate the CAVV value. Supported for 3D Secure v1 only.
pares_status:
type: string
enum:
- Y
- N
- U
- A
- C
- R
description: "Authentication response code.\n\nPossible Values:\n\n * `Y` - Successful Authentication.\n\n * `N` - Failed Authentication.\n\n * `U` - Unable to Complete Authentication\n\n * `A` - Successful Attempts Transaction.\n\n * `C` - Challenge Required for Authentication.\n\n * `R` - Authentication Rejected."
xid:
type: string
description: The transaction identifier assigned by Directory Server. Supported for 3D Secure v1 only.
threeds_version:
type: string
enum:
- 1.0.2
- 2.1.0
- 2.2.0
description: The 3DS version used to process the transaction.
ds_transaction_id:
type: string
description: The unique transaction identifier assigned by the Directory Server. Supported for 3D Secure v2 only.
CurrencyCodeEnum:
title: Currency Code
type: string
description: 'Three-letter ISO 4217 alphabetical currency code. e.g. USD. Values correspond
to [ISO 4217](https://wikipedia.org/wiki/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).'
enum:
- AED
- AFN
- ALL
- AMD
- ANG
- AOA
- ARS
- AUD
- AWG
- AZN
- BAM
- BBD
- BDT
- BGN
- BHD
- BIF
- BMD
- BND
- BOB
- BOV
- BRL
- BSD
- BTN
- BWP
- BYN
- BZD
- CAD
- CDF
- CHE
- CHF
- CHW
- CLF
- CLP
- CNY
- COP
- COU
- CRC
- CUC
- CUP
- CVE
- CZK
- DJF
- DKK
- DOP
- DZD
- EGP
- ERN
- ETB
- EUR
- FJD
- FKP
- GBP
- GEL
- GHS
- GIP
- GMD
- GNF
- GTQ
- GYD
- HKD
- HNL
- HRK
- HTG
- HUF
- IDR
- ILS
- INR
- IQD
- IRR
- ISK
- JMD
- JOD
- JPY
- KES
- KGS
- KHR
- KMF
- KPW
- KRW
- KWD
- KYD
- KZT
- LAK
- LBP
- LKR
- LRD
- LSL
- LYD
- MAD
- MDL
- MGA
- MKD
- MMK
- MNT
- MOP
- MRU
- MUR
- MVR
- MWK
- MXN
- MXV
- MYR
- MZN
- NAD
- NGN
- NIO
- NOK
- NPR
- NZD
- OMR
- PAB
- PEN
- PGK
- PHP
- PKR
- PLN
- PYG
- QAR
- RON
- RSD
- RUB
- RWF
- SAR
- SBD
- SCR
- SDG
- SEK
- SGD
- SHP
- SLL
- SOS
- SRD
- SSP
- STN
- SVC
- SYP
- SZL
- THB
- TJS
- TMT
- TND
- TOP
- TRY
- TTD
- TWD
- TZS
- UAH
- UGX
- USD
- USN
- UYI
- UYU
- UYW
- UZS
- VES
- VND
- VUV
- WST
- XAF
- XAG
- XAU
- XBA
- XBB
- XBC
- XBD
- XCD
- XDR
- XOF
- XPD
- XPF
- XPT
- XSU
- XTS
- XUA
- XXX
- YER
- ZAR
- ZMW
- ZWL
PaymentProductType:
title: Payment Product Type
type: string
description: The payment product type corresponding to this transaction. Fees applied to the transaction, is based on the payment product
enum:
- Affirm
- Amex
- Crypto
- Diners Club International
- Discover
- JCB
- Klarna
- Maestro
- Mastercard
- OP Online Payment
- Swish
- Unknown
- Visa
default: Unknown
acquirerAuthorizingNetworkID:
description: The Network ID returned in the original authorization response.
type: string
acquirerAuthorizingNetworkIdDescriptor:
description: The name or descriptor that corresponds with the `acquirer_authorizing_network_id` returned in the original authorization response.
type: string
StoredCredentialDto:
type: object
properties:
stored_credential_type:
type: string
enum:
- SIGNUP
- CHARGE
description: The definition of a stored credential payment.
processing_model_details:
allOf:
- $ref: '#/components/schemas/ProcessingModelDetailsDto'
first_payment:
type: boolean
description: Whether auto-capture or not. Setting this to 'false' will only authorize the transaction.
scheme_reference:
type: string
description: Scheme Reference Data returned in the initial transaction
required:
- stored_credential_type
- processing_model_details
CreateWalletDto:
type: object
properties:
payment_provider_contract:
type: string
description: The identifier of payment provider contract you want to process the transaction request with.
format: uuid-flexible
amount:
type: integer
description: 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:
type: string
description: '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.'
enum:
- PRE_AUTH
- FINAL_AUTH
default: FINAL_AUTH
capture_now:
type: boolean
description: Whether auto-capture or not. Setting the value to 'false' will only authorize the transaction.
default: true
customer:
type: string
description: The ID of a customer.
format: uuid-flexible
title: Customer ID
customer_ip:
description: The IP Address of the customer where the transaction was initiated.
maxLength: 15
oneOf:
- type: string
format: ipv4
- type: string
format: ipv6
dynamic_descriptor:
type: string
description: A short [descriptor](https://en.wikipedia.org/wiki/Billing_descriptor) to be shown on bank statement of the customer. Please refer to the integration guide for the format requirements.
maxLength: 25
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction.
maxLength: 50
threed_authentication:
allOf:
- $ref: '#/components/schemas/ThreedAuthenticationDto'
description: MPI authentication data. Please refer to the integration guide for information on its usage.
stored_credential:
allOf:
- $ref: '#/components/schemas/StoredCredentialDto'
- title: Stored Credential Payment
description: The definition of a stored credential payment.
discriminator:
propertyName: stored_credential_type
mapping:
SIGNUP: '#/components/schemas/StoredCredentialSignUp'
receipt_type:
type: string
description: Defines the type of receipt to be generated
enum:
- FULL_RECEIPT
- INVOICE
- INVOICE_RECEIPT
- SIMPLE_RECEIPT
- NONE
shipping_information:
allOf:
- $ref: '#/components/schemas/ShippingInformation'
- title: Shipping Address
description: 'The address where the purchased goods should be delivered to.
Please use customer_details.shipping.'
deprecated: true
customer_details:
$ref: '#/components/schemas/CustomerDetailsDto'
shopper_interaction:
type: string
description: "Determines the sales channel the shopper gives their card details through:\n\n * `ECOMMERCE` Online transactions where the cardholder is present.\n\n * `MAIL` order transactions where the shopper is in contact with the merchant via email.\n\n * `TELEPHONE` order transactions where the shopper is in contact with the merchant via telephone."
enum:
- ECOMMERCE
- MAIL
- TELEPHONE
default: ECOMMERCE
user_agent:
type: string
description: The full user agent string of the device the customer used to submit the transaction.
maxLength: 256
sales_description:
type: string
description: 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
maxLength: 200
sca_exemption:
type: string
description: "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.\n\n Possible Values:\n\n 1 - Low value payment\n\n 2 - Acquirer Transaction Risk Analysis\n\n 3 - Trusted beneficiary exemption\n\n 4 - Secure Corporate Payment (SCP) exemption\n\n 5 - Merchant Initiated Transaction\n\n 6 - SCA Delegation"
enum:
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
currency_code:
type: string
title: Currency Code
description: "Three-letter ISO 4217 alphabetical currency code. e.g. USD.\n\n Values correspond to [ISO 4217](https://wikipedia.org/wiki/ISO_4217)."
enum:
- AED
- AFN
- ALL
- AMD
- ANG
- AOA
- ARS
- AUD
- AWG
- AZN
- BAM
- BBD
- BDT
- BGN
- BHD
- BIF
- BMD
- BND
- BOB
- BOV
- BRL
- BSD
- BTN
- BWP
- BYR
- BZD
- CAD
- CDF
- CHE
- CHF
- CHW
- CLF
- CLP
- CNY
- COP
- COU
- CRC
- CUC
- CUP
- CVE
- CZK
- DJF
- DKK
- DOP
- DZD
- EGP
- ERN
- ETB
- EUR
- FJD
- FKP
- GBP
- GEL
- GHS
- GIP
- GMD
- GNF
- GTQ
- GYD
- HKD
- HNL
- HRK
- HTG
- HUF
- IDR
- ILS
- INR
- IQD
- IRR
- ISK
- JMD
- JOD
- JPY
- KES
- KGS
- KHR
- KMF
- KPW
- KRW
- KWD
- KYD
- KZT
- LAK
- LBP
- LKR
- LRD
- LSL
- LTL
- LVL
- LYD
- MAD
- MDL
- MGA
- MKD
- MMK
- MNT
- MOP
- MRO
- MUR
- MVR
- MWK
- MXN
- MXV
- MYR
- MZN
- NAD
- NGN
- NIO
- NOK
- NPR
- NZD
- OMR
- PAB
- PEN
- PGK
- PHP
- PKR
- PLN
- PYG
- QAR
- RON
- RSD
- RUB
- RWF
- SAR
- SBD
- SCR
- SDG
- SEK
- SGD
- SHP
- SLL
- SOS
- SRD
- SSP
- STD
- SVC
- SYP
- SZL
- THB
- TJS
- TMT
- TND
- TOP
- TRY
- TTD
- TWD
- TZS
- UAH
- UGX
- USD
- USN
- USS
- UYI
- UYU
- UZS
- VEF
- VND
- VUV
- WST
- XAF
- XAG
- XAU
- XBA
- XBB
- XBC
- XBD
- XCD
- XDR
- XOF
- XPD
- XPF
- XPT
- XTS
- XXX
- YER
- ZAR
- ZMK
- ZMW
- BTC
card_brand:
$ref: '#/components/schemas/CardBrand'
encrypted_cvv:
type: string
title: The encrypted cvv Card
description: This is an optional field that is only supported with `reuse_token` or `stored_credentials.reference`.
brand_choice:
type: string
description: For dual-branded cards identifies whether selection is made by a cardholder or merchant.
enum:
- MERCHANT
- CARDHOLDER
default: MERCHANT
refusal_reason:
type: string
title: Refusal Reason
description: 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.
enum:
- ACQUIRER_COMMS_FAILURE
- ACQUIRER_REFUSED
- CARD_BRAND_NOT_ACCEPTED
- CARD_EXPIRED
- CARD_NOT_ACCEPTED
- CARD_NOT_VALID
- CARD_PRODUCT_NOT_ACCEPTED
- ORIGINAL_TRANSACTION_NOT_FOUND
- INVALID_BIN
- PARTIAL_AUTH_NOT_ALLOWED
- RECEIPT_FAILURE
- REFUND_NOT_ACCEPTED
- THREEDSECURE_FAILED_ACS
- THREEDSECURE_FAILED_AUTH
- THREEDSECURE_FAILED_COMMS
- UNAPPROVED_OPERATOR
- UNKNOWN_REASON
token_preference:
allOf:
- $ref: '#/components/schemas/TokenPreferenceDto'
title: Token Preference
description: Contains the properties required to create a token
wallet_type:
type: string
enum:
- APPLE_PAY
- GOOGLE_PAY
wallet_payload:
type: object
description: The encrypted payload object provided by the Wallet on the frontend
sca_compliance_level:
type: string
description: "Determines if 3ds is needed:\n\nsca_compliance_level | WalletPayload authMethod | Additional 3ds\r\n--- | --- | ---\r\nNONE | N/A | NO\r\nWALLET | PAN_ONLY | YES\r\nWALLET | 3DS_CRYPTOGRAM | NO\r\nFORCE_3DS | N/A | YES\r\n"
enum:
- NONE
- WALLET
- FORCE_3DS
default: WALLET
promo_code:
type: string
description: A code defined by the merchant that affects the calculation of the total amount.
promo_financing_details:
$ref: '#/components/schemas/PromoFinancingDetails'
purchase_order_number:
title: Purchase Order Number
description: '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.
'
type: string
maxLength: 17
tax_indicator:
title: Tax Indicator
description: '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
'
type: string
enum:
- TAX_PROVIDED
- TAX_NOT_PROVIDED
- NON_TAXABLE
default: TAX_NOT_PROVIDED
detailed_amount:
$ref: '#/components/schemas/DetailedAmount'
additional_data:
type: object
additionalProperties: false
description: Additional information for transaction, which may be required in a particular payment request.
properties:
program_support:
type: array
description: List of supported special programs. Can be used to indicate capability to process enhanced response data.
items:
type: string
enum:
- MCINST
required:
- payment_provider_contract
- amount
- currency_code
- wallet_type
- wallet_payload
CustomerDetailsShippingInformationDto:
type: object
additionalProperties: false
description: The address where the purchased goods should be delivered to.
title: Shipping Address
properties:
address:
type: string
maxLength: 300
description: Street address of the recipient.
city:
type: string
maxLength: 28
description: City of the recipient.
country:
type: string
maxLength: 2
minLength: 2
format: country-code
description: A 2-letter ISO3166 alpha-2 country code for the address.
postal_code:
type: string
minLength: 1
maxLength: 16
description: A postal code for the address.
email:
type: string
title: Email Address
minLength: 3
maxLength: 254
format: email
description: A valid internationalized email address, as defined by RFC 5322, RFC 6530, and other RFCs. Due to RFC 5321, an email address can be up to 254 characters long even though up to 64 characters are allowed before and 255 characters are allowed after the @ sign. This pattern verifies only that the string contains an unquoted @ sign. See https://tools.ietf.org/html/rfc5322#section-3.4.1.
first_name:
type: string
maxLength: 100
description: First name of the recipient.
last_name:
type: string
maxLength: 100
description: Last name of the recipient.
phone:
type: string
maxLength: 18
description: Telephone number.
state:
type: string
maxLength: 35
description: A region / state / province for the address.
required:
- address
- city
- country
- postal_code
vippsPaymentInitiationResponse:
title: Vipps Payment Initiation Response
type: object
properties:
id:
title: Transaction ID
type: string
description: The ID of the transaction.
format: uuid-flexible
redirect_url:
type: string
description: Vipps Host Redirection URL.
amount:
type: integer
description: 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.
blocked:
type: boolean
description: True if the transaction has been blocked by a ruleset, false otherwise
created_at:
type: string
description: The time at which the transaction was created.
format: date-time
customer:
type: string
description: The ID of a customer
details:
$ref: '#/components/schemas/ecomPaymentResponse_details'
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction.
maxLength: 50
processor:
type: string
description: The name of the processor used for this transaction
default: NETS
payment_product:
type: string
description: The payment product corresponding to this transaction
default: CARD
payment_product_type:
$ref: '#/components/schemas/PaymentProductType'
shipping_information:
allOf:
- $ref: '#/components/schemas/ShippingInformationDto'
status:
type: string
description: The outcome of the payment request.
title: Ecommerce Transaction Status
enum:
- INITIATED
- AUTHORIZED
- AUTHORIZATION_VOIDED
- CANCELLED
- CUSTOMER_ACCEPTED
- REFUNDED
- FAILED
- PENDING
- DECLINED
- SETTLEMENT_CANCELLED
- SETTLEMENT_REQUESTED
- SETTLEMENT_SUBMITTED
- SETTLEMENT_COMPLETED
- SETTLEMENT_PARTIAL
- SETTLEMENT_DECLINED
- VOIDED
- UNKNOWN
status_reason:
type: string
description: Message provided by the 3rd party service as additional information, when the transaction does not succeed.
created_by:
type: string
description: The ID of the user who initiated the transaction. Only set when shopper_interaction = moto, mail_order or telephone_order
shopper_interaction:
type: string
description: "Determines the sales channel the shopper gives their card details through:\n\n * `ECOMMERCE` Online transactions where the cardholder is present.\n\n * `MAIL` order transactions where the shopper is in contact with the merchant via email.\n\n * `TELEPHONE` order transactions where the shopper is in contact with the merchant via telephone."
enum:
- ECOMMERCE
- MAIL
- TELEPHONE
default: ECOMMERCE
geo_location:
type: array
description: The latitude / longitude resolved from the customer's ip address.
items:
type: number
city:
type: string
description: The city resolved from the customer's ip address.
country_code:
title: Country Code
type: string
description: The [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/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.
.
Language:
title: Language
maxLength: 11
minLength: 2
type: string
description: 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
klarnaPaymentInitiationResponse:
title: Klarna Initiate Payment Result
type: object
properties:
id:
title: Transaction ID
type: string
description: The ID of the transaction.
format: uuid-flexible
instore_reference:
type: string
description: In-store reference for the transaction
client_token:
type: string
description: Client token returned by klarna host to initialize the payment process
payment_method_categories:
type: array
description: Provides a list of available payment method categories at the time of checkout
items:
title: Klarna Payment Method Category Object
type: object
properties:
identifier:
type: string
description: The Identifier of the payment method category
name:
type: string
description: Name of the Klarna payment method category
asset_urls:
type: object
properties:
standard:
type: string
description: URL of the standard asset
descriptive:
type: string
description: URL of the descriptive asset
description: Asset URLs for the payment method provided by Klarna
description: Klarna available payment method category for a new payment credit transaction returned by Klarna Host
amount:
type: integer
description: 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.
blocked:
type: boolean
description: True if the transaction has been blocked by a ruleset, false otherwise
created_by:
type: string
description: The ID of the user who initiated the transaction. Only set when shopper_interaction = moto, mail_order or telephone_order
created_at:
type: string
description: The time at which the transaction was created.
format: date-time
customer:
type: string
description: The ID of a customer
details:
$ref: '#/components/schemas/ecomPaymentResponse_details'
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction.
maxLength: 50
processor:
type: string
description: The name of the processor used for this transaction
default: KLARNA
payment_product:
type: string
description: The payment product corresponding to this transaction
default: KLARNA
payment_product_type:
$ref: '#/components/schemas/PaymentProductType'
shipping_information:
allOf:
- $ref: '#/components/schemas/ShippingInformationDto'
status:
type: string
description: The outcome of the payment request.
title: Ecommerce Transaction Status
enum:
- INITIATED
- AUTHORIZED
- AUTHORIZATION_VOIDED
- CANCELLED
- CUSTOMER_ACCEPTED
- REFUNDED
- FAILED
- PENDING
- DECLINED
- SETTLEMENT_CANCELLED
- SETTLEMENT_REQUESTED
- SETTLEMENT_SUBMITTED
- SETTLEMENT_COMPLETED
- SETTLEMENT_PARTIAL
- SETTLEMENT_DECLINED
- VOIDED
- UNKNOWN
status_reason:
type: string
description: Message provided by the 3rd party service as additional information, when the transaction does not succeed.
shopper_interaction:
type: string
description: "Determines the sales channel the shopper gives their card details through:\n\n * `ECOMMERCE` Online transactions where the cardholder is present.\n\n * `MAIL` order transactions where the shopper is in contact with the merchant via email.\n\n * `TELEPHONE` order transactions where the shopper is in contact with the merchant via telephone."
enum:
- ECOMMERCE
- MAIL
- TELEPHONE
default: ECOMMERCE
geo_location:
type: array
description: The latitude / longitude resolved from the customer's ip address.
items:
type: number
city:
type: string
description: The city resolved from the customer's ip address.
country_code:
title: Country Code
type: string
description: The [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/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.
.
mobilePayPaymentInitiationRequest:
title: MobilePay Payment Initiation Request
required:
- amount
- currency_code
- customer
- merchant_reference
- payment_provider_contract
- redirect_url
type: object
properties:
payment_provider_contract:
type: string
description: The identifier of payment provider contract you want to process the transaction request with.
format: uuid-flexible
threed_secure:
$ref: '#/components/schemas/ThreeDSecure'
redirect_url:
maxLength: 2048
type: string
description: Checkout Redirect URL which will be used by MobilePay on Payment Completion.
amount:
type: integer
description: 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:
type: string
description: "Flags a payment request for either pre-authorization or final authorization.\n * `PRE_AUTH` is used when the authorized amount is unknown and can be adjusted later.\n * `FINAL_AUTH` is used when a final authorized amount is known and the transaction will definitely be captured in whole."
enum:
- PRE_AUTH
- FINAL_AUTH
default: FINAL_AUTH
capture_now:
type: boolean
description: Whether auto-capture or not. Setting the value to 'false' will only authorize the transaction.
default: true
customer:
type: string
description: The ID of a customer.
format: uuid-flexible
title: Customer ID
customer_ip:
description: The IP Address of the customer where the transaction was initiated.
maxLength: 15
oneOf:
- type: string
format: ipv4
- type: string
format: ipv6
dynamic_descriptor:
maxLength: 25
type: string
description: A short [descriptor](https://en.wikipedia.org/wiki/Billing_descriptor) to be shown on bank statement of the customer. Please refer to the integration guide for the format requirements.
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction.
maxLength: 50
shipping_information:
allOf:
- $ref: '#/components/schemas/ShippingInformationDto'
user_agent:
type: string
description: The full user agent string of the device the customer used to submit the transaction.
maxLength: 256
sales_description:
type: string
description: 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
maxLength: 200
currency_code:
title: Currency Code
type: string
description: 'Three-letter ISO 4217 alphabetical currency code. e.g. USD. Values correspond
to [ISO 4217](https://wikipedia.org/wiki/ISO_4217).
Please note that Klarna only supports EURO (EUR) and Danish krone (DKK).'
enum:
- EUR
- DKK
sca_compliance_level:
type: string
description: " * `NONE`: No SCA required.\n * `WALLET`: Depend on the wallet SCA mechanism. For Google Pay this means that MasterCard will shift liability, Visa will not.\n * `FORCE_3DS`: Do an additional 3DS step regardless of whether the wallet indicates the token is SCA-compliant."
enum:
- NONE
- WALLET
- FORCE_3DS
default: WALLET
sca_exemption:
type: string
description: "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.\n Possible Values:\n 1 - Low value payment\n 2 - Acquirer Transaction Risk Analysis\n 3 - Trusted beneficiary exemption\n 4 - Secure Corporate Payment (SCP) exemption\n 5 - Merchant Initiated Transaction\n 6 - SCA Delegation.\n\n**NOTE:** This only applies when `sca_compliance_level` = `NONE`"
enum:
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
PaymentFrequency:
type: object
properties:
time_unit:
type: string
enum:
- DAY
- WEEK
- MONTH
- YEAR
description: Processing model to use for COF transaction. Refer to the card integration guide for more information on the usage.
value:
type: number
description: Value.
required:
- time_unit
issuerCountryEnum:
type: string
description: The [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) 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.
.
enum:
- ZZZ
- ABW
- AFG
- AGO
- AIA
- ALA
- ALB
- AND
- ARE
- ARG
- ARM
- ASM
- ATA
- ATF
- ATG
- AUS
- AUT
- AZE
- BDI
- BEL
- BEN
- BES
- BFA
- BGD
- BGR
- BHR
- BHS
- BIH
- BLM
- BLR
- BLZ
- BMU
- BOL
- BRA
- BRB
- BSB
- BRN
- BTN
- BVT
- BWA
- CAF
- CAN
- CCK
- CHE
- CHL
- CHN
- CIV
- CMR
- COD
- COG
- COK
- COL
- COM
- CPV
- CRI
- CUB
- CUW
- CXR
- CYM
- CYP
- CZE
- DEU
- DJI
- DMA
- DNK
- DOM
- DZA
- ECU
- EGY
- ERI
- ESH
- ESP
- EST
- ETH
- FIN
- FJI
- FLK
- FRA
- FRO
- FSM
- GAB
- GBR
- GEO
- GGY
- GHA
- GIB
- GIN
- GLP
- GMB
- GNB
- GNQ
- GRC
- GRD
- GRL
- GTM
- GUF
- GUM
- GUY
- HKG
- HMD
- HND
- HRV
- HTI
- HUN
- IDN
- IMN
- IND
- IOT
- IRL
- IRN
- IRQ
- ISL
- ISR
- ITA
- JAM
- JEY
- JOR
- JPN
- KAZ
- KEN
- KGZ
- KHM
- KIR
- KNA
- KOR
- KWT
- LAO
- LBN
- LBR
- LBY
- LCA
- LIE
- LKA
- LSO
- LTU
- LUX
- LVA
- MAC
- MAF
- MAR
- MCO
- MDA
- MDG
- MDV
- MEX
- MHL
- MKD
- MLI
- MLT
- MMR
- MNE
- MNG
- MNP
- MOZ
- MRT
- MSR
- MTQ
- MUS
- MWI
- MYS
- MYT
- NAM
- NCL
- NER
- NFK
- NGA
- NIC
- NIU
- NLD
- NOR
- NPL
- NRU
- NZL
- OMN
- PAK
- PAN
- PCN
- PER
- PHL
- PLW
- PNG
- POL
- PRI
- PRK
- PRT
- PRY
- PSE
- PYF
- QAT
- REU
- ROU
- RUS
- RWA
- SAU
- SDN
- SEN
- SGC
- SGP
- SHN
- SJM
- SLB
- SLE
- SLV
- SMR
- SOM
- SPM
- SRB
- SSD
- STP
- SUR
- SVK
- SVN
- SWE
- SWZ
- SXM
- SYC
- SYR
- TCA
- TCD
- TGO
- THA
- TJK
- TKL
- TKM
- TLS
- TON
- TTO
- TUN
- TUR
- TUV
- TWN
- TZA
- UGA
- UKR
- UMI
- URY
- USA
- UZB
- VAT
- VCT
- VEN
- VGB
- VIR
- VNM
- VUT
- WLF
- WSM
- YEM
- ZAF
- ZMB
- ZWE
ecomPaymentResponse_details:
type: object
properties:
auto_capture:
type: boolean
description: Indicates whether the transaction would be automatically captured upon authorisation.
mid:
type: string
description: Merchant ID (MID)
format: integer
ApplePayMerchantValidationDto:
type: object
properties:
validation_url:
type: string
description: "The URL pointing to the Apple Pay validation location.\n\n**Note**: Use the URL below according to your Verifone environment:\n - Sandbox: https://apple-pay-gateway-cert.apple.com/paymentservices/startSession\n - Production: https://apple-pay-gateway.apple.com/paymentservices/startSession\n"
domain:
type: string
description: The domain from which the payment request will be initiated.
payment_provider_contract:
type: string
description: The identifier of payment provider contract you want to process the transaction request with.
format: uuid-flexible
required:
- validation_url
- domain
- payment_provider_contract
AdditionalDataDto:
type: object
properties:
total_items:
type: number
description: Number of purchased items or services.
minimum: 0
maximum: 99
device_channel:
type: string
enum:
- SDK
- BROWSER
description: Determines the channel that the transaction came through.
status_reason:
type: string
description: "Provides additional information as to why the PAResStatus has the specific value.\n\n **NOTE**: Required for Payment (e.g. Authentication Indicator equals 01 on Lookup Request) transactions when PAResStatus is equal to N, U, or R in the Lookup Response."
challenge_indicator:
type: string
enum:
- '01'
- '02'
- '03'
- '04'
- '90'
description: "This is a 2.0 required field. Possible values are:\n\n * `01` No preference\n\n * `02` No challenge requested\n\n * `03` Challenge requested (3DS Requestor preference)\n\n * `04` Challenge requested (Mandate)\n\n * `90` Used to call the CB Scoring platform"
challenge_cancel:
type: string
enum:
- '01'
- '02'
- '03'
- '04'
- '05'
- '06'
- '07'
description: "Indicator informing the ACS and the DS that the authentication has been cancelled.\n\n Possible values are:\n\n * `01` Cardholder selected “Cancel”\n\n * `02` 3DS Requestor cancelled Authentication.\n\n * `03` Transaction Abandoned\n\n * `04` Transaction Timed Out at ACS — other timeouts\n\n * `05` Transaction Timed Out at ACS — First CReq not received by ACS\n\n * `06` Transaction Error\n\n * `07` Unknown"
acs_url:
type: string
maxLength: 2048
description: "The fully qualified URL to redirect the Consumer to complete the Consumer Authentication transaction.\n\n **NOTE**: Available if Enrolled = Y"
acs_operator_id:
type: string
maxLength: 32
description: DS assigned ACS identifier. Each DS can provide a unique ID to each ACS on an individual basis.
network_score:
type: string
maxLength: 2
format: number
description: The global score calculated by the CB Scoring platform.
reason_code:
type: string
description: The error code indicating a problem with this transaction.
reason_desc:
type: string
description: 'Text and additional detail about the error for this transaction. NOTE: This field concatenates the errorDescription and errorDetail from the authentication response message.'
NotFoundV2Docs:
type: object
properties:
details:
type: object
additionalProperties:
type: object
timestamp:
type: number
description: Error timestamp
reversal_status:
type: string
description: Indicates to the API client if a technical reversal has been completed by Verifone.
default: NONE
enum:
- NONE
- REQUIRED
- COMPLETED
code:
type: number
enum:
- 404
default: 404
message:
type: string
enum:
- The requested resource, or one of its sub-resources, can't be found. If the submitted query is valid, this error is likely to be caused by a problem with a nested resource that has been deleted or modified. Check the details property for additional insights.
default: The requested resource, or one of its sub-resources, can't be found. If the submitted query is valid, this error is likely to be caused by a problem with a nested resource that has been deleted or modified. Check the details property for additional insights.
required:
- message
swishPaymentInitiationResponse:
title: Swish Payment Initiation Response
type: object
properties:
id:
title: Transaction ID
type: string
description: The ID of the transaction.
format: uuid-flexible
amount:
type: integer
description: 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.
blocked:
type: boolean
description: True if the transaction has been blocked by a ruleset, false otherwise
created_at:
type: string
description: The time at which the transaction was created.
format: date-time
customer:
type: string
description: The ID of a customer
details:
$ref: '#/components/schemas/ecomPaymentResponse_details'
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction.
maxLength: 50
processor:
type: string
description: The name of the processor used for this transaction
default: SWISH
payment_product:
type: string
description: The payment product corresponding to this transaction
default: SWISH
payment_product_type:
$ref: '#/components/schemas/PaymentProductType'
shipping_information:
allOf:
- $ref: '#/components/schemas/ShippingInformationDto'
status:
type: string
description: The outcome of the payment request.
title: Ecommerce Transaction Status
enum:
- INITIATED
- AUTHORIZED
- AUTHORIZATION_VOIDED
- CANCELLED
- CUSTOMER_ACCEPTED
- REFUNDED
- FAILED
- PENDING
- DECLINED
- SETTLEMENT_CANCELLED
- SETTLEMENT_REQUESTED
- SETTLEMENT_SUBMITTED
- SETTLEMENT_COMPLETED
- SETTLEMENT_PARTIAL
- SETTLEMENT_DECLINED
- VOIDED
- UNKNOWN
status_reason:
type: string
description: The outcome of the payment request.
title: Ecommerce Transaction Status
enum:
- INITIATED
- AUTHORIZED
- AUTHORIZATION_VOIDED
- CANCELLED
- CUSTOMER_ACCEPTED
- REFUNDED
- FAILED
- PENDING
- DECLINED
- SETTLEMENT_CANCELLED
- SETTLEMENT_REQUESTED
- SETTLEMENT_SUBMITTED
- SETTLEMENT_COMPLETED
- SETTLEMENT_PARTIAL
- SETTLEMENT_DECLINED
- VOIDED
- UNKNOWN
created_by:
type: string
description: The ID of the user who initiated the transaction. Only set when shopper_interaction = moto, mail_order or telephone_order
shopper_interaction:
type: string
description: "Determines the sales channel the shopper gives their card details through:\n\n * `ECOMMERCE` Online transactions where the cardholder is present.\n\n * `MAIL` order transactions where the shopper is in contact with the merchant via email.\n\n * `TELEPHONE` order transactions where the shopper is in contact with the merchant via telephone."
enum:
- ECOMMERCE
- MAIL
- TELEPHONE
default: ECOMMERCE
geo_location:
type: array
description: The latitude / longitude resolved from the customer's ip address.
items:
type: number
city:
type: string
description: The city resolved from the customer's ip address.
country_code:
title: Country Code
type: string
description: The [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/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.
.
payment_request_token:
type: string
description: Returned when creating an m-commerce payment request. The token to use when opening the Swish app. Please find more details at [Swish documentation](https://developer.swish.nu/documentation/guides/trigger-the-swish-app).
CardBrand:
type: string
title: The Card Type
description: "Represents a Card type or brand. It should correspond to a consistent name, the list of standard names is as follows:\n\nValue | Description\n------|-------------\nAMEX|American Express\nCB|Carte Bancaires\nDINERS|Diners Club International\nDISCOVER|Diners Club Discover\nJCB|Japan Credit Bureau\nMAESTRO|Multi-national Debit (MasterCard)\nMASTERCARD|MasterCard\nVISA|Visa\nUPI|Union Pay International\nGIFT_CARD|Gift Card (Generic)\nPLCC|Private Label Credit Card\n**Other local schemes as applicable**. Enter a pre-defined name to represent the scheme or type. \n**Note**: 1. For gift cards, card brand is mandatory and the value should be GIFT_CARD.\n2. This parameter is mandatory for dual branded cards."
affirmPaymentInitiationRequest:
title: Affirm Initiate Payment Request
required:
- payment_provider_contract
- amount
- redirect_url
- cancel_url
- currency_code
type: object
properties:
payment_provider_contract:
type: string
description: The identifier of payment provider contract you want to process the transaction request with.
format: uuid-flexible
title: paymentProviderContractId
amount:
type: integer
description: 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.
tax_amount:
description: 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.
type: integer
redirect_url:
type: string
description: Checkout Redirect URL which will be used by Affirm on Payment Completion.
maxLength: 2048
cancel_url:
type: string
description: Checkout Cancel URL which will be used by Affirm on Payment Completion.
maxLength: 2048
capture_now:
type: boolean
description: Whether auto-capture or not. Setting the to 'false' will only authorize the transaction.
default: true
customer:
title: Customer ID
type: string
description: The ID of a customer.
format: uuid-flexible
customer_ip:
description: The IP Address of the customer where the transaction was initiated.
maxLength: 15
oneOf:
- type: string
format: ipv4
- type: string
format: ipv6
customer_details:
$ref: '#/components/schemas/CustomerDetailsDto'
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction.
maxLength: 50
line_items:
type: array
description: The array of items being purchased.
items:
$ref: '#/components/schemas/affirmLineItem'
user_agent:
type: string
description: The full user agent string of the device the customer used to submit the transaction.
maxLength: 256
currency_code:
$ref: '#/components/schemas/CurrencyCodeEnum'
locale:
$ref: '#/components/schemas/Locale'
mode:
type: string
description: "Set to modal to enable the modal checkout flow (default uses redirect checkout flow). Possible values: authorization.\n * `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.\n * `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."
enum:
- MODAL
- REDIRECT
default: REDIRECT
InternalErrorV2Docs:
type: object
properties:
details:
type: object
additionalProperties:
type: object
timestamp:
type: number
description: Error timestamp
reversal_status:
type: string
description: Indicates to the API client if a technical reversal has been completed by Verifone.
default: NONE
enum:
- NONE
- REQUIRED
- COMPLETED
code:
type: number
enum:
- 500
default: 500
message:
type: string
enum:
- 'Unexpected error: if the error persists, please contact an administrator, quoting the code and timestamp of this error'
default: 'Unexpected error: if the error persists, please contact an administrator, quoting the code and timestamp of this error'
required:
- message
BadRequestV2Docs:
type: object
properties:
details:
type: object
additionalProperties:
type: object
timestamp:
type: number
description: Error timestamp
reversal_status:
type: string
description: Indicates to the API client if a technical reversal has been completed by Verifone.
default: NONE
enum:
- NONE
- REQUIRED
- COMPLETED
code:
type: number
enum:
- 400
default: 400
message:
type: string
enum:
- 'At least one parameter is invalid. Examine the details property for more information. Invalid parameters are listed and prefixed accordingly: body for parameters submitted in the requests body, query for parameters appended to the requests URL, and params for templated parameters of the requests URL.'
default: 'At least one parameter is invalid. Examine the details property for more information. Invalid parameters are listed and prefixed accordingly: body for parameters submitted in the requests body, query for parameters appended to the requests URL, and params for templated parameters of the requests URL.'
required:
- message
TokenDetailsRequestBody:
title: Reuse Token Details
type: object
properties:
expiry_month:
maximum: 12
type: integer
description: A 2 digit value as shown on card. ISO8583 - DE 14.\n\nThis is included as an optional value to be used for some Third-Party reuse token types.
expiry_year:
maximum: 9999
type: integer
description: A 4 digit value as shown on card.\n\nThis is included as an optional value to be used for some Third-Party reuse token types.
additionalProperties: false
description: 'The details related to the token. For Third-Party Reuse tokens, these elements might be required as additional information together with the Reuse token itself.
**Note**: `reuse_token_details` is **mandatory** when `reuse_token_type` is set to `TAVE` or `CHASE`.
'
mobilePayPaymentInitiationResponse:
title: MobilePay Payment Initiation Response
type: object
properties:
id:
title: Transaction ID
type: string
description: The ID of the transaction.
format: uuid-flexible
redirect_url:
type: string
description: MobilePay Host Redirection URL.
amount:
type: integer
description: 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.
blocked:
type: boolean
description: True if the transaction has been blocked by a ruleset, false otherwise
created_at:
type: string
description: The time at which the transaction was created.
format: date-time
customer:
type: string
description: The ID of a customer
details:
$ref: '#/components/schemas/ecomPaymentResponse_details'
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction.
maxLength: 50
processor:
type: string
description: The name of the processor used for this transaction
default: NETS
payment_product:
type: string
description: The payment product corresponding to this transaction
default: CARD
payment_product_type:
$ref: '#/components/schemas/PaymentProductType'
shipping_information:
allOf:
- $ref: '#/components/schemas/ShippingInformationDto'
status:
type: string
description: The outcome of the payment request.
title: Ecommerce Transaction Status
enum:
- INITIATED
- AUTHORIZED
- AUTHORIZATION_VOIDED
- CANCELLED
- CUSTOMER_ACCEPTED
- REFUNDED
- FAILED
- PENDING
- DECLINED
- SETTLEMENT_CANCELLED
- SETTLEMENT_REQUESTED
- SETTLEMENT_SUBMITTED
- SETTLEMENT_COMPLETED
- SETTLEMENT_PARTIAL
- SETTLEMENT_DECLINED
- VOIDED
- UNKNOWN
status_reason:
type: string
description: Message provided by the 3rd party service as additional information, when the transaction does not succeed.
created_by:
type: string
description: The ID of the user who initiated the transaction. Only set when shopper_interaction = moto, mail_order or telephone_order
shopper_interaction:
type: string
description: "Determines the sales channel the shopper gives their card details through:\n\n * `ECOMMERCE` Online transactions where the cardholder is present.\n\n * `MAIL` order transactions where the shopper is in contact with the merchant via email.\n\n * `TELEPHONE` order transactions where the shopper is in contact with the merchant via telephone."
enum:
- ECOMMERCE
- MAIL
- TELEPHONE
default: ECOMMERCE
geo_location:
type: array
description: The latitude / longitude resolved from the customer's ip address.
items:
type: number
city:
type: string
description: The city resolved from the customer's ip address.
country_code:
title: Country Code
type: string
description: The [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/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.
.
opOnlinePaymentInitiationResponse:
title: OP Online Payment Payment Initiation Response
type: object
properties:
id:
title: Transaction ID
type: string
description: The ID of the transaction.
format: uuid-flexible
payment_url:
type: string
description: The payment URL can be used to redirect to transfer the money.
format: uri
amount:
type: integer
description: 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.
created_at:
type: string
description: The time at which the transaction was created.
format: date-time
customer:
type: string
description: The ID of a customer
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction.
maxLength: 50
processor:
type: string
description: The name of the processor used for this transaction
default: OP_ONLINE_PAYMENT
payment_product:
type: string
description: The payment product corresponding to this transaction
default: OP_ONLINE_PAYMENT
payment_product_type:
$ref: '#/components/schemas/PaymentProductType'
status:
type: string
description: The outcome of the payment request.
title: Ecommerce Transaction Status
enum:
- INITIATED
- AUTHORIZED
- AUTHORIZATION_VOIDED
- CANCELLED
- CUSTOMER_ACCEPTED
- REFUNDED
- FAILED
- PENDING
- DECLINED
- SETTLEMENT_CANCELLED
- SETTLEMENT_REQUESTED
- SETTLEMENT_SUBMITTED
- SETTLEMENT_COMPLETED
- SETTLEMENT_PARTIAL
- SETTLEMENT_DECLINED
- VOIDED
- UNKNOWN
status_reason:
type: string
description: Message provided by the 3rd party service as additional information, when the transaction does not succeed.
geo_location:
type: array
description: The latitude / longitude resolved from the customer's ip address.
items:
type: number
city:
type: string
description: The city resolved from the customer's ip address.
country_code:
title: Country Code
type: string
description: The [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/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.
.
payout_reference:
maxLength: 20
minLength: 4
pattern: ^[0-9]{4,20}$
type: string
description: A settlement reference specified by the merchant to identify the transaction including checksum digit.
acquirerResponseCode:
description: Acquirer response returned during the authorisation.
type: string
maxLength: 4
ProcessingModelDetailsDto:
type: object
properties:
total_payment_number:
type: number
description: Total paymant Number.
total_payment_amount:
type: number
description: total Payment Amount.
first_payment_amount:
type: number
description: first Payment Amount.
payment_frequency:
allOf:
- $ref: '#/components/schemas/PaymentFrequency'
processing_model:
type: string
enum:
- UNSCHEDULED_CREDENTIAL_ON_FILE
- CREDENTIAL_ON_FILE
- RECURRING
- NONE
- REAUTHORIZATION
description: Processing model to use for COF transaction. Refer to the card integration guide for more information on the usage.
merchant_signup_code:
type: string
description: A pre-defined signup code between the merchant and the acquirer.
current_payment_number:
type: number
description: The current number of recurring payments.
amount_fixed:
type: boolean
default: false
description: Set `true` to indicate that recurring charges are of the same amount (often used for subscriptions), and set `false` to indicate variable amount between charges (often used for standing orders with fixed schedule).
required:
- processing_model
opOnlinePaymentGetBanksResponse:
title: OP Online Payment list of Banks Response
type: array
items:
type: object
properties:
bank_id:
type: string
bank_name:
type: string
vippsPaymentInitiationRequest:
title: Vipps Payment Initiation Request
required:
- amount
- currency_code
- customer
- merchant_reference
- payment_provider_contract
- redirect_url
type: object
properties:
payment_provider_contract:
type: string
description: The identifier of payment provider contract you want to process the transaction request with.
format: uuid-flexible
threed_secure:
$ref: '#/components/schemas/ThreeDSecure'
app_phone_number:
maxLength: 18
type: string
description: The Phone Number registered with Vipps Mobile APP.
redirect_url:
maxLength: 2048
type: string
description: Checkout Redirect URL which will be used by Vipps on Payment Completion.
is_app:
type: boolean
description: Flag to identify the transaction originated from APP or Browser.
default: false
amount:
type: integer
description: 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:
type: string
description: "Flags a payment request for either pre-authorization or final authorization.\n * `PRE_AUTH` is used when the authorized amount is unknown and can be adjusted later.\n * `FINAL_AUTH` is used when a final authorized amount is known and the transaction will definitely be captured in whole."
enum:
- PRE_AUTH
- FINAL_AUTH
default: FINAL_AUTH
capture_now:
type: boolean
description: Whether auto-capture or not. Setting the value to 'false' will only authorize the transaction.
default: true
customer:
type: string
description: The ID of a customer.
format: uuid-flexible
title: Customer ID
customer_ip:
description: The IP Address of the customer where the transaction was initiated.
maxLength: 15
oneOf:
- type: string
format: ipv4
- type: string
format: ipv6
dynamic_descriptor:
maxLength: 25
type: string
description: A short [descriptor](https://en.wikipedia.org/wiki/Billing_descriptor) to be shown on bank statement of the customer. Please refer to the integration guide for the format requirements.
merchant_reference:
type: string
description: A reference specified by the merchant to identify the transaction.
maxLength: 50
shipping_information:
allOf:
- $ref: '#/components/schemas/ShippingInformationDto'
user_agent:
type: string
description: The full user agent string of the device the customer used to submit the transaction.
maxLength: 256
sales_description:
type: string
description: 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
maxLength: 200
currency_code:
title: Currency Code
type: string
description: 'Three-letter ISO 4217 alphabetical currency code. e.g. USD. Values correspond
to [ISO 4217](https://wikipedia.org/wiki/ISO_4217).
Please note that Klarna only supports Norwegian krone (NOK).'
enum:
- NOK
sca_compliance_level:
type: string
description: " * `NONE`: No SCA required.\n * `WALLET`: Depend on the wallet SCA mechanism. For Google Pay this means that MasterCard will shift liability, Visa will not.\n * `FORCE_3DS`: Do an additional 3DS step regardless of whether the wallet indicates the token is SCA-compliant."
enum:
- NONE
- WALLET
- FORCE_3DS
default: WALLET
sca_exemption:
type: string
description: "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.\n Possible Values:\n 1 - Low value payment\n 2 - Acquirer Transaction Risk Analysis\n 3 - Trusted beneficiary exemption\n 4 - Secure Corporate Payment (SCP) exemption\n 5 - Merchant Initiated Transaction\n 6 - SCA Delegation.\n\n**NOTE:** This only applies when `sca_compliance_level` = `NONE`"
enum:
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
securitySchemes:
BearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: 'JWT Bearer token. Pass as: `Authorization: Bearer `. The JWT must be signed with your Verifone-provisioned private key and must include `entity_id`, `sub` (user_id), and `roles` claims.'
BasicAuth:
type: http
scheme: basic
description: 'HTTP Basic authentication. Pass base64-encoded `username:password` as: `Authorization: Basic `.'