Skip to main content
POST
Create a new recipient (crypto or fiat)
Create and manage payout and settlement destinations for your account. HashRails supports two recipient types:
  • Bank account - settle to a local bank account
  • Crypto - settle in USDC or USDT to a wallet address

Crypto Recipients

For crypto recipients, you need:
  • wallet_address - Ethereum wallet address (required for crypto)
  • network - Blockchain network (e.g., Polygon, Ethereum)
  • symbol - Cryptocurrency symbol (e.g., USDC, USDT)

Fiat Recipients

For fiat recipients, you need:
  • account_number - Bank account number (10 digits)
  • bank_code - Bank code (get available codes from Get Banks)
  • currency - Fiat currency (e.g., NGN, USD, EUR)

Common Fields

Both types require:
  • name - Recipient name
  • type - Either “crypto” or “fiat”

Authorizations

Authorization
string
header
required

JWT access token from POST /v1/auth/token/issue. Send as: Authorization: Bearer <access_token>

Headers

x-idempotency-key
string

Idempotency key for the create recipient request

Example:

"1234567890-1234567890-1234567890"

Body

application/json

Create a crypto recipient to receive settlement in USDC or USDT.

type
enum<string>
required

Recipient type.

Available options:
crypto
Example:

"crypto"

name
string
required

A label for this recipient.

Example:

"My USDT Wallet"

wallet_address
string
required

The destination wallet address.

Example:

"0x3fA91D6b84bE2c0BFD7647a92E5B1A2Ec6F8C91e"

network
enum<string>
required

Blockchain network for settlement.

Available options:
Ethereum,
BSC,
Tron
Example:

"Ethereum"

symbol
enum<string>
required

Cryptocurrency to settle in.

Available options:
USDC,
USDT
Example:

"USDT"

Response

201 - application/json

Recipient created successfully

message
string
Example:

"Recipient created successfully"

data
object