# Banks and Mobile Money for an Asset

> Coming soon, upon request — this feature is turned on for your tenant by the Aurea team. [Contact us](https://www.aureahub.com/contact)

The institutions a withdrawal in an asset can pay, each with the id a withdrawal names.

## Overview

- `type` is `bank` or `momo` (mobile money). Use `institutionId` in a `bank` or `momo` destination.
- The list comes from the bank ramp and can change: read it when your app builds the withdrawal form.
- `400` `BANK_RAMP_PAIR_UNAVAILABLE` for an asset your tenant does not offer; `503` when the bank ramp cannot be reached now.

Called with the user's access token, in one environment (`isTestnet`). See [Bank Ramp: Local Rails](https://docs.aureahub.com/docs/guide-bank-local.md).

## Endpoint

### `GET /v1/ramp/bank/customer/institutions`

Authentication: bearer token required.

The banks and mobile money operators a withdrawal in an asset can pay.

**Query parameters**

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `asset` | string | yes | An asset code, uppercase: `KES`, `MWK`… |
| `isTestnet` | boolean | no | `true` for the sandbox; `false` or omitted for production |

**Responses**

`200` Institutions

```json
{
  "environment": "production",
  "asset": "KES",
  "institutions": [
    {
      "institutionId": "mpesa-ke",
      "name": "M-Pesa",
      "type": "momo"
    },
    {
      "institutionId": "example-bank-ke",
      "name": "Example Bank Kenya",
      "type": "bank"
    }
  ]
}
```

`403` No tenant

```json
{
  "statusCode": 403,
  "error": "ForbiddenError",
  "message": "This request needs a tenant: an admin token without one has no bank ramp customer.",
  "details": {
    "code": "TENANT_REQUIRED"
  }
}
```

---

Web version: https://docs.aureahub.com/#local-institutions
