Mock Fiat Deposits

The sandbox environment provides endpoints to simulate incoming fiat and crypto deposits for testing. Each supported rail has its own endpoint.

📘

All mock deposit endpoints are sandbox-only and return HTTP 200 with no body on success. Completion is notified via webhook as PAYMENT_IN_COMPLETED.


Brazil — PIX

Simulates an incoming PIX deposit in BRL. Requires a pre-created transaction ID.

Endpoint: POST /v1/transactions/sandbox/pix

curl -X POST "https://api.sandbox.caliza.com/core-api/v1/transactions/sandbox/pix" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer {{ACCESS_TOKEN}}" \
  -d '{
    "transactionId": "{{TRANSACTION_ID}}",
    "documentId": "{{DOCUMENT_ID}}"
  }'
FieldTypeRequiredDescription
transactionIdstringYesThe transaction ID to mock the deposit for
documentIdstringNoBeneficiary's CPF or CNPJ

Mexico — SPEI

Simulates an incoming SPEI deposit in MXN. Requires a pre-created transaction ID.

Endpoint: POST /v1/transactions/sandbox/spei

curl -X POST "https://api.sandbox.caliza.com/core-api/v1/transactions/sandbox/spei" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer {{ACCESS_TOKEN}}" \
  -d '{
    "transactionId": "{{TRANSACTION_ID}}"
  }'
FieldTypeRequiredDescription
transactionIdstringYesThe transaction ID to mock the deposit for

United States — ACH, WIRE, SWIFT

Simulates an incoming USD deposit via ACH, WIRE, or SWIFT. Unlike PIX and SPEI, this endpoint does not require a pre-created transaction ID — you provide the beneficiary and amount directly.

Endpoint: POST /v1/transactions/sandbox/usd-deposit

curl -X POST "https://api.sandbox.caliza.com/core-api/v1/transactions/sandbox/usd-deposit" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer {{ACCESS_TOKEN}}" \
  -d '{
    "beneficiaryId": "{{BENEFICIARY_ID}}",
    "amount": 100.0,
    "accountNumber": "{{ACCOUNT_NUMBER}}",
    "paymentRail": "WIRE"
  }'
FieldTypeRequiredDescription
beneficiaryIdstringYesThe beneficiary ID to credit the deposit to
amountnumberYesThe deposit amount in USD
accountNumberstringYesThe virtual account number (retrieved from GET /v1/beneficiaries/{beneficiaryId}/virtualAccounts)
paymentRailstringYesOne of: ACH, WIRE, SWIFT

Crypto deposits

For crypto deposits, no dedicated mock endpoint is needed. Call the deposit transaction hash endpoint and the sandbox will simulate the full flow:

Endpoint: PUT /v1/transactions/{transactionId}/depositTransactionHash

curl -X PUT "https://api.sandbox.caliza.com/core-api/v1/transactions/{{TRANSACTION_ID}}/depositTransactionHash" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer {{ACCESS_TOKEN}}" \
  -d '{
    "transactionHash": "{{TRANSACTION_HASH}}"
  }'