> ## Documentation Index
> Fetch the complete documentation index at: https://guides.saber.money/llms.txt
> Use this file to discover all available pages before exploring further.

# User Creation

> Covers registering merchant users in Saber Money, completing KYC, and linking bank accounts to enable on-ramp and off-ramp transactions.

Every user belonging to a merchant must be registered in Saber before they can transact — this is the foundation for all onramp and offramp operations.

Two steps are required to process transactions: **creating a user** and **completing KYC**. Some flows also require **adding a bank account**.

## 1. Creating a User

Registers the user in Saber and assigns them a wallet for offramp.

```bash theme={null}
curl --location 'https://api.saber.money/api/v2/user' \
--header 'X-Timestamp: {{timestamp}}' \
--header 'X-Api-Key: •••••••' \
--header 'X-Signature: •••••••' \
--header 'X-Request-Id: 123456789876' \
--data-raw '{
    "user_uuid": "77c4562e-ce47-4054-9d4e-4df69ca61ac2",
    "client_user_id": "Test ACcount",
    "email": "kk@mail1.com", 
    "phone": "+918734567891" // E.164 format "+" + country_code + number
}'
```

Email and phone are required depending on your client registration config. The wallet is created automatically.

**API Reference:** [Register User](https://saber-money.readme.io/reference/registerauser)

## 2. KYC for a User

Required before any transaction. Three methods, depending on your flow:

* **KYC Sharing via API:** You verify the user yourself and share the approved details with Saber. A bank account may still need to be added separately.
* **KYC via Web Widget:** Saber handles verification and bank account addition end-to-end — recommended for a seamless integration.
* **KYC via Partner URL:** Required for certain flows that mandate partner KYC — see the KYC section for details.

**Get started:** [KYC Sharing](https://guides.saber.money/docs/kyc-sharing) · [KYC SDK](https://guides.saber.money/docs/kyc-sdk)

## 3. Add Bank Account

Required for most onramp/offramp flows. Three ways to add one:

* **API endpoint** — for INR, EUR, and GBP flows.
* **Web widget** — for USD onramp, linked via Plaid.
* **Post-KYC prompt** — if using the KYC web widget, users can add their INR bank account right after KYC (enabled by default; contact Saber to disable).

```bash theme={null}
curl --location 'https://api.saber.money/api/v2/user/bank_account' \
--header 'X-Timestamp: {{timestamp}}' \
--header 'X-Api-Key: •••••••' \
--header 'X-Signature: •••••••' \
--header 'X-Request-Id: 123456789876' \
--header 'X-User-Id: •••••••' \
--data '{
    "account_number": "1234567890",
    "account_holder_name": "John Doe",
    "bank_code": "SBIN0004855",
    "account_type": "SAVINGS",
    "country": "IND"
}'
```

**API Reference:** [Add/Delete Bank](https://saber-money.readme.io/reference/adddeletebankaccount)

## Other User Operations

| Operation                          | Description                                                     |
| ---------------------------------- | --------------------------------------------------------------- |
| **Retrieve User**                  | Fetch details of a registered user.                             |
| **Update User** *(in development)* | Modify user information.                                        |
| **Fetch User Wallet Balance**      | Wallet balance for Indian users, to check funds before offramp. |

Only KYC-approved users can perform onramp and offramp operations.


## Related topics

- [KYC Widget](/user/kyc/widget.md)
- [Overview](/user/overview.md)
- [Frequently Asked Questions](/faq.md)
