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

# Integrate Your Organization with the BrandWallet API

> BrandWallet's REST API lets your organization look up customers, list and redeem coupons, and process basket transactions with loyalty campaigns and rewards.

BrandWallet provides a REST API for any organization that wants to integrate with its loyalty platform — POS systems, e-commerce platforms, mobile apps, and other partners. The API lets you look up customers, apply loyalty rewards, redeem coupons, and process basket transactions — giving your system a direct connection to BrandWallet's loyalty engine in real time.

<RequestExample>
  ```text Base URL — production theme={null}
  https://apigw.brand-wallet.com
  ```

  ```text Base URL — sandbox theme={null}
  https://dev-apigw.brand-wallet.com
  ```

  ```text Content type theme={null}
  Content-Type: application/json
  ```
</RequestExample>

## API basics

| Property              | Value                                 |
| --------------------- | ------------------------------------- |
| Base URL — production | `https://apigw.brand-wallet.com`      |
| Base URL — sandbox    | `https://dev-apigw.brand-wallet.com`  |
| Content-Type          | `application/json`                    |
| Authorization         | `Authorization: Bearer <accessToken>` |
| Field naming          | camelCase                             |

<Note>
  Access tokens are scoped to a single organization. All API calls made with a given token operate on that organization's data only.
</Note>

<Note>
  Code examples across this documentation use `$BASE_URL` as a placeholder — replace it with the base URL of the environment you are targeting (production or sandbox, listed above).
</Note>

Use the **sandbox** environment to build and test your integration; sandbox credentials and data are separate from production. Switching to production only requires changing the base URL and the credentials.

## Credentials

You need two credentials to authenticate API requests:

* **API key** — Identifies your integration. Issued once and shared across all merchants you connect.
* **API secret** — Identifies the merchant organization. You receive one per merchant during their onboarding.

See [Authentication](/api/authentication) for how to exchange them for an access token.

## Multi-tenant architecture

BrandWallet is a multi-tenant system. Your API key remains the same across all merchants you connect; each merchant has its own API secret. Because each access token is scoped to a single organization, your integration must request and store a separate access token for every merchant organization it connects to. Treat each organization's token independently — do not share tokens across merchants.
