Skip to main content

Deposits

A deposit is money received into a client's virtual account. Deposits are inbound only—there is no "create deposit" endpoint. A payer sends funds to the client's virtual account details, and when the money arrives CAPAY records a deposit and credits that client's balance.

Funds land directly on the client that owns the receiving virtual account (identified by clientId); there is no internal re-allocation step.

You can query deposits at any time, and simulate them in Sandbox to test your integration end to end.

Query deposits

curl "https://api.sandbox.capay.com.au/deposits?clientId=401f4647-8372-495f-8de0-aafb3e1eaf93&status=COMPLETED" \
-H "Authorization: Bearer <token>"

Query parameters

ParameterDescription
referenceNoHuman-readable deposit reference, e.g. 20240726-FA8JZ4
currencyCodeISO 4217 currency code
clientIdClient the deposit belongs to
accountIdVirtual account that received the funds
statusDeposit status (see lifecycle)
depositDateFrom / depositDateToDeposit date range
createdTimeFrom / createdTimeToCreation time range
updatedTimeFrom / updatedTimeToLast-updated time range
skip / limitPagination (defaults 0 / 10)

Deposit object

FieldTypeDescription
idstringDeposit ID
clientIdstringClient that received the funds
accountIdstringVirtual account credited
currencyCodestringISO 4217 currency code
amountnumberAmount received
typeenumSettlement type: WIRE TRANSFER or PAYID
referenceNostringHuman-readable reference
depositDatestringYYYY-MM-DD
payerobjectPayer details (name, account, reference)
clientNamestringName of the receiving client
statusenumSee lifecycle below
createdTime / updatedTimestringISO 8601 timestamps

Deposit status lifecycle

StatusDescription
SCHEDULEDDeposit created, not yet processed
PENDING DIRECT DEBITWaiting for direct debit to be initiated
DIRECT DEBIT PROCESSINGDirect debit being processed by the bank
COMPLETEDFunds available in the account
CANCELLEDCancelled before processing
REJECTEDRejected by the bank or payment system
PENDING REFUNDRefund requested, awaiting processing
REFUNDINGRefund in progress
REFUNDEDFunds refunded
REFUND CANCELLEDRefund request cancelled
REFUND REJECTEDRefund rejected by the payee
info

All deposit status changes trigger a webhook notification (event type DEPOSIT).

Simulate a deposit (Sandbox only)

POST /deposits/simulate creates a production-like deposit against a client's virtual account. It is available only in Sandbox and moves no real money— use it to trigger webhook notifications, exercise auto-processing of payments, and test deposit retrieval.

curl -X POST "https://api.sandbox.capay.com.au/deposits/simulate" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"amount": 10,
"accountNumber": "999000123",
"routingNumber": "012999",
"currencyCode": "AUD",
"name": "CAPAY Sandbox",
"paymentReference": "Test deposit"
}'
tip

The maximum simulated amount is 100. amount is the only required field; currencyCode is required for multi-currency accounts.