Skip to main content

CustomerTransfer

amountint64required

Transaction amount in minor units.

Example: 1000
currencyCodeCurrency (string)required

Currency alphabetic code as specified by ISO 4217

Possible values: >= 3 characters and <= 3 characters

Example: EUR
recipient object

Contains transfer recipient information. If used in CustomerTransferRequest context, the system tries to resolve email to customerId in the system.

customerIdstring
emailemail

Possible values: <= 150 characters

merchantRefNumstring

Merchant reference number associated with the transaction.

Possible values: <= 50 characters

Example: 5040452805
fxQuotestring

(In Development) FX Quote ID for the transfer in case currency conversion is required. If not passed currency conversion is not perfomed.

transferDetails objectrequired

Represents the details of a transfer.

reasonTransferReason (string)required

The actual purpose of the transfer.

  • INITIAL_BALANCE_MIGRATION - after customer onboarding, migrations of existing balances
  • CRYPTO_BUY - the customer is buying crypto or other assets
  • CRYPTO_SELL - the customer is selling crypto or other assets
  • TRADING_PAIR - the transfer represents a trading pair transaction between customers with wallets
  • DEPOSIT - crediting the customer's wallet via non-Paysafe deposit options
  • WITHDRAWAL - debiting the customer's wallet via non-Paysafe withdrawal options
  • MERCHANT_FEE - charging a merchant fee
  • REFUND - refunding the customer on a previous transaction
  • CANCELATION - cancelation of a previous transaction
  • BONUS - customer is granted a bonus
  • CURRENCY_EXCHANGE - converting one currency to another
  • PURCHASE - the customer is purchasing goods or services from a merchant
  • PAYOUT - the merchant is compensating a customer for goods or services
  • PEER_TRANSFER - money transfer between customers with wallets
  • OTHER - any reason not explicitly mentioned in the transfers

Possible values: [INITIAL_BALANCE_MIGRATION, CRYPTO_BUY, CRYPTO_SELL, TRADING_PAIR, DEPOSIT, WITHDRAWAL, MERCHANT_FEE, REFUND, CANCELATION, BONUS, CURRENCY_EXCHANGE, PURCHASE, PAYOUT, PEER_TRANSFER, OTHER]

descriptionstring

Human readable description for the transfer.

Possible values: <= 200 characters

idstringrequired

The transfer id

Example: 12356
feeint64deprecated

Transaction fee in minor units. The field is deprecated. Please use fees field instead.

Example: 100
fees object[]

