Create a Payment Handle
POST/v1/paymenthandles
Paysafe Embedded Wallet leverages PaymentHandle to initiate deposit and withdrawal operations.
- Deposits - correspond to paymentType=PAYMENT
- Withdrawals - correspond to paymentType=STANDALONE_CREDIT
- For all Paysafe Wallet operations the additional wallet property is required to be present.
A Payment Handle represents tokenized information about the payment method that you set up for your customer. Once the Payment Handle is created, you can then include the paymentHandleToken returned in the Payment Handle request response in a new payment request.
Note: A Payment Handle can be used in a Payment request only if it has the status of PAYABLE.
- A Payment Handle for a standard credit card deposit
- A Payment Handle for a credit card deposit that is registered for 3D Secure - the response for this request will contain a redirect to present to the customer so they can validate their 3D Secure credentials
- A Payment Handle for a credit card withdraw (Standalone Credit)
- A Payment Handle for a RapidTransfer deposit
Note: The status of Payment Handles will remain INITIATED for the following cases:
- When the customer is redirected to a redirect_payment URL until the customer verifies the payment instrument.
- When the requested amount is more than the maximum amount configured in the Business Portal.
- When Alternate Payment Methods like RapidTransfer, Paysafecash are selected by the customer.
Request
Header Parameters
Possible values: [EXTERNAL
, INTERNAL
]
Default value: EXTERNAL
Possible values: [application/json
]
- application/json
Body
- cardObject
- rapidTransferObject
- fasterPaymentsObject
- achObject
- bacsObject
- sepaObject
-
AM – American Express
-
DI – Discover
-
JC – JCB
-
MC – Mastercard
-
MD – Maestro
-
SO – Solo
-
VI – Visa
-
VD – Visa Debit
-
VE – Visa Electron
- bacsObject
- sepaObject
Array [
]
Array [
]
Array [
]
Array [
]
-
PAYMENT - Payment Handle is created to continue the Payment.
-
STANDALONE_CREDIT - Payment Handle is created to continue the Standalone Credit.
Array [
-
1st object contains SSN
-
2nd object contains Identity document details.
Array [
- MOD1
- MOD2
]
]
-
For Canada see Province Codes
-
For the United States see State Code
-
Other countries have no restrictions.
-
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.
-
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.
-
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" .
-
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.
-
COMPLETED – The transaction has been completed.
-
PENDING – The transaction has not been completed yet.
-
FAILED – The authentication request failed.
- Y - AUTHENTICATION_SUCCESSFUL
- A - AUTHENTICATION_ATTEMPTED
- N - AUTHENTICATION_FAILED
- U - AUTHENTICATION_UNAVAILABLE
- E - AUTHENTICATION_ERROR
- C - CHALLENGE_REQUIRED
- R - REJECTED_TRANSACTION
- Y - AVAILABLE
- N - NOT_ENROLLED
- U - UNAVAILABLE
- N – Next Day/Overnight
- T – Two-Day Service
- C – Lowest Cost
- O – Other
- S – Same Day
-
For Canada see Province Codes
-
For the United States see State Code
-
Other countries have no restrictions.
oneOf
card
object
Card details to be used for the transaction
Possible values: >= 8 characters
and <= 20 characters
This is the card number used for the request.
cardExpiry
object
This is the card's expiry date.
Possible values: <= 12
This is the card expiry month.
Possible values: <= 9999
This is the card expiry year.
Possible values: >= 3 characters
and <= 4 characters
, Value must match regular expression ^([0-9]{3,4})$
This is the 3- or 4-digit security code that appears on the card following the card number.
Possible values: [AM
, DI
, JC
, MC
, MD
, SO
, VI
, VD
, VE
]
This is type of card used for the request.
This is the nickname the merchant has for the card holder.
rapidTransfer
object
oneOf
bacs
object
Details of the bacs account to be used for the transaction.
Possible values: <= 50 characters
This is an alias for this bank account.
Possible values: <= 18 characters
This is the name of the customer or company that owns the bank account.
Possible values: <= 8 characters
This is the bank account number.
Possible values: <= 6 characters
This is the 6-digit sort code that identifies the financial institution and branch of the customer’s bank.
mandate
object
required
Contains customer bank's mandate details
This is the identifier of the mandate in the banking system.
mandates
object[]
This is the identifier of the mandate in the banking system.
sepa
object
These are the details of the sepa account used for the transaction.
Possible values: <= 50 characters
This is an alias for this bank account.
Possible values: <= 32 characters
This is the name of the customer or company that owns the bank account.
Possible values: >= 8 characters
and <= 11 characters
This is the Bank Identifier Code for the consumer's bank account.
Possible values: >= 8 characters
and <= 34 characters
This is the International Bank Account Number for the costumer's bank account.
mandate
object
required
Contains customer bank's mandate details
This is the identifier of the mandate in the banking system.
mandates
object[]
This is the identifier of the mandate in the banking system.
fasterPayments
object
UK bank account details
Possible values: <= 140 characters
This is the name of the customer or company that owns the bank account.
Possible values: <= 6 characters
This is the sort code of the Bank.
Possible values: >= 8 characters
and <= 10 characters
This is the costumer's bank account number.
ach
object
Details of the ach account to be used for the transaction.
Possible values: <= 22 characters
This is the name of the customer or company.
Possible values: >= 9 characters
and <= 9 characters
For USD accounts, this is the 9-digit routing number of the bank.
bacs
object
Details of the bacs account to be used for the transaction.
Possible values: <= 50 characters
This is an alias for this bank account.
Possible values: <= 18 characters
This is the name of the customer or company that owns the bank account.
Possible values: <= 8 characters
This is the bank account number.
Possible values: <= 6 characters
This is the 6-digit sort code that identifies the financial institution and branch of the customer’s bank.
mandate
object
required
Contains customer bank's mandate details
This is the identifier of the mandate in the banking system.
mandates
object[]
This is the identifier of the mandate in the banking system.
sepa
object
These are the details of the sepa account used for the transaction.
Possible values: <= 50 characters
This is an alias for this bank account.
Possible values: <= 32 characters
This is the name of the customer or company that owns the bank account.
Possible values: >= 8 characters
and <= 11 characters
This is the Bank Identifier Code for the consumer's bank account.
Possible values: >= 8 characters
and <= 34 characters
This is the International Bank Account Number for the costumer's bank account.
mandate
object
required
Contains customer bank's mandate details
This is the identifier of the mandate in the banking system.
mandates
object[]
This is the identifier of the mandate in the banking system.
Possible values: <= 255 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: [PAYMENT
, STANDALONE_CREDIT
]
This specifies the transaction type for which the Payment Handle is created.
Possible values: <= 10 characters
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: [CARD
, RAPID_TRANSFER
, BANK_TRANSFER
, ACH
]
This is the payment type associated with the Payment Handle used for this request.
Possible values: <= 99999999999
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: <= 3 characters
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: <= 36 characters
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.
profile
object
This is customer's profile details.
Possible values: <= 10 characters
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: [en_US
, fr_CA
, en_GB
, en_CA
]
This indicates the customer's locale preference.
Note: Optional for GiroPay, Vippreferred-Direct-Registration. Not required for Paysafe Card Payouts.
Possible values: <= 80 characters
This is the customer’s first name.
Possible values: <= 80 characters
This is the customer’s last name.
Possible values: <= 255 characters
This is the customer's email address.
Possible values: <= 40 characters
This is the customer's phone number.
Note: Optional for GiroPay. Not required for Paysafe Card Payouts.
dateOfBirth
object
This is the recipient's date of birth.
Possible values: <= 31
This is the day of birth.
Possible values: <= 12
This is the month of birth.
Possible values: >= 1900
This is the year of birth.
Possible values: <= 40 characters
Customer's mobile number.
Possible values: [M
, F
]
This field indicates the Customer's gender.
M - Male
F - Female
Possible values: <= 30 characters
This field indicates the Customer's nationality.
identityDocuments
object[]
identityDocuments
object[]
required
This is array of 2 JSON objects.
anyOf
Possible values: [SOCIAL_SECURITY
]
Default value: SOCIAL_SECURITY
Value will always be "SOCIAL_SECURITY" This is part of 1st JSON object.
Possible values: <= 9 characters
The customer’s social security number.
Possible values: [PASSPORT
, IDENTITY_CARD
, DRIVING_LICENSE
, SOCIAL_SECURITY
, TAX_IDENTIFICATION
, NATIONAL_IDENTITY
, STATE_ID
, MILITARY_ID
, WORK_PERMIT
, RESIDENCE_PERMIT
, REGISTRATION_ID
, ACRA
, LICENSE_NUMBER
, REGISTRATION_NUMBER
, BUSINESS_TAX_IDENTIFICATION
]
Identity documnent can be one of the allowed values:
Possible values: >= 5 characters
and <= 31 characters
The number associated with ID.
Value will always be "US".
Possible values: <= 2 characters
Two letter state code. See State Codes
expiryDate
object
required
The expiration date associated with ID.
Expiry year.
Expiry month.
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.
Possible values: <= 50 characters
This is the nickname the merchant has for the billing address.
Possible values: <= 50 characters
This is the first line of the customer's street address.
Possible values: <= 50 characters
This is the first line of the street address.
Note: Mandatory for VIPPreferred
Possible values: <= 50 characters
This is the second line of the street address, if required (e.g., apartment number).
Possible values: <= 40 characters
This is the city where the address is located.
Possible values: >= 2 characters
and <= 40 characters
This is the state/province/region in which the customer lives.
Possible values: >= 2 characters
and <= 2 characters
This is the country where the address is located. See Country Codes.
Possible values: <= 10 characters
This is the zip, postal, or post code of the customer's address.
Possible values: <= 40 characters
This is the customer's telephone number.
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.
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.
This is the percentage of the total transaction amount to transfer to that account. The total percentage to all linked accounts cannot exceed 100%.
merchantDescriptor
object
This is the merchant descriptor that will be displayed on the customer's card or bank statement.
Possible values: <= 20 characters
This is a merchant descriptor that will be displayed on a customer’s card statement.
Possible values: <= 13 characters
This is the merchant’s phone number, which is appended to the merchant descriptor on a customer’s card statement.
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.
Possible values: [default
, on_completed
, on_failed
, on_cancelled
]
This is the link type that allows different endpoints to be targeted depending on the end state of the transaction.
This is the URI of the resource.
This is the HTTP method.
Possible values: <= 39 characters
This is the customer's IP address.
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.
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
Expected errors related to invalid transactioIntent values:
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
]
Possible values: <= 36 characters
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.
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.
Possible values: <= 36 characters
This is the UUID used with device fingerprinting.
Possible values: <= 255 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.
This is an indicator representing whether to call authenticate end point or not.
Possible values: <= 2048 characters
This is the fully qualified URL of the merchant's commercial or customer care website.
Possible values: [BROWSER
, APP
, 3RI
]
This is the type of channel interface used to initiate the transaction.
Possible values: [NO_PREFERENCE
, NO_CHALLENGE_REQUESTED
, CHALLENGE_REQUESTED
, CHALLENGE_MANDATED
]
This indicates whether a challenge is requested for this transaction.
Possible values: [PAYMENT
, NON_PAYMENT
]
This is the category of the message for a specific use case.
Possible values: [GOODS_OR_SERVICE_PURCHASE
, CHECK_ACCEPTANCE
, ACCOUNT_FUNDING
, QUASI_CASH_TRANSACTION
, PREPAID_ACTIVATION
]
This identifies the type of transaction being authenticated.
Possible values: [PAYMENT_TRANSACTION
, RECURRING_TRANSACTION
, INSTALMENT_TRANSACTION
, ADD_CARD
, MAINTAIN_CARD
, EMV_TOKEN_VERIFICATION
]
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.
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.
Possible values: [MERCHANDISE_AVAILABLE
, FUTURE_AVAILABILITY
]
This indicates whether the cardholder is placing an order for available merchandise or merchandise with a future availability or release date.
Possible values: [FIRST_TIME_ORDER
, REORDER
]
This indicates whether the cardholder is reordering merchandise.
Possible values: [SHIP_TO_BILLING_ADDRESS
, SHIP_TO_VERIFIED_ADDRESS
, SHIP_TO_DIFFERENT_ADDRESS
, SHIP_TO_STORE
, DIGITAL_GOODS
, TRAVEL_AND_EVENT_TICKETS
, OTHER
]
This is the shipping method for the transaction.
purchasedGiftCardDetails
object
Possible values: <= 99999999999
This is the amount of the gift card, in minor units.
Possible values: <= 99
This is the total count of individual prepaid or gift cards or codes purchased.
This is the currency of the gift card, e.g., USD or CAD. See Currency Codes
userAccountDetails
object
These are the user account details from the merchant website.
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.
Possible values: [DURING_TRANSACTION
, LESS_THAN_THIRTY_DAYS
, THIRTY_TO_SIXTY_DAYS
, MORE_THAN_SIXTY_DAYS
]
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.
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.
Possible values: [NO_ACCOUNT
, DURING_TRANSACTION
, LESS_THAN_THIRTY_DAYS
, THIRTY_TO_SIXTY_DAYS
, MORE_THAN_SIXTY_DAYS
]
This is the length of time between the cardholder opening the account with the 3DS Requestor and the API call of the current transaction.
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.
Possible values: [NO_CHANGE
, DURING_TRANSACTION
, LESS_THAN_THIRTY_DAYS
, THIRTY_TO_SIXTY_DAYS
, MORE_THAN_SIXTY_DAYS
]
This is the length of time between the most recent password change or cardholder account reset and the API call of the current transaction.
This indicates whether the 3DS Requestor has experienced suspicious activity, including previous fraud, on the cardholder account.
Possible values: <= 9999
This is the total number of purchases from this cardholder account in the previous six months.
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 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.
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.
Possible values: [NO_LOGIN
, INTERNAL_CREDENTIALS
, FEDERATED_ID
, ISSUER_CREDENTIALS
, THIRD_PARY_AUTHENTICATION
, FIDO_AUTHENTICATOR
]
This is the mechanism used by the cardholder to authenticate to the 3DS Requestor.
Possible values: <= 2048 characters
This field is reserved for future iterations of 3D Secure 2.
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.
Possible values: [NO_ACCOUNT
, DURING_TRANSACTION
, LESS_THAN_THIRTY_DAYS
, THIRTY_TO_SIXTY_DAYS
, MORE_THAN_SIXTY_DAYS
]
This indicates the length of time that the payment account was enrolled in the cardholder’s account with the 3DS Requestor.
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.
Possible values: <= 36 characters
This is the previous authentication ID for the cardholder.
Note: For recurring payments, this is the authenticationId of the first authentication.
This field is reserved for future iterations of 3D Secure 2.
Possible values: [FRICTIONLESS_AUTHENTICATION
, ACS_CHALLENGE
, AVS_VERIFIED
, OTHER_ISSUER_METHOD
]
This is the mechanism used previously by the cardholder to authenticate to the 3DS Requestor.
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
Possible values: <= 256 characters
This is the selected airline carrier.
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.
Possible values: <= 5 characters
This is the airport code of the destination airport.
Possible values: <= 5 characters
This is the airport code of the originating airport.
Possible values: <= 99 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.
priorThreeDSAuthentication
object
This is the previous authentication information used with current merchant, cardholder, and card.
Possible values: <= 36 characters
This is the previous authentication ID for the cardholder.
Note: For recurring payments, this is the authenticationId of the first authentication.
This field is reserved for future iterations of 3D Secure 2.
Possible values: [FRICTIONLESS_AUTHENTICATION
, ACS_CHALLENGE
, AVS_VERIFIED
, OTHER_ISSUER_METHOD
]
This is the mechanism used previously by the cardholder to authenticate to the 3DS Requestor.
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.
Possible values: <= 9999
Transaction count for last 6 months.
Possible values: <= 999
Transaction count for last 24 hours
Possible values: <= 999
Transaction count for last 1 year.
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
Possible values: <= 256 characters
This is the selected airline carrier.
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.
Possible values: <= 5 characters
This is the airport code of the destination airport.
Possible values: <= 5 characters
This is the airport code of the originating airport.
Possible values: <= 99 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.
userLogin
object
This is the cardholder login information.
Possible values: [NO_LOGIN
, INTERNAL_CREDENTIALS
, FEDERATED_ID
, ISSUER_CREDENTIALS
, THIRD_PARY_AUTHENTICATION
, FIDO_AUTHENTICATOR
]
This is the mechanism used by the cardholder to authenticate to the 3DS Requestor.
Possible values: <= 2048 characters
This field is reserved for future iterations of 3D Secure 2.
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.
Possible values: <= 2048 characters
This is the exact content of the HTTP accept header as sent to the 3DS Requestor from the cardholder’s browser.
Possible values: [1
, 4
, 5
, 15
, 16
, 24
, 32
, 48
]
This is the bit depth of the color palette for displaying images, in bits per pixel.
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.
Possible values: <= 8 characters
This is the language in the browser.
Possible values: <= 999999
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: <= 99999
This is the time-zone offset in minutes between UTC and the local time of the cardholder's browser.
Possible values: <= 256 characters
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
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.
Possible values: [COMPLETED
, PENDING
, FAILED
]
This is the status of the authentication request.
Possible values: [Y
, A
, N
, U
, E
, C
, R
]
ThreeDResult possible values are:
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.
Possible values: <= 36 characters
This is the directory server transaction ID required for Mastercard.
Note: This exists only for 3D Secure 2.
Possible values: >= 5 characters
and <= 8 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.
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.
Possible values: <= 40 characters
This is the transaction identifier returned by the card issuer.
Note: This exists only for 3DS 1.0.2.
Possible values: [Y
, N
, U
]
Possible values for ThreeDEnrollment are:
Possible values: >= 1
and <= 999
This is the maxAuthorizationsForInstalmentPayment of the request, in minor units.
electronicDelivery
object
Possible values: <= 240 characters
This is the email address to which the merchandise was delivered.
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.
Possible values: <= 99999999999
This is the amount of the request, in minor units.
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.
shippingDetails
object
This is the method of shipment. Possible values are:
Possible values: <= 50 characters
This is the recipient's street address.
Possible values: <= 255 characters
This is the second line of the street address in the shipping address, if required (e.g., apartment number).
Possible values: <= 40 characters
This is the city in which the recipient resides.
Possible values: >= 2 characters
and <= 40 characters
This is the state/province/region in which the recipient lives.
Possible values: >= 2 characters
and <= 2 characters
This is the country where the address is located. See Country Codes.
Possible values: <= 10 characters
This is the recipient's postal/zip code.
wallet
object
Embedded wallet details for the operation.
Possible values: <= 50 characters
The customer wallet id.
The fee to be applied on this transaction.
Possible values: <= 3 characters
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.
Id of the merchant wallet where merchant fee is collected.
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.
Possible values: <= 50 characters
The wallet account id
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.
deviceInfo
object
Device profiling information required for embedded wallet risk evaluation.
Possible values: [WEB_APP
, MOBILE_APP
, API
]
Application type.
Possible values: <= 100 characters
The Threat Metrix Session Id.
Possible values: <= 25600 characters
The URL-encoded response as received from Threat Metrix
risk
object
Embedded wallet risk related parameters.
risk rating for the customer at time of transaction or wallet creation
Responses
- 201
Created
Response Headers
Content-Type
string
- application/json
- Schema
- Example (from schema)
- Deposit response for Card without 3D_Secure
- Deposit response for Card with 3D Secure authentication
- Deposit response for Rapid Transfer using IBAN
- Deposit response for Rapid Transfer using UK bank account
- Withdrawal response using card
- Withdrawal response to Bank using IBAN
- Withdrawal response to Bank using UK bank account
Schema
- cardObject
- rapidTransferObject
- fasterPaymentsObject
- achObject
- bacsObject
- sepaObject
-
AM – American Express
-
DI – Discover
-
JC – JCB
-
MC – Mastercard
-
MD – Maestro
-
SO – Solo
-
VI – Visa
-
VD – Visa Debit
-
VE – Visa Electron
- bacsObject
- sepaObject
Array [
]
Array [
]
-
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).
Array [
]
Array [
]
-
INITIATED – The transaction was initiated with the downstream provider.
-
PAYABLE – The merchant can use the Payment Handle for a Payment request.
-
PROCESSING – The Payment Handle was authorized by customer, awaiting PSP response.
-
FAILED – The transaction failed due to either an error or being declined.
-
EXPIRED – The Payment Handle expired because the merchant did not proceed with the Payment request.
-
COMPLETED – The Payment request was initiated successfully using the Payment Handle.
- true - Production
- false - Non-Production
-
SINGLE_USE – The Payment Handle can be used for one transaction only and expiresif not used.
-
MULTI_USE – The Payment Handle can be used multiple times.
-
NONE – No action is required, for example, for a standard credit card payment.
-
REDIRECT – The user must be redirected in order to complete a Payment, for example, when an alternate payment method like Paysafecard is used.
-
SYNCHRONOUS – The status of the Payment request will be returned synchronously to the merchant, e.g., a credit card request.
-
ASYNCHRONOUS – The Payment request is not completed immediately and the merchant must rely on webhooks to retrieve the status of the Payment request.'
Array [
-
1st object contains SSN
-
2nd object contains Identity document details.
Array [
- MOD1
- MOD2
]
]
-
redirect_registration - Merchant needs to redirect consumer to this url to complete registration.
-
redirect_payment - Merchant needs to redirect consumer to this url to complete authentication.
-
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.
-
PAYMENT - Payment Handle is created to continue the Payment.
-
STANDALONE_CREDIT - Payment Handle is created to continue the Standalone Credit.
Array [
-
1st object contains SSN
-
2nd object contains Identity document details.
Array [
- MOD1
- MOD2
]
]
-
For Canada see Province Codes
-
For the United States see State Code
-
Other countries have no restrictions.
-
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.
-
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.
-
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" .
-
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.
-
COMPLETED – The transaction has been completed.
-
PENDING – The transaction has not been completed yet.
-
FAILED – The authentication request failed.
- Y - AUTHENTICATION_SUCCESSFUL
- A - AUTHENTICATION_ATTEMPTED
- N - AUTHENTICATION_FAILED
- U - AUTHENTICATION_UNAVAILABLE
- E - AUTHENTICATION_ERROR
- C - CHALLENGE_REQUIRED
- R - REJECTED_TRANSACTION
- Y - AVAILABLE
- N - NOT_ENROLLED
- U - UNAVAILABLE
- N – Next Day/Overnight
- T – Two-Day Service
- C – Lowest Cost
- O – Other
- S – Same Day
-
For Canada see Province Codes
-
For the United States see State Code
-
Other countries have no restrictions.
oneOf
card
object
Card details to be used for the transaction
Possible values: >= 8 characters
and <= 20 characters
This is the card number used for the request.
cardExpiry
object
This is the card's expiry date.
Possible values: <= 12
This is the card expiry month.
Possible values: <= 9999
This is the card expiry year.
Possible values: >= 3 characters
and <= 4 characters
, Value must match regular expression ^([0-9]{3,4})$
This is the 3- or 4-digit security code that appears on the card following the card number.
Possible values: <= 50 characters
This is the name of the card holder.
Possible values: [AM
, DI
, JC
, MC
, MD
, SO
, VI
, VD
, VE
]
This is type of card used for the request.
These are the last four digits of the card used for the request.
This is the nickname the merchant has for the card holder.
Possible values: <= 6 characters
These are the first 6 digits of the card Bank Identification Number (BIN), for example: the first 6 digits of the card number.
rapidTransfer
object
oneOf
bacs
object
Details of the bacs account to be used for the transaction.
Possible values: <= 50 characters
This is an alias for this bank account.
Possible values: <= 18 characters
This is the name of the customer or company that owns the bank account.
Possible values: <= 8 characters
This is the bank account number.
Possible values: <= 6 characters
This is the 6-digit sort code that identifies the financial institution and branch of the customer’s bank.
mandate
object
required
Contains customer bank's mandate details
This is the id of the mandate that got created.
This is the identifier of the mandate in the banking system.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
This is the status reason of the mandate request response.
Possible values: <= 2 characters
These are the last two digits of the account number.
mandates
object[]
This is the id of the mandate that got created.
This is the identifier of the mandate in the banking system.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
This is the status reason of the mandate request response.
sepa
object
These are the details of the sepa account used for the transaction.
Possible values: <= 50 characters
This is an alias for this bank account.
Possible values: <= 32 characters
This is the name of the customer or company that owns the bank account.
Possible values: >= 8 characters
and <= 11 characters
This is the Bank Identifier Code for the consumer's bank account.
Possible values: >= 8 characters
and <= 34 characters
This is the International Bank Account Number for the costumer's bank account.
mandate
object
required
Contains customer bank's mandate details
This is the id of the mandate that got created.
This is the identifier of the mandate in the banking system.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
This is the status reason of the mandate request response.
Possible values: <= 2 characters
These are the last two digits of the iban.
mandates
object[]
This is the id of the mandate that got created.
This is the identifier of the mandate in the banking system.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
This is the status reason of the mandate request response.
fasterPayments
object
UK bank account details
Possible values: <= 140 characters
This is the name of the customer or company that owns the bank account.
Possible values: <= 6 characters
This is the sort code of the Bank.
Possible values: >= 8 characters
and <= 10 characters
This is the costumer's bank account number.
Possible values: <= 2 characters
Last 2 digits of the bank account number.
ach
object
Details of the ach account to be used for the transaction.
Possible values: <= 22 characters
This is the name of the customer or company.
Possible values: [WEB
, TEL
, PPD
, CCD
]
This is the payment type. Possible values are:
Possible values: [SAVINGS
, CHECKING
, LOAN
]
This is the bank account type.
Possible values: >= 4 characters
and <= 17 characters
This is the bank account number.
Possible values: >= 9 characters
and <= 9 characters
For USD accounts, this is the 9-digit routing number of the bank.
Possible values: >= 2 characters
and <= 2 characters
This is returned in response. It contains only last 2 digits of bank account.
bacs
object
Details of the bacs account to be used for the transaction.
Possible values: <= 50 characters
This is an alias for this bank account.
Possible values: <= 18 characters
This is the name of the customer or company that owns the bank account.
Possible values: <= 8 characters
This is the bank account number.
Possible values: <= 6 characters
This is the 6-digit sort code that identifies the financial institution and branch of the customer’s bank.
mandate
object
required
Contains customer bank's mandate details
This is the id of the mandate that got created.
This is the identifier of the mandate in the banking system.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
This is the status reason of the mandate request response.
Possible values: <= 2 characters
These are the last two digits of the account number.
mandates
object[]
This is the id of the mandate that got created.
This is the identifier of the mandate in the banking system.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
This is the status reason of the mandate request response.
sepa
object
These are the details of the sepa account used for the transaction.
Possible values: <= 50 characters
This is an alias for this bank account.
Possible values: <= 32 characters
This is the name of the customer or company that owns the bank account.
Possible values: >= 8 characters
and <= 11 characters
This is the Bank Identifier Code for the consumer's bank account.
Possible values: >= 8 characters
and <= 34 characters
This is the International Bank Account Number for the costumer's bank account.
mandate
object
required
Contains customer bank's mandate details
This is the id of the mandate that got created.
This is the identifier of the mandate in the banking system.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
This is the status reason of the mandate request response.
Possible values: <= 2 characters
These are the last two digits of the iban.
mandates
object[]
This is the id of the mandate that got created.
This is the identifier of the mandate in the banking system.
Possible values: [PENDING
, ACTIVE
, CANCELLED
, INACTIVE
]
This is the status of the mandate request response.
Possible values: [MERCHANT_CANCELLED
, BANK_CANCELLED
, DECLINED
, REJECTED
, DISPUTED
, UNAUTHORIZED
, TRANSFERRED
]
This is the status reason of the mandate request response.
Possible values: <= 36 characters
This is the ID returned in the response. This ID can be used for future associated requests, for example, to look up the Payment Handle.
Possible values: <= 36 characters
This is the payment token generated by Paysafe that will be used by merchants for Payment API requests.
This is the date and time the transaction was processed.
Possible values: [INITIATED
, PAYABLE
, PROCESSING
, FAILED
, EXPIRED
, COMPLETED
]
This is the status of the payment handle. Possible values are:
This flag indicates the environment.
Possible values: [SINGLE_USE
, MULTI_USE
]
This specifies how the Payment Handle will be used for Payments. Possible values are:
Possible values: [NONE
, REDIRECT
]
This specifies the next step of the user journey once they proceed to the Payment. Possible values are:
Possible values: [SYNCHRONOUS
, ASYNCHRONOUS
]
This specifies the action of the merchant server in order to complete the Payment. Possible values are:
This is the period of time, in seconds, the paymentHandleToken is valid before expiration.
gatewayResponse
object
This is the read-only raw response returned by an acquirer. It is returned only if your account is configured accordingly.
This is the response id returned by the processor
This is the processor code of the transaction at Paysafe side
This is acquirer identification code, such as DJN, CRX, etc.
This is the raw response returned by the acquirer.
This is the raw AVS code returned by the acquirer.
Possible values: [MATCH
, MATCH_ADDRESS_ONLY
, MATCH_ZIP_ONLY
, NO_MATCH
, NOT_PROCESSED
, UNKNOWN
]
This is the AVS response returned from the card issuer.
This is the balance remaining on a gift card, if a gift card was used for the original transaction.
This is the acquirer MID that was sent to the clearing house.
This is the merchant's terminal ID.
This is the batch number.
This is the merchant's sequence number.
This is the date of the bank deposit associated with the transaction.
This is the type of financing offered.
This is the plan number for this financing transaction.
This is the grace period, in months, associated with deferred payment transactions.
This is the number of payments, in months, for equal payment transactions.
This is the response ID assigned by Credorax.
This is the request ID assigned by Paysafe.
This is a description of the response.
This is the authorization code.
This is the transaction date and time.
This is the Bank net transaction ID/Merch Tran Ref
This is the raw response reason code returned by Credorax.
Possible values: [MATCH
, NO_MATCH
, NOT_PROCESSED
, UNKNOWN
]
This is the response to the cvv submitted with the transaction request.
This is the raw cvv2 result code.
This is the status of the transaction at the processor side.
Unique NETELLER reference for the order.
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.
Possible values: <= 10 characters
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: [en_US
, fr_CA
, en_GB
, en_CA
]
This indicates the customer's locale preference.
Note: Optional for GiroPay, Vippreferred-Direct-Registration. Not required for Paysafe Card Payouts.
Possible values: <= 80 characters
This is the customer’s first name.
Possible values: <= 80 characters
This is the customer’s last name.
Possible values: <= 255 characters
This is the customer's email address.
Possible values: <= 40 characters
This is the customer's phone number.
Note: Optional for GiroPay. Not required for Paysafe Card Payouts.
dateOfBirth
object
This is the recipient's date of birth.
Possible values: <= 31
This is the day of birth.
Possible values: <= 12
This is the month of birth.
Possible values: >= 1900
This is the year of birth.
Possible values: <= 40 characters
Customer's mobile number.
Possible values: [M
, F
]
This field indicates the Customer's gender.
M - Male
F - Female
Possible values: <= 30 characters
This field indicates the Customer's nationality.
identityDocuments
object[]
identityDocuments
object[]
required
This is array of 2 JSON objects.
anyOf
Possible values: [SOCIAL_SECURITY
]
Default value: SOCIAL_SECURITY
Value will always be "SOCIAL_SECURITY" This is part of 1st JSON object.
Possible values: <= 9 characters
The customer’s social security number.
Possible values: [PASSPORT
, IDENTITY_CARD
, DRIVING_LICENSE
, SOCIAL_SECURITY
, TAX_IDENTIFICATION
, NATIONAL_IDENTITY
, STATE_ID
, MILITARY_ID
, WORK_PERMIT
, RESIDENCE_PERMIT
, REGISTRATION_ID
, ACRA
, LICENSE_NUMBER
, REGISTRATION_NUMBER
, BUSINESS_TAX_IDENTIFICATION
]
Identity documnent can be one of the allowed values:
Possible values: >= 5 characters
and <= 31 characters
The number associated with ID.
Value will always be "US".
Possible values: <= 2 characters
Two letter state code. See State Codes
expiryDate
object
required
The expiration date associated with ID.
Expiry year.
Expiry month.
Possible values: <= 36 characters
Transaction identifier that can be used to reconcile this transaction with the provider gateway.
Indicates the last updated time for the resource.
Indicates the last updated time for the resource.
links
object
URL links to redirect customer during transaction flow
Possible values: [redirect_payment
, redirect_registration
, on_completed
, default
, on_failed
, on_cancelled
]
This is the link type that allows different endpoints to be targeted depending on the end state of the transaction.
The url to be used for further actions.
The corresponding HTTP request method to be invoked on url.
Possible values: <= 255 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: [PAYMENT
, STANDALONE_CREDIT
]
This specifies the transaction type for which the Payment Handle is created.
Possible values: <= 10 characters
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: [CARD
, RAPID_TRANSFER
, BANK_TRANSFER
, ACH
]
This is the payment type associated with the Payment Handle used for this request.
Possible values: <= 99999999999
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: <= 3 characters
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: <= 36 characters
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.
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.
Possible values: <= 10 characters
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: [en_US
, fr_CA
, en_GB
, en_CA
]
This indicates the customer's locale preference.
Note: Optional for GiroPay, Vippreferred-Direct-Registration. Not required for Paysafe Card Payouts.
Possible values: <= 80 characters
This is the customer’s first name.
Possible values: <= 80 characters
This is the customer’s last name.
Possible values: <= 255 characters
This is the customer's email address.
Possible values: <= 40 characters
This is the customer's phone number.
Note: Optional for GiroPay. Not required for Paysafe Card Payouts.
dateOfBirth
object
This is the recipient's date of birth.
Possible values: <= 31
This is the day of birth.
Possible values: <= 12
This is the month of birth.
Possible values: >= 1900
This is the year of birth.
Possible values: <= 40 characters
Customer's mobile number.
Possible values: [M
, F
]
This field indicates the Customer's gender.
M - Male
F - Female
Possible values: <= 30 characters
This field indicates the Customer's nationality.
identityDocuments
object[]
identityDocuments
object[]
required
This is array of 2 JSON objects.
anyOf
Possible values: [SOCIAL_SECURITY
]
Default value: SOCIAL_SECURITY
Value will always be "SOCIAL_SECURITY" This is part of 1st JSON object.
Possible values: <= 9 characters
The customer’s social security number.
Possible values: [PASSPORT
, IDENTITY_CARD
, DRIVING_LICENSE
, SOCIAL_SECURITY
, TAX_IDENTIFICATION
, NATIONAL_IDENTITY
, STATE_ID
, MILITARY_ID
, WORK_PERMIT
, RESIDENCE_PERMIT
, REGISTRATION_ID
, ACRA
, LICENSE_NUMBER
, REGISTRATION_NUMBER
, BUSINESS_TAX_IDENTIFICATION
]
Identity documnent can be one of the allowed values:
Possible values: >= 5 characters
and <= 31 characters
The number associated with ID.
Value will always be "US".
Possible values: <= 2 characters
Two letter state code. See State Codes
expiryDate
object
required
The expiration date associated with ID.
Expiry year.
Expiry month.
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.
Possible values: <= 36 characters
This is the ID of the billing address, returned in the response.
This is the status of the address.
Possible values: <= 50 characters
This is the nickname the merchant has for the billing address.
Possible values: <= 50 characters
This is the first line of the customer's street address.
Possible values: <= 50 characters
This is the first line of the street address.
Note: Mandatory for VIPPreferred
Possible values: <= 50 characters
This is the second line of the street address, if required (e.g., apartment number).
Possible values: <= 40 characters
This is the city where the address is located.
Possible values: >= 2 characters
and <= 40 characters
This is the state/province/region in which the customer lives.
Possible values: >= 2 characters
and <= 2 characters
This is the country where the address is located. See Country Codes.
Possible values: <= 10 characters
This is the zip, postal, or post code of the customer's address.
Possible values: <= 40 characters
This is the customer's telephone number.
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.
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.
This is the percentage of the total transaction amount to transfer to that account. The total percentage to all linked accounts cannot exceed 100%.
merchantDescriptor
object
This is the merchant descriptor that will be displayed on the customer's card or bank statement.
Possible values: <= 20 characters
This is a merchant descriptor that will be displayed on a customer’s card statement.
Possible values: <= 13 characters
This is the merchant’s phone number, which is appended to the merchant descriptor on a customer’s card statement.
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.
Possible values: [default
, on_completed
, on_failed
, on_cancelled
]
This is the link type that allows different endpoints to be targeted depending on the end state of the transaction.
This is the URI of the resource.
This is the HTTP method.
Possible values: <= 39 characters
This is the customer's IP address.
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.
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
Expected errors related to invalid transactioIntent values:
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
]
Possible values: <= 36 characters
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.
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.
Possible values: <= 36 characters
This is the unique ID returned in the response.
Possible values: <= 36 characters
This is the UUID used with device fingerprinting.
Possible values: <= 255 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.
This is an indicator representing whether to call authenticate end point or not.
Possible values: <= 2048 characters
This is the fully qualified URL of the merchant's commercial or customer care website.
Possible values: [BROWSER
, APP
, 3RI
]
This is the type of channel interface used to initiate the transaction.
Possible values: [NO_PREFERENCE
, NO_CHALLENGE_REQUESTED
, CHALLENGE_REQUESTED
, CHALLENGE_MANDATED
]
This indicates whether a challenge is requested for this transaction.
Possible values: [PAYMENT
, NON_PAYMENT
]
This is the category of the message for a specific use case.
Possible values: [GOODS_OR_SERVICE_PURCHASE
, CHECK_ACCEPTANCE
, ACCOUNT_FUNDING
, QUASI_CASH_TRANSACTION
, PREPAID_ACTIVATION
]
This identifies the type of transaction being authenticated.
Possible values: [PAYMENT_TRANSACTION
, RECURRING_TRANSACTION
, INSTALMENT_TRANSACTION
, ADD_CARD
, MAINTAIN_CARD
, EMV_TOKEN_VERIFICATION
]
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.
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.
Possible values: [MERCHANDISE_AVAILABLE
, FUTURE_AVAILABILITY
]
This indicates whether the cardholder is placing an order for available merchandise or merchandise with a future availability or release date.
Possible values: [FIRST_TIME_ORDER
, REORDER
]
This indicates whether the cardholder is reordering merchandise.
Possible values: [SHIP_TO_BILLING_ADDRESS
, SHIP_TO_VERIFIED_ADDRESS
, SHIP_TO_DIFFERENT_ADDRESS
, SHIP_TO_STORE
, DIGITAL_GOODS
, TRAVEL_AND_EVENT_TICKETS
, OTHER
]
This is the shipping method for the transaction.
purchasedGiftCardDetails
object
Possible values: <= 99999999999
This is the amount of the gift card, in minor units.
Possible values: <= 99
This is the total count of individual prepaid or gift cards or codes purchased.
This is the currency of the gift card, e.g., USD or CAD. See Currency Codes
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.
Possible values: [DURING_TRANSACTION
, LESS_THAN_THIRTY_DAYS
, THIRTY_TO_SIXTY_DAYS
, MORE_THAN_SIXTY_DAYS
]
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.
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.
Possible values: [NO_ACCOUNT
, DURING_TRANSACTION
, LESS_THAN_THIRTY_DAYS
, THIRTY_TO_SIXTY_DAYS
, MORE_THAN_SIXTY_DAYS
]
This is the length of time between the cardholder opening the account with the 3DS Requestor and the API call of the current transaction.
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.
Possible values: [NO_CHANGE
, DURING_TRANSACTION
, LESS_THAN_THIRTY_DAYS
, THIRTY_TO_SIXTY_DAYS
, MORE_THAN_SIXTY_DAYS
]
This is the length of time between the most recent password change or cardholder account reset and the API call of the current transaction.
This indicates whether the 3DS Requestor has experienced suspicious activity, including previous fraud, on the cardholder account.
Possible values: <= 9999
This is the total number of purchases from this cardholder account in the previous six months.
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 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.
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.
Possible values: [NO_LOGIN
, INTERNAL_CREDENTIALS
, FEDERATED_ID
, ISSUER_CREDENTIALS
, THIRD_PARY_AUTHENTICATION
, FIDO_AUTHENTICATOR
]
This is the mechanism used by the cardholder to authenticate to the 3DS Requestor.
Possible values: <= 2048 characters
This field is reserved for future iterations of 3D Secure 2.
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.
Possible values: [NO_ACCOUNT
, DURING_TRANSACTION
, LESS_THAN_THIRTY_DAYS
, THIRTY_TO_SIXTY_DAYS
, MORE_THAN_SIXTY_DAYS
]
This indicates the length of time that the payment account was enrolled in the cardholder’s account with the 3DS Requestor.
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.
Possible values: <= 36 characters
This is the previous authentication ID for the cardholder.
Note: For recurring payments, this is the authenticationId of the first authentication.
This field is reserved for future iterations of 3D Secure 2.
Possible values: [FRICTIONLESS_AUTHENTICATION
, ACS_CHALLENGE
, AVS_VERIFIED
, OTHER_ISSUER_METHOD
]
This is the mechanism used previously by the cardholder to authenticate to the 3DS Requestor.
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
Possible values: <= 256 characters
This is the selected airline carrier.
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.
Possible values: <= 5 characters
This is the airport code of the destination airport.
Possible values: <= 5 characters
This is the airport code of the originating airport.
Possible values: <= 99 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.
priorThreeDSAuthentication
object
This is the previous authentication information used with current merchant, cardholder, and card.
Possible values: <= 36 characters
This is the previous authentication ID for the cardholder.
Note: For recurring payments, this is the authenticationId of the first authentication.
This field is reserved for future iterations of 3D Secure 2.
Possible values: [FRICTIONLESS_AUTHENTICATION
, ACS_CHALLENGE
, AVS_VERIFIED
, OTHER_ISSUER_METHOD
]
This is the mechanism used previously by the cardholder to authenticate to the 3DS Requestor.
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.
Possible values: <= 9999
Transaction count for last 6 months.
Possible values: <= 999
Transaction count for last 24 hours
Possible values: <= 999
Transaction count for last 1 year.
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
Possible values: <= 256 characters
This is the selected airline carrier.
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.
Possible values: <= 5 characters
This is the airport code of the destination airport.
Possible values: <= 5 characters
This is the airport code of the originating airport.
Possible values: <= 99 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.
userLogin
object
This is the cardholder login information.
Possible values: [NO_LOGIN
, INTERNAL_CREDENTIALS
, FEDERATED_ID
, ISSUER_CREDENTIALS
, THIRD_PARY_AUTHENTICATION
, FIDO_AUTHENTICATOR
]
This is the mechanism used by the cardholder to authenticate to the 3DS Requestor.
Possible values: <= 2048 characters
This field is reserved for future iterations of 3D Secure 2.
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.
Possible values: <= 2048 characters
This is the exact content of the HTTP accept header as sent to the 3DS Requestor from the cardholder’s browser.
Possible values: [1
, 4
, 5
, 15
, 16
, 24
, 32
, 48
]
This is the bit depth of the color palette for displaying images, in bits per pixel.
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.
Possible values: <= 8 characters
This is the language in the browser.
Possible values: <= 999999
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: <= 99999
This is the time-zone offset in minutes between UTC and the local time of the cardholder's browser.
Possible values: <= 256 characters
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
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.
Possible values: [COMPLETED
, PENDING
, FAILED
]
This is the status of the authentication request.
Possible values: [Y
, A
, N
, U
, E
, C
, R
]
ThreeDResult possible values are:
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.
Possible values: <= 36 characters
This is the directory server transaction ID required for Mastercard.
Note: This exists only for 3D Secure 2.
Possible values: >= 5 characters
and <= 8 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.
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.
Possible values: <= 40 characters
This is the transaction identifier returned by the card issuer.
Note: This exists only for 3DS 1.0.2.
Possible values: [Y
, N
, U
]
Possible values for ThreeDEnrollment are:
Possible values: >= 1
and <= 999
This is the maxAuthorizationsForInstalmentPayment of the request, in minor units.
electronicDelivery
object
Possible values: <= 240 characters
This is the email address to which the merchandise was delivered.
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.
Possible values: <= 99999999999
This is the amount of the request, in minor units.
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.
shippingDetails
object
This is the method of shipment. Possible values are:
Possible values: <= 50 characters
This is the recipient's street address.
Possible values: <= 255 characters
This is the second line of the street address in the shipping address, if required (e.g., apartment number).
Possible values: <= 40 characters
This is the city in which the recipient resides.
Possible values: >= 2 characters
and <= 40 characters
This is the state/province/region in which the recipient lives.
Possible values: >= 2 characters
and <= 2 characters
This is the country where the address is located. See Country Codes.
Possible values: <= 10 characters
This is the recipient's postal/zip code.
wallet
object
Embedded wallet details for the operation.
Possible values: <= 50 characters
The customer wallet id.
The fee to be applied on this transaction.
Possible values: <= 3 characters
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.
Id of the merchant wallet where merchant fee is collected.
Possible values: <= 50 characters
Wallet slip id. The wallet slip is a collection of all transactions associated with specic wallet operation (deposit, withdrawal or transfer).
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.
Possible values: <= 50 characters
The wallet account id
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.
risk
object
Embedded wallet risk related parameters.
risk rating for the customer at time of transaction or wallet creation
{
"id": "26359efd-7cfb-4014-a13d-1724e3ff17fa",
"paymentHandleToken": "SCO3wKcIyLoQbQvw",
"txnTime": "2023-01-19T10:28:00Z",
"status": "INITIATED",
"liveMode": true,
"usage": "SINGLE_USE",
"action": "NONE",
"executionMode": "SYNCHRONOUS",
"timeToLiveSeconds": 0,
"gatewayResponse": {
"id": "string",
"processor": "string",
"code": "string",
"responseCode": "string",
"avsCode": "string",
"avsResponse": "MATCH",
"balanceResponse": "string",
"mid": "string",
"terminalId": "string",
"batchNumber": "string",
"seqNumber": "string",
"effectiveDate": "string",
"financingType": "string",
"plan": "string",
"gracePeriod": "string",
"term": "string",
"responseId": "string",
"requestId": "string",
"description": "string",
"authCode": "string",
"txnDateTime": "string",
"referenceNbr": "string",
"responseReasonCode": "string",
"cvvVerification": "MATCH",
"cvv2Result": "string",
"status": "string",
"orderId": "string",
"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
}
}
]
}
]
}
},
"gatewayReconciliationId": "8e13f7fe-4fd2-4f58-92da-89fc9c2ec29b",
"updatedTime": "2024-11-08T11:57:07.963Z",
"statusTime": "2024-11-08T11:57:07.963Z",
"links": {
"rel": "redirect_payment",
"href": "http://api.paysafe.com/card/redirect/372b5ee7-6360-4403-b444-164f8f1d2709",
"method": "GET"
},
"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-11-08",
"frequency": 0
},
"orderItemDetails": {
"preOrderItemAvailabilityDate": "2024-11-08",
"preOrderPurchaseIndicator": "MERCHANDISE_AVAILABLE",
"reorderItemsIndicator": "FIRST_TIME_ORDER",
"shippingIndicator": "SHIP_TO_BILLING_ADDRESS"
},
"purchasedGiftCardDetails": {
"amount": 1234,
"count": 2,
"currency": "USD"
},
"userAccountDetails": {
"addCardAttemptsForLastDay": 0,
"changedDate": "2024-11-08",
"changedRange": "DURING_TRANSACTION",
"createdDate": "2024-11-08",
"createdRange": "NO_ACCOUNT",
"passwordChangedDate": "2024-11-08",
"passwordChangedRange": "NO_CHANGE",
"suspiciousAccountActivity": true,
"totalPurchasesSixMonthCount": 0,
"transactionCountForPreviousDay": 0,
"transactionCountForPreviousYear": 0,
"shippingDetailsUsage": {
"cardHolderNameMatch": true,
"initialUsageDate": "2024-11-08",
"initialUsageRange": "CURRENT_TRANSACTION"
},
"userLogin": {
"authenticationMethod": "NO_LOGIN",
"data": "Some up to 2048 bytes undefined data",
"time": "2024-11-08T11:57:07.964Z"
},
"paymentAccountDetails": {
"createdRange": "NO_ACCOUNT",
"createdDate": "2024-11-08"
},
"priorThreeDSAuthentication": {
"id": "123e4567-e89b-12d3-a456-426655440000",
"data": "Some up to 2048 bytes undefined data",
"method": "FRICTIONLESS_AUTHENTICATION",
"time": "2024-11-08T11:57:07.964Z"
},
"travelDetails": {
"isAirTravel": false,
"airlineCarrier": "string",
"departureDate": "2024-11-08",
"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-11-08T11:57:07.964Z"
},
"shippingDetailsUsage": {
"cardHolderNameMatch": true,
"initialUsageDate": "2024-11-08",
"initialUsageRange": "CURRENT_TRANSACTION"
},
"suspiciousAccountActivity": true,
"totalPurchasesSixMonthCount": 0,
"transactionCountForPreviousDay": 0,
"transactionCountForPreviousYear": 0,
"travelDetails": {
"isAirTravel": false,
"airlineCarrier": "string",
"departureDate": "2024-11-08",
"destination": "string",
"origin": "string",
"passengerFirstName": "string",
"passengerLastName": "string"
},
"userLogin": {
"authenticationMethod": "NO_LOGIN",
"data": "Some up to 2048 bytes undefined data",
"time": "2024-11-08T11:57:07.964Z"
},
"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"
}
}
{
"id": "26359efd-7cfb-4014-a13d-1724e3ff17fa",
"amount": 1000,
"merchantRefNum": "merchantRefNum-101",
"action": "NONE",
"currencyCode": "GBP",
"usage": "SINGLE_USE",
"status": "PAYABLE",
"paymentType": "CARD",
"executionMode": "SYNCHRONOUS",
"customerIp": "73.82.192.17",
"paymentHandleToken": "SCO3wKcIyLoQbQvw",
"billingDetails": {
"nickName": "Home",
"street": "100 Queen",
"street2": "Unit 201",
"city": "Toronto",
"country": "CA",
"zip": "M5H 2N2"
},
"card": {
"cardExpiry": {
"month": "10",
"year": "2020"
},
"holderName": "poorna",
"cardType": "MC",
"cardBin": "519133",
"lastDigits": "4415"
},
"wallet": {
"customerId": "GGG",
"fee": 400,
"slipId": "100753",
"deviceInfo": {
"threatMetrixSessionId": "a71a475b-1956-4814-9c92-7faa8226b218"
},
"customerAccount": {
"id": "abc"
}
},
"returnLinks": [
{
"rel": "on_completed",
"href": "https://US_commerce_site/payment/return/success",
"method": "GET"
},
{
"rel": "on_failed",
"href": "https://US_commerce_site/payment/return/failed",
"method": "GET"
}
],
"timeToLiveSeconds": 899,
"transactionType": "PAYMENT"
}
{
"id": "372b5ee7-6360-4403-b444-164f8f1d2709",
"amount": 3000,
"merchantRefNum": "merchantRefNum-124",
"action": "NONE",
"currencyCode": "GBP",
"usage": "SINGLE_USE",
"status": "PAYABLE",
"paymentType": "CARD",
"executionMode": "SYNCHRONOUS",
"customerIp": "73.82.192.17",
"paymentHandleToken": "SCyGZDlUuZ9zxjyd",
"billingDetails": {
"nickName": "Home",
"street": "100 Queen",
"street2": "Unit 201",
"city": "Toronto",
"country": "CA",
"zip": "M5H 2N2"
},
"card": {
"cardExpiry": {
"month": "10",
"year": "2020"
},
"holderName": "poorna",
"cardType": "MC",
"cardBin": "453826",
"lastDigits": "0003"
},
"authentication": {
"eci": 5,
"cavv": "AAABCIEjYgAAAAAAlCNiENiWiV+=",
"threeDResult": "Y",
"threeDSecureVersion": "2.1.0",
"directoryServerTransactionId": "a3a721f3-b6fa-4cb5-84ea-c7b5c39890a2"
},
"wallet": {
"customerId": "GGG",
"slipId": "100753",
"fee": 400,
"deviceInfo": {
"threatMetrixSessionId": "a71a475b-1956-4814-9c92-7faa8226b218"
},
"customerAccount": {
"id": "abc"
}
},
"returnLinks": [
{
"rel": "on_completed",
"href": "https://US_commerce_site/payment/return/success",
"method": "GET"
},
{
"rel": "on_failed",
"href": "https://US_commerce_site/payment/return/failed",
"method": "GET"
}
],
"timeToLiveSeconds": 899,
"transactionType": "PAYMENT"
}
{
"id": "372b5ee7-6360-4403-b444-164f8f1d2709",
"amount": 3000,
"merchantRefNum": "merchantRefNum-124",
"action": "REDIRECT",
"currencyCode": "EUR",
"usage": "SINGLE_USE",
"status": "INITIATED",
"paymentType": "RAPID_TRANSFER",
"executionMode": "SYNCHRONOUS",
"customerIp": "73.82.192.17",
"paymentHandleToken": "SCyGZDlUuZ9zxjyd",
"billingDetails": {
"nickName": "Home",
"street": "100 Queen",
"street2": "Unit 201",
"city": "Toronto",
"country": "CA",
"zip": "M5H 2N2"
},
"rapidTransfer": {
"sepa": {
"nickName": "Sally's Barclays Account",
"accountHolderName": "John Doe",
"bic": "ABNANL2APIP",
"lastDigits": "00"
}
},
"wallet": {
"customerId": "GGG",
"slipId": "100753",
"fee": 400,
"deviceInfo": {
"threatMetrixSessionId": "a71a475b-1956-4814-9c92-7faa8226b218"
},
"customerAccount": {
"id": "abc"
}
},
"returnLinks": [
{
"rel": "on_completed",
"href": "https://US_commerce_site/payment/return/success",
"method": "GET"
},
{
"rel": "on_failed",
"href": "https://US_commerce_site/payment/return/failed",
"method": "GET"
}
],
"links": [
{
"rel": "redirect_payment",
"href": "http://api.paysafe.com/rapidtransfer/redirect/372b5ee7-6360-4403-b444-164f8f1d2709",
"method": "GET"
}
],
"timeToLiveSeconds": 899,
"transactionType": "PAYMENT"
}
{
"id": "372b5ee7-6360-4403-b444-164f8f1d2709",
"amount": 3000,
"merchantRefNum": "merchantRefNum-124",
"action": "REDIRECT",
"currencyCode": "GBP",
"usage": "SINGLE_USE",
"status": "INITIATED",
"paymentType": "RAPID_TRANSFER",
"executionMode": "SYNCHRONOUS",
"customerIp": "73.82.192.17",
"paymentHandleToken": "SCyGZDlUuZ9zxjyd",
"billingDetails": {
"nickName": "Home",
"street": "100 Queen",
"street2": "Unit 201",
"city": "Toronto",
"country": "CA",
"zip": "M5H 2N2"
},
"rapidTransfer": {
"bacs": {
"nickName": "Sally's Barclays Account",
"accountHolderName": "John Doe",
"sortCode": "321654",
"lastDigits": "19"
}
},
"wallet": {
"customerId": "GGG",
"slipId": "100753",
"fee": 400,
"deviceInfo": {
"threatMetrixSessionId": "a71a475b-1956-4814-9c92-7faa8226b218"
},
"customerAccount": {
"id": "abc"
}
},
"returnLinks": [
{
"rel": "on_completed",
"href": "https://US_commerce_site/payment/return/success",
"method": "GET"
},
{
"rel": "on_failed",
"href": "https://US_commerce_site/payment/return/failed",
"method": "GET"
}
],
"links": [
{
"rel": "redirect_payment",
"href": "http://api.paysafe.com/rapidtransfer/redirect/372b5ee7-6360-4403-b444-164f8f1d2709",
"method": "GET"
}
],
"timeToLiveSeconds": 899,
"transactionType": "PAYMENT"
}
{
"id": "372b5ee7-6360-4403-b444-164f8f1d2709",
"amount": 3000,
"merchantRefNum": "merchantRefNum-190",
"action": "NONE",
"currencyCode": "GBP",
"usage": "SINGLE_USE",
"status": "PAYABLE",
"paymentType": "CARD",
"executionMode": "SYNCHRONOUS",
"customerIp": "73.82.192.17",
"paymentHandleToken": "SCyGZDlUuZ9zxjyd",
"billingDetails": {
"nickName": "Home",
"street": "100 Queen",
"street2": "Unit 201",
"city": "Toronto",
"country": "CA",
"zip": "M5H 2N2"
},
"wallet": {
"customerId": "GGG",
"fee": 400,
"slipId": "100753",
"deviceInfo": {
"threatMetrixSessionId": "a71a475b-1956-4814-9c92-7faa8226b218"
},
"verifiedInstrument": true,
"customerAccount": {
"id": "abc"
}
},
"card": {
"cardExpiry": {
"month": "10",
"year": "2020"
},
"holderName": "poorna",
"cardType": "VI",
"cardBin": "453826",
"lastDigits": "0003"
},
"timeToLiveSeconds": 899,
"transactionType": "STANDALONE_CREDIT"
}
{
"id": "372b5ee7-6360-4403-b444-164f8f1d2709",
"amount": 3000,
"merchantRefNum": "merchantRefNum-124",
"action": "NONE",
"currencyCode": "EUR",
"usage": "SINGLE_USE",
"status": "PAYABLE",
"paymentType": "BANK_TRANSFER",
"executionMode": "SYNCHRONOUS",
"customerIp": "73.82.192.17",
"paymentHandleToken": "SCyGZDlUuZ9zxjyd",
"billingDetails": {
"nickName": "Home",
"street": "100 Queen",
"street2": "Unit 201",
"city": "Toronto",
"country": "CA",
"zip": "M5H 2N2"
},
"sepa": {
"nickName": "Sally's Barclays Account",
"accountHolderName": "John Doe",
"bic": "ABNANL2APIP",
"lastDigits": "00"
},
"wallet": {
"customerId": "GGG",
"slipId": "100753",
"fee": 400,
"deviceInfo": {
"threatMetrixSessionId": "a71a475b-1956-4814-9c92-7faa8226b218"
},
"verifiedInstrument": false,
"customerAccount": {
"id": "abc"
}
},
"timeToLiveSeconds": 899,
"transactionType": "STANDALONE_CREDIT"
}
{
"id": "372b5ee7-6360-4403-b444-164f8f1d2709",
"amount": 3000,
"merchantRefNum": "merchantRefNum-124",
"action": "NONE",
"currencyCode": "GBP",
"usage": "SINGLE_USE",
"status": "PAYABLE",
"paymentType": "BANK_TRANSFER",
"executionMode": "SYNCHRONOUS",
"customerIp": "73.82.192.17",
"paymentHandleToken": "SCyGZDlUuZ9zxjyd",
"billingDetails": {
"nickName": "Home",
"street": "100 Queen",
"street2": "Unit 201",
"city": "Toronto",
"country": "CA",
"zip": "M5H 2N2"
},
"fasterPayments": {
"accountHolderName": "John Doe",
"sortCode": "321654",
"lastDigits": "19"
},
"wallet": {
"customerId": "GGG",
"slipId": "100753",
"fee": 400,
"deviceInfo": {
"threatMetrixSessionId": "a71a475b-1956-4814-9c92-7faa8226b218"
},
"verifiedInstrument": true,
"customerAccount": {
"id": "abc"
}
},
"timeToLiveSeconds": 899,
"transactionType": "STANDALONE_CREDIT"
}