Transfers funds from a user's SubWallet to an external cryptocurrency wallet address.

If both the source and destination wallet addresses are internal to LedgerBlock, the transfer is processed as an internal transfer.

Request

Method: POST

Endpoint:

{{base_url}}/api/v1/payout/wallet-crypto

Authentication & Headers

HeaderTypeRequiredDescription
AuthorizationStringYesBearer <token> — your activated authentication token.
x-merchant-refStringYesYour unique merchant reference.
Content-TypeStringYesMust be set to application/json.

Example Request

curl --location -g '{{base_url}}/api/v1/payout/wallet-crypto' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-merchant-ref: MERCHANT-REF-001' \
--data '{
  "user_ref": "USER-REF-001",
  "currency": "USDT:POL",
  "chain": "POL",
  "wallet_type": "SUB_WALLET",
  "txn_merchant_ref": "TXN-REF-001",
  "amount": 1,
  "to_wallet_address": "0xYourDestinationWalletAddress",
  "notification_url": "https://example.com/webhook"
}'

Request Body

{
  "user_ref": "USER-REF-001",
  "currency": "USDT:POL",
  "chain": "POL",
  "wallet_type": "SUB_WALLET",
  "txn_merchant_ref": "TXN-REF-001",
  "amount": 1,
  "to_wallet_address": "0xYourDestinationWalletAddress",
  "notification_url": "https://example.com/webhook"
}

Request Fields

FieldTypeRequiredDescription
user_refStringYesUnique reference identifying the user whose SubWallet will be debited.
currencyStringYesCryptocurrency and network identifier for the transaction, e.g. USDT:POL.
chainStringYesBlockchain network on which the transaction will be processed, e.g. POL.
wallet_typeStringYesSpecifies the source wallet. For SubWallet payouts, use SUB_WALLET.
txn_merchant_refStringYesUnique merchant reference for the payout transaction.
amountNumberYesAmount of cryptocurrency to transfer.
to_wallet_addressStringYesDestination cryptocurrency wallet address.
notification_urlStringNoURL where LedgerBlock can send transaction status notifications.

Transfer Behavior

LedgerBlock determines how the transfer is processed based on the source and destination wallet addresses:

  • External Transfer: If the destination wallet is external to LedgerBlock, the transaction is processed as an external cryptocurrency transfer.
  • Internal Transfer: If both the source and destination wallet addresses are internal to LedgerBlock, LedgerBlock initiates an internal transfer.

Payout Flow

User SubWallet → Specify Currency & Chain → Provide Destination Wallet Address → Authorize Transaction → Transfer Processing → Transaction Completed

For an internal LedgerBlock wallet transfer:

SubWallet → Internal LedgerBlock Wallet → Internal Transfer

For an external wallet transfer:

SubWallet → External Crypto Wallet → Blockchain Transfer


Did this page help you?