Server API version 1.0
Java

Results for

icon-search-large No search results yet
Enter your search query above

Get token

GET https://{domainname}/v1/{merchantId}/tokens/{tokenId}

Tokens

Using our tokenization service you can tokenize re-usable payment data like card data, bank account data including Direct Debit Mandates and PayPal BillingAgreementIDs. The main purpose for tokens is re-use of payment details. The additional benefit is that you do not need to store any sensitive payment details on your server, while still having the benefit to be able to re-use them. This allows you to process recurring card transactions without actually having access to the real card data.

Tokens can be used for two types of transactions:

  • Recurring: Automatically charging your consumer in a regular, e.g. monthly, time frame;
  • One-off: Charge the consumer without the consumer having to re-enter all of their payment details.

The second scenario can be used to facilitate a one-click checkout solution, that would still allow the consumer to enter only their CVV value for a card transaction. CVV values can't be tokenized as they are not allowed to be stored at all.

Besides the re-use of payment data, tokens have one other major use-case: Direct Debit Mandates. Especially SEPA Direct Debit transactions require that the mandate for the transactions is managed through a token with an associated mandate. Mandates are created in one go with the token, but can have a state that requires that they are approved before they can be used. As the mandate process is in most cases an offline process the approval will allow you to set the location and date where and when the mandate was signed by the consumer. Without an approved SEPA mandate you will not be able to process any payments regarding this mandate.

Request

Use GET on a specific token to retrieve all the tokenized data for that ID. You can use some of this data towards the consumer to let them choose which stored data to re-use. You can also use data like the expiry date to check if you need to ask for updated data from your consumer.

We will never return full card details.
The request does not have any additional input parameters.

Request example

SDK: Java

This scenario you will probably use the most

  • TokenResponse response = client.merchant("merchantId").tokens().get("tokenId");
    

Responses

Please find below an overview of the possible responses.

Response 200 - OKTokenResponse

All non-sensitive data that is stored is returned.

       Property Type Required Description
object no,

one of group

SDK object type: TokenCard
Object containing card details
alias string (100) no

An alias for the token. This can be used to visually represent the token.
If no alias is given in Create token calls, a payment product specific default is used, e.g. the obfuscated card number for card payment products.
Do not include any unobfuscated sensitive data in the alias.

object yes SDK object type: CustomerToken
Object containing the details of the consumer
object yes SDK object type: Address
Object containing the billing address details
additionalInfo string (50) no

Additional address information

city string (40) depends

City
Depends on: Required for Invoice payments (201)
Required for Direct Debit UK (705), except when a token has been included in the request that includes this value.
Required for the creation of a Payout.
Required for payments with product 9000 or 9001.
Required when address is included in Seller.

countryCode string (2) depends

ISO 3166-1 alpha-2 country code
Depends on: Required, except when a token has been included in the request that includes this value.
Required when address is included in Seller.

houseNumber string (15) depends

House number
Depends on: Required when address is included in Seller.

state string (35) no

Full name of the state or province

stateCode string (9) no

State code

street string (50) depends

Streetname
Depends on: Required for Invoice payments (201)
Required for Direct Debit UK (705), except when a token has been included in the request that includes this value.
Required for the creation of a Payout.
Required for payments with product 9000 or 9001.
Required when address is included in Seller.

zip string (10) depends

Zip code
Depends on: Required for Direct Debit UK (705), except when a token has been included in the request that includes this value.
Required for payments with product 9000 or 9001.

object no SDK object type: CompanyInformation
Object containing company information
name string (40) no

Name of company, as a consumer

merchantCustomerId string (15) no

Your identifier for the consumer that can be used as a search criteria in the Global Collect Payment Console and is also included in the Global Collect report files. For Ingenco's Ogone Payment Platform this field is used in the fraud-screening process.

object no SDK object type: PersonalInformationToken
Object containing personal information of the consumer
object no SDK object type: PersonalNameToken
Given name(s) or first name(s) of the consumer
firstName string (15) no

Given name(s) or first name(s) of the consumer

surname string (70) no

Surname(s) or last name(s) of the consumer

surnamePrefix string (15) no

Middle name - In between first name and surname - of the consumer

vatNumber string (17) no

Local VAT number of the consumer

object yes SDK object type: TokenCardData
Object containing the card tokenizable details
object yes SDK object type: CardWithoutCvv
Object containing the card details (without CVV)
cardNumber string (19) depends

The complete credit/debit card number (also know as the PAN)
Depends on: Required for Create and Update token.

cardholderName string (51) no

Card holder's name on the card

expiryDate string (4) depends

