paymentHandleRequest
- cardObject
- rapidTransferObject
- fasterPaymentsObject
- achObject
- bacsObject
- sepaObject
card object
Card details to be used for the transaction
This is the card number used for the request.
Possible values: >= 8 characters
and <= 20 characters
4111111111111111
cardExpiry object
This is the card's expiry date.
This is the card expiry month.
Possible values: <= 12
12
This is the card expiry year.
Possible values: <= 9999
2022
This is the 3- or 4-digit security code that appears on the card following the card number.
Possible values: >= 3 characters
and <= 4 characters
, Value must match regular expression ^([0-9]{3,4})$
This is the name of the card holder.
Possible values: <= 50 characters
Suresh's card
This is type of card used for the request.
-
AM – American Express
-
DI – Discover
-
JC – JCB
-
MC – Mastercard
-
MD – Maestro
-
SO – Solo
-
VI – Visa
-
VD – Visa Debit
-
VE – Visa Electron
Possible values: [AM
, DI
, JC
, MC
, MD
, SO
, VI
, VD
, VE
]
These are the last four digits of the card used for the request.
This is the nickname the merchant has for the card holder.
These are the first 6 digits of the card Bank Identification Number (BIN), for example: the first 6 digits of the card number.
Possible values: <= 6 characters
411111
rapidTransfer object
- bacsObject
- sepaObject
bacs object
Details of the bacs account to be used for the transaction.
This is an alias for this bank account.
Possible values: <= 50 characters
Sally's Barclays Account
This is the name of the customer or company that owns the bank account.
Possible values: <= 18 characters
XYZ Company
This is the bank account number.
Possible values: <= 8 characters
98877219
This is the 6-digit sort code that identifies the financial institution and branch of the customer’s bank.
Possible values: <= 6 characters
321654
mandate objectrequired
Contains customer bank's mandate details
This is the id of the mandate that got created.
abcdc28d-486e-4b0a-bbf9-314033863542
This is the identifier of the mandate in the banking system.
ABCDEF0796
This is the status of the mandate request response.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status reason of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
MERCHANT_CANCELLED
These are the last two digits of the account number.
Possible values: <= 2 characters
11
mandates object[]
This is the id of the mandate that got created.
abcdc28d-486e-4b0a-bbf9-314033863542
This is the identifier of the mandate in the banking system.
ABCDEF0796
This is the status of the mandate request response.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status reason of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
MERCHANT_CANCELLED
sepa object
These are the details of the sepa account used for the transaction.
This is an alias for this bank account.
Possible values: <= 50 characters
Sally's Barclays Account
This is the name of the customer or company that owns the bank account.
Possible values: <= 32 characters
XYZ Company
This is the Bank Identifier Code for the consumer's bank account.
Possible values: >= 8 characters
and <= 11 characters
ABNANL2APIP
This is the International Bank Account Number for the costumer's bank account.
Possible values: >= 8 characters
and <= 34 characters
DE89370400440532013000
mandate objectrequired
Contains customer bank's mandate details
This is the id of the mandate that got created.
abcdc28d-486e-4b0a-bbf9-314033863542
This is the identifier of the mandate in the banking system.
ABCDEF0796
This is the status of the mandate request response.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status reason of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
MERCHANT_CANCELLED
These are the last two digits of the iban.
Possible values: <= 2 characters
11
mandates object[]
This is the id of the mandate that got created.
abcdc28d-486e-4b0a-bbf9-314033863542
This is the identifier of the mandate in the banking system.
ABCDEF0796
This is the status of the mandate request response.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status reason of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
MERCHANT_CANCELLED
fasterPayments object
UK bank account details
This is the name of the customer or company that owns the bank account.
Possible values: <= 140 characters
This is the sort code of the Bank.
Possible values: <= 6 characters
This is the costumer's bank account number.
Possible values: >= 8 characters
and <= 10 characters
Last 2 digits of the bank account number.
Possible values: <= 2 characters
ach object
Details of the ach account to be used for the transaction.
This is the name of the customer or company.
Possible values: <= 22 characters
XYZ Company
This is the payment type. Possible values are:
-
WEB - Website originated debit (Personal bank accounts only).
-
TEL - elephone-Initiated Entry (Personal bank accounts only).
-
PPD - Personal account debit (Personal bank accounts only).
-
CCD - Business account debit (Business bank accounts only).
Possible values: [WEB
, TEL
, PPD
, CCD
]
This is the bank account type.
Possible values: [SAVINGS
, CHECKING
, LOAN
]
This is the bank account number.
Possible values: >= 4 characters
and <= 17 characters
988772192
For USD accounts, this is the 9-digit routing number of the bank.
Possible values: >= 9 characters
and <= 9 characters
211589828
This is returned in response. It contains only last 2 digits of bank account.
Possible values: >= 2 characters
and <= 2 characters
92
bacs object
Details of the bacs account to be used for the transaction.
This is an alias for this bank account.
Possible values: <= 50 characters
Sally's Barclays Account
This is the name of the customer or company that owns the bank account.
Possible values: <= 18 characters
XYZ Company
This is the bank account number.
Possible values: <= 8 characters
98877219
This is the 6-digit sort code that identifies the financial institution and branch of the customer’s bank.
Possible values: <= 6 characters
321654
mandate objectrequired
Contains customer bank's mandate details
This is the id of the mandate that got created.
abcdc28d-486e-4b0a-bbf9-314033863542
This is the identifier of the mandate in the banking system.
ABCDEF0796
This is the status of the mandate request response.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status reason of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
MERCHANT_CANCELLED
These are the last two digits of the account number.
Possible values: <= 2 characters
11
mandates object[]
This is the id of the mandate that got created.
abcdc28d-486e-4b0a-bbf9-314033863542
This is the identifier of the mandate in the banking system.
ABCDEF0796
This is the status of the mandate request response.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status reason of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
MERCHANT_CANCELLED
sepa object
These are the details of the sepa account used for the transaction.
This is an alias for this bank account.
Possible values: <= 50 characters
Sally's Barclays Account
This is the name of the customer or company that owns the bank account.
Possible values: <= 32 characters
XYZ Company
This is the Bank Identifier Code for the consumer's bank account.
Possible values: >= 8 characters
and <= 11 characters
ABNANL2APIP
This is the International Bank Account Number for the costumer's bank account.
Possible values: >= 8 characters
and <= 34 characters
DE89370400440532013000
mandate objectrequired
Contains customer bank's mandate details
This is the id of the mandate that got created.
abcdc28d-486e-4b0a-bbf9-314033863542
This is the identifier of the mandate in the banking system.
ABCDEF0796
This is the status of the mandate request response.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status reason of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
MERCHANT_CANCELLED
These are the last two digits of the iban.
Possible values: <= 2 characters
11
mandates object[]
This is the id of the mandate that got created.
abcdc28d-486e-4b0a-bbf9-314033863542
This is the identifier of the mandate in the banking system.
ABCDEF0796
This is the status of the mandate request response.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status reason of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
MERCHANT_CANCELLED
This is the merchant reference number created by the merchant and submitted as part of the request. It must be unique for each request.
Possible values: <= 255 characters
merchantRefNum-101
This specifies the transaction type for which the Payment Handle is created.
-
PAYMENT - Payment Handle is created to continue the Payment.
-
STANDALONE_CREDIT - Payment Handle is created to continue the Standalone Credit.
Possible values: [PAYMENT
, STANDALONE_CREDIT
]
If you are a merchant, then this field is required only if you have more than one account configured for the same payment method and currency. If you are a partner using a shared API key, then this field is mandatory.
Possible values: <= 10 characters
9876543210
This is the payment type associated with the Payment Handle used for this request.
Possible values: [CARD
, RAPID_TRANSFER
, BANK_TRANSFER
, ACH
]
This is the amount of the request, in minor units.
Note: This field is mandatory if transactionType is included.
The amount specified in the Payment Handle request must match the amount specified in the Payments API request the paymentHandleToken is used for.
Possible values: <= 99999999999
500
This is the currency of the merchant account, e.g., USD or CAD. See Currency Codes.
Note: This field is mandatory if transactionType is included. The currencyCode specified in the Payment Handle request must match the currencyCode specified in the Payments API request the paymentHandleToken is used for.
Possible values: <= 3 characters
USD
This is an existing Customer Payment Handle, from which the payment instrument and profile details are retrieved. If this parameter is included you can omit the billingDetails object.
Possible values: <= 36 characters
SCyGZDlUuZ9zxjyd
profile object
This is customer's profile details.
The customer's profile id in the system. If this is present rest all other fields are not required.
The status of customer in the system, returned in the response.
This is the reference number for the customer created by the merchant and submitted as part of the request. It must be unique for each customer.
Note: This value is mandatory when fundingTransaction is used.
Possible values: <= 10 characters
This indicates the customer's locale preference.
Note: Optional for GiroPay, Vippreferred-Direct-Registration. Not required for Paysafe Card Payouts.
Possible values: [en_US
, fr_CA
, en_GB
, en_CA
]
This is the customer’s first name.
Possible values: <= 80 characters
Venkata Suresh
This is the customer’s last name.
Possible values: <= 80 characters
Chagalamarri
This is the customer's email address.
Possible values: <= 255 characters
paysafe@gmail.com
This is the customer's phone number.
Note: Optional for GiroPay. Not required for Paysafe Card Payouts.
Possible values: <= 40 characters
1234567891
dateOfBirth object
This is the recipient's date of birth.
This is the day of birth.
Possible values: <= 31
6
This is the month of birth.
Possible values: <= 12
5
This is the year of birth.
Possible values: >= 1900
1998
Customer's mobile number.
Possible values: <= 40 characters
9846573804
This field indicates the Customer's gender.
M - Male
F - Female
Possible values: [M
, F
]
M
This field indicates the Customer's nationality.
Possible values: <= 30 characters
Indian
identityDocuments object[]
identityDocuments object[]required
This is array of 2 JSON objects.
- 1st object contains SSN
- 2nd object contains Identity document details.
- MOD1
- MOD2
billingDetails object
Customer's billing details.
Note: For single-use Payment Handles, this address information will be ignored if the paymentHandleTokenFrom parameter is included in the Payment Handle creation request and there is already address information associated with that customer.
This is the ID of the billing address, returned in the response.
Possible values: <= 36 characters
This is the status of the address.
This is the nickname the merchant has for the billing address.
Possible values: <= 50 characters
Home
This is the first line of the customer's street address.
Possible values: <= 50 characters
Street
This is the first line of the street address.
Note: Mandatory for VIPPreferred
Possible values: <= 50 characters
street1
This is the second line of the street address, if required (e.g., apartment number).
Possible values: <= 50 characters
street2
This is the city where the address is located.
Possible values: <= 40 characters
Toronto
This is the state/province/region in which the customer lives.
-
For Canada see Province Codes
-
For the United States see State Code
-
Other countries have no restrictions.
Possible values: >= 2 characters
and <= 40 characters
ON
This is the country where the address is located. See Country Codes.
Possible values: >= 2 characters
and <= 2 characters
CA
This is the zip, postal, or post code of the customer's address.
Possible values: <= 10 characters
M5H 2N2
This is the customer's telephone number.
Possible values: <= 40 characters
8765846321
splitpay object
This object should be used only for Splitpay transactions only, an array containing the linked accounts and the amount shared with each. You must include either amount or percent. However, you cannot include both values.
This is the ID of the linked account. This account must already be linked to the merchant account.
123124124
This is the amount to transfer to the linked account in minor currency units. The total amount to all linked accounts cannot exceed the transaction total.
505
This is the percentage of the total transaction amount to transfer to that account. The total percentage to all linked accounts cannot exceed 100%.
5
merchantDescriptor object
This is the merchant descriptor that will be displayed on the customer's card or bank statement.
This is a merchant descriptor that will be displayed on a customer’s card statement.
Possible values: <= 20 characters
OnlineStore
This is the merchant’s phone number, which is appended to the merchant descriptor on a customer’s card statement.
Possible values: <= 13 characters
12345678
returnLinks object
The URL endpoints to redirect the customer to after a redirection to an alternative payment or 3D Secure site. You can customize the return URL based on the transaction status.
This is the link type that allows different endpoints to be targeted depending on the end state of the transaction.
-
on_completed - Paysafe will return to this merchant url post successful payment.
-
on_failed - Paysafe will return to this merchant url post if payment is failed.
-
on_cancelled - Paysafe will return to this merchant url post if payment is cancelled.
-
default - The default return URL that will be used if specific status return URL is not defined.
Possible values: [default
, on_completed
, on_failed
, on_cancelled
]
This is the URI of the resource.
https://US_commerce_site/payment/return/success
This is the HTTP method.
GET
This is the customer's IP address.
Possible values: <= 39 characters
111.111.111.111
transactionIntent object
The transactionIntent property is used to identify the intent of the authorization requests. The value of the transactionIntent shows if the transaction is crypto or quasi-cash related one.
-
It is an optional enum field applicable for every MCC.
-
It is required only if the use cases explained below are applicable for the merchants or the default behavior is not acceptable for them.
-
The merchant needs to add in the request transactionIntent property value as shown in the example below.
Use cases and applicable valid enum transactionIntent options:
|Use case |MCC |Valid transactionIntent value | |--- |--- |--- | |The consumer is acquiring cryptocurrency in a transaction. |6012, 6051 |CRYPTO_ON_RAMP | |The consumer is loading a cryptocurrency wallet or exchange account with fiat. *Applicable only in combination with valid fundingTransaction object. |6012, 6051 |WALLET_CRYPTO_ON_RAMP | |The consumer is acquiring quasi-cash in a transaction. *Quasi cash transactions represent the purchase of foreign currencies or items (including, but not limited to, casino chips, money orders, lottery tickets and travelers cheques) which may be convertible to cash.|4829, 6012, 6051|QUASI_CASH | |For purchases of goods or services that leverage a live conversion of fiat into non - fiat currency. |ANY |BUY_WITH_CRYPTO |
Default transactionIntent definition by Paysafe
-
All authorizations processed by MCC 6051 will be classified as crypto related with transactionIntent "CRYPTO_ON_RAMP" or "WALLET_CRYPTO_ON_RAMP" (when funding a wallet), except their account is not configured by Paysafe for quasi-cash transactions.
-
All authorizations processed by MCC 6051 will be classified as crypto related with transactionIntent "CRYPTO_ON_RAMP" or "WALLET_CRYPTO_ON_RAMP" (when funding a wallet), except their account is not configured by Paysafe for quasi-cash transactions.All authorizations processed by MCC 6051 or 4829 with quasi-cash configuration turned on will be classified as quasi-cash related with transactionIntent "QUASI_CASH" .
Expected errors related to invalid transactioIntent values:
-
If you send transactionIntent type in the authorization request with value not applicable for your MCC, the transaction will be declined with error 3072 - "Your request has been declined because the requested transactionIntent value is not applicable for your merchant category code (MCC)".
-
If you send transactionIntent type WALLET_CRYPTO_ON_RAMP in the authorization request, but you didn't classify the transaction as "funding" one with the respective valid fundingTransaction object, the transaction will be declined with error 3071 - Your request has been declined because of mismatch between the requested transactionIntent and fundingTransaction type.
Note: More about the usage of transactionIntent in standalone credit request can be found here DRAFT - Transaction intent field in standalone credits - Technical documentation for merchant's comms (dev center address to be added).
Possible values: [CRYPTO_ON_RAMP
, WALLET_CRYPTO_ON_RAMP
, QUASI_CASH
, BUY_WITH_CRYPTO
]
This is the single use customer token of the profile on which customer operation (ADD/EDIT/DELETE) needs to be done.
Note: Mandatory, if customerOperation is EDIT or DELETE.
Possible values: <= 36 characters
threeDs object
Denotes the status of threeDs object. If true and is configured in the backend for the respective accountId, it is mandatory to pass this parameters. If false, parameters need not be passed.
This is the unique ID returned in the response.
Possible values: <= 36 characters
This is the UUID used with device fingerprinting.
Possible values: <= 36 characters
This is the merchant reference number created by the merchant and submitted as part of the request. It must be unique for each request.
Possible values: <= 255 characters
fc5b62df1202e491475d
This is an indicator representing whether to call authenticate end point or not.
This is the fully qualified URL of the merchant's commercial or customer care website.
Possible values: <= 2048 characters
https://api.qa.paysafe.com/checkout/v2/demo-store/index.html
This is the type of channel interface used to initiate the transaction.
Possible values: [BROWSER
, APP
, 3RI
]
BROWSER
This indicates whether a challenge is requested for this transaction.
Possible values: [NO_PREFERENCE
, NO_CHALLENGE_REQUESTED
, CHALLENGE_REQUESTED
, CHALLENGE_MANDATED
]
This is the category of the message for a specific use case.
Possible values: [PAYMENT
, NON_PAYMENT
]
PAYMENT
This identifies the type of transaction being authenticated.
Possible values: [GOODS_OR_SERVICE_PURCHASE
, CHECK_ACCEPTANCE
, ACCOUNT_FUNDING
, QUASI_CASH_TRANSACTION
, PREPAID_ACTIVATION
]
This is the type of Authentication request. This data element provides additional information to the ACS to determine the best approach for handling an authentication request.
Possible values: [PAYMENT_TRANSACTION
, RECURRING_TRANSACTION
, INSTALMENT_TRANSACTION
, ADD_CARD
, MAINTAIN_CARD
, EMV_TOKEN_VERIFICATION
]
PAYMENT_TRANSACTION
billingCycle object
Details of the billing cycle information for recurring payments.
Note: This object is required if authenticationPurpose = INSTALMENT_TRANSACTION or RECURRING_TRANSACTION.
This is the date after which no further authorizations will be performed. The ISO 8601 date format is expected, i.e., YYYY-MM-DD.
This is the minimum number of days between authorizations.
orderItemDetails object
For a pre-ordered purchase, this is the date that the merchandise is expected to be available. The ISO 8601 date format is expected, i.e., YYYY-MM-DD.
This indicates whether the cardholder is placing an order for available merchandise or merchandise with a future availability or release date.
Possible values: [MERCHANDISE_AVAILABLE
, FUTURE_AVAILABILITY
]
This indicates whether the cardholder is reordering merchandise.
Possible values: [FIRST_TIME_ORDER
, REORDER
]
This is the shipping method for the transaction.
Possible values: [SHIP_TO_BILLING_ADDRESS
, SHIP_TO_VERIFIED_ADDRESS
, SHIP_TO_DIFFERENT_ADDRESS
, SHIP_TO_STORE
, DIGITAL_GOODS
, TRAVEL_AND_EVENT_TICKETS
, OTHER
]
purchasedGiftCardDetails object
This is the amount of the gift card, in minor units.
Possible values: <= 99999999999
1234
This is the total count of individual prepaid or gift cards or codes purchased.
Possible values: <= 99
2
This is the currency of the gift card, e.g., USD or CAD. See Currency Codes
USD
userAccountDetails object
These are the user account details from the merchant website.
This is the number of Add Card attempts in the last 24 hours.
This is the date that the cardholder’s account with the 3DS Requestor was last changed. The ISO 8601 date format is expected, i.e., YYYY-MM-DD.
This is the length of time between the most recent change to the cardholder’s account information and the API call of the current transaction.
Possible values: [DURING_TRANSACTION
, LESS_THAN_THIRTY_DAYS
, THIRTY_TO_SIXTY_DAYS
, MORE_THAN_SIXTY_DAYS
]
This is the date when the cardholder opened the account with the 3DS Requestor. The ISO 8601 date format is expected, i.e., YYYY-MM-DD.
This is the length of time between the cardholder opening the account with the 3DS Requestor and the API call of the current transaction.
Possible values: [NO_ACCOUNT
, DURING_TRANSACTION
, LESS_THAN_THIRTY_DAYS
, THIRTY_TO_SIXTY_DAYS
, MORE_THAN_SIXTY_DAYS
]
This is the date when the cardholder’s account was reset or the password was changed. The ISO 8601 date format is expected, i.e., YYYY-MM-DD.
This is the length of time between the most recent password change or cardholder account reset and the API call of the current transaction.
Possible values: [NO_CHANGE
, DURING_TRANSACTION
, LESS_THAN_THIRTY_DAYS
, THIRTY_TO_SIXTY_DAYS
, MORE_THAN_SIXTY_DAYS
]
This indicates whether the 3DS Requestor has experienced suspicious activity, including previous fraud, on the cardholder account.
This is the total number of purchases from this cardholder account in the previous six months.
Possible values: <= 9999
This is the number of transactions (successful and abandoned) for this cardholder account with the 3DS Requestor across all payment accounts in the previous 24 hours.
Possible values: <= 999
This is the number of transactions (successful and abandoned) for this cardholder account with the 3DS Requestor across all payment accounts in the previous year.
Possible values: <= 999
shippingDetailsUsage object
This is the shipping usage information.
This indicates whether the cardholder name on the account is identical to the shipping name used for this transaction.
This is the date when the shipping address for this transaction was first used with the 3DS Requestor. The ISO 8601 date format is expected, i.e., YYYY-MM-DD.
Possible values: [CURRENT_TRANSACTION
, LESS_THAN_THIRTY_DAYS
, THIRTY_TO_SIXTY_DAYS
, MORE_THAN_SIXTY_DAYS
]
userLogin object
This is the cardholder login information.
This is the mechanism used by the cardholder to authenticate to the 3DS Requestor.
Possible values: [NO_LOGIN
, INTERNAL_CREDENTIALS
, FEDERATED_ID
, ISSUER_CREDENTIALS
, THIRD_PARY_AUTHENTICATION
, FIDO_AUTHENTICATOR
]
This field is reserved for future iterations of 3D Secure 2.
Possible values: <= 2048 characters
Some up to 2048 bytes undefined data
This is the date and time of the cardholder authentication. The ISO 8601 date format is expected, i.e., YYYY-MM-DD-THH:MM:SSZ.
paymentAccountDetails object
These are the details of the current payment account of the cardholder.
This indicates the length of time that the payment account was enrolled in the cardholder’s account with the 3DS Requestor.
Possible values: [NO_ACCOUNT
, DURING_TRANSACTION
, LESS_THAN_THIRTY_DAYS
, THIRTY_TO_SIXTY_DAYS
, MORE_THAN_SIXTY_DAYS
]
This is the date that the cardholder opened the account with the 3DS Requestor. The ISO 8601 date format is expected, i.e., YYYY-MM-DD.e.
priorThreeDSAuthentication object
This is the previous authentication information used with current merchant, cardholder, and card.
This is the previous authentication ID for the cardholder.
Note: For recurring payments, this is the authenticationId of the first authentication.
Possible values: <= 36 characters
123e4567-e89b-12d3-a456-426655440000
This field is reserved for future iterations of 3D Secure 2.
Some up to 2048 bytes undefined data
This is the mechanism used previously by the cardholder to authenticate to the 3DS Requestor.
Possible values: [FRICTIONLESS_AUTHENTICATION
, ACS_CHALLENGE
, AVS_VERIFIED
, OTHER_ISSUER_METHOD
]
This is the date and time of the cardholder authentication. The ISO 8601 date format is expected, i.e., YYYY-MM-DD-THH:MM:SSZ.
travelDetails object
These are the Amex-specific travel details.
This indicates whether the transaction is an air travel related purchase, e.g., a ticket purchase
false
This is the selected airline carrier.
Possible values: <= 256 characters
This is the date of departure in the time zone of the departure location. The ISO 8601 date format is expected, i.e., YYYY-MM-DD.
This is the airport code of the destination airport.
Possible values: <= 5 characters
This is the airport code of the originating airport.
Possible values: <= 5 characters
This is the first name of the cardholder from the billing details.
Possible values: <= 99 characters
This is the last name of the cardholder from the billing details.
Possible values: <= 99 characters
priorThreeDSAuthentication object
This is the previous authentication information used with current merchant, cardholder, and card.
This is the previous authentication ID for the cardholder.
Note: For recurring payments, this is the authenticationId of the first authentication.
Possible values: <= 36 characters
123e4567-e89b-12d3-a456-426655440000
This field is reserved for future iterations of 3D Secure 2.
Some up to 2048 bytes undefined data
This is the mechanism used previously by the cardholder to authenticate to the 3DS Requestor.
Possible values: [FRICTIONLESS_AUTHENTICATION
, ACS_CHALLENGE
, AVS_VERIFIED
, OTHER_ISSUER_METHOD
]
This is the date and time of the cardholder authentication. The ISO 8601 date format is expected, i.e., YYYY-MM-DD-THH:MM:SSZ.
shippingDetailsUsage object
This is the shipping usage information.
This indicates whether the cardholder name on the account is identical to the shipping name used for this transaction.
This is the date when the shipping address for this transaction was first used with the 3DS Requestor. The ISO 8601 date format is expected, i.e., YYYY-MM-DD.
Possible values: [CURRENT_TRANSACTION
, LESS_THAN_THIRTY_DAYS
, THIRTY_TO_SIXTY_DAYS
, MORE_THAN_SIXTY_DAYS
]
This indicates whether the 3DS Requestor has experienced suspicious activity, including previous fraud, on the cardholder account.
Transaction count for last 6 months.
Possible values: <= 9999
Transaction count for last 24 hours
Possible values: <= 999
Transaction count for last 1 year.
Possible values: <= 999
travelDetails object
These are the Amex-specific travel details.
This indicates whether the transaction is an air travel related purchase, e.g., a ticket purchase
false
This is the selected airline carrier.
Possible values: <= 256 characters
This is the date of departure in the time zone of the departure location. The ISO 8601 date format is expected, i.e., YYYY-MM-DD.
This is the airport code of the destination airport.
Possible values: <= 5 characters
This is the airport code of the originating airport.
Possible values: <= 5 characters
This is the first name of the cardholder from the billing details.
Possible values: <= 99 characters
This is the last name of the cardholder from the billing details.
Possible values: <= 99 characters
userLogin object
This is the cardholder login information.
This is the mechanism used by the cardholder to authenticate to the 3DS Requestor.
Possible values: [NO_LOGIN
, INTERNAL_CREDENTIALS
, FEDERATED_ID
, ISSUER_CREDENTIALS
, THIRD_PARY_AUTHENTICATION
, FIDO_AUTHENTICATOR
]
This field is reserved for future iterations of 3D Secure 2.
Possible values: <= 2048 characters
Some up to 2048 bytes undefined data
This is the date and time of the cardholder authentication. The ISO 8601 date format is expected, i.e., YYYY-MM-DD-THH:MM:SSZ.
browserDetails object
These are the browser details.
Note: This object is not required if the Paysafe SDK is used for device fingerprinting.
This is the exact content of the HTTP accept header as sent to the 3DS Requestor from the cardholder’s browser.
Possible values: <= 2048 characters
This is the bit depth of the color palette for displaying images, in bits per pixel.
Possible values: [1
, 4
, 5
, 15
, 16
, 24
, 32
, 48
]
This is the customer's IP address. Valid Ip address format are IPv4 / IPv6.
This indicates whether the cardholder's browser is able to execute Java.
This indicates whether the cardholder's browser is able to execute JavaScript.
This is the language in the browser.
Possible values: <= 8 characters
This is the total height of the cardholder’s screen in pixels.
Possible values: <= 999999
This is the total width of the cardholder’s screen in pixels.
Possible values: <= 999999
This is the time-zone offset in minutes between UTC and the local time of the cardholder's browser.
Possible values: <= 99999
This is the User-Agent header from the customer's browser. For example:Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.125 Safari/537.36
Possible values: <= 256 characters
This is the Cardholder Authentication Verification Value, indicating that the transaction has been authenticated.
This is the Electronic Commerce Indicator code, which gets returned by the card issuer indicating whether the cardholder was successfully authenticated.
This is the status of the authentication request.
-
COMPLETED – The transaction has been completed.
-
PENDING – The transaction has not been completed yet.
-
FAILED – The authentication request failed.
Possible values: [COMPLETED
, PENDING
, FAILED
]
ThreeDResult possible values are:
- Y - AUTHENTICATION_SUCCESSFUL
- A - AUTHENTICATION_ATTEMPTED
- N - AUTHENTICATION_FAILED
- U - AUTHENTICATION_UNAVAILABLE
- E - AUTHENTICATION_ERROR
- C - CHALLENGE_REQUIRED
- R - REJECTED_TRANSACTION
Possible values: [Y
, A
, N
, U
, E
, C
, R
]
This is the date and time the request was processed. The ISO 8601 date format is expected, i.e., YYYY-MM-DD-THH:MM:SSZ.
This is the directory server transaction ID required for Mastercard.
Note: This exists only for 3D Secure 2.
Possible values: <= 36 characters
This is the 3D Secure protocol version, returned in the response.
Note: If version 2 is not available for the card provided, the value defaults to 1.0.2.
Possible values: >= 5 characters
and <= 8 characters
This is the fully qualified URL to redirect the consumer to complete the payer authentication transaction.
This is the encoded Payment Authentication Request generated by the merchant authentication processing system (MAPS).
This is a payload that, if returned, should be passed to the challenge function of the JavaScript SDK to continue with the challenge.
This is the transaction identifier returned by the card issuer.
Note: This exists only for 3DS 1.0.2.
Possible values: <= 40 characters
Possible values for ThreeDEnrollment are:
- Y - AVAILABLE
- N - NOT_ENROLLED
- U - UNAVAILABLE
Possible values: [Y
, N
, U
]
This is the maxAuthorizationsForInstalmentPayment of the request, in minor units.
Possible values: >= 1
and <= 999
electronicDelivery object
This is the email address to which the merchandise was delivered.
Possible values: <= 240 characters
example@example.com
This indicates whether there is an electronic delivery for the product.
This is the date and time of the purchase. The ISO 8601 date format is expected, i.e., YYYY-MM-DD-THH:MM:SSZ.
Note: This element is required only if messageCategory=NON_PAYMENT and authenticationPurpose=INSTALMENT_TRANSACTION or RECURRING_TRANSACTION.
This is the amount of the request, in minor units.
Possible values: <= 99999999999
deviceDetails object
This is part of Interac e-Transfer withdrawal Payment Handle request. It is used by Interac Online for risk assessment
This is part of Interac e-Transfer withdrawal Payment Handle request. This parameter is mandatory if "browserDetails" json object is not passed as a part of Interac e-Transfer withdrawal Payment Handle request. It is used by Interac Online for risk assessment.
876313
shippingDetails object
This is the method of shipment. Possible values are:
- N – Next Day/Overnight
- T – Two-Day Service
- C – Lowest Cost
- O – Other
- S – Same Day
Vishnu
This is the recipient's street address.
Possible values: <= 50 characters
20735 Stevens Creek Blvd
This is the second line of the street address in the shipping address, if required (e.g., apartment number).
Possible values: <= 255 characters
Montessori
This is the city in which the recipient resides.
Possible values: <= 40 characters
Cupertino
This is the state/province/region in which the recipient lives.
-
For Canada see Province Codes
-
For the United States see State Code
-
Other countries have no restrictions.
Possible values: >= 2 characters
and <= 40 characters
ON
This is the country where the address is located. See Country Codes.
Possible values: >= 2 characters
and <= 2 characters
CA
This is the recipient's postal/zip code.
Possible values: <= 10 characters
95014
wallet object
Embedded wallet details for the operation.
The customer wallet id.
Possible values: <= 50 characters
The fee to be applied on this transaction.
This is the currency for fee settlement into the merchant account, e.g., USD or CAD, returned in the request response. See Currency Codes.
Note: If not specified the fee will be settled using the payment currency.
Possible values: <= 3 characters
USD
Id of the merchant wallet where merchant fee is collected.
Wallet slip id. The wallet slip is a collection of all transactions associated with specic wallet operation (deposit, withdrawal or transfer).
Possible values: <= 50 characters
customerAccount object
The customer wallet account id. If this is not provided, a wallet account id is automatically created in the processing currency. If provided, and processing currency specified is different than the wallet account currency, then an error is returned.
In the case of Standalone Credits, this field is mandatory. If there is insufficient funds in the specified account, then an error is returned for Standalone Credit.
The wallet account id
Possible values: <= 50 characters
It specifies if the instrument (card, sepa, fasterPayments etc) has been previously verfied.
The default value for this is false. If this is specified as false, Paysafe will verify the instrument and rejects the transaction, if the verification fails. This is applicable only for STANDALONE_CREDIT.
false
risk object
Embedded wallet risk related parameters.
risk rating for the customer at time of transaction or wallet creation
{
"merchantRefNum": "merchantRefNum-101",
"transactionType": "PAYMENT",
"accountId": "9876543210",
"paymentType": "CARD",
"amount": 500,
"currencyCode": "USD",
"paymentHandleTokenFrom": "SCyGZDlUuZ9zxjyd",
"profile": {
"id": "string",
"status": "string",
"merchantCustomerId": "string",
"locale": "en_US",
"firstName": "Venkata Suresh",
"lastName": "Chagalamarri",
"email": "paysafe@gmail.com",
"phone": "1234567891",
"dateOfBirth": {
"day": 6,
"month": 5,
"year": 1998
},
"mobile": "9846573804",
"gender": "M",
"nationality": "Indian",
"identityDocuments": [
{
"identityDocuments": [
{
"type": "SOCIAL_SECURITY",
"documentNumber": "SSN123456"
},
{
"type": "PASSPORT",
"documentNumber": "1234567",
"issuingCountry": "USA",
"issuingCountrySubdvision": "SA",
"expiryDate": {
"month": 12,
"year": 2022
}
}
]
}
]
},
"billingDetails": {
"id": "string",
"status": "string",
"nickName": "Home",
"street": "Street",
"street1": "street1",
"street2": "street2",
"city": "Toronto",
"state": "ON",
"country": "CA",
"zip": "M5H 2N2",
"phone": "8765846321"
},
"splitpay": {
"linkedAccount": "123124124",
"amount": 505,
"percent": 5
},
"merchantDescriptor": {
"dynamicDescriptor": "OnlineStore",
"phone": "999-8888"
},
"returnLinks": {
"rel": "default",
"href": "https://US_commerce_site/payment/return/success",
"method": "GET"
},
"customerIp": "111.111.111.111",
"transactionIntent": {
"transactionIntent": "CRYPTO_ON_RAMP"
},
"singleUseCustomerToken": "string",
"threeDs": {
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"deviceFingerprintingId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"merchantRefNum": "fc5b62df1202e491475d",
"process": true,
"merchantUrl": "https://api.qa.paysafe.com/checkout/v2/demo-store/index.html",
"deviceChannel": "BROWSER",
"requestorChallengePreference": "NO_PREFERENCE",
"messageCategory": "PAYMENT",
"transactionIntent": "GOODS_OR_SERVICE_PURCHASE",
"authenticationPurpose": "PAYMENT_TRANSACTION",
"billingCycle": {
"endDate": "2024-07-29",
"frequency": 0
},
"orderItemDetails": {
"preOrderItemAvailabilityDate": "2024-07-29",
"preOrderPurchaseIndicator": "MERCHANDISE_AVAILABLE",
"reorderItemsIndicator": "FIRST_TIME_ORDER",
"shippingIndicator": "SHIP_TO_BILLING_ADDRESS"
},
"purchasedGiftCardDetails": {
"amount": 1234,
"count": 2,
"currency": "USD"
},
"userAccountDetails": {
"addCardAttemptsForLastDay": 0,
"changedDate": "2024-07-29",
"changedRange": "DURING_TRANSACTION",
"createdDate": "2024-07-29",
"createdRange": "NO_ACCOUNT",
"passwordChangedDate": "2024-07-29",
"passwordChangedRange": "NO_CHANGE",
"suspiciousAccountActivity": true,
"totalPurchasesSixMonthCount": 0,
"transactionCountForPreviousDay": 0,
"transactionCountForPreviousYear": 0,
"shippingDetailsUsage": {
"cardHolderNameMatch": true,
"initialUsageDate": "2024-07-29",
"initialUsageRange": "CURRENT_TRANSACTION"
},
"userLogin": {
"authenticationMethod": "NO_LOGIN",
"data": "Some up to 2048 bytes undefined data",
"time": "2024-07-29T15:51:28.071Z"
},
"paymentAccountDetails": {
"createdRange": "NO_ACCOUNT",
"createdDate": "2024-07-29"
},
"priorThreeDSAuthentication": {
"id": "123e4567-e89b-12d3-a456-426655440000",
"data": "Some up to 2048 bytes undefined data",
"method": "FRICTIONLESS_AUTHENTICATION",
"time": "2024-07-29T15:51:28.071Z"
},
"travelDetails": {
"isAirTravel": false,
"airlineCarrier": "string",
"departureDate": "2024-07-29",
"destination": "string",
"origin": "string",
"passengerFirstName": "string",
"passengerLastName": "string"
}
},
"priorThreeDSAuthentication": {
"id": "123e4567-e89b-12d3-a456-426655440000",
"data": "Some up to 2048 bytes undefined data",
"method": "FRICTIONLESS_AUTHENTICATION",
"time": "2024-07-29T15:51:28.071Z"
},
"shippingDetailsUsage": {
"cardHolderNameMatch": true,
"initialUsageDate": "2024-07-29",
"initialUsageRange": "CURRENT_TRANSACTION"
},
"suspiciousAccountActivity": true,
"totalPurchasesSixMonthCount": 0,
"transactionCountForPreviousDay": 0,
"transactionCountForPreviousYear": 0,
"travelDetails": {
"isAirTravel": false,
"airlineCarrier": "string",
"departureDate": "2024-07-29",
"destination": "string",
"origin": "string",
"passengerFirstName": "string",
"passengerLastName": "string"
},
"userLogin": {
"authenticationMethod": "NO_LOGIN",
"data": "Some up to 2048 bytes undefined data",
"time": "2024-07-29T15:51:28.071Z"
},
"browserDetails": {
"acceptHeader": "string",
"colorDepthBits": "1",
"customerIp": "string",
"javaEnabled": true,
"javascriptEnabled": true,
"language": "string",
"screenHeight": 0,
"screenWidth": 0,
"timezoneOffset": 0,
"userAgent": "string"
},
"cavv": "string",
"eci": 0,
"status": "COMPLETED",
"threeDResult": "Y",
"txnTime": "string",
"directoryServerTransactionId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"threeDSecureVersion": "string",
"acsUrl": "string",
"payload": "string",
"sdkChallengePayload": "string",
"xid": "string",
"threeDEnrollment": "Y",
"maxAuthorizationsForInstalmentPayment": 0,
"electronicDelivery": {
"email": "example@example.com",
"isElectronicDelivery": true
},
"initialPurchaseTime": "string",
"amount": 0
},
"deviceDetails": {
"deviceId": "876313"
},
"shippingDetails": {
"shipMethod": "Vishnu",
"street": "20735 Stevens Creek Blvd",
"street2": "Montessori",
"city": "Cupertino",
"state": "ON",
"country": "CA",
"zip": "95014"
},
"wallet": {
"customerId": "string",
"fee": 0,
"feeSettlementCurrency": "USD",
"feeWalletId": "string",
"slipId": "string",
" customerAccount": {
"id": "string"
},
"risk": {
"customerRiskRating": 0,
"isScaPerformed": true,
"isCustomerIPTrusted": true,
"isBeneficiaryTrusted": true
}
},
"card": {
"cardNum": "4111111111111111",
"cardExpiry": {
"month": 12,
"year": 2022
},
"cvv": "string",
"holderName": "Suresh's card",
"cardType": "AM",
"lastDigits": "string",
"nickName": "string",
"cardBin": "411111"
}
}