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

# Handle multiple settlement accounts

<div className="Goal">
  ## Goal

  Enable routing of payments to the correct settlement account when your organization is assigned multiple accounts.

  <Note>
    If your organization is not subject to a funds isolation requirement and will process transactions through a single settlement account, you can skip this guide.
  </Note>
</div>

## Steps

***

## Step 1: Receive account identifiers

<div className="What">
  <p className="bold-header">What you need to do</p>

  Fetch the list of settlement accounts assigned to your organization and retain their `account_id` values.
</div>

#### How to do it

* Call the [list-accounts](./apireference/accounts/list-accounts) endpoint.

## Step 2: Pass account identifiers in payment requests

<div className="What">
  <p className="bold-header">What you need to do</p>

  Include the correct `account_id` on all payment submissions when multiple settlement accounts exist.
</div>

#### How to do it

* Update requests to [create-intent](./apireference/intent/create-intent) and [authorize-payment](./apireference/authorization/authorize-payment) to include the relevant `account_id` parameter

This allows Push to determine how the payment should be settled.

<Note>
  If you omit `account_id` while multiple accounts exist, the request will fail
</Note>

<RequestExample>
  ```bash List Accounts theme={null}
  curl --request GET \
    --url https://api.pushcash.com/account/list \
    --header 'Authorization: Bearer <token>'
  ```

  ```bash Create Intent theme={null}
  curl --request POST \
    --url https://sandbox.pushcash.com/intent \
    --header 'Authorization: Bearer <token>' \
    --header 'Content-Type: application/json' \
    --data '
  {
    "user_id": "user_lVpbPL0K1XIiHx0DxipRbD",
    "amount": 2500,
    "currency": "USD",
    "direction": "cash_in",
    "account_id": "account_meBdiVBJc6QMVyxVwdR0QE"
  }
  '
  ```

  ```bash Authorize Payment theme={null}
  curl --request POST \
    --url https://sandbox.pushcash.com/authorize \
    --header 'Authorization: Bearer <token>' \
    --header 'Content-Type: application/json' \
    --data '
  {
    "user_id": "user_lVpbPL0K1XIiHx0DxipRbD",
    "amount": 2500,
    "currency": "USD",
    "direction": "cash_in",
    "token": "token_mbDRHFi3dxIZEtykHsgUGC",
    "account_id": "account_7xvtLBSR1SKTDNjfgRRoSE"
  }
  '
  ```
</RequestExample>

<ResponseExample>
  ```json Accounts List theme={null}
  {
    "data": [
      {
        "id": "account_7xvtLBSR1SKTDNjfgRRoSE",
        "type": "settlement",
        "name": "Sportsbook NJ",
        "balance": 0,
        "created_at": "2024-01-01T17:50:43Z"
      },
      {
        "id": "account_meBdiVBJc6QMVyxVwdR0QE",
        "type": "settlement",
        "name": "Sportsbook AZ",
        "balance": 0,
        "created_at": "2024-01-01T17:55:12Z"
      }
    ]
  }
  ```
</ResponseExample>

## Integration Checklist

* Retrieve settlement accounts identifiers from the API
* Implement logic to select the appropriate settlement account for a given payment request
* Pass `account_id` in all `/intent` and `/authorize` requests