Expiry date of the card
Format: MMYY
Depends on: Required for Create and Update token.

issueNumber string (2) no

Issue number on the card (if applicable)

firstTransactionDate string (8) no

Date of the first transaction (for ATOS)
Format: YYYYMMDD

providerReference string (4000) no

Reference of the provider (of the first transaction) - used to store the ATOS Transaction Certificate

object no,

one of group

SDK object type: TokenEWallet
Object containing eWallet details
alias string (100) no

An alias for the token. This can be used to visually represent the token.
If no alias is given in Create token calls, a payment product specific default is used, e.g. the obfuscated card number for card payment products.
Do not include any unobfuscated sensitive data in the alias.

object yes SDK object type: CustomerToken
Object containing the details of the consumer
object yes SDK object type: Address
Object containing the billing address details
additionalInfo string (50) no

Additional address information

city string (40) depends

City
Depends on: Required for Invoice payments (201)
Required for Direct Debit UK (705), except when a token has been included in the request that includes this value.
Required for the creation of a Payout.
Required for payments with product 9000 or 9001.
Required when address is included in Seller.

countryCode string (2) depends

ISO 3166-1 alpha-2 country code
Depends on: Required, except when a token has been included in the request that includes this value.
Required when address is included in Seller.

houseNumber string (15) depends

House number
Depends on: Required when address is included in Seller.

state string (35) no

Full name of the state or province

stateCode string (9) no

State code

street string (50) depends

Streetname
Depends on: Required for Invoice payments (201)
Required for Direct Debit UK (705), except when a token has been included in the request that includes this value.
Required for the creation of a Payout.
Required for payments with product 9000 or 9001.
Required when address is included in Seller.

zip string (10) depends

Zip code
Depends on: Required for Direct Debit UK (705), except when a token has been included in the request that includes this value.
Required for payments with product 9000 or 9001.

object no SDK object type: CompanyInformation
Object containing company information
name string (40) no

Name of company, as a consumer

merchantCustomerId string (15) no

Your identifier for the consumer that can be used as a search criteria in the Global Collect Payment Console and is also included in the Global Collect report files. For Ingenco's Ogone Payment Platform this field is used in the fraud-screening process.

object no SDK object type: PersonalInformationToken
Object containing personal information of the consumer
object no SDK object type: PersonalNameToken
Given name(s) or first name(s) of the consumer
firstName string (15) no

Given name(s) or first name(s) of the consumer

surname string (70) no

Surname(s) or last name(s) of the consumer

surnamePrefix string (15) no

Middle name - In between first name and surname - of the consumer

vatNumber string (17) no

Local VAT number of the consumer

object yes SDK object type: TokenEWalletData
Object containing the eWallet tokenizable data
billingAgreementId string (50) depends

Identification of the PayPal recurring billing agreement
Depends on: Required for the creation of a PayPal token.

object no,

one of group

SDK object type: TokenNonSepaDirectDebit
Object containing the non SEPA Direct Debit details
alias string (100) no

An alias for the token. This can be used to visually represent the token.
If no alias is given in Create token calls, a payment product specific default is used, e.g. the obfuscated card number for card payment products.
Do not include any unobfuscated sensitive data in the alias.

object yes SDK object type: CustomerToken
Object containing the details of the consumer
object yes SDK object type: Address
Object containing the billing address details
additionalInfo string (50) no

Additional address information

city string (40) depends

City
Depends on: Required for Invoice payments (201)
Required for Direct Debit UK (705), except when a token has been included in the request that includes this value.
Required for the creation of a Payout.
Required for payments with product 9000 or 9001.
Required when address is included in Seller.

countryCode string (2) depends

ISO 3166-1 alpha-2 country code
Depends on: Required, except when a token has been included in the request that includes this value.
Required when address is included in Seller.

houseNumber string (15) depends

House number
Depends on: Required when address is included in Seller.

state string (35) no

Full name of the state or province

stateCode string (9) no

State code

street string (50) depends

Streetname
Depends on: Required for Invoice payments (201)
Required for Direct Debit UK (705), except when a token has been included in the request that includes this value.
Required for the creation of a Payout.
Required for payments with product 9000 or 9001.
Required when address is included in Seller.

zip string (10) depends

Zip code
Depends on: Required for Direct Debit UK (705), except when a token has been included in the request that includes this value.
Required for payments with product 9000 or 9001.

object no SDK object type: CompanyInformation
Object containing company information
name string (40) no

Name of company, as a consumer

merchantCustomerId string (15) no

