Sandbox uses rUSD on Base Sepolia. See Sandbox Testing.
Overview
- Production: USDC on Base.
- Sandbox: rUSD on Base Sepolia.
POST /depositscreates a deposit address.- Use
GET /depositsorGET /deposits/to track status. - No extra scopes are required.
Flow
API flows (step‑by‑step)
Create a deposit
Endpoint:
Body: productionAlways display and fund the address in
POST /depositsBody: production
{ currency: "usdc", network: "base", amount? }; sandbox { currency: "rusd", network: "base", amount? }depositAddress.
We return the correct address for the environment:- Sandbox:
depositAddresspoints to the collateral contract’s deposit address; send rUSD there. - Production:
depositAddressis the ChangeNow pay‑in address; send USDC on Base there.
Track status
Endpoint:
GET /deposits/ or GET /deposits?scope=activescope=active returns recent in‑flight deposits; use scope=all for full history.Fields (create)
Production:
usdc. Sandbox: rusd.base.Optional amount to deposit.
Response (deposit)
Deposit id.
Collateral contract id used for the deposit.
ChangeNow order id (production only).
Deposit currency (usdc in production, rusd in sandbox).
Deposit network (base).
Address to fund the deposit. Use this in both sandbox and production.
In sandbox it’s the collateral contract’s deposit address; in production it’s the exchange pay‑in address.
Chain id for the deposit network.
Minimum deposit amount.
Maximum deposit amount (if provided).
awaitingDeposit | processing | completed | failed | canceled.ISO 8601 timestamp when the deposit was created.
ISO 8601 timestamp when the deposit was last updated.
Status values
awaitingDeposit: address created, waiting on chain.processing: detected, being processed.completed: funds settled.failed/canceled: deposit did not complete.