Register a user

Register an end user under your account, along with the wallet addresses they send from. Register only an address that the end user alone controls. Do not register an omnibus address — a pooled, custodial, or exchange deposit address holding funds for more than one party. Automated returns of an inbound transfer (an overfunded, expired, or canceled order, or a stray late deposit) go back to the exact address that funded the order, so a return on a pooled address is delivered to the pool operator rather than to the end user who paid, and TBMC cannot redirect it once sent. A wallet must be registered (and activated) for its on-chain transfers to fund a payment order: a deposit is attributed only when you submit its transaction hash to POST /payment-orders/{paymentOrderId}/transactions and the transfer's sender matches a registered wallet.

Pass subaccountId to register the user under one of your subaccounts. Labels are unique per account, so the same label can exist in your account and in a subaccount without colliding.

Body
required
application/json
  • label
    Type: string
    required
  • wallets
    Type: array object[]
    required
  • subaccountId
    Type: string Format: uuid

    Create this under one of your subaccounts instead of the authenticated account. Must be a direct child of the authenticated account.

Responses
  • application/json
  • application/json
  • application/json
  • application/json
  • application/json
Request Example for post/api/v1/add-user-record
curl https://api.bettermoney.com/api/v1/add-user-record \
  --request POST \
  --header 'Content-Type: application/json' \
  --data '{
  "label": "",
  "subaccountId": "",
  "wallets": [
    {
      "address": "",
      "chain": ""
    }
  ]
}'
{
  "message": "success",
  "data": {
    "id": "string",
    "label": "string",
    "accountId": "123e4567-e89b-12d3-a456-426614174000",
    "wallets": [
      {
        "address": "string",
        "chain": "string",
        "status": "PENDING"
      }
    ]
  }
}