Skip to main content

TransferRequest

Describes a transfer request to another customer or local currency exchange.

amountinteger<int64>required

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 or mobile to customerId in the system.

customerIdstring

Wallet customer identifier.

fullNamestring
Example: Jon Doe
emailstring<email>

Possible values: <= 150 characters

mobilestring

Mobile number

Possible values: <= 50 characters, Value must match regular expression ^\+\d+\s?\d{1,16}$

Example: +12025550120
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 fee transfer.

reasonCustomerTransferReason (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.
  • CHEQUE - Money transfer between customer and merchant. To be used for cheque payment in future.
  • CHEQUE_WITHDRAWAL - Debiting the customer's wallet for cheque payment.
  • WALLET_CHECKOUT - Money transfer between customer and merchant. Used by Wallet Checkout.
  • 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, CHEQUE, CHEQUE_WITHDRAWAL, WALLET_CHECKOUT, OTHER]

descriptionstring

Human readable description for the transfer.

Possible values: <= 400 characters

discounts object[]

Customer discounts attached to the transaction.

  • Array [
  • amountinteger<int64>required

    Discount amount in minor currency units.

    currencyCodeCurrency (string)required

    Currency alphabetic code as specified by ISO 4217

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

    Example: EUR
    typestringrequired

    Discount source type.

    Possible values: [POINTS, VOUCHER]

    redemption object

    Identifies a chosen discount option for redemption APIs (for example purchase-order discountDetails or transfer preview discounts). The presence of a redemption resource indicates whether the downstream business domain is responsible for debiting the customer's loyalty rewards. If redemption is not provided, the discount is applied as a fiat adjustment, and no loyalty rewards are debited.

    referencestringrequired

    Stable reference for this discount tier or voucher (for example points amount as a string, voucher code, or 0 for no discount).

    displayNamestring

    Customer-facing label for the discount option in UI copy.

    sender objectrequired

    Discount sender information

    customerIdstring

    Wallet customer identifier.

    accountIdstring

    The account where the money gets debited from.

    currencyCurrency (string)

    Currency alphabetic code as specified by ISO 4217

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

    Example: EUR
  • ]
  • fees object[]

    Customer fees attached to the transaction.

  • Array [
  • amountinteger<int64>required

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

    Possible values: >= 0

    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.
    • VAT_FEE - Consumer VAT fee (when applicable)
    • 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, VAT_FEE, WITHDRAWAL_FEE]

    Default value: OTHER_FEE
    merchantIdstring

    The target merchant wallet id.

    Example: 500005
    recipientCurrencyCurrency (string)

    Currency alphabetic code as specified by ISO 4217

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

    Example: EUR
    merchantAccountIdstring

    The target account in which the payment is accepted. If not specified the account is determined by the main transaction currency.

    Example: 100001
  • ]
  • TransferRequest
    {
    "amount": 1000,
    "currencyCode": "EUR",
    "recipient": {
    "customerId": "string",
    "fullName": "Jon Doe",
    "email": "user@example.com",
    "mobile": "+12025550120"
    },
    "merchantRefNum": "5040452805",
    "fxQuote": "string",
    "transferDetails": {
    "reason": "INITIAL_BALANCE_MIGRATION",
    "description": "string"
    },
    "discounts": [
    {
    "amount": 0,
    "currencyCode": "EUR",
    "type": "POINTS",
    "redemption": {
    "reference": "string",
    "displayName": "string"
    },
    "sender": {
    "customerId": "string",
    "accountId": "string",
    "currency": "EUR"
    }
    }
    ],
    "fees": [
    {
    "amount": 1000,
    "currency": "EUR",
    "paymentReason": "OTHER_FEE",
    "merchantId": "500005",
    "recipientCurrency": "EUR",
    "merchantAccountId": "100001"
    }
    ]
    }