Your identifier for the consumer that can be used as a search criteria in the Global Collect Payment Console and is also included in the Global Collect report files. For Ingenco's Ogone Payment Platform this field is used in the fraud-screening process.

object no SDK object type: PersonalInformationToken
Object containing personal information of the consumer
object no SDK object type: PersonalNameToken
Given name(s) or first name(s) of the consumer
firstName string (15) no

Given name(s) or first name(s) of the consumer

surname string (70) no

Surname(s) or last name(s) of the consumer

surnamePrefix string (15) no

Middle name - In between first name and surname - of the consumer

vatNumber string (17) no

Local VAT number of the consumer

object yes SDK object type: MandateNonSepaDirectDebit
Object containing the mandate details
object yes,

one of group

SDK object type: TokenNonSepaDirectDebitPaymentProduct705SpecificData
Object containing specific data for Direct Debit UK
authorisationId string (18) depends

Core reference number for the direct debit instruction in UK
Depends on: Required except when a token has been included in the request that includes this value.

object yes SDK object type: BankAccountBban
Object containing account holder name and bank account information
accountHolderName string (30) no

Name of the account holder

accountNumber string (30) depends

Bank account number
Depends on: Required for Direct Debit UK (705) and ACH (730) payments, except when a token has been included in the request that includes this value.
Required for Create and Update token calls.

bankCode string (15) depends

Bank code
Depends on: Required for Direct Debit UK (705) and ACH (730) payments, except when a token has been included in the request that includes this value.
Required Create and Update token calls.

bankName string (40) no

Name of the bank

branchCode string (15) no

Branch code

checkDigit string (2) no

Bank check digit

countryCode string (2) no

ISO 3166-1 alpha-2 country code of the country where the bank account is held For UK payouts this value is automatically set to GB as only payouts to UK accounts are supported.

object yes,

one of group

SDK object type: TokenNonSepaDirectDebitPaymentProduct730SpecificData
Object containing specific data for ACH
object yes SDK object type: BankAccountBban
Object containing account holder name and bank account information
accountHolderName string (30) no

Name of the account holder

accountNumber string (30) depends

Bank account number
Depends on: Required for Direct Debit UK (705) and ACH (730) payments, except when a token has been included in the request that includes this value.
Required for Create and Update token calls.

bankCode string (15) depends

Bank code
Depends on: Required for Direct Debit UK (705) and ACH (730) payments, except when a token has been included in the request that includes this value.
Required Create and Update token calls.

bankName string (40) no

Name of the bank

branchCode string (15) no

Branch code

checkDigit string (2) no

Bank check digit

countryCode string (2) no

ISO 3166-1 alpha-2 country code of the country where the bank account is held For UK payouts this value is automatically set to GB as only payouts to UK accounts are supported.

object no,

one of group

SDK object type: TokenSepaDirectDebit
Object containing the SEPA Direct Debit details
alias string (100) no

An alias for the token. This can be used to visually represent the token.
If no alias is given in Create token calls, a payment product specific default is used, e.g. the obfuscated card number for card payment products.
Do not include any unobfuscated sensitive data in the alias.

object yes SDK object type: CustomerTokenWithContactDetails
Object containing the details of the consumer
object depends SDK object type: Address
Object containing the billing address details
Depends on: Required for the creation of a token for the countryCode field within this object.
additionalInfo string (50) no

Additional address information

city string (40) depends

City
Depends on: Required for Invoice payments (201)
Required for Direct Debit UK (705), except when a token has been included in the request that includes this value.
Required for the creation of a Payout.
Required for payments with product 9000 or 9001.
Required when address is included in Seller.

countryCode string (2) depends

ISO 3166-1 alpha-2 country code
Depends on: Required, except when a token has been included in the request that includes this value.
Required when address is included in Seller.

houseNumber string (15) depends

House number
Depends on: Required when address is included in Seller.

state string (35) no

Full name of the state or province

stateCode string (9) no

State code

street string (50) depends

Streetname
Depends on: Required for Invoice payments (201)
Required for Direct Debit UK (705), except when a token has been included in the request that includes this value.
Required for the creation of a Payout.
Required for payments with product 9000 or 9001.
Required when address is included in Seller.

zip string (10) depends

Zip code
Depends on: Required for Direct Debit UK (705), except when a token has been included in the request that includes this value.
Required for payments with product 9000 or 9001.

object no SDK object type: CompanyInformation
Object containing company information
name string (40) no

Name of company, as a consumer

object no SDK object type: ContactDetailsToken
Object containing contact details like email address and phone number
emailAddress string (70) no

Email address of the consumer

emailMessageType string no

Preference for the type of email message markup
  • plain-text
  • html

