---
title: "Search & list payments"
method: GET
path: "/payment/payments"
tags: ["Payments"]
---

# Search & list payments

`GET /payment/payments`

Fetch a list of payments.

## Query parameters

- `includeInstrument` boolean
- `includeProviderAccountDisplayName` boolean
- `includePaymentToken` boolean
- `includeHolderReference` boolean
- `filter[paymentId]` string
- `filter[providerId]` string
- `filter[providerConfigId]` string
- `filter[providerReference]` string
- `filter[holderId]` string
- `filter[holderReference]` string
- `filter[transactionReference]` string
- `filter[merchantReference]` string
- `filter[processingType]` string
- `filter[captureMode]` string
- `filter[status]` string
- `filter[anyReference]` string
- `filter[tokenType]` 'network' | 'vault' | 'psp' | 'networkOffers' | 'networkGateway' — Type of the token.
- `filter[instrumentId]` string
- `filter[instrumentBin]` string
- `filter[instrumentSuffix]` string
- `filter[instrumentNetwork]` string
- `filter[instrumentLocalNetwork]` string
- `filter[instrumentIssuer]` string
- `filter[instrumentIssuerCountry]` string
- `filter[instrumentFutureUsage]` string
- `filter[authorizationFailureResult]` string
- `filter[workspaceId]` string
- `filter[paymentMethodType]` string
- `filter[customerEmail]` string
- `filter[createdAt]` string
- `page[cursor]` string — Cursor for paging results.
- `page[after]` string — Cursor for paging results.
- `page[before]` string — Cursor for paging results.
- `page[size]` integer

## Response `200`

Success.

