---
title: "Make payment"
method: POST
path: "/payments"
tags: ["Payments"]
---

# Make payment

`POST /payments`

Make a payment using credit card, cash, cheque, profile, token, Apple Pay, or Google Pay. Each payment type has its own json definition passed in the
body. For all payments you have the standard Billing, Shipping, Comments, etc. fields that are optional. Only the amount is required along with the
payment data for card, cash, cheque, profile, and token. You must change the payment_method for each payment type. Credit Card - "card",
Payment Profile - "payment_profile", Single Use Token - "token", Cash - "cash", Cheque - "cheque", Apple Pay - "apple_pay",
Google Pay - "google_pay", 3D Secure token - "3d_secure_token".

## Request body

- PaymentRequest
  - `order_number` string — A unique order number.
  - `amount` number, double, required — A decimal value in dollars. Uses up to two decimal places. Max value is account specific. Default max value is 1000.
  - `payment_method` 'card' | 'token' | 'payment_profile' | 'cash' | 'cheque' | 'apple_pay' | 'google_pay' | '3d_secure_token' | 'processor_token', required — The desired method of payment.
  - `ship_same_as_ord` boolean — If true, the provided Billing Address information will also be used as the Shipping Address information.
  - `device_channel` '02' | '03' — Type of channel used to initiate the transaction. 02 = Browser, 03 = 3DS Requestor.
  - `language` string — characters
  - `customer_ip` string — IP Address of the api consumer. Required if calculating risk score.
  - `term_url` string — Callback URL used with 3D Secure payment processing.
  - `comments` string — alphanumeric
  - `billing` RequestBillingAddress
    - `name` string — Name of the person/business
    - `address_line1` string — Street address. Impacts risk score.
    - `address_line2` string — Additional address information(eg; suite number, apartment number, etc)
    - `city` string — The city. Impacts risk score.
    - `province` string — 2 characters. Set to -- for any countries except for US and Canada. Impacts risk score.
    - `country` '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' — Valid ISO 3166-1 country code. Impacts risk score.
    - `postal_code` string — Postal/Zip code. Impacts risk score.
    - `phone_number` string — Phone number
    - `phone_country_code` string — The country code of the phone number provided.
    - `phone_type` 'm' | 'h' | 'w' — The phone type of the phone number provided - m (Mobile), h (Home) or w (Work).
    - `email_address` string — Email Address. Impacts risk score.
  - `shipping` Address
    - `name` string — Name of the person/business
    - `address_line1` string — Street address
    - `address_line2` string — Additional address information(eg; suite number, apartment number, etc)
    - `city` string — The city
    - `province` string — characters (2)
    - `country` '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' — Valid ISO 3166-1 country code
    - `postal_code` string — Postal/Zip code
    - `phone_number` string — Phone number
    - `phone_country_code` string — The country code of the phone number provided.
    - `email_address` string — Email Address
  - `custom` Custom
    - `ref1` string — custom reference field 1
    - `ref2` string — custom reference field 2
    - `ref3` string — custom reference field 3
    - `ref4` string — custom reference field 4
    - `ref5` string — custom reference field 5
  - `card` Card
    - `number` string, required — Credit card number (PAN).
    - `name` string, required — Card holder name.
    - `expiry_month` string, required — eg. 02 for February.
    - `expiry_year` string, required — eg. 15 for 2015.
    - `cvd` string — Security code on the back of the credit card. This can be set to mandatory in the back office.
    - `3d_secure` 3DSecure — Payment with 3D Secure (Verified by Visa, Mastercard SecureCode, American Express SafeKey). Note that 3D Secure must be enabled on the merchant account in order to process transactions with 3D Secure.
      - `browser` BrowserData — Data collected about the cardholders browser, required for 3DS 2.0 transactions, optional for others.
        - `accept_header` string, required — HTTP Accept Header returned by the browser.
        - `java_enabled` boolean, required — True if the browser supports Java.
        - `language` string, required — Language currently set in the browser.
        - `color_depth` integer — Color bit-depth of the screen.
        - `screen_height` integer, required — Height, in pixels, of the screen.
        - `screen_width` integer, required — Width, in pixels, of the screen.
        - `time_zone` integer, required — Timezone returned by the browser.
        - `user_agent` string, required — User-Agent header returned by the browser in the client HTTP request.
        - `javascript_enabled` boolean, required — True if the browser has JavaScript enabled.
      - `enabled` boolean, required — If 3D Secure is enabled on the merchant account, set to false to process transactions without 3D Secure. Otherwise, set to true to process transactions with 3D Secure.
      - `version` integer — Version of 3DS to perform (1 or 2). Optional and will default to what is configured in the merchants account.
      - `auth_required` boolean — If set to true the transaction will not continue processing unless 3DS authentication is successful.
      - `disable_method_url` boolean — Indicates whether or not BIC Method URL has been disabled for the current transaction.
      - `threeDS_server_transaction_id` string — The threeDS_server_transaction_id returned by the call to the PrepInfo endpoint.
      - `xid` string — The transaction ID (XID) used for processing transactions with 3D Secure.
      - `cavv` string — The cardholder authentication verification value (CAVV/UCAF/AEVV) used for processing transactions with 3D Secure.
      - `eci` integer — The electronic commerce indicator (ECI) used for processing transactions with 3D Secure.
    - `visa_checkout_call_id` string — The Visa Checkout payment request ID.
    - `complete` boolean — set to false for Pre-Authorize, and true to complete a payment
  - `apple_pay` ApplePay — Apple Pay Only - required when attempting to process apple_pay transactions. Note that the 'card' object returned in a successful response will have a 'last_four' property value that is based on the source Apple Pay Wallet and its Device Account Number.
    - `passthrough` boolean — False or null indicates a regular (Worldline-decrypted) Apple Pay transaction. True indicates a passthrough (externally-decrypted) transaction.
    - `apple_pay_merchant_id` string, required — The Apple Pay merchant ID. Not required for passthrough transactions.
    - `payment_token` string, required — The encrypted payment token provided by Apple Pay, which you then base64-encode. For passthrough, decrypt the token before encoding it.
    - `complete` boolean — set to false for Pre-Authorize, and true to complete a payment
  - `google_pay` GooglePay — Google Pay Only - required when attempting to process google_pay transactions.
    - `name` string — The cardholder name.
    - `3d_secure` 3DSecure — Payment with 3D Secure (Verified by Visa, Mastercard SecureCode, American Express SafeKey). Note that 3D Secure must be enabled on the merchant account in order to process transactions with 3D Secure.
      - `browser` BrowserData — Data collected about the cardholders browser, required for 3DS 2.0 transactions, optional for others.
        - `accept_header` string, required — HTTP Accept Header returned by the browser.
        - `java_enabled` boolean, required — True if the browser supports Java.
        - `language` string, required — Language currently set in the browser.
        - `color_depth` integer — Color bit-depth of the screen.
        - `screen_height` integer, required — Height, in pixels, of the screen.
        - `screen_width` integer, required — Width, in pixels, of the screen.
        - `time_zone` integer, required — Timezone returned by the browser.
        - `user_agent` string, required — User-Agent header returned by the browser in the client HTTP request.
        - `javascript_enabled` boolean, required — True if the browser has JavaScript enabled.
      - `enabled` boolean, required — If 3D Secure is enabled on the merchant account, set to false to process transactions without 3D Secure. Otherwise, set to true to process transactions with 3D Secure.
      - `version` integer — Version of 3DS to perform (1 or 2). Optional and will default to what is configured in the merchants account.
      - `auth_required` boolean — If set to true the transaction will not continue processing unless 3DS authentication is successful.
      - `disable_method_url` boolean — Indicates whether or not BIC Method URL has been disabled for the current transaction.
      - `threeDS_server_transaction_id` string — The threeDS_server_transaction_id returned by the call to the PrepInfo endpoint.
      - `xid` string — The transaction ID (XID) used for processing transactions with 3D Secure.
      - `cavv` string — The cardholder authentication verification value (CAVV/UCAF/AEVV) used for processing transactions with 3D Secure.
      - `eci` integer — The electronic commerce indicator (ECI) used for processing transactions with 3D Secure.
    - `transaction_payload` string, required — Payload that contains the encrypted Google payment token (required to complete a transaction), along with other security information.
    - `complete` boolean — set to false for Pre-Authorize, and true to complete a payment
  - `payment_profile` ProfilePurchase — Payment with a Payment Profile. The payment_method must be 'payment_profile'
    - `3d_secure` 3DSecure — Payment with 3D Secure (Verified by Visa, Mastercard SecureCode, American Express SafeKey). Note that 3D Secure must be enabled on the merchant account in order to process transactions with 3D Secure.
      - `browser` BrowserData — Data collected about the cardholders browser, required for 3DS 2.0 transactions, optional for others.
        - `accept_header` string, required — HTTP Accept Header returned by the browser.
        - `java_enabled` boolean, required — True if the browser supports Java.
        - `language` string, required — Language currently set in the browser.
        - `color_depth` integer — Color bit-depth of the screen.
        - `screen_height` integer, required — Height, in pixels, of the screen.
        - `screen_width` integer, required — Width, in pixels, of the screen.
        - `time_zone` integer, required — Timezone returned by the browser.
        - `user_agent` string, required — User-Agent header returned by the browser in the client HTTP request.
        - `javascript_enabled` boolean, required — True if the browser has JavaScript enabled.
      - `enabled` boolean, required — If 3D Secure is enabled on the merchant account, set to false to process transactions without 3D Secure. Otherwise, set to true to process transactions with 3D Secure.
      - `version` integer — Version of 3DS to perform (1 or 2). Optional and will default to what is configured in the merchants account.
      - `auth_required` boolean — If set to true the transaction will not continue processing unless 3DS authentication is successful.
      - `disable_method_url` boolean — Indicates whether or not BIC Method URL has been disabled for the current transaction.
      - `threeDS_server_transaction_id` string — The threeDS_server_transaction_id returned by the call to the PrepInfo endpoint.
      - `xid` string — The transaction ID (XID) used for processing transactions with 3D Secure.
      - `cavv` string — The cardholder authentication verification value (CAVV/UCAF/AEVV) used for processing transactions with 3D Secure.
      - `eci` integer — The electronic commerce indicator (ECI) used for processing transactions with 3D Secure.
    - `complete` boolean — Set to false for Pre-Authorize, and true to complete a payment
    - `customer_code` string, required — The payment profile ID.
    - `card_id` integer, required — Which credit card to use. Starts at 1 for the first card. You must configure how many cards can be stored by visiting the profile options in the back office.
  - `token` TokenPurchase — Payment with a single-use token. The payment_method must be 'token'
    - `complete` boolean — Set to false for Pre-Authorize, and true to complete a payment
    - `code` string, required — the payment token you retrieved from the service.
    - `name` string, required — Card holder name.
    - `3d_secure` 3DSecure — Payment with 3D Secure (Verified by Visa, Mastercard SecureCode, American Express SafeKey). Note that 3D Secure must be enabled on the merchant account in order to process transactions with 3D Secure.
      - `browser` BrowserData — Data collected about the cardholders browser, required for 3DS 2.0 transactions, optional for others.
        - `accept_header` string, required — HTTP Accept Header returned by the browser.
        - `java_enabled` boolean, required — True if the browser supports Java.
        - `language` string, required — Language currently set in the browser.
        - `color_depth` integer — Color bit-depth of the screen.
        - `screen_height` integer, required — Height, in pixels, of the screen.
        - `screen_width` integer, required — Width, in pixels, of the screen.
        - `time_zone` integer, required — Timezone returned by the browser.
        - `user_agent` string, required — User-Agent header returned by the browser in the client HTTP request.
        - `javascript_enabled` boolean, required — True if the browser has JavaScript enabled.
      - `enabled` boolean, required — If 3D Secure is enabled on the merchant account, set to false to process transactions without 3D Secure. Otherwise, set to true to process transactions with 3D Secure.
      - `version` integer — Version of 3DS to perform (1 or 2). Optional and will default to what is configured in the merchants account.
      - `auth_required` boolean — If set to true the transaction will not continue processing unless 3DS authentication is successful.
      - `disable_method_url` boolean — Indicates whether or not BIC Method URL has been disabled for the current transaction.
      - `threeDS_server_transaction_id` string — The threeDS_server_transaction_id returned by the call to the PrepInfo endpoint.
      - `xid` string — The transaction ID (XID) used for processing transactions with 3D Secure.
      - `cavv` string — The cardholder authentication verification value (CAVV/UCAF/AEVV) used for processing transactions with 3D Secure.
      - `eci` integer — The electronic commerce indicator (ECI) used for processing transactions with 3D Secure.
    - `visa_checkout_call_id` string — The Visa Checkout payment request ID.
  - `3d_secure` 3dSecureToken — Payment with a 3D Secure Session Data token. Reference a previously processed 3D Secure transaction processed through the 3D Secure 2.0 API. This will apply the associated card number, card expiry, and 3D Secure results to your payment request. The payment_method must be '3d_secure_token'
    - `complete` boolean — Set to false for Pre-Authorize, and true to complete a payment
    - `threeDS_session_data` string, required
    - `auth_required` boolean — If set to true the transaction will not continue processing unless 3DS authentication is successful.
    - `disable_method_url` boolean — Indicates whether or not BIC Method URL has been disabled for the current transaction.
    - `threeDS_server_transaction_id` string — The threeDS\_server\_transaction\_id returned by the call to the PrepInfo endpoint.
  - `recurring_payment` boolean — A recurring transaction is a transaction where a cardholder had provided permission to a merchant to periodically charge his/her account number for recurring goods or services. The recurring payment indicator may be set for credit card based pre-auth, capture and purchase transactions.
  - `level2` Level2 — Level 2 processing is for B2B customers. Additional information can be provided, to the benefit of corporate/government/industrial customers, that includes a customer code & tax amounts.
    - `customer_code` string, required — * Visa - Used by merchant to identify the purchase (i.e. SKU number). * Master Card - Code the cardholder supplied to the merchant. * American Express - Customer reference number.
    - `order_tax1_price` number, double, required — * Visa - Amount of state or provincial tax included in the transaction amount - Must between 0.1% and 22% of the transaction amount. * Master Card - Sales tax/VAT on the total purchase - Must be between 0.1% and 30% of the transaction amount. * American Express - Transaction tax amount (calculated or entered).
    - `order_tax2_price` number, double, required — * Visa - Amount of state or provincial tax included in the transaction amount - Must between 0.1% and 22% of the transaction amount. * Master Card - Sales tax/VAT on the total purchase - Must be between 0.1% and 30% of the transaction amount. * American Express - Transaction tax amount (calculated or entered).
  - `card_on_file` CardOnFile — When processing a transaction where the credit card information is stored on file, you must pass along an indicator showing the type of credential-on-file transaction that is being processed.
    - `type` 'not_card_on_file' | 'first_installment' | 'subsequent_installment' | 'first_recurring' | 'subsequent_recurring' | 'subsequent_customer_initiated' | 'subsequent_unscheduled', required — * not\_card\_on_file - A transaction where the credit card information is not stored on file. * first_installment - The first payment in a series of installment payments. (Eg. Initial installment payment when purchasing a fridge.) * subsequent_installment - A subsequent payment (ie. not the first) in a series of installment payments. (Eg. Next installment payment when purchasing a fridge.) * first_recurring - The first payment in a series of scheduled payments with no expected end date. (Eg. Initial payment for a subscription service.) * subsequent_recurring - A subsequent payment (ie. not the first) in a series of scheduled payments with no expected end date. (Eg. Next payment for a subscription service.) * subsequent\_customer_initiated - A recurring transaction that is initiated by the customer. (Eg. Customer reloads a prepaid cash card.) * subsequent_unscheduled - An unscheduled recurring transaction that is initiated by the merchant. (Eg. Merchant auto-reloads a prepaid cash card for the customer when the balance on the card reaches a predetermined threshold.)
    - `series_id` number — The identifier for the set of transactions that this transaction belongs to. This field is required for "subsequent\_installment", "subsequent\_recurring", and "subsequent\_unscheduled" credential-on-file transaction types.
  - `processor_token` ProcessorTokenRequest — Payment with Processor Token. The payment_method must be 'processor_token'.
    - `payment_token` string, required — The payment token you retrieved from the service.
    - `expiry_month` string, required — eg. 02 for February.
    - `expiry_year` string, required — eg. 15 for 2015.

## Response `200`

Payment response containing the payment details as well as if the payment was approved or declined.

- PaymentResponse
  - `id` string — transaction Id
  - `authorizing_merchant_id` integer — The id of the merchant that authorized the transaction.
  - `approved` string — Approval status of payment transaction. 0 if the transaction is not approved. 1 if the transaction is approved.
  - `message_id` integer — Payment response code
  - `message` string — Message containing information about the transactions status
  - `auth_code` string — Auth Code
  - `created` string, date-time — Time stamp of when the transaction occurred
  - `order_number` string — Order number
  - `type` 'P' | 'R' | 'VP' | 'VR' | 'PA' | 'PAC' — Payment transaction type
  - `risk_score` number, double — The risk score represents the percentage of probability that the transaction is fraudulent. For example, a score of 10 represents a 10% possibility that the transaction is fraudulent.
  - `amount` number, double — A decimal value in dollars. Uses up to two decimal places.
  - `payment_method` 'card' | 'token' | 'payment_profile' | 'cash' | 'cheque' | 'apple_pay' | 'google_pay' — Payment method
  - `custom` Custom
    - `ref1` string — custom reference field 1
    - `ref2` string — custom reference field 2
    - `ref3` string — custom reference field 3
    - `ref4` string — custom reference field 4
    - `ref5` string — custom reference field 5
  - `card` CardPurchaseResponse
    - `card_type` 'AM' | 'DI' | 'JB' | 'MC' | 'NN' | 'VI' | 'PV' | 'MD' — The type of card used in the transaction. AM = American Express, DI = Diners, JB = JCB, MC = MasterCard, NN = Discover, VI = Visa, PV = Visa Debit, MD = Debit Mastercard
    - `last_four` string — For all payments completed using a credit card, this field will contain the last four digits of the card number used. Payments completed using ApplePay will return last four digits of the Device Primary Account Number (DPAN) associated to the transaction.
    - `card_bin` string — For all payments completed using a credit card, this field will contain the Bank Identification Number (BIN) of the card used. The field will be set to either the first six or first eight digits of the card PAN. Payments completed using ApplePay will return the first six digits of the Device Primary Account Number (DPAN) associated to the transaction. This field will not be returned for credit card transactions processed using a Processor Token.
    - `cvd_result` integer — Result of CVD verification. 1=CVD Match, 2=CVD Mismatch, 3=CVD Not Verified, 4=CVD Should have been present, 5=CVD Issuer unable to process request, 6=CVD Not Provided
    - `eci` integer — The electronic commerce indicator (ECI) returned back in the transaction response. NOTE: No longer returned for 3DS 2.0, please see status_id instead.
    - `address_match` integer — Result of Address verification. 0 if Adddress Verification Service(AVS) is disabled or AVS fails. 1 if AVS is enabled and address and postal/zip code match
    - `postal_result` integer — Result of postal verification. 0 if the postal\_code parameter does does not match the customers address records or if AVS was not processed for the transaction. 1 if the postal\_code parameter matches the consumers address records at the issuing bank.
    - `avs` AvsResponse
      - `id` '0' | '5' | '9' | 'A' | 'B' | 'C' | 'D' | 'E' | 'G' | 'I' | 'M' | 'N' | 'P' | 'R' | 'S' | 'U' | 'W' | 'X' | 'Y' | 'Z' — A unique avs response code. For a description of each code see https://docs.na.worldline-solutions.com/build-your-integration/security-and-fraud-APIs/address-verification-system-avs.
      - `message` string — Message containing details of the avs status. Corresponding to each avs\_id, there is an avs_message describing the status of address verification service. For example If avs\_id = 5 then avs\_message = Invalid AVS Response.
      - `processed` boolean — Is true if the issuing bank has successfully processed an AVS check on the transaction. Is false if no AVS check was performed.
    - `processor_token` ProcessorTokenResponse — Token information generated from card request, or what was used to submit payment.
      - `payment_token` string — The payment token.
      - `reporting_token` string — Token used for reporting.
      - `status` 'success' | 'fail' — Status of the token.
      - `source` string — This will contain the name of the processor that is hosting the tokenization feature.
      - `source_data` SourceData — This will contain processor specific data related to the tokenization feature returned for informational use only.
        - `td_token_status` string — This field is returned only on response message and it will indicate the status of generating the PT and/or RT tokens. Valid values are: * 0 = successful – PT and/or RT were generated * 1 = PT token could not be generated * 2 = RT token could not be generated * 3 = PT and RT tokens could not be generated * 4 = Invalid instance value * 5 = PT not able to detokenize
    - `cavv_result` string — Result code returned back from performing the 3D Secure Code validation.
    - `status_id` integer — Status/result of a 3DS 2 transaction. Set to a value of 1-4, see status for a text description.
    - `status` '1' | '2' | '3' | '4' — Status/result of a 3DS 2 transaction. 1 = Authenticated, 2 = Attempted, 3 = Non participating, 4 = Failed
    - `error_id` integer — Returned if status is 'Failed'. Set to a value of 1-3, see error for a text description.
    - `error` '1' | '2' | '3' — Returned if status is 'Failed'. 1 = 3D Secure service is not enabled, 2 = Service temporarily unavailble, 3 = Internal error
  - `3d_secure` 3DSecureResponse — 3D Secure result data
    - `status` string, required — Status of 3D secure authentication for the transaction. One of: Succeeded, Attempted, Rejected, Failed, Unavailable, or Error
    - `downgraded` boolean — Indicates whether or not the 3DS transaction was downgraded. A downgraded transaction does not provide a liability shift to the merchant, even if the 3DS authentication result was "Success" or "Attempted".
    - `reason_merchant` string — For merchant use only. Provides a category which identifies the reason for the rejection. [See list of reasons](https://docs.na.worldline-solutions.com/build-your-integration/security-and-fraud-APIs/3ds-20/)
    - `reason_cardholder` string — The reason for the rejection and instructions on what to do. This can be returned to the cardholder.
    - `method_url` string — The outcome of a 3DS Method URL operation performed during the course of a transaction. Either Succeeded (3DS Method URL was initiated and was successful), Failed (3DS Method URL was initiated but failed. The transaction will proceed but without the support of Method URL.) or NotAttempted (3DS Method URL was not requested for this transaction or a validation error existed in the supplied threeDSservertransaction_id).
  - `merchant_data` string — Returned only for 3D Secure payment requests. This value can be used as the {id} value when creating your 'continue' endpoint URL.
  - `contents` string — Returned only for 3D Secure payment requests. This should be embedded in the user's browser client and this needs to be displayed to the customer to redirect them to the 3D Secure processing page.
  - `links` Link[]
    - `ref` string — Eg. "void" or "return"
    - `href` string — Url to perform the void, return, completion etc.
    - `method` string — Http method. post, put, get etc.
  - `card_on_file` CardOnFileResponse
    - `type` 'not_card_on_file' | 'first_installment' | 'subsequent_installment' | 'first_recurring' | 'subsequent_recurring' | 'subsequent_customer_initiated' | 'subsequent_unscheduled' — * not\_card\_on\_file - A transaction where the credit card information is not stored on file. * first_installment - The first payment in a series of installment payments. (Eg. Initial installment payment when purchasing a fridge.) * subsequent_installment - A subsequent payment (ie. not the first) in a series of installment payments. (Eg. Next installment payment when purchasing a fridge.) * first_recurring - The first payment in a series of scheduled payments with no expected end date. (Eg. Initial payment for a subscription service.) * subsequent_recurring - A subsequent payment (ie. not the first) in a series of scheduled payments with no expected end date. (Eg. Next payment for a subscription service.) * subsequent\_customer_initiated - A recurring transaction that is initiated by the customer. (Eg. Customer reloads a prepaid cash card.) * subsequent_unscheduled - An unscheduled recurring transaction that is initiated by the merchant. (Eg. Merchant auto-reloads a prepaid cash card for the customer when the balance on the card reaches a predetermined threshold.)
    - `series_id` number — The identifier for the set of transactions that this transaction belongs to.

## Other responses

- `400` — Bad Request
- `401` — Authentication Failure
- `402` — Business Rule Violation or Decline
- `403` — Authorization Failure
- `405` — Invalid Request Method
- `500` — Internal Server Error

---

[API](https://skmtc.net/worldline-solutions/apis/worldline-payment-apis.md) · [All operations](https://skmtc.net/worldline-solutions/apis/worldline-payment-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/worldline-solutions/worldline-payment-apis/versions/d661d9e357a1/schema)