merchantCustomerId string (15) no

Your identifier for the consumer that can be used as a search criteria in the Global Collect Payment Console and is also included in the Global Collect report files. For Ingenco's Ogone Payment Platform this field is used in the fraud-screening process.

object no SDK object type: PersonalInformationToken
Object containing personal information of the consumer
object no SDK object type: PersonalNameToken
Given name(s) or first name(s) of the consumer
firstName string (15) no

Given name(s) or first name(s) of the consumer

surname string (70) no

Surname(s) or last name(s) of the consumer

surnamePrefix string (15) no

Middle name - In between first name and surname - of the consumer

vatNumber string (17) no

Local VAT number of the consumer

object yes SDK object type: MandateSepaDirectDebit
Object containing the mandate details
object depends SDK object type: BankAccountIban
Object containing Account holder and IBAN information
Depends on: Required for the creation of a token for the iban field within this object.
accountHolderName string (30) depends

Name in which the account is held.
Depends on: Required for the creation of a Payout
Required for Create and Update token calls.

iban string (50) depends

The IBAN is the International Bank Account Number. It is an internationally agreed format for the BBAN and includes the ISO country code and two check digits.
Depends on: Required for the creation of a Payout
Required for Create and Update token.
Required for payments with product 9000 in Austria (AT) and Germany (DE).
Required for Create mandate and Create payment with mandate calls

object no SDK object type: Creditor
Object containing information on the creditor
additionalAddressInfo string no

Additional information about the creditor's address, like Suite II, Apartment 2a

city string no

City of the creditor address

countryCode string no

ISO 3166-1 alpha-2 country code

houseNumber string no

House number of the creditor address

iban string no

Creditor IBAN number
The IBAN is the International Bank Account Number. It is an internationally agreed format for the bank account number and includes the ISO country code and two check digits.

id string no

Creditor identifier

name string no

Name of the collecting creditor

referenceParty string no

Creditor type of the legal reference of the collecting entity

referencePartyId string no

Legal reference of the collecting creditor

street string no

Street of the creditor address

zip string no

ZIP code of the creditor address

customerContractIdentifier string (35) no

Identifies the contract between consumer and merchant

object depends SDK object type: Debtor
Object containing information on the debtor
Depends on: Required for the creation of a token for the surname field within this object.
additionalAddressInfo string (50) no

Additional information about the debtor's address, like Suite II, Apartment 2a

city string (51) no

City of the debtor's address

countryCode string (2) no

ISO 3166-1 alpha-2 country code of the debtor's address

firstName string (15) no

Debtor first name

houseNumber string (15) no

House number of the debtor's address

state string (35) no

State of debtor address

stateCode string (9) no

State Code of the debtor's address

street string (50) no

Street of debtor's address

surname string (70) depends

Debtor's last name
Depends on: Required for the creation of a token.

surnamePrefix string (15) no

Prefix of the debtor's last name

zip string (10) no

ZIP code of the debtor's address

isRecurring boolean no

  • true
  • false

object no SDK object type: MandateApproval
Object containing the details of the mandate approval
mandateSignatureDate string (8) no

The date when the mandate was signed
Format: YYYYMMDD

mandateSignaturePlace string (51) no

The city where the mandate was signed

mandateSigned boolean no

  • true = Mandate is signed
  • false = Mandate is not signed

mandateId string no

Unique mandate identifier

preNotification string no

Indicates whether a pre-notification should be sent to the consumer.
  • do-not-send - Do not send a pre-notification
  • send-on-first-collection - Send a pre-notification

id string yes

ID of the token

paymentProductId integer yes

Payment product identifier
Please see payment products for a full overview of possible values.

Response example

SDK: Java

