Fund via Book Transfer
How do I fund a fiat account using a book transfer?
This guide walks you through funding a customer's fiat account using a book transfer from the
bank's fiat account.
Sandbox onlyBook transfers are only available in the sandbox environment for testing purposes.
Prerequisites
Before you begin, ensure you have:
- a customer already created and verified;
- a
fiataccount created for the customer; and, - a bank-level
fiataccount with sufficient balance.
Overview
The book transfer process involves three main steps:
- Create a
book_transferquote - Execute a
transferwithtransfer_typeset tobook - Monitor the transfer until it reaches the
completedstate
Step 1: Create a book_transfer quote
book_transfer quoteCreate a quote via POST /api/quotes:
{
"product_type": "book_transfer",
"customer_guid": "customer_guid",
"asset": "USD",
"side": "deposit",
"receive_amount": 10000
}Set side to deposit and receive_amount to the desired amount. Once you have the quote guid,
proceed to the transfers API.
Step 2: Execute the transfer
transferCreate a transfer via POST /api/transfers:
{
"quote_guid": "quote_guid",
"transfer_type": "book",
"source_account_guid": "bank_fiat_account_guid",
"destination_account_guid": "customer_fiat_account_guid",
"source_participants": [
{
"type": "bank",
"guid": "bank_guid",
"amount": 10000
}
],
"destination_participants": [
{
"type": "customer",
"guid": "customer_guid",
"amount": 10000
}
]
}
Sandbox testingThe
expected_statefield is only available in sandbox to force specific transfer outcomes. Add"expected_state": "pending"to the transfer request body to test state handling.
Step 3: Monitor the transfer
Although book transfers settle almost instantly, all transfers are asynchronous. Monitor the
transfer state to confirm it reaches completed before using the funds.
Monitor transfer state by querying GET /api/transfers/{transfer_guid}, or register for
webhooks to receive automatic notifications on state
changes.
Updated about 16 hours ago
