Get token
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.
Request example
This scenario you will probably use the most
-
const sdkResponse = await client.v1.tokens.get("merchantId", "tokenId"); // sdkResponse has the following properties: // - status: the HTTP status code // - body: the response body // - isSuccess: true if the call was successful, // or false if the Worldline Global Collect platform returned an error response
Responses
Please find below an overview of the possible responses.
Response 200 - OKTokenResponse
All non-sensitive data that is stored is returned.
Properties
|
|||
Property | Type | Required | Details |
---|---|---|---|
object | no | read close | |
close
DescriptionObject containing card details
|
|||
alias | string (100) | no | read close |
close
DescriptionAn 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 | depends | read close | |
object | no | read close | |
additionalInfo | string (50) | no | read close |
close
DescriptionAdditional address information. The additionalInfo is truncated after 10 characters for payments, refunds or payouts that are processed by the WL Online Payment Acceptance platform
|
|||
city | string | depends depends no depends depends | read close |
close
DescriptionCity
Note: For payments with product 1503 the maximum length is not 40 but 20. |
|||
countryCode | string (2) | no depends no yes yes | read close |
close
DescriptionISO 3166-1 alpha-2 country code
|
|||
houseNumber | string (15) | depends | read close |
close
DescriptionHouse number. The houseNumber is truncated after 10 characters for payments, refunds or payouts that are processed by the WL Online Payment Acceptance platform
|
|||
state | string (35) | no depends no no depends | read close |
close
DescriptionFull name of the state or province
|
|||
stateCode | string | depends | read close |
close
DescriptionISO 3166-2 alpha-3 state code
Notes:
|
|||
street | string (50) | depends depends no depends depends | read close |
close
DescriptionStreetname
|
|||
zip | string | depends depends no depends depends | read close |
close
DescriptionZip code
Note: For payments with product 1503 the maximum length is not 10 but 8. |
|||
object | no | read close | |
dateOfIncorporation | string (8) | no depends no no depends | read close |
close
DescriptionThe date of incorporation is the specific date when the company was registered with the relevant authority.
Format: YYYYMMDD |
|||
name | string (40) | depends depends no no no | read close |
close
DescriptionName of company, as a customer
|
|||
vatNumber | string (17) | depends | read close |
close
DescriptionLocal VAT number of the company
|
|||
merchantCustomerId | string (15) | no | read close |
close
DescriptionYour identifier for the customer. It can be used as a search criteria in the GlobalCollect Payment Console and is also included in the GlobalCollect report files. It is used in the fraud-screening process for payments on the Ogone Payment Platform.
|
|||
object | no | read close | |
close
DescriptionObject containing personal information of the customer
|
|||
object | no | read close | |
firstName | string (15) | no | read close |
close
DescriptionGiven name(s) or first name(s) of the customer
|
|||
surname | string (70) | no | read close |
close
DescriptionSurname(s) or last name(s) of the customer
|
|||
surnamePrefix | string (15) | no | read close |
close
DescriptionMiddle name - In between first name and surname - of the customer
|
|||
vatNumber | string (17) | no | read close |
close
Deprecated:
Use companyInformation.vatNumber instead
DescriptionLocal VAT number of the company
|
|||
object | yes | read close | |
object | yes | read close | |
cardNumber | string (19) | depends | read close |
close
DescriptionThe complete credit/debit card number (also know as the PAN). The minimum input length is 12 digits.
|
|||
cardholderName | string (51) | no | read close |
close
DescriptionThe card holder's name on the card. Minimum length of 2, maximum length of 51 characters.
|
|||
expiryDate | string (4) | depends | read close |
close
DescriptionExpiry date of the card
Format: MMYY |
|||
issueNumber | string (2) | no | read close |
close
DescriptionIssue number on the card (if applicable)
|
|||
firstTransactionDate | string (8) | no | read close |
close
DescriptionDate of the first transaction (for ATOS)
Format: YYYYMMDD |
|||
providerReference | string (4000) | no | read close |
close
DescriptionReference of the provider (of the first transaction) - used to store the ATOS Transaction Certificate
|
|||
object | no | read close | |
close
DescriptionObject containing eWallet details
|
|||
alias | string (100) | no | read close |
close
DescriptionAn 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 | read close | |
object | no | read close | |
additionalInfo | string (50) | no | read close |
close
DescriptionAdditional address information. The additionalInfo is truncated after 10 characters for payments, refunds or payouts that are processed by the WL Online Payment Acceptance platform
|
|||
city | string | depends depends no depends depends | read close |
close
DescriptionCity
Note: For payments with product 1503 the maximum length is not 40 but 20. |
|||
countryCode | string (2) | no depends no yes yes | read close |
close
DescriptionISO 3166-1 alpha-2 country code
|
|||
houseNumber | string (15) | depends | read close |
close
DescriptionHouse number. The houseNumber is truncated after 10 characters for payments, refunds or payouts that are processed by the WL Online Payment Acceptance platform
|
|||
state | string (35) | no depends no no depends | read close |
close
DescriptionFull name of the state or province
|
|||
stateCode | string | depends | read close |
close
DescriptionISO 3166-2 alpha-3 state code
Notes:
|
|||
street | string (50) | depends depends no depends depends | read close |
close
DescriptionStreetname
|
|||
zip | string | depends depends no depends depends | read close |
close
DescriptionZip code
Note: For payments with product 1503 the maximum length is not 10 but 8. |
|||
object | no | read close | |
dateOfIncorporation | string (8) | no depends no no depends | read close |
close
DescriptionThe date of incorporation is the specific date when the company was registered with the relevant authority.
Format: YYYYMMDD |
|||
name | string (40) | depends depends no no no | read close |
close
DescriptionName of company, as a customer
|
|||
vatNumber | string (17) | depends | read close |
close
DescriptionLocal VAT number of the company
|
|||
merchantCustomerId | string (15) | no | read close |
close
DescriptionYour identifier for the customer. It can be used as a search criteria in the GlobalCollect Payment Console and is also included in the GlobalCollect report files. It is used in the fraud-screening process for payments on the Ogone Payment Platform.
|
|||
object | no | read close | |
close
DescriptionObject containing personal information of the customer
|
|||
object | no | read close | |
firstName | string (15) | no | read close |
close
DescriptionGiven name(s) or first name(s) of the customer
|
|||
surname | string (70) | no | read close |
close
DescriptionSurname(s) or last name(s) of the customer
|
|||
surnamePrefix | string (15) | no | read close |
close
DescriptionMiddle name - In between first name and surname - of the customer
|
|||
vatNumber | string (17) | no | read close |
close
Deprecated:
Use companyInformation.vatNumber instead
DescriptionLocal VAT number of the company
|
|||
object | yes | read close | |
billingAgreementId | string (50) | depends | read close |
close
DescriptionIdentification of the PayPal recurring billing agreement
|
|||
object | no | read close | |
close
DescriptionObject containing the non SEPA Direct Debit details
|
|||
alias | string (100) | no | read close |
close
DescriptionAn 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 | read close | |
object | no | read close | |
additionalInfo | string (50) | no | read close |
close
DescriptionAdditional address information. The additionalInfo is truncated after 10 characters for payments, refunds or payouts that are processed by the WL Online Payment Acceptance platform
|
|||
city | string | depends depends no depends depends | read close |
close
DescriptionCity
Note: For payments with product 1503 the maximum length is not 40 but 20. |
|||
countryCode | string (2) | no depends no yes yes | read close |
close
DescriptionISO 3166-1 alpha-2 country code
|
|||
houseNumber | string (15) | depends | read close |
close
DescriptionHouse number. The houseNumber is truncated after 10 characters for payments, refunds or payouts that are processed by the WL Online Payment Acceptance platform
|
|||
state | string (35) | no depends no no depends | read close |
close
DescriptionFull name of the state or province
|
|||
stateCode | string | depends | read close |
close
DescriptionISO 3166-2 alpha-3 state code
Notes:
|
|||
street | string (50) | depends depends no depends depends | read close |
close
DescriptionStreetname
|
|||
zip | string | depends depends no depends depends | read close |
close
DescriptionZip code
Note: For payments with product 1503 the maximum length is not 10 but 8. |
|||
object | no | read close | |
dateOfIncorporation | string (8) | no depends no no depends | read close |
close
DescriptionThe date of incorporation is the specific date when the company was registered with the relevant authority.
Format: YYYYMMDD |
|||
name | string (40) | depends depends no no no | read close |
close
DescriptionName of company, as a customer
|
|||
vatNumber | string (17) | depends | read close |
close
DescriptionLocal VAT number of the company
|
|||
merchantCustomerId | string (15) | no | read close |
close
DescriptionYour identifier for the customer. It can be used as a search criteria in the GlobalCollect Payment Console and is also included in the GlobalCollect report files. It is used in the fraud-screening process for payments on the Ogone Payment Platform.
|
|||
object | no | read close | |
close
DescriptionObject containing personal information of the customer
|
|||
object | no | read close | |
firstName | string (15) | no | read close |
close
DescriptionGiven name(s) or first name(s) of the customer
|
|||
surname | string (70) | no | read close |
close
DescriptionSurname(s) or last name(s) of the customer
|
|||
surnamePrefix | string (15) | no | read close |
close
DescriptionMiddle name - In between first name and surname - of the customer
|
|||
vatNumber | string (17) | no | read close |
close
Deprecated:
Use companyInformation.vatNumber instead
DescriptionLocal VAT number of the company
|
|||
object | yes | read close | |
object | one of the group | read close | |
close
DescriptionObject containing specific data for Direct Debit UK
|
|||
authorisationId | string (18) | depends | read close |
close
DescriptionCore reference number for the direct debit instruction in UK
|
|||
object | yes | read close | |
close
DescriptionObject containing account holder name and bank account information
|
|||
accountHolderName | string (30) | depends | read close |
close
DescriptionName of the account holder
|
|||
accountNumber | string | depends | read close |
close
DescriptionBank account number
|
|||
bankCode | string | depends | read close |
close
DescriptionBank code
|
|||
bankName | string (40) | no | read close |
close
DescriptionName of the bank
|
|||
branchCode | string | no | read close |
close
DescriptionBranch code
|
|||
checkDigit | string | no | read close |
close
DescriptionBank check digit
|
|||
countryCode | string (2) | no | read close |
close
DescriptionISO 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 | one of the group | read close | |
close
DescriptionObject containing specific data for ACH
|
|||
object | yes | read close | |
close
DescriptionObject containing account holder name and bank account information
|
|||
accountHolderName | string (30) | depends | read close |
close
DescriptionName of the account holder
|
|||
accountNumber | string | depends | read close |
close
DescriptionBank account number
|
|||
bankCode | string | depends | read close |
close
DescriptionBank code
|
|||
bankName | string (40) | no | read close |
close
DescriptionName of the bank
|
|||
branchCode | string | no | read close |
close
DescriptionBranch code
|
|||
checkDigit | string | no | read close |
close
DescriptionBank check digit
|
|||
countryCode | string (2) | no | read close |
close
DescriptionISO 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 | read close | |
close
DescriptionObject containing the SEPA Direct Debit details
|
|||
alias | string (100) | no | read close |
close
DescriptionAn 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 | read close | |
close
DescriptionObject containing the details of the customer
|
|||
object | depends | read close | |
additionalInfo | string (50) | no | read close |
close
DescriptionAdditional address information. The additionalInfo is truncated after 10 characters for payments, refunds or payouts that are processed by the WL Online Payment Acceptance platform
|
|||
city | string | depends depends no depends depends | read close |
close
DescriptionCity
Note: For payments with product 1503 the maximum length is not 40 but 20. |
|||
countryCode | string (2) | no depends no yes yes | read close |
close
DescriptionISO 3166-1 alpha-2 country code
|
|||
houseNumber | string (15) | depends | read close |
close
DescriptionHouse number. The houseNumber is truncated after 10 characters for payments, refunds or payouts that are processed by the WL Online Payment Acceptance platform
|
|||
state | string (35) | no depends no no depends | read close |
close
DescriptionFull name of the state or province
|
|||
stateCode | string | depends | read close |
close
DescriptionISO 3166-2 alpha-3 state code
Notes:
|
|||
street | string (50) | depends depends no depends depends | read close |
close
DescriptionStreetname
|
|||
zip | string | depends depends no depends depends | read close |
close
DescriptionZip code
Note: For payments with product 1503 the maximum length is not 10 but 8. |
|||
object | no | read close | |
dateOfIncorporation | string (8) | no depends no no depends | read close |
close
DescriptionThe date of incorporation is the specific date when the company was registered with the relevant authority.
Format: YYYYMMDD |
|||
name | string (40) | depends depends no no no | read close |
close
DescriptionName of company, as a customer
|
|||
vatNumber | string (17) | depends | read close |
close
DescriptionLocal VAT number of the company
|
|||
object | no | read close | |
close
DescriptionObject containing contact details like email address and phone number
|
|||
emailAddress | string (70) | no | read close |
close
DescriptionEmail address of the customer
|
|||
emailMessageType | string | no | read close |
close
DescriptionPreference for the type of email message markup
|
|||
merchantCustomerId | string (15) | no | read close |
close
DescriptionYour identifier for the customer. It can be used as a search criteria in the GlobalCollect Payment Console and is also included in the GlobalCollect report files. It is used in the fraud-screening process for payments on the Ogone Payment Platform.
|
|||
object | no | read close | |
close
DescriptionObject containing personal information of the customer
|
|||
object | no | read close | |
firstName | string (15) | no | read close |
close
DescriptionGiven name(s) or first name(s) of the customer
|
|||
surname | string (70) | no | read close |
close
DescriptionSurname(s) or last name(s) of the customer
|
|||
surnamePrefix | string (15) | no | read close |
close
DescriptionMiddle name - In between first name and surname - of the customer
|
|||
vatNumber | string (17) | no | read close |
close
Deprecated:
Use companyInformation.vatNumber instead
DescriptionLocal VAT number of the company
|
|||
object | yes | read close | |
object | depends | read close | |
close
DescriptionObject containing Account holder and IBAN information
|
|||
accountHolderName | string (30) | depends | read close |
close
DescriptionName in which the account is held.
|
|||
iban | string (50) | depends | read close |
close
DescriptionThe 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.
|
|||
object | no | read close | |
additionalAddressInfo | string | no | read close |
close
DescriptionAdditional information about the creditor's address, like Suite II, Apartment 2a
|
|||
city | string | no | read close |
close
DescriptionCity of the creditor address
|
|||
countryCode | string | no | read close |
close
DescriptionISO 3166-1 alpha-2 country code
|
|||
houseNumber | string | no | read close |
close
DescriptionHouse number of the creditor address
|
|||
iban | string | no | read close |
close
DescriptionCreditor 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 | read close |
close
DescriptionCreditor identifier
|
|||
name | string | no | read close |
close
DescriptionName of the collecting creditor
|
|||
referenceParty | string | no | read close |
close
DescriptionCreditor type of the legal reference of the collecting entity
|
|||
referencePartyId | string | no | read close |
close
DescriptionLegal reference of the collecting creditor
|
|||
street | string | no | read close |
close
DescriptionStreet of the creditor address
|
|||
zip | string | no | read close |
close
DescriptionZIP code of the creditor address
|
|||
customerContractIdentifier | string (35) | no | read close |
close
DescriptionIdentifies the contract between customer and merchant
|
|||
object | depends | read close | |
additionalAddressInfo | string (50) | no | read close |
close
DescriptionAdditional information about the debtor's address, like Suite II, Apartment 2a
|
|||
city | string (51) | no | read close |
close
DescriptionCity of the debtor's address
|
|||
countryCode | string (2) | no | read close |
close
DescriptionISO 3166-1 alpha-2 country code of the debtor's address
|
|||
firstName | string (15) | no | read close |
close
DescriptionDebtor first name
|
|||
houseNumber | string (15) | no | read close |
close
DescriptionHouse number of the debtor's address
|
|||
state | string (35) | no | read close |
close
DescriptionState of debtor address
|
|||
stateCode | string (9) | depends | read close |
close
DescriptionISO 3166-2 alpha-3 state code
Notes:
|
|||
street | string (50) | no | read close |
close
DescriptionStreet of debtor's address
|
|||
surname | string (70) | depends | read close |
close
DescriptionDebtor's last name
|
|||
surnamePrefix | string (15) | no | read close |
close
DescriptionPrefix of the debtor's last name
|
|||
zip | string (10) | no | read close |
close
DescriptionZIP code of the debtor's address
|
|||
isRecurring | boolean | no | read close |
close
Description
|
|||
object | no | read close | |
close
DescriptionObject containing the details of the mandate approval
|
|||
mandateSignatureDate | string (8) | no | read close |
close
DescriptionThe date when the mandate was signed
Format: YYYYMMDD |
|||
mandateSignaturePlace | string (51) | no | read close |
close
DescriptionThe city where the mandate was signed
|
|||
mandateSigned | boolean | no | read close |
close
Description
|
|||
mandateId | string | no | read close |
close
DescriptionUnique mandate identifier
|
|||
preNotification | string | no | read close |
close
DescriptionIndicates whether a pre-notification should be sent to the customer.
|
|||
id | string | yes | read close |
close
DescriptionID of the token
|
|||
originalPaymentId | string | no | read close |
close
DescriptionThe initial Payment ID of the transaction from which the token has been created
|
|||
paymentProductId | integer | yes | read close |
close
DescriptionPayment product identifier
Please see payment products for a full overview of possible values. |
Response example
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
Properties
|
|||
Property | Type | Required | Details |
---|---|---|---|
errorId | string | yes | read close |
close
DescriptionUnique reference, for debugging purposes, of this error response
|
|||
array of object | yes | read close | |
close
DescriptionList of one or more errors
|
|||
object | no | read close | |
category | string | no | read close |
close
DescriptionCategory the error belongs to. The category should give an indication of the type of error you are dealing with.
Possible values:
|
|||
code | string | yes | read close |
close
DescriptionError code
|
|||
httpStatusCode | integer | no | read close |
close
DescriptionHTTP status code for this error that can be used to determine the type of error
|
|||
id | string | no | read close |
close
DescriptionID of the error. This is a short human-readable message that briefly describes the error.
|
|||
message | string | no | read close |
close
DescriptionHuman-readable error message that is not meant to be relayed to customer as it might tip off people who are trying to commit fraud
|
|||
propertyName | string | no | read close |
close
DescriptionReturned 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:
|
|||
requestId | string | no | read close |
close
DescriptionID of the request that can be used for debugging purposes
|
Response example
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.
Properties
|
|||
Property | Type | Required | Details |
---|---|---|---|
errorId | string | yes | read close |
close
DescriptionUnique reference, for debugging purposes, of this error response
|
|||
array of object | yes | read close | |
close
DescriptionList of one or more errors
|
|||
object | no | read close | |
category | string | no | read close |
close
DescriptionCategory the error belongs to. The category should give an indication of the type of error you are dealing with.
Possible values:
|
|||
code | string | yes | read close |
close
DescriptionError code
|
|||
httpStatusCode | integer | no | read close |
close
DescriptionHTTP status code for this error that can be used to determine the type of error
|
|||
id | string | no | read close |
close
DescriptionID of the error. This is a short human-readable message that briefly describes the error.
|
|||
message | string | no | read close |
close
DescriptionHuman-readable error message that is not meant to be relayed to customer as it might tip off people who are trying to commit fraud
|
|||
propertyName | string | no | read close |
close
DescriptionReturned 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:
|
|||
requestId | string | no | read close |
close
DescriptionID of the request that can be used for debugging purposes
|
Response example
This scenario you will probably use the most
-
{ "errorId" : "657b10da-d2f9-4088-a948-bf190ef516b1-00000318", "errors" : [ { "code" : "700540", "message" : "PROFILE_NOT_FOUND" } ] }