This scenario you will probably use the most

  • {
        "id" : "9511cb6c-a9b1-4d16-a576-dca13f72add3",
        "paymentProductId" : 770,
        "sepaDirectDebit" : {
            "customer" : {
                "companyInformation" : {
                    "name" : "Acme Labs"
                },
                "merchantCustomerId" : "1234",
                "billingAddress" : {
                    "additionalInfo" : "Suite II",
                    "city" : "Monument Valley",
                    "countryCode" : "US",
                    "houseNumber" : "1",
                    "state" : "Utah",
                    "street" : "Desertroad",
                    "zip" : "84536"
                },
                "personalInformation" : {
                    "name" : {
                        "firstName" : "Wile",
                        "surname" : "Coyote",
                        "surnamePrefix" : "E."
                    }
                },
                "contactDetails" : {
                    "emailAddress" : "wile.e.coyote@acmelabs.com",
                    "emailMessageType" : "html"
                }
            },
            "mandate" : {
                "bankAccountIban" : {
                    "accountHolderName" : "Wile E. Coyote",
                    "iban" : "IT60X0542811101000000123456"
                },
                "customerContractIdentifier" : "123456789",
                "debtor" : {
                    "city" : "Burbank",
                    "countryCode" : "US",
                    "firstName" : "Chuck",
                    "houseNumber" : "411",
                    "state" : "California",
                    "stateCode" : "CA",
                    "street" : "N Hollywood Way",
                    "surname" : "Jones",
                    "zip" : "91505"
                },
                "mandateApproval" : {
                    "mandateSignatureDate" : "20150102",
                    "mandateSignaturePlace" : "Monument Valley",
                    "mandateSigned" : true
                },
                "mandateId" : "G9991L0X14981",
                "preNotification" : "do-not-send",
                "isRecurring" : true,
                "creditor" : {
                    "city" : "Monument Valley",
                    "countryCode" : "US",
                    "houseNumber" : "13",
                    "id" : "US123456",
                    "name" : "Road Runner",
                    "street" : "Desertroad",
                    "zip" : "84536"
                }
            }
        }
    }
    

Response 400 - Bad requestErrorResponse

     Property Type Required Description
errorId string yes

Unique reference, for debugging purposes, of this error response

array yes
List of one or more errors
object no SDK object type: APIError
category string no

Category the error belongs to. The category should give an indication of the type of error you are dealing with. Possible values:
  • CONNECT_PLATFORM_ERROR - indicating that a functional error has occurred in the Connect platform.
  • PAYMENT_PLATFORM_ERROR - indicating that a functional error has occurred in the Payment platform.
  • IO_ERROR - indicating that a technical error has occurred within the Connect platform or between Connect and any of the payment platforms or third party systems.

code string yes

Error code

httpStatusCode integer no

HTTP status code for this error that can be used to determine the type of error

id string no

ID of the error. This is a short human-readable message that briefly describes the error.

message string no

Human-readable error message that is not meant to be relayed to consumer as it might tip off people who are trying to commit fraud

propertyName string no

Returned only if the error relates to a value that was missing or incorrect.
Contains a location path to the value as a JSonata query.
Some common examples:
  • a.b selects the value of property b of root property a,
  • a[1] selects the first element of the array in root property a,
  • a[b='some value'] selects all elements of the array in root property a that have a property b with value 'some value'.

requestId string no

ID of the request that can be used for debugging purposes

Response example

SDK: Java

This scenario you will probably use the most

  • {
        "errorId" : "15eabcd5-30b3-479b-ae03-67bb351c07e6-00000092",
        "errors" : [
            {
                "code" : "20000000",
                "propertyName" : "bankAccountBban.accountNumber",
                "message" : "PARAMETER_NOT_FOUND_IN_REQUEST"
            }
        ]
    }
    

Response 404 - Not foundErrorResponse

In case you are trying to retrieve a token that does not exist or has been deleted you will get a 404 response.

     Property Type Required Description
errorId string yes

Unique reference, for debugging purposes, of this error response

array yes
List of one or more errors
object no SDK object type: APIError
category string no

Category the error belongs to. The category should give an indication of the type of error you are dealing with. Possible values:
  • CONNECT_PLATFORM_ERROR - indicating that a functional error has occurred in the Connect platform.
  • PAYMENT_PLATFORM_ERROR - indicating that a functional error has occurred in the Payment platform.
  • IO_ERROR - indicating that a technical error has occurred within the Connect platform or between Connect and any of the payment platforms or third party systems.

code string yes

Error code

httpStatusCode integer no

HTTP status code for this error that can be used to determine the type of error

id string no

ID of the error. This is a short human-readable message that briefly describes the error.

message string no

Human-readable error message that is not meant to be relayed to consumer as it might tip off people who are trying to commit fraud

propertyName string no

Returned only if the error relates to a value that was missing or incorrect.
Contains a location path to the value as a JSonata query.
Some common examples:
  • a.b selects the value of property b of root property a,
  • a[1] selects the first element of the array in root property a,
  • a[b='some value'] selects all elements of the array in root property a that have a property b with value 'some value'.

requestId string no

ID of the request that can be used for debugging purposes

Response example

SDK: Java

This scenario you will probably use the most

  • {
        "errorId" : "657b10da-d2f9-4088-a948-bf190ef516b1-00000318",
        "errors" : [
            {
                "code" : "700540",
                "message" : "PROFILE_NOT_FOUND"
            }
        ]
    }
    
icon_top_1