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

# Going Live

> Switch from sandbox to production when you're ready to process real payments.

## Steps to Go Live

1. In **Settings → API Keys**, create a new key with **Activate Sandbox Clicked** — prefix will be `sk_live_`
2. Update base URL to `https://api.usebila.com/api/v1`
3. Replace `sk_test_` keys with `sk_live_` in your environment variables
4. Register a new production webhook and save the new signing secret

<Warning>
  Production keys process real money immediately. Never use them for testing.
</Warning>

***

## Pre-Launch Checklist

### Setup

* Sandbox activated via **Settings → Environment**
* `sk_test_` key created and stored in environment variable
* Connection verified — `GET /bila/accounts` returns wallet data

### Collections

* Successful collection returns `"status": "successful"`
* Reference with `fail` returns `"status": "failed"`
* Duplicate reference returns `409`
* Status polling transitions correctly from `pending`

### Transfers

* Successful transfer returns `"status": "successful"`
* Reference with `fail` returns `"status": "failed"`
* Amount exceeding balance returns `400` `INSUFFICIENT_BALANCE`
* Status polling transitions correctly from `pending`

### Webhooks

* Webhook registered and signing secret stored
* Signature verification implemented and tested
* `payment.completed` and `payment.failed` received correctly
* Duplicate delivery detection via `X-Bila-Delivery` working
* Endpoint returns `200` in under 10 seconds

***

## Support

* **Email** — [support@usebila.com](mailto:support@usebila.com) — include your transaction `reference` or `X-Bila-Delivery` ID
