# Bank Ramp Tenant Settings

Read what your tenant offers its users with the bank ramp in one environment — which functions are on, where pay-ins go, which currencies and networks, and the fees — so your app shows only what will work.

## Overview

The Aurea operator switches the bank ramp on for your tenant, environment by environment ([Bank Ramp Setup](https://docs.aureahub.com/docs/bank-setup.md)). The bank ramp endpoints that create something follow those settings, and this endpoint returns them for one environment. It answers from Aurea's records.

- `isTestnet=true` reads the sandbox settings; `false` or omitted reads production.
- `switchedOn` is `false` when your tenant never switched the bank ramp on in that environment: every function is off and no currency is offered.
- `functions.kyc` allows [Onboarding Session](https://docs.aureahub.com/docs/payin-session.md); `functions.payin` allows [Initiate Deposit](https://docs.aureahub.com/docs/payin-initiate.md) and [Simulate Deposit](https://docs.aureahub.com/docs/sandbox-deposit.md); `functions.payout` allows [Initiate Payout](https://docs.aureahub.com/docs/payout-initiate.md), [Simulate Payout](https://docs.aureahub.com/docs/sandbox-payout.md) and the reads that prepare a payout: [Countries](https://docs.aureahub.com/docs/payout-countries.md), [Search Channels](https://docs.aureahub.com/docs/payout-channels.md), [Channel Form](https://docs.aureahub.com/docs/payout-channel-form.md) and [Saved Beneficiaries](https://docs.aureahub.com/docs/payout-beneficiaries.md), a payout quote with its form steps ([Create a Quote](https://docs.aureahub.com/docs/payout-quote.md), [Answer a Form Step](https://docs.aureahub.com/docs/payout-quote-step.md)) and paying a quote from the user's own wallet ([Pay from a Wallet](https://docs.aureahub.com/docs/payout-wallet-pay.md)). A request for a function that is off answers `403` with `details.code` `NOAH_FUNCTION_OFF`. The other reads — onboarding status, payment methods, deposits, transactions, payout transactions, payout quotes and wallet payouts — always answer.
- `modes.aureaWallets`: pay-ins are delivered to the user's Aurea wallets. `modes.standalone`: pay-ins are delivered to addresses outside Aurea that the user proved they own, and users can prove one ([Standalone Pay-In](https://docs.aureahub.com/docs/guide-standalone-payin.md)); asking for or verifying a proof while it is off answers `403` with `details.code` `NOAH_MODE_OFF`. With both, either kind of address is accepted.
- `currencies`: the pairs your tenant offers, in the shape of [Currencies & Networks](https://docs.aureahub.com/docs/bank-currencies.md).
- `fees`: the business fee set for your tenant, per flow and bank payment method type (`null` for every other type). `feePct` and `feeBase` are decimals written as text; `fiatCurrency` is the currency of `feeBase`, `null` when `feeBase` is zero. The pay-in fee reaches the bank ramp with every [Initiate Deposit](https://docs.aureahub.com/docs/payin-initiate.md), and the bank ramp takes it from each deposit. The payout fee for the channel's payment method type, or the one for every type, reaches the bank ramp with every [payout quote](https://docs.aureahub.com/docs/payout-quote.md) and shows in its `breakdown`; the hosted [Initiate Payout](https://docs.aureahub.com/docs/payout-initiate.md) sends none.
- Answers `403` to a token without a tenant, and when your tenant does not use the bank ramp.

## Endpoint

### `GET /v1/ramp/bank/settings`

Authentication: bearer token required.

Returns what the user's tenant offers with the bank ramp in one environment.

**Query parameters**

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `isTestnet` | boolean | no | `true` for the sandbox settings; `false` or omitted for production. Any other value returns `400`. |

**Responses**

`200` OK

```json
{
  "environment": "sandbox",
  "switchedOn": true,
  "functions": { "kyc": true, "payin": true, "payout": true },
  "modes": { "aureaWallets": true, "standalone": false },
  "currencies": [
    {
      "asset": "USDC",
      "cryptoCurrency": "USDC_TEST",
      "network": "PolygonTestAmoy",
      "addressFormat": "evm",
      "chainId": 80002,
      "tokenAddress": "0xae1D7d8B36E9AbA7D95A75c69d50b38E7e02A9DD",
      "decimals": 6,
      "payin": true,
      "payout": true
    }
  ],
  "fees": [
    { "flow": "payin", "paymentMethodType": "BankSepa", "feePct": "0.5", "feeBase": "0", "fiatCurrency": null }
  ]
}
```

`200` Never switched on

```json
{
  "environment": "production",
  "switchedOn": false,
  "functions": { "kyc": false, "payin": false, "payout": false },
  "modes": { "aureaWallets": false, "standalone": false },
  "currencies": [],
  "fees": []
}
```

`403` No tenant

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

## Implementation

```javascript
async function noahMenu(token, isTestnet) {
  const res = await fetch(`https://api.aureahub.com/v1/ramp/bank/settings?isTestnet=${isTestnet}`, {
    headers: { Authorization: `Bearer ${token}` }
  });
  const settings = await res.json();
  if (!res.ok) throw new Error(settings.message);

  return {
    showKyc: settings.functions.kyc,
    showBankDeposit: settings.functions.payin && (settings.modes.aureaWallets || settings.modes.standalone),
    showProveAddress: settings.modes.standalone,
    showPayout: settings.functions.payout,
    depositPairs: settings.currencies.filter((pair) => pair.payin),
    payoutCurrencies: [...new Set(settings.currencies.filter((pair) => pair.payout).map((pair) => pair.cryptoCurrency))]
  };
}
```

---

Web version: https://docs.aureahub.com/#bank-settings
