ndeipipayments APIv1 · 0.1.0-draftAPI reference

Object

The deposit account object

Fields

idstringrequired

Starts with da_.

objectstringrequired
user_idstringrequired

Starts with usr_.

statusstringrequired

One of active, deactivated.

sourceobjectrequired
source.currencystringrequired

Lower-case ISO 4217 fiat currency code.

source.railstringrequired

A payment rail code, published by GET /routes. Not an enum by design.

destinationobjectrequired
destination.wallet_idstringrequired

Starts with wal_.

destination.assetstringrequired

A wallet asset code. The set is data on GET /routes. In 1.0 it holds two assets:

  • ndeipi-points: Ndeipi Points, bought with fiat on Absa or PayPal at a fixed price per currency and cashed out the same way. Every user's default asset.
  • ndeipi-coin: NdeipiCoin, opt-in. Its price moves. It is bought and sold only by converting points at a locked quote (POST /quotes), never directly with fiat. A wallet needs acknowledge_price_risk: true to create.
deposit_instructionsDepositInstructionsrequired
metadataobject

Integrator key-value data, returned unchanged. Up to 50 keys; keys up to 40 characters, values up to 500.

versionintegerrequired
created_attimestamprequired
Example
{
  "id": "da_01JA8ZF5TP0R5B8Z6Y3X2W1V0T",
  "object": "deposit_account",
  "user_id": "usr_01JA8Z2F5G6H7J8K9M0N1P2Q3R",
  "status": "active",
  "source": {
    "currency": "zar",
    "rail": "absa_eft"
  },
  "destination": {
    "wallet_id": "wal_01JA8Z4K2V9QW3H6Y7XKD2M0RS",
    "asset": "ndeipi-points"
  },
  "deposit_instructions": {
    "type": "bank",
    "currency": "zar",
    "rail": "absa_eft",
    "bank_name": "Absa Bank",
    "bank_address": "15 Troye Street, Johannesburg",
    "account_name": "Ndeipi Payments (Pty) Ltd",
    "account_number": "4091234567",
    "routing_code": "632005",
    "swift_bic": "ABSAZAJJ",
    "reference": "ND7K3Q9P"
  },
  "metadata": {},
  "version": 1,
  "created_at": "2026-10-16T09:30:00Z"
}