Skip to content

Full API Reference

Base URL: https://rach-caas-api-dx75yvdhaq-nw.a.run.app
API Version: 1.0.1
Spec: Swagger UI · OpenAPI JSON


Authentication

SchemeHeaderUsed By
API KeyX-API-Key: rach_sk_live_*All B2B endpoints
JWT BearerAuthorization: Bearer <token>All Dashboard endpoints

B2B — Users

MethodPathSummary
POST/v1/users/provisionProvision User SCW Address
GET/v1/users/balanceGet Customer USDC Balance
POST/v1/users/fundFund Customer SCW (On-Ramp)
POST/v1/users/withdrawInitiate Off-Ramp Withdrawal
POST/v1/users/update-phoneUpdate Customer Phone Number

B2B — Transfers

MethodPathSummary
POST/v1/transfers/sendSend Instant On-Chain Transfer

B2B — FX

MethodPathSummary
POST/v1/fx/quoteGet FX Conversion Quote

Dashboard

MethodPathSummaryAuth
GET/v1/dashboard/metricsGet Dashboard Overview MetricsJWT
GET/v1/dashboard/depositsList DepositsJWT
GET/v1/dashboard/deposits/{id}Get Deposit DetailJWT
GET/v1/dashboard/transfersList Asynchronous LedgerJWT
GET/v1/dashboard/transfers/{id}Get Granular Transfer DetailsJWT
GET/v1/dashboard/usersList SCW User DirectoryJWT
GET/v1/dashboard/users/lookupLookup User by Wallet AddressJWT
GET/v1/dashboard/users/{blind_index}Get User DetailJWT
POST/v1/dashboard/users/{blind_index}/update-phoneAdmin: Update User Phone HashJWT
GET/v1/dashboard/withdrawalsList WithdrawalsJWT
GET/v1/dashboard/withdrawals/{id}Get Single WithdrawalJWT
GET/v1/dashboard/withdrawals/pending-payoutsList Pending Payouts (super admin)JWT
POST/v1/dashboard/withdrawals/{id}/confirm-payoutConfirm Local Fiat Payout (super admin)JWT

Treasury

MethodPathSummaryAuth
GET/v1/dashboard/treasury/tenant-balanceGet Tenant USDC BalanceJWT
POST/v1/dashboard/treasury/topupSubmit Treasury TopupJWT
POST/v1/dashboard/treasury/topup/{id}/confirmConfirm TopupJWT
GET/v1/dashboard/treasury/topupsList Treasury TopupsJWT
GET/v1/dashboard/treasury/usdcGet USDC Treasury BalanceJWT
GET/v1/dashboard/treasury/paymasterGet Live Paymaster Gas TankJWT

Compliance

MethodPathSummaryAuth
POST/v1/dashboard/users/{blind_index}/freezeFreeze User SCWJWT

Developer

MethodPathSummaryAuth
GET/v1/dashboard/apikeysList API KeysJWT
POST/v1/dashboard/apikeysGenerate API KeyJWT
DELETE/v1/dashboard/apikeys/{id}Revoke API KeyJWT
GET/v1/dashboard/webhooksList WebhooksJWT
POST/v1/dashboard/webhooksCreate WebhookJWT
DELETE/v1/dashboard/webhooks/{id}Delete WebhookJWT
GET/v1/dashboard/webhooks/logsList Webhook LogsJWT

Governance

MethodPathSummaryAuth
GET/v1/dashboard/teamList Team MembersJWT
POST/v1/dashboard/teamInvite Team MemberJWT
DELETE/v1/dashboard/team/{id}Remove Team MemberJWT

Telecom (USSD)

MethodPathSummaryAuth
POST/v1/ussd/callback/atProcess Africa's Talking USSD WebhookTelecom-signed
POST/v1/ussd/callback/mtnProcess MTN Nigeria USSD WebhookTelecom-signed

Data Models

ProvisionUserResponse

json
{
  "wallet_address": "string",
  "blind_index": "string",
  "status": "string",
  "created_at": "string (ISO 8601)"
}

BalanceResponse

json
{
  "wallet_address": "string",
  "balance_usdc": "string"
}

FundUserResponse

json
{
  "deposit_id": "string",
  "status": "string",
  "message": "string",
  "created_at": "string (ISO 8601)"
}

TransferResponse

json
{
  "transfer_id": "string",
  "status": "string",
  "message": "string",
  "created_at": "string (ISO 8601)"
}

QuoteResponse

json
{
  "quote_id": "string",
  "currency_pair": "string",
  "fiat_amount": "string",
  "rate": "string",
  "expected_out": "string",
  "target_token": "string",
  "expires_at": "string (ISO 8601)"
}

WithdrawResponse

json
{
  "withdrawal_id": "string",
  "status": "string",
  "message": "string"
}

ExtendedTransactionInstance

json
{
  "id": "string",
  "masked_sender": "string",
  "recipient_address": "string",
  "status": "string",
  "tx_hash": "string",
  "user_index": "string",
  "created_at": "string (ISO 8601)",
  "settled_at": "string (ISO 8601)",
  "financials": {
    "local_amount": "number",
    "local_currency": "string",
    "stablecoin_settled": "number",
    "crypto_ticker": "string",
    "fx_quote_id": "string",
    "applied_bps_markup": "integer"
  },
  "erc4337_context": {
    "user_op_hash": "string",
    "nonce": "integer",
    "gas_paid_eth": "string"
  }
}

DashboardMetrics

json
{
  "total_active_wallets": "integer",
  "total_processing_volume_crypto": "number",
  "successful_user_ops_24h": "integer",
  "failed_user_ops_24h": "integer"
}

TenantBalanceResponse

json
{
  "available_usdc": "string",
  "reserved_usdc": "string",
  "total_funded_usdc": "string",
  "mmo_id": "string"
}

LivePaymasterGasCapacity

json
{
  "paymaster_address": "string",
  "entrypoint_address": "string",
  "current_balance_eth": "number",
  "estimated_tx_runway": "integer",
  "alert_threshold_eth": "number",
  "critical_threshold_eth": "number",
  "status": "string"
}

Rach Payments API