Skip to main content
POST
/
v1
/
accounts
/
{account_id}
/
deposits
curl
curl -X POST "https://api.services.payward.com/v1/accounts/W4BE9868GY65TB6523/deposits" \
  -H "API-Key: $PWS_API_KEY" \
  -H "API-Nonce: $PWS_API_NONCE" \
  -H "API-Sign: $PWS_API_SIGN" \
  -H "Idempotency-Key: 550e8400-e29b-41d4-a716-446655440000" \
  -H "Content-Type: application/json" \
  -d '{
    "asset": {
      "symbol": "USD",
      "type": "fiat",
      "amount": "1000000.00"
    },
    "via": "fedwire"
  }'
{
  "data": {
    "id": "dep_wire_4kM",
    "status": "pending",
    "account": "W4BE9868GY65TB6523",
    "asset": {
      "symbol": "USD",
      "name": "US Dollar",
      "type": "fiat",
      "amount": "1000000.00"
    },
    "reference": "PWS-DEP-4kM-2026",
    "inbound": {
      "id": "vacct_wire_4kM",
      "via": "fedwire",
      "status": "active",
      "lifecycle": "reusable",
      "routing": {
        "routing_number": "026009593",
        "account_number": "4400289417",
        "beneficiary_name": "Payward Services Inc (ref: PWS-DEP-4kM-2026)"
      },
      "created_at": "2026-04-24T10:00:00Z"
    },
    "created_at": "2026-04-24T10:00:00Z"
  }
}

Authorizations

api-key
string
header
required
api-sign
string
header
required
api-nonce
string
header
required
api-otp
string
header
required

Headers

Idempotency-Key
string<uuid>

Client-generated UUIDv4 for safe retries. Sent as the Idempotency-Key HTTP header. Replayed responses include the Idempotent-Replayed: true header.

Pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$
Example:

"550e8400-e29b-41d4-a716-446655440000"

Path Parameters

account_id
string
required

ID of the account the request applies to. This refers to one of the accounts held by the user the request is acting on behalf of (typically the user's main account, but any of the user's accounts is accepted). Routes the request to that specific account container. Canonical identifier for an account in the Payward public API.

Required string length: 14 - 42

Body

application/json

Request to create a one-shot deposit (top-up).

asset
object
required

Asset and expected deposit amount. Money-like shape { symbol, type, amount }.

via
string
required

Unified rail or network identifier. Fiat rails: sepa, fps, fedwire, ach, swift. Crypto networks: bitcoin, ethereum, solana, tron, polygon, arbitrum. Discover supported values per asset via GET /v1/swap/assets (supported_rails[]).

Required string length: 1 - 32

Response

Successful response

data
object

A one-shot top-up to the account ledger.

Lifecycle: pendingreceivedcredited. Single-use crypto inbounds without a deposit transition to expired after their TTL.