Customer fees attached to the transaction.

  • Array [
  • amountint64required

    Amount of the merchant payment, in mintor units. If currency is not specified, then the main transaction currency is used.

    Default value: 0
    Example: 1000
    currencyCurrency (string)

    Currency alphabetic code as specified by ISO 4217

    Possible values: >= 3 characters and <= 3 characters

    Example: EUR
    paymentReasonFeePaymentReason (string)required

    Fee payment reason.

    • SENDER_FEE - Fee that will be applied to sender party of transfer collected into partner merchant wallet.
    • RECIPIENT_FEE - Fee that will be applied to recipient client of transfer collected into partner merchant wallet.
    • DEPOSIT_FEE - Fee charged for deposit transactions collected into partner merchant wallet.
    • WITHDRAWAL_FEE - Fee charged for withdrawal transactions collected into partner merchant wallet.
    • MERCHANT_FEE - Fee for the payment service collected into partner merchant wallet.
    • PAYSAFE_FEE - Fee collected by Paysafe for the provided payment service. Usually Paysafe Fee is not directly applied to customer transactions.
    • ATM_FEE - Fee for ATM service, when using prepaid cards.
    • FX_FEE - Fee applied, when payment requires currency exchange.
    • OTHER_FEE - It could be used for any additional, unspecified fees that may be applied to a transaction

    Possible values: [MERCHANT_FEE, ATM_FEE, FX_FEE, PAYSAFE_FEE, OTHER_FEE, SENDER_FEE, RECIPIENT_FEE, DEPOSIT_FEE, WITHDRAWAL_FEE]

    Default value: OTHER_FEE
  • ]
  • creationTimedate-timerequired

    Represents RFC 3339, section 5.6 date-time.

    Example: 2021-07-15T17:54:12Z
    expirationTimedate-time

    Represents RFC 3339, section 5.6 date-time.

    Example: 2021-07-15T17:54:12Z
    statusPayment Status (string)required

    The payment status:

    • PREVIEW - Payment preview.
    • PENDING - Payment transaction is created and further action is required by the customer.
    • PROCESSING - Payment is scheduled for processing by the payment provider.
    • COMPLETED - Payment is completed. Note that some transactions might be completed from Embedded Wallet point of view, but not from customer point of view, since money movement might take some time outside of the Embedded Wallet network.
    • FAILED - Payment has failed. Check STATUS_REASON property for details.
    • CANCELLED - Payment have been cancelled
    • REFUNDED - Payment has been refunded. Valid only for deposits.

    Possible values: [PREVIEW, PENDING, PROCESSING, COMPLETED, FAILED, CANCELLED, REFUNDED]

    Example: COMPLETED
    statusReasonstring

    Status reason for FAILED transaction.

    Possible values: <= 60 characters

    sender object

    Contains transfer sender information

    customerIdstring
    accountIdstring
    slipIdstring

    Slip identifier. Slip contains list of transactions associated with the transfer operation.

    fxAmount object

    (In Development)

    Contains the amount in converted currency during currency conversion.

    amountinteger

    Converted amount (in minor units).

    ratenumber

    Currency conversion rate.

    currencyCurrency (string)

    Currency alphabetic code as specified by ISO 4217

    Possible values: >= 3 characters and <= 3 characters

    Example: EUR
    nextStatusPayment Status (string)[]

    Provides the next possible status update the client can request, depending on the chosen payment type and option.

    Possible values: [PREVIEW, PENDING, PROCESSING, COMPLETED, FAILED, CANCELLED, REFUNDED]

    actionPayment Action (string)

    Specifies action required to complete to be able to continue to the next payment status:

    • NONE – No action is required, you can proceed to the next deposit status.
    • REDIRECT – The user must be redirected in order to complete a payment, for example, when an alternate payment method like Paysafecard is used.
    • SCA - The user must complete a Strong Customer Authentication (SCA) process.

    Possible values: [NONE, REDIRECT, SCA]

    Default value: NONE
    Example: NONE
    scaDetails object

    SCA authentication details, including information about the authentication process. It should be present in the response of any wallet operation that requires it due to PSD2 regulatory requirements.

    • Present in the response - operation requires SCA authentication, and the user should proceed with the SCA process.
    • Not present in the response - operation does not require SCA authentication and is authorized to proceed.
    eventIdstringrequired

    The distinct identifier for the SCA authentication event.

    Example: 06bdcd2c-0cce-4b36-97ec-281c8f5d743c
    walletOperationIdstringrequired

    The distinct identifier for the wallet operation. This identifier is used to associate the wallet operation with the SCA authentication event.

    Example: a5865fd6-18c2-45a8-9953-1c00eac36c36
    authenticationModeSCA Authentication Mode (string)required

    Mode of the Strong Customer Authentication (SCA) authentication process.

    • OUTSOURCED - The partner is responsible for handling the entire SCA process.
    • EMBEDDED - Paysafe is responsible for handling the entire SCA process, including user authentication and compliance with regulations like PSD2.
    • HYBRID - Paysafe manages the entire SCA process, excluding the communication with the end-user.

    Possible values: [OUTSOURCED, EMBEDDED, HYBRID]

    Example: OUTSOURCED
    availableVerifications object[]

    List of available verifications for the SCA authentication event. If none are specified, the user can proceed with any agreed-upon verification method.

  • Array [
  • methodSCA Authentication Event Attempt Verification Method (string)required

    Method used for verifying the SCA authentication event attempt.

    • PASSWORD - A secret combination of characters, typically chosen by the user, used to authenticate their identity.
    • PIN - A numeric code, typically six digits, used to authenticate the user's identity.
    • PASSKEYS - A set of predefined keys or a pattern chosen by the user to authenticate their identity.
    • OTP - One-Time Password sent via SMS, email, or authenticator application to the user's registered device.
    • BIOMETRIC - Authentication based on unique physical characteristics of the user, such as fingerprint, facial recognition, or iris scan.

    Possible values: [PASSWORD, PIN, PASSKEYS, OTP, BIOMETRIC]

    Example: OTP
    channelSCA Authentication Event Attempt Verification Channel (string)

    Channel used to send the verification method to the user.

    • SMS - Verification method sent via SMS to the user's registered device.
    • EMAIL - Verification method sent via email to the user's registered address.
    • AUTHENTICATOR - Verification method generated by an authenticator application installed on the user's device.
    • PUSH_NOTIFICATION - Verification method sent via the user's mobile device prompting them to approve or deny the authentication request.

    Possible values: [SMS, EMAIL, AUTHENTICATOR, PUSH_NOTIFICATION]

    Example: SMS
    targetstring

    The destination for the verification mechanism (when available), such as the phone number or email address where the verification value will be delivered.

    Example: jo***@example.com
  • ]
  • creationTimedate-timerequired

    Represents RFC 3339, section 5.6 date-time.

    Example: 2021-07-15T17:54:12Z
    expirationTimedate-time

    Represents RFC 3339, section 5.6 date-time.

    Example: 2021-07-15T17:54:12Z
    CustomerTransfer
    {
    "amount": 1000,
    "currencyCode": "EUR",
    "recipient": {
    "customerId": "string",
    "email": "user@example.com"
    },
    "merchantRefNum": "5040452805",
    "fxQuote": "string",
    "transferDetails": {
    "reason": "INITIAL_BALANCE_MIGRATION",
    "description": "string"
    },
    "id": "12356",
    "fees": [
    {
    "amount": 1000,
    "currency": "EUR",
    "paymentReason": "OTHER_FEE"
    }
    ],
    "creationTime": "2021-07-15T17:54:12Z",
    "expirationTime": "2021-07-15T17:54:12Z",
    "status": "COMPLETED",
    "statusReason": "string",
    "sender": {
    "customerId": "string",
    "accountId": "string"
    },
    "slipId": "string",
    "fxAmount": {
    "amount": 0,
    "rate": 0,
    "currency": "EUR"
    },
    "nextStatus": [
    "COMPLETED"
    ],
    "action": "NONE",
    "scaDetails": {
    "eventId": "06bdcd2c-0cce-4b36-97ec-281c8f5d743c",
    "walletOperationId": "a5865fd6-18c2-45a8-9953-1c00eac36c36",
    "authenticationMode": "OUTSOURCED",
    "availableVerifications": [
    {
    "method": "OTP",
    "channel": "SMS",
    "target": "jo***@example.com"
    }
    ],
    "creationTime": "2021-07-15T17:54:12Z",
    "expirationTime": "2021-07-15T17:54:12Z"
    }
    }