- object
  - `links` object, required
    - `self` string, required
    - `prev` string
    - `next` string
    - `first` string
    - `last` string
  - `results` object[], required
    - `id` string, uuid, required — Unique identifier of the Payment in Payrails.
    - `status` 'Created' | 'Pending' | 'Unknown' | 'Failed' | 'Expired' | 'Preauthorized' | 'Authorized' | 'Canceled' | 'Captured' | 'Refunded', required — Current status of the Payment in Payrails. More information can be found [here](/docs/payment-status).
    - `createdAt` string, date-time — Exact date and time when the Payment was created in Payrails. Possibly differs slightly from the date in the PSP.
    - `providerId` string, uuid — Unique identifier of the Provider that was used to process the Payment.
    - `paymentMethodType` string — Type of payment method used to process the payment.
    - `providerIntegrationType` string — Type of integration used to process the payment (in case the payment provider supports multiple).
    - `providerName` string — Name of the Provider that was used to process the Payment, e.g. Adyen, Checkout, Stripe.
    - `providerReference` string — Unique identifier of the Payment in an external system, e.g. PSP.
    - `providerConfigId` string, uuid — Unique identifier of the merchant-specific Provider Configuration that was used to process the Payment. This can include the set of credentials used, the merchant account, country, vertical, etc.
    - `holderId` string, uuid — Unique identifier of the Holder that is involved in the Payment.
    - `amount` object — Amount of the Payment.
      - `value` string, required — Decimal amount of the major currency unit. Can be any precision.
      - `currency` string, required — ISO 3-letter currency code.
    - `instrumentId` string, uuid — Unique identifier of the Instrument that was used for the Payment in Payrails.
    - `instrumentTokenId` string, uuid — Unique identifier of the specific Token inside the Instrument used for the Payment in Payrails.
    - `instrument` object — Optionally included details about the instrument used for the payment.
      - `id` string, uuid, required — Id of the instrument.
      - `createdAt` string, date-time, required — Date and time when the Instrument was created in Payrails.
      - `updatedAt` string, date-time, required — When the Instrument was last updated.
      - `holderId` string, uuid, required — Unique identifier of the Holder in Payrails.
      - `paymentMethod` 'alexBankMa7fazty' | 'applePay' | 'audi2pay' | 'bankAccount' | 'card' | 'cibSmartWallet' | 'easypaisa' | 'etisalatCash' | 'fawryMobileWallet' | 'fawryPay' | 'googlePay' | 'jazzCash' | 'nbePhoneCash' | 'orangeCash' | 'payPal' | 'qnbEWallet' | 'weCash' | 'genericRedirect' | 'alfa' | 'konnect' | 'eftPro' | 'netBanking' | 'upi' | 'cashFreeWallet' | 'paytmWallet' | 'phonePe', required — Represents the payment method type.
      - `status` 'created' | 'deleted' | 'enabled' | 'disabled' | 'transient', required — Status of the instrument.
      - `displayName` string — Instrument name suitable for display.
      - `description` string — Description of the instrument.
      - `default` boolean, nullable — True if this instrument is set as default for the holder.
      - `merchantReference` string — Merchant-provided reference for the instrument.
      - `fingerprint` string — System-wide unique identifier of the Instrument. If two Holders have the same instrument stored, this value will be the same for both, but the instrument and token IDs will be different. Cannot be used for payments, should only be used for analytics and fraud prevention.
      - `futureUsage` 'Subscription' | 'CardOnFile' | 'UnscheduledCardOnFile' — Represents the future usage to define the payment flows that the stored instrument will be used for.
      - `networkTransactionReference` string — Identifier of the initial payment made with this instrument on the Networks, e.g. Mastercard Trace ID or Visa Transaction ID.
      - `data` union — Type-specific information about the instrument.
        - object — Data specific to a Card instrument.
          - `network` 'unspecified' | 'visa' | 'visadankort' | 'mastercard' | 'amex' | 'diners' | 'discover' | 'unionpay' | 'unionpayuzcard' | 'maestro' | 'maestrobancontact' | 'hipercard' | 'jcb' | 'jcblankapay' | 'argencard' | 'aura' | 'belkart' | 'bpfuelcard' | 'cabal' | 'carnet' | 'cirrus' | 'chjonesfuelcard' | 'uzcard' | 'codensa' | 'dankort' | 'dinacard' | 'duet' | 'ebt' | 'eftpos' | 'elo' | 'euroshellfuelcard' | 'gecapital' | 'bc' | 'hrgstore' | 'humo' | 'lankapay' | 'lukoilfuelcard' | 'bancontact' | 'meeza' | 'newday' | 'mir' | 'ourocard' | 'pagobancomat' | 'paypak' | 'paypal' | 'phhfuelcard' | 'prostir' | 'rupay' | 'sbercard' | 'sodexo' | 'starrewards' | 'cencosud' | 'naranja' | 'troy' | 'uatp' | 'ukfuelcard' | 'verve' | 'voyager' | 'vpay' | 'wex' | 'cmi' | 'atm' | 'bankcard' | 'localbrand' | 'loyalty' | 'privatelabel' | 'fuelcard' | 'redfuelcard' | 'redliquidfuelcard', required — Network of the instrument.
          - `preferredScheme` 'unspecified' | 'visa' | 'visadankort' | 'mastercard' | 'amex' | 'diners' | 'discover' | 'unionpay' | 'unionpayuzcard' | 'maestro' | 'maestrobancontact' | 'hipercard' | 'jcb' | 'jcblankapay' | 'argencard' | 'aura' | 'belkart' | 'bpfuelcard' | 'cabal' | 'carnet' | 'cirrus' | 'chjonesfuelcard' | 'uzcard' | 'codensa' | 'dankort' | 'dinacard' | 'duet' | 'ebt' | 'eftpos' | 'elo' | 'euroshellfuelcard' | 'gecapital' | 'bc' | 'hrgstore' | 'humo' | 'lankapay' | 'lukoilfuelcard' | 'bancontact' | 'meeza' | 'newday' | 'mir' | 'ourocard' | 'pagobancomat' | 'paypak' | 'paypal' | 'phhfuelcard' | 'prostir' | 'rupay' | 'sbercard' | 'sodexo' | 'starrewards' | 'cencosud' | 'naranja' | 'troy' | 'uatp' | 'ukfuelcard' | 'verve' | 'voyager' | 'vpay' | 'wex' | 'cmi' | 'atm' | 'bankcard' | 'localbrand' | 'loyalty' | 'privatelabel' | 'fuelcard' | 'redfuelcard' | 'redliquidfuelcard' — Network of the instrument.
          - `bin` string, required — First 6-8 digits of the Card number. Also known as IIN (Issuer Identification Number).
          - `binLookup` object — Information about an issuer by the given BIN (or IIN).
            - `bin` string, required — First 6-8 digits of the Card number. Also known as IIN (Issuer Identification Number).
            - `network` 'unspecified' | 'visa' | 'visadankort' | 'mastercard' | 'amex' | 'diners' | 'discover' | 'unionpay' | 'unionpayuzcard' | 'maestro' | 'maestrobancontact' | 'hipercard' | 'jcb' | 'jcblankapay' | 'argencard' | 'aura' | 'belkart' | 'bpfuelcard' | 'cabal' | 'carnet' | 'cirrus' | 'chjonesfuelcard' | 'uzcard' | 'codensa' | 'dankort' | 'dinacard' | 'duet' | 'ebt' | 'eftpos' | 'elo' | 'euroshellfuelcard' | 'gecapital' | 'bc' | 'hrgstore' | 'humo' | 'lankapay' | 'lukoilfuelcard' | 'bancontact' | 'meeza' | 'newday' | 'mir' | 'ourocard' | 'pagobancomat' | 'paypak' | 'paypal' | 'phhfuelcard' | 'prostir' | 'rupay' | 'sbercard' | 'sodexo' | 'starrewards' | 'cencosud' | 'naranja' | 'troy' | 'uatp' | 'ukfuelcard' | 'verve' | 'voyager' | 'vpay' | 'wex' | 'cmi' | 'atm' | 'bankcard' | 'localbrand' | 'loyalty' | 'privatelabel' | 'fuelcard' | 'redfuelcard' | 'redliquidfuelcard' — Network of the instrument.
            - `localNetwork` 'bancontact' | 'cartesbancaires' | 'dankort' | 'mada' — Card local network that supports the card, e.g. CartesBancaires, Dankort, Mada, Bancontact.
            - `issuer` string — Name of the bank or institution that issued the card.
            - `issuerCountry` object — Country of the bank or institution that issued the card.
              - …
            - `segment` string — Segment of the card, e.g. gold, black, business.
            - `type` string — Type of the card, e.g. credit, debit, prepaid, gift.
            - `typeDetails` string — More information about the card type, e.g. personal, commercial.
            - `isNetworkToken` boolean — Indicates whether the card credential represents a network token rather than a primary account number (PAN).
            - `isFlexCard` boolean — Indicates whether the card is enrolled in a Flexible Credential or Flex Card program supported by the network - e.g. Visa Flexible Credential, Mastercard FlexCard.
          - `billingAddress` object — Billing Address of the instrument.
            - `street` string — The name of the street of a postal address.
            - `doorNumber` string — The number on the door, building, or room.
            - `complement` string — Additional addressing information, 2nd line of postal address.
            - `area` string — The name of the suburb or area within a city.
            - `city` string — The name of the city of a postal address.
            - `postalCode` string — The postal code.
            - `state` string — The name of the state a postal address is in.
            - `country` object — The country where the address is in.
              - …
            - `latitude` number, float — Latitude of the address in the GPS coordinate system.
            - `longitude` number, float — Longitude of the address in the GPS coordinate system.
            - `phone` object — The phone to contact in the address (can be different that the customer's).
              - …
            - `alias` string — Name of the address, e.g. home, work.
            - `name` string — Name of the person to whom the address belongs to.
            - `lastName` string — Last name of the person to whom the address belongs to.
            - `email` string — Email of the person to whom the address belongs to.
          - `suffix` string, required — Last digits of the Card number.
          - `expiryMonth` string — Expiry month of the Card.
          - `expiryYear` string — Expiry year of the Card.
          - `holderName` string — Name of the owner of the Card.
        - object — Data specific to a BankAccount instrument.
          - `holder` object — The data structure for a holder's personal information.
            - `firstName` string — The first name of the account holder.
            - `lastName` string — The last name of the account holder.
            - `companyName` string — The company name for business holders.
            - `address` object — The address of the account holder.
              - …
            - `email` string, email — The email address of the account holder.
            - `dob` string, date — The date of birth of the account holder (YYYY-MM-DD).
            - `country` object — The country of the account holder.
              - …
            - `city` string — The city of the account holder.
            - `type` 'individual' | 'corporate' — The type of account holder.
          - `bank` object — The data structure for a bank's information.
            - `name` string — The name of the bank.
            - `branchCode` string — The branch code of the bank.
            - `code` string — The bank code.
            - `address` object — The address of the bank.
              - …
            - `swiftCode` string — The SWIFT/BIC code of the bank.
          - `account` object — The data structure for an account's information.
            - `number` string — The bank account number.
            - `iban` string — The International Bank Account Number (IBAN).
            - `currency` string — ISO 3-letter currency code.
            - `country` object — The country of the account.
              - …
            - `type` 'savings' | 'current' — The type of bank account.
        - object — Data specific to a PayPal instrument.
          - `email` string — Email of the PayPal account.
          - `payerId` string — ID of the PayPal payer account.
          - `billingAddress` object — Billing Address of the instrument.
            - `street` string — The name of the street of a postal address.
            - `doorNumber` string — The number on the door, building, or room.
            - `complement` string — Additional addressing information, 2nd line of postal address.
            - `area` string — The name of the suburb or area within a city.
            - `city` string — The name of the city of a postal address.
            - `postalCode` string — The postal code.
            - `state` string — The name of the state a postal address is in.
            - `country` object — The country where the address is in.
              - …
            - `latitude` number, float — Latitude of the address in the GPS coordinate system.
            - `longitude` number, float — Longitude of the address in the GPS coordinate system.
            - `phone` object — The phone to contact in the address (can be different that the customer's).
              - …
            - `alias` string — Name of the address, e.g. home, work.
            - `name` string — Name of the person to whom the address belongs to.
            - `lastName` string — Last name of the person to whom the address belongs to.
            - `email` string — Email of the person to whom the address belongs to.
        - object — Data specific to a GooglePay instrument.
          - `network` 'unspecified' | 'visa' | 'visadankort' | 'mastercard' | 'amex' | 'diners' | 'discover' | 'unionpay' | 'unionpayuzcard' | 'maestro' | 'maestrobancontact' | 'hipercard' | 'jcb' | 'jcblankapay' | 'argencard' | 'aura' | 'belkart' | 'bpfuelcard' | 'cabal' | 'carnet' | 'cirrus' | 'chjonesfuelcard' | 'uzcard' | 'codensa' | 'dankort' | 'dinacard' | 'duet' | 'ebt' | 'eftpos' | 'elo' | 'euroshellfuelcard' | 'gecapital' | 'bc' | 'hrgstore' | 'humo' | 'lankapay' | 'lukoilfuelcard' | 'bancontact' | 'meeza' | 'newday' | 'mir' | 'ourocard' | 'pagobancomat' | 'paypak' | 'paypal' | 'phhfuelcard' | 'prostir' | 'rupay' | 'sbercard' | 'sodexo' | 'starrewards' | 'cencosud' | 'naranja' | 'troy' | 'uatp' | 'ukfuelcard' | 'verve' | 'voyager' | 'vpay' | 'wex' | 'cmi' | 'atm' | 'bankcard' | 'localbrand' | 'loyalty' | 'privatelabel' | 'fuelcard' | 'redfuelcard' | 'redliquidfuelcard', required — Network of the instrument.
          - `networkDisplayName` string — Display-friendly name of the network.
          - `binLookup` object — Information about an issuer.
            - `network` 'unspecified' | 'visa' | 'visadankort' | 'mastercard' | 'amex' | 'diners' | 'discover' | 'unionpay' | 'unionpayuzcard' | 'maestro' | 'maestrobancontact' | 'hipercard' | 'jcb' | 'jcblankapay' | 'argencard' | 'aura' | 'belkart' | 'bpfuelcard' | 'cabal' | 'carnet' | 'cirrus' | 'chjonesfuelcard' | 'uzcard' | 'codensa' | 'dankort' | 'dinacard' | 'duet' | 'ebt' | 'eftpos' | 'elo' | 'euroshellfuelcard' | 'gecapital' | 'bc' | 'hrgstore' | 'humo' | 'lankapay' | 'lukoilfuelcard' | 'bancontact' | 'meeza' | 'newday' | 'mir' | 'ourocard' | 'pagobancomat' | 'paypak' | 'paypal' | 'phhfuelcard' | 'prostir' | 'rupay' | 'sbercard' | 'sodexo' | 'starrewards' | 'cencosud' | 'naranja' | 'troy' | 'uatp' | 'ukfuelcard' | 'verve' | 'voyager' | 'vpay' | 'wex' | 'cmi' | 'atm' | 'bankcard' | 'localbrand' | 'loyalty' | 'privatelabel' | 'fuelcard' | 'redfuelcard' | 'redliquidfuelcard' — Network of the instrument.
            - `localNetwork` 'bancontact' | 'cartesbancaires' | 'dankort' | 'mada' — Card local network that supports the card, e.g. CartesBancaires, Dankort, Mada, Bancontact.
            - `issuer` string — Name of the bank or institution that issued the card.
            - `issuerCountry` object — Country of the bank or institution that issued the card.
              - …
            - `segment` string — Segment of the card, e.g. gold, black, business.
            - `type` string — Type of the card, e.g. credit, debit, prepaid, gift.
            - `typeDetails` string — More information about the card type, e.g. personal, commercial.
            - `isNetworkToken` boolean — Indicates whether the card credential represents a network token rather than a primary account number (PAN).
            - `isFlexCard` boolean — Indicates whether the card is enrolled in a Flexible Credential or Flex Card program supported by the network - e.g. Visa Flexible Credential, Mastercard FlexCard.
          - `billingAddress` object — Billing Address of the instrument.
            - `street` string — The name of the street of a postal address.
            - `doorNumber` string — The number on the door, building, or room.
            - `complement` string — Additional addressing information, 2nd line of postal address.
            - `area` string — The name of the suburb or area within a city.
            - `city` string — The name of the city of a postal address.
            - `postalCode` string — The postal code.
            - `state` string — The name of the state a postal address is in.
            - `country` object — The country where the address is in.
              - …
            - `latitude` number, float — Latitude of the address in the GPS coordinate system.
            - `longitude` number, float — Longitude of the address in the GPS coordinate system.
            - `phone` object — The phone to contact in the address (can be different that the customer's).
              - …
            - `alias` string — Name of the address, e.g. home, work.
            - `name` string — Name of the person to whom the address belongs to.
            - `lastName` string — Last name of the person to whom the address belongs to.
            - `email` string — Email of the person to whom the address belongs to.
          - `suffix` string, required — Last digits of the Card number.
          - `expiryMonth` string — Expiry month of the Card.
          - `expiryYear` string — Expiry year of the Card.
          - `paymentToken` string — One-time payment token sent by client-side for execution of payment on backend.
          - `eci` string — Payment System-specific value provided by the ACS to indicate the results of the attempt to authenticate the Cardholder.
          - `cardHolderAuthenticated` boolean — Indicates that identification and verifications (ID&V) was performed on the returned payment credential.
          - `googleMessageId` string — Unique identifier for the Google Pay message.
          - `googleMessageExpirationId` string — Expiration time for the Google Pay message.
        - object — Data specific to a ApplePay instrument.
          - `network` 'unspecified' | 'visa' | 'visadankort' | 'mastercard' | 'amex' | 'diners' | 'discover' | 'unionpay' | 'unionpayuzcard' | 'maestro' | 'maestrobancontact' | 'hipercard' | 'jcb' | 'jcblankapay' | 'argencard' | 'aura' | 'belkart' | 'bpfuelcard' | 'cabal' | 'carnet' | 'cirrus' | 'chjonesfuelcard' | 'uzcard' | 'codensa' | 'dankort' | 'dinacard' | 'duet' | 'ebt' | 'eftpos' | 'elo' | 'euroshellfuelcard' | 'gecapital' | 'bc' | 'hrgstore' | 'humo' | 'lankapay' | 'lukoilfuelcard' | 'bancontact' | 'meeza' | 'newday' | 'mir' | 'ourocard' | 'pagobancomat' | 'paypak' | 'paypal' | 'phhfuelcard' | 'prostir' | 'rupay' | 'sbercard' | 'sodexo' | 'starrewards' | 'cencosud' | 'naranja' | 'troy' | 'uatp' | 'ukfuelcard' | 'verve' | 'voyager' | 'vpay' | 'wex' | 'cmi' | 'atm' | 'bankcard' | 'localbrand' | 'loyalty' | 'privatelabel' | 'fuelcard' | 'redfuelcard' | 'redliquidfuelcard', required — Network of the instrument.
          - `networkDisplayName` string — Display-friendly name of the network.
          - `binLookup` object — Information about an issuer.
            - `network` 'unspecified' | 'visa' | 'visadankort' | 'mastercard' | 'amex' | 'diners' | 'discover' | 'unionpay' | 'unionpayuzcard' | 'maestro' | 'maestrobancontact' | 'hipercard' | 'jcb' | 'jcblankapay' | 'argencard' | 'aura' | 'belkart' | 'bpfuelcard' | 'cabal' | 'carnet' | 'cirrus' | 'chjonesfuelcard' | 'uzcard' | 'codensa' | 'dankort' | 'dinacard' | 'duet' | 'ebt' | 'eftpos' | 'elo' | 'euroshellfuelcard' | 'gecapital' | 'bc' | 'hrgstore' | 'humo' | 'lankapay' | 'lukoilfuelcard' | 'bancontact' | 'meeza' | 'newday' | 'mir' | 'ourocard' | 'pagobancomat' | 'paypak' | 'paypal' | 'phhfuelcard' | 'prostir' | 'rupay' | 'sbercard' | 'sodexo' | 'starrewards' | 'cencosud' | 'naranja' | 'troy' | 'uatp' | 'ukfuelcard' | 'verve' | 'voyager' | 'vpay' | 'wex' | 'cmi' | 'atm' | 'bankcard' | 'localbrand' | 'loyalty' | 'privatelabel' | 'fuelcard' | 'redfuelcard' | 'redliquidfuelcard' — Network of the instrument.
            - `localNetwork` 'bancontact' | 'cartesbancaires' | 'dankort' | 'mada' — Card local network that supports the card, e.g. CartesBancaires, Dankort, Mada, Bancontact.
            - `issuer` string — Name of the bank or institution that issued the card.
            - `issuerCountry` object — Country of the bank or institution that issued the card.
              - …
            - `segment` string — Segment of the card, e.g. gold, black, business.
            - `type` string — Type of the card, e.g. credit, debit, prepaid, gift.
            - `typeDetails` string — More information about the card type, e.g. personal, commercial.
            - `isNetworkToken` boolean — Indicates whether the card credential represents a network token rather than a primary account number (PAN).
            - `isFlexCard` boolean — Indicates whether the card is enrolled in a Flexible Credential or Flex Card program supported by the network - e.g. Visa Flexible Credential, Mastercard FlexCard.
          - `billingAddress` object — Billing Address of the instrument.
            - `street` string — The name of the street of a postal address.
            - `doorNumber` string — The number on the door, building, or room.
            - `complement` string — Additional addressing information, 2nd line of postal address.
            - `area` string — The name of the suburb or area within a city.
            - `city` string — The name of the city of a postal address.
            - `postalCode` string — The postal code.
            - `state` string — The name of the state a postal address is in.
            - `country` object — The country where the address is in.
              - …
            - `latitude` number, float — Latitude of the address in the GPS coordinate system.
            - `longitude` number, float — Longitude of the address in the GPS coordinate system.
            - `phone` object — The phone to contact in the address (can be different that the customer's).
              - …
            - `alias` string — Name of the address, e.g. home, work.
            - `name` string — Name of the person to whom the address belongs to.
            - `lastName` string — Last name of the person to whom the address belongs to.
            - `email` string — Email of the person to whom the address belongs to.
          - `suffix` string, required — Last digits of the Card number.
          - `expiryMonth` string — Expiry month of the Card.
          - `expiryYear` string — Expiry year of the Card.
          - `paymentToken` string — One-time payment token sent by client-side for execution of payment on backend.
          - `eci` string — Payment System-specific value provided by the ACS to indicate the results of the attempt to authenticate the Cardholder.
          - `cardHolderAuthenticated` boolean — Indicates that identification and verifications (ID&V) was performed on the returned payment credential.
        - object — Data specific to a DCB instrument.
          - `msisdn` string — Mobile number of the holder MSISDN Stands for Mobile Station International Subscriber Directory Number.
          - `msisdnTail` string — Last 4 digits of the mobile number of the holder.
          - `country` object — Country of the holder.
            - `code` string, required — ISO 3166-1 alpha-2 country code.
            - `iso3` string — ISO 3-letter country code. Returned by Payrails, but not interpreted in requests.
            - `name` string — The English name of the country. Returned by Payrails, but not interpreted in requests.
          - `carrierNetwork` string — Carrier network of the msisdn.
    - `instrumentToken` object — Optionally included details about the instrument token used for the payment.
      - `id` string, uuid, required — Id of the token in Payrails.
      - `createdAt` string, date-time, required — Date and time when the Token was created in Payrails.
      - `updatedAt` string, date-time, required — When the Token was last updated.
      - `instrumentId` string, uuid, required — Id of the payment instrument the token belongs to.
      - `status` 'created' | 'enabled' | 'disabled' | 'deleted', required — Status of the token.
      - `type` 'network' | 'vault' | 'psp' | 'networkOffers' | 'networkGateway', required — Type of the token.
      - `providerId` string, uuid, required — Id of the provider the token belongs to.
      - `providerConfigId` string, uuid — Id of the configuration in the provider the token belongs to.
      - `reference` string, required — Unique identifier of the token in the provider's system.
      - `meta` object — Any merchant or provider-specific data that should be stored for context in the token.
    - `transactionReference` string — Merchant-specific identifier of the execution. This can be used for searching for the Payment later.
    - `transactionElementReference` string — Identifier of the step in the Workflow that led to this Payment.
    - `pspRedirectUrl` string — In case a redirection process is needed during the Payment, this is the URL where the PSP requested Payrails to redirect the user to.
    - `capturedAmount` object — Amount that was captured from the Payment. If no capture is initiated for the payment, the value will be 0 until a successful capture occurs.
      - `value` string, required — Decimal amount of the major currency unit. Can be any precision.
      - `currency` string, required — ISO 3-letter currency code.
    - `refundedAmount` object — Amount that was refunded from the Payment. If multiple partial refunds have been made, this will be the sum of them. If no refund is initiated for the payment, the value will remain 0 until a successful refund occurs.
      - `value` string, required — Decimal amount of the major currency unit. Can be any precision.
      - `currency` string, required — ISO 3-letter currency code.
    - `merchantReturnUrl` string — In case a redirection process is needed during the Payment, Payrails will return to this merchant-specific URL after it finished.
    - `merchantReference` string — Merchant-provided reference for the Execution. Commonly, the identifier of the order on the Merchant's system.
    - `meta` object — Metadata for the context of an execution. Includes Payrails-defined structures for most common fields used in workflows, but can also be extended by merchant or provider-specific fields. For more information, visit our [Meta Fields guide](https://docs.payrails.com/docs/configure-meta-fields-for-your-providers).
      - `order` object — The order being placed on your system.
        - `reference` string — Order reference number sent by the merchant. Defaults to `merchantReference` in the execution if not specified.
        - `description` string — A human-readable name or description of this order.
        - `softDescriptor` string — Text that should appear in the bank statement of the customer. Can be requested, but keep in mind that some providers and issuers don't allow you to change this.
        - `storeId` string — Order Store ID identifies the particular store associated with this order.
        - `placement` object — Data about where the order was placed.
          - `country` object — Country in which the customer placed the order.
            - `code` string, required — ISO 3166-1 alpha-2 country code.
            - `iso3` string — ISO 3-letter country code. Returned by Payrails, but not interpreted in requests.
            - `name` string — The English name of the country. Returned by Payrails, but not interpreted in requests.
          - `city` string — City in which the customer placed the order.
        - `deliveryAddress` object — The address the items are to be shipped to.
          - `street` string — The name of the street of a postal address.
          - `doorNumber` string — The number on the door, building, or room.
          - `complement` string — Additional addressing information, 2nd line of postal address.
          - `area` string — The name of the suburb or area within a city.
          - `city` string — The name of the city of a postal address.
          - `postalCode` string — The postal code.
          - `state` string — The name of the state a postal address is in.
          - `country` object — The country where the address is in.
            - `code` string, required — ISO 3166-1 alpha-2 country code.
            - `iso3` string — ISO 3-letter country code. Returned by Payrails, but not interpreted in requests.
            - `name` string — The English name of the country. Returned by Payrails, but not interpreted in requests.
          - `latitude` number, float — Latitude of the address in the GPS coordinate system.
          - `longitude` number, float — Longitude of the address in the GPS coordinate system.
          - `phone` object — The phone to contact in the address (can be different that the customer's).
            - `countryCode` string — International prefix of the phone, if known separately.
            - `number` string, required — The local number of the phone, such that `countryCode` + `number` can be dialed.
          - `alias` string — Name of the address, e.g. home, work.
          - `name` string — Name of the person to whom the address belongs to.
          - `lastName` string — Last name of the person to whom the address belongs to.
          - `email` string — Email of the person to whom the address belongs to.
        - `deliveryAddressPreference` 'noShipping' | 'userPreSpecified' | 'allowProviderOverride' — Determines which Shipping details to use in express payment methods.
        - `deliveryDate` string, date-time — When the order is to be delivered.
        - `billingAddress` object — The address to put on the bill for this order.
          - `street` string — The name of the street of a postal address.
          - `doorNumber` string — The number on the door, building, or room.
          - `complement` string — Additional addressing information, 2nd line of postal address.
          - `area` string — The name of the suburb or area within a city.
          - `city` string — The name of the city of a postal address.
          - `postalCode` string — The postal code.
          - `state` string — The name of the state a postal address is in.
          - `country` object — The country where the address is in.
            - `code` string, required — ISO 3166-1 alpha-2 country code.
            - `iso3` string — ISO 3-letter country code. Returned by Payrails, but not interpreted in requests.
            - `name` string — The English name of the country. Returned by Payrails, but not interpreted in requests.
          - `latitude` number, float — Latitude of the address in the GPS coordinate system.
          - `longitude` number, float — Longitude of the address in the GPS coordinate system.
          - `phone` object — The phone to contact in the address (can be different that the customer's).
            - `countryCode` string — International prefix of the phone, if known separately.
            - `number` string, required — The local number of the phone, such that `countryCode` + `number` can be dialed.
          - `alias` string — Name of the address, e.g. home, work.
          - `name` string — Name of the person to whom the address belongs to.
          - `lastName` string — Last name of the person to whom the address belongs to.
          - `email` string — Email of the person to whom the address belongs to.
        - `shippingType` 'pickup' | 'physical' | 'hybrid' | 'digital' — The method by which the order is fulfilled: - `pickup`: The customer picks up the order. - `physical`: The order is physically delivered. - `digital`: The order is delivered electronically. - `hybrid`: A combination of physical and digital fulfillment.
        - `shipping` object — The shipping total price of the order.
          - `value` string, required — Decimal amount of the major currency unit. Can be any precision.
          - `currency` string, required — ISO 3-letter currency code.
        - `totalDiscount` object — The total discount applied on the order.
          - `value` string, required — Decimal amount of the major currency unit. Can be any precision.
          - `currency` string, required — ISO 3-letter currency code.
        - `totalTax` object — The total taxes for the order.
          - `value` string, required — Decimal amount of the major currency unit. Can be any precision.
          - `currency` string, required — ISO 3-letter currency code.
        - `lines` object[] — List of details per item in the order.
          - `name` string — The name of the item.
          - `description` string — The description of the item.
          - `product` object — The details of the product item.
            - `type` 'physical' | 'digital' | 'service' — The type of the product item.
          - `type` 'lineItem' | 'discount' | 'tax' — The type of the item. the line value will be added to the order total in case of `lineItem`, `tax` and subtracted from order total in case of `discount`.
          - `quantity` integer — How many instances of this item are part of the order.
          - `unitPrice` object — How much does a unit of the item cost.
            - `value` string, required — Decimal amount of the major currency unit. Can be any precision.
            - `currency` string, required — ISO 3-letter currency code.
          - `total` object — Cost of unit price multiplied by quantity with the tax and discount applied.
            - `value` string, required — Decimal amount of the major currency unit. Can be any precision.
            - `currency` string, required — ISO 3-letter currency code.
          - `taxPercentage` object — Tax percentage that applies to the specific item, applicable only where `item.type == lineItem`, will be ignored when not providing `item.unitPrice`.
            - `value` string, required — A percentage value up to 2 decimal precision.
          - `totalDiscount` object — The total discount applied on this item (quantity x discount per item), applicable only where `item.type == lineItem`, will be ignored when not providing `item.unitPrice`.
            - `value` string, required — Decimal amount of the major currency unit. Can be any precision.
            - `currency` string, required — ISO 3-letter currency code.
          - `totalTax` object — The total tax added for this item (quantity x tax per item), applicable only where `items.type = lineItem`, will be ignored when not providing `item.unitPrice`.
            - `value` string, required — Decimal amount of the major currency unit. Can be any precision.
            - `currency` string, required — ISO 3-letter currency code.
          - `id` string — Identifier of the item on the merchant's system.
          - `links` object — Relevant links about the item.
            - `productUrl` string — URL of the product information page.
            - `imageUrl` string — URL of the image of the item.
          - `travelTicket` object — Details about the travel ticket.
            - `ticketId` string — The ID of the travel ticket.
            - `passengers` object[] — The passengers on the travel ticket.
              - …
            - `routes` object[] — The routes on the travel ticket.
              - …
        - `total` object — Total order value. Can be different than the execution amount in case discounts or other costs are involved. This value will be ignored if costs are detailed in the `lines` array.
          - `value` string, required — Decimal amount of the major currency unit. Can be any precision.
          - `currency` string, required — ISO 3-letter currency code.
        - `processingType` 'Regular' | 'Subscription' | 'CardOnFile' | 'UnscheduledCardOnFile' | 'MOTO' | 'InPerson' — Processing type of the order.
        - `createdAt` string, date-time — The order's creation date in RFC 3339 format.
        - `pendingStateDuration` string — Controls how long the execution is allowed to remain in pending state. If the transaction has not reached a final state within this duration, the execution is automatically cancelled. The format should be based on the ISO 8601 standard.
        - `fundsTransfer` object — The order funds transfer details in case this is an AFT transaction.
          - `type` 'disbursement' | 'personToPerson' | 'accountToAccount' | 'topUp' | 'purchase' | 'cash' | 'walletLoad' — The type of funds transfer.
          - `purpose` 'donation' | 'education' | 'emergency' | 'expatriation' | 'familySupport' | 'financialServices' | 'gifts' | 'income' | 'insurance' | 'investment' | 'itServices' | 'leisure' | 'loanPayment' | 'medical' | 'business' | 'crypto' | 'assets' | 'prepaid' | 'crowdLending' | 'debitCard' | 'giftCard' | 'gaming' | 'highRiskSecurities' | 'salary' | 'pension' | 'royalities' | 'savings' | 'travelAndTourism' | 'other' — A human-readable description of the purpose for the funds transfer.
          - `recipient` object — Details of the individual or entity receiving the funds.
            - `account` object — The account details for the recipient.
              - …
            - `customer` object — The details of the recipient.
              - …
            - `address` object — The physical address of the recipient.
              - …
          - `sender` object — Details of the individual or entity sending the funds.
            - `customer` object — The details of the sender.
              - …
            - `address` object — The physical address of the sender.
              - …
            - `type` 'individual' | 'corporate' | 'instrument' — The type of sender.
            - `companyName` string — The sender's company name, if applicable.
      - `customer` object — The customer placing the order.
        - `reference` string — Customer reference number specified by the merchant. Defaults to `holderReference` of the execution if not specified.
        - `name` string — The full name (or first name, if you can provide `lastName` separate) of the customer.
        - `lastName` string — Last name of the customer (if required to be separate from `name`).
        - `email` string — Email address of the customer.
        - `type` string — Customer type specified by the merchant.
        - `phone` object — Phone of the customer.
          - `countryCode` string — International prefix of the phone, if known separately.
          - `number` string, required — The local number of the phone, such that `countryCode` + `number` can be dialed.
        - `birthDate` string, date — Date of birth of the customer.
        - `language` string — POSIX locale string identifying the language used to communicate to the customer.
        - `country` object — Country of registration the customer. Can be different than the order and delivery countries.
          - `code` string, required — ISO 3166-1 alpha-2 country code.
          - `iso3` string — ISO 3-letter country code. Returned by Payrails, but not interpreted in requests.
          - `name` string — The English name of the country. Returned by Payrails, but not interpreted in requests.
        - `identityCardNumber` string — The customer's identity number, e.g. passport, national ID, etc.
        - `identityCardType` string — The type of the customer's identity card, e.g. passport, national ID, etc.
        - `createdAt` string, date-time — The customer's account creation date in RFC 3339 format.
      - `clientContext` object — Data describing the customer's device or browser.
        - `ipAddress` string — IP address of the device that customer used to place the order. Can be IPv4 or IPv6.
        - `userAgent` string — The user-agent header supplied by the customer's browser.
        - `acceptHeader` string — The accept header supplied by the customer's browser.
        - `clientType` union — Type of device customer used to place the order.
          - 'desktop' — Desktop computer via web browser.
          - 'mobile' — Smartphone via browser.
          - 'app' — Merchant-controlled smartphone app.
        - `osType` 'ios' | 'android' — Type of Operating System that the customer is using.
        - `osVersion` string — Version of Operating System that the customer is using.
        - `deviceFingerprint` string — Fingerprint of the device the customer is using.
        - `javaEnabled` boolean — Flag indicating if the customer's browser is able to execute Java.
        - `javaScriptEnabled` boolean — Flag indicating if the customer's browser is able to execute JavaScript.
        - `cookiesAccepted` boolean — Flag indicating if the customer's browser accepts cookies.
        - `language` string — Locale string identifying the language of the device or browser, e.g. `pt`, `es_UY`, `en-US`. Both `-` and `_` are accepted.
        - `colorDepth` integer — The color depth of the customer's browser in bits per pixel.
        - `screenHeight` integer — The pixel height of the customer's screen.
        - `screenWidth` integer — The pixel width of the customer's screen.
        - `timeZoneOffset` integer — Time difference between UTC time and the customer's browser local time, in minutes.
        - `origin` string — The URL from where the order is being placed, e.g. https://merchant.com/checkout.
        - `host` string — The domain name from which the order is being placed, e.g. merchant.com.
      - `vendor` object — Description of a vendor that provides the order.
        - `reference` string — Reference of the vendor in the merchant's system.
        - `name` string — Name of the vendor.
        - `address` object — Address of the vendor.
          - `street` string — The name of the street of a postal address.
          - `doorNumber` string — The number on the door, building, or room.
          - `complement` string — Additional addressing information, 2nd line of postal address.
          - `area` string — The name of the suburb or area within a city.
          - `city` string — The name of the city of a postal address.
          - `postalCode` string — The postal code.
          - `state` string — The name of the state a postal address is in.
          - `country` object — The country where the address is in.
            - `code` string, required — ISO 3166-1 alpha-2 country code.
            - `iso3` string — ISO 3-letter country code. Returned by Payrails, but not interpreted in requests.
            - `name` string — The English name of the country. Returned by Payrails, but not interpreted in requests.
          - `latitude` number, float — Latitude of the address in the GPS coordinate system.
          - `longitude` number, float — Longitude of the address in the GPS coordinate system.
          - `phone` object — The phone to contact in the address (can be different that the customer's).
            - `countryCode` string — International prefix of the phone, if known separately.
            - `number` string, required — The local number of the phone, such that `countryCode` + `number` can be dialed.
          - `alias` string — Name of the address, e.g. home, work.
          - `name` string — Name of the person to whom the address belongs to.
          - `lastName` string — Last name of the person to whom the address belongs to.
          - `email` string — Email of the person to whom the address belongs to.
        - `device` object — Details about the device used by the vendor that provides the order.
          - `reference` string — Unique reference of the device (e.g. serial number).
        - `subMerchants` object[] — A list of sub-sellers for Payment Facilitator transactions.
          - `id` string — Unique identifier for the sub-merchant.
          - `name` string — The name of the sub-merchant.
          - `address` object — The physical location of the sub-merchant.
            - `street` string — The name of the street of a postal address.
            - `doorNumber` string — The number on the door, building, or room.
            - `complement` string — Additional addressing information, 2nd line of postal address.
            - `area` string — The name of the suburb or area within a city.
            - `city` string — The name of the city of a postal address.
            - `postalCode` string — The postal code.
            - `state` string — The name of the state a postal address is in.
            - `country` object — The country where the address is in.
              - …
            - `latitude` number, float — Latitude of the address in the GPS coordinate system.
            - `longitude` number, float — Longitude of the address in the GPS coordinate system.
            - `phone` object — The phone to contact in the address (can be different that the customer's).
              - …
            - `alias` string — Name of the address, e.g. home, work.
            - `name` string — Name of the person to whom the address belongs to.
            - `lastName` string — Last name of the person to whom the address belongs to.
            - `email` string — Email of the person to whom the address belongs to.
          - `amount` object — The amount of the payment corresponding to the sub-merchant.
            - `value` string, required — Decimal amount of the major currency unit. Can be any precision.
            - `currency` string, required — ISO 3-letter currency code.
      - `risk` object — Configuration values for the risk prevention check.
        - `score` string — Score provided by an external fraud prevention system.
        - `skipPaymentProviderRules` boolean — True if the provider should skip the risk rules.
        - `force3DS` boolean — Deprecated, use threeDSMode instead. True if we should request the provider to force a 3DS process. The actual execution of 3DS will depend on its availability and configuration on the provider and the issuer.
        - `threeDSMode` 'Skip' | 'Force' | 'Default' — 3DS mode to send in an authorize request to a PSP.
        - `allowNative3DS` boolean — True if we should allow native experience in mobile devices when 3DS 2.x is triggered. If false, we will prefer redirection-based flows.
        - `sessionId` string — Session ID provided by an external fraud prevention system.
        - `exemptionIndicator` 'lowValue' | 'transactionRiskAnalysis' | 'secureCorporate' | 'trustedBeneficiary' | 'trustedBeneficiaryPrompt' | 'dataShare' — Indicates the exemption that you want to request in case a 3DS process is triggered.The issuer decides if the exemption is granted or not. For some types of transaction, the issuer can grant an exemption without you requesting it. Possible values are * lowValue - For payments below 30 EUR (or equivalent converted amount) are considered “low value” and might be exempt from SCA. SCA is required if the total amount is higher than 100 EUR, and every 5 transactions. * transactionRiskAnalysis - For payments through acquirers or issuers whose fraud level is below a certain threshold. * secureCorporate - For payments that use secure corporate cards, which are exempt from 3DS authentication. * trustedBeneficiary - For payments where the cardholder has already added the merchant to a trust list on their bank. * trustedBeneficiaryPrompt - For payments where the merchant would like to prompt the cardholder to add them as a trusted merchant. * dataShare - Data Sharing exemptions for transactions that are not subject to Strong Customer Authentication (SCA) compliance.
      - `subscription` object — Configuration of a subscription process.
        - `chargeFrequency` string — Scheduled interval between subscription payments. The format should be based on the [ISO 8601 standard](https://tc39.es/proposal-temporal/docs/duration.html).
        - `expiration` string, date — Date when recurring payments expire.
      - `tags` object — Additional meta fields to be sent to the payment providers which support metadata / tags. For example, sent to [Stripe as metadata](https://stripe.com/docs/api/metadata). Because these will always be PSP-specific, we do NOT recommend using these fields if they can actually be mapped to a generic field above.
    - `history` object[] — History of Payment Operations executed on the Payment.
      - `id` string, uuid, required — Unique identifier of the Payment Operation in Payrails.
      - `createdAt` string, date-time — Exact date and time when the Payment Operation was created in Payrails. Possibly differs slightly from the date in the PSP.
      - `updatedAt` string, date-time — Exact date and time when the Payment Operation was updated in Payrails. Possibly differs slightly from the date in the PSP.
      - `paymentId` string, uuid — Unique identifier of the Payment that this Operation belongs to in Payrails.
      - `type` 'Authorize' | 'Preauthorize' | 'Capture' | 'Cancel' | 'Refund' | 'Credit' | 'SendNotification' | 'CaptureNotification' | 'RefundNotification' | 'CancelNotification' | 'AuthorizeNotification' | 'ChargebackNotification' | 'ChargebackReverseNotification' | 'Get' | 'Search' | 'GetToken' | 'Tokenize' | 'DisableToken' | 'Register' | 'Generate3DS' | 'Validate3DS' | 'PayerAuthInit' | 'PayerAuthCheckEnroll' | 'PayerAuthValidate' | 'RefundFailedNotification' | 'RefundReversedNotification' | 'CaptureFailedNotification' | 'ValidateRedirect' | 'RefundNotificationUpdated' — Operation Type that was executed in the Provider.
      - `reason` string — Reason why the operation was done.
      - `providerReference` string — Unique identifier of the Payment Operation in an external system. Some PSPs provide a specific ID for each update in the Payment, but most of them use the same as the original Payment.
      - `paymentStatus` string — The payment status just after the operation done.
      - `amount` object
        - `value` string, required — Decimal amount of the major currency unit. Can be any precision.
        - `currency` string, required — ISO 3-letter currency code.
      - `result` 'Success' | 'Accepted' | 'Pending' | 'HTTPRedirectRequired' | 'FormRedirectRequired' | 'Unknown' | 'UnexpectedProviderResponse' | 'ProviderUnknownError' | 'ProviderConnectionError' | 'Timeout' | 'ProviderTimeout' | 'GenericRejection' | 'FraudRisk' | 'DuplicateOperation' | 'OperationNotAllowed' | 'InstrumentNotAllowed' | 'InvalidInstrument' | 'InsufficientBalance' | 'BlockedInstrument' | 'ExpiredInstrument' | 'ValidationError' | 'ParamsError' | 'ProviderConfigError' | 'InvalidSignature' | 'InternalServerError' | 'PayerCanceled' | 'AuthenticationError' | 'AuthenticationRequired' | 'LimitExceeded' | 'PaymentMethodNotSupported' | 'AuthorizationRevoked', required — Result of the Operation according to Payrails mapping from the provider response.
      - `responseCode` string — Original response code from the PSP, which Payrails interpreted for the result field.
      - `requiredActionDetails` object — In case a Provider requests an action to continue executing an Operation, this object contains the necessary information for it.
        - `redirectUrl` string — The URL that the Merchant should redirect the user to.
        - `redirectMethod` 'GET' | 'POST' — The HTTP method that should be used when redirecting to the `redirectUrl`.
        - `parameters` object — Map of parameters that are necessary for the redirection. In case the `redirectMethod` is `GET`, these parameters can be appended in the query string, but if it's `POST`, they should be sent via form.
      - `errorDetails` string — Error details from the provider.
      - `acquirerReference` string — Acquirer Reference Number (ARN) for the Payment Operation (only Refunds and Captures), which we receive from some of the Provider.
      - `workspaceId` string, uuid — Workspace ID that the workflow configuration belongs to.
      - `operationLogs` object[] — List of operation logs associated with this operation.
        - `id` string, uuid — Unique identifier of the Payment Operation Log in Payrails.
        - `createdAt` string, date-time — Exact date and time when the Payment Operation Log was created in Payrails. Possibly differs slightly from the date in the PSP.
        - `operationId` string, uuid — Unique identifier of the Payment Operation that this Log belongs to in Payrails.
        - `input` string — Original request object sent to the Provider.
        - `output` string — Original response object received from the Provider.
        - `workspaceId` string, uuid — Workspace ID that the workflow configuration belongs to.
      - `providerLatency` string — Latency of the operation on the provider side.
      - `totalLatency` string — Total latency of the operation.
    - `providerAccountDisplayName` string — Display name of the Provider Account/Configuration that was used to process the Payment.
    - `providerDisplayName` string — Display name of the Provider that was used to process the Payment.
    - `workspaceId` string — Workspace ID that the Payment belongs to.

## Other responses

- `400` — Bad Request.
- `401` — Unauthorized.
- `403` — Insufficient Scope.
- `429` — Too Many Requests.

---

[API](https://skmtc.net/payrails/apis/payrails-api-reference.md) · [All operations](https://skmtc.net/payrails/apis/payrails-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/payrails/payrails-api-reference/versions/9dd2f0158582/schema)
