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

# Ambientes

> Sandbox e produção convivem na mesma conta — o ambiente é definido pela chave de API.

A Bob Payments tem **dois ambientes** na mesma conta. Você não troca de login nem de URL — o ambiente é definido pelo **prefixo da chave de API** que você usa em cada requisição.

| Ambiente     | Prefixo da chave | Processa dinheiro real? |
| ------------ | ---------------- | ----------------------- |
| **Sandbox**  | `sk_test_*`      | Não                     |
| **Produção** | `sk_live_*`      | Sim                     |

<Note>
  A URL base é a mesma nos dois ambientes (`https://api.payments.bob.company`). O que muda é a chave: os SDKs detectam o ambiente pelo prefixo (`bob.environment` retorna `'sandbox'` ou `'live'`).
</Note>

## Sandbox

Ambiente isolado para desenvolver e testar sem cobranças reais. Tudo funciona como em produção — inclusive webhooks — mas nenhuma transação é processada de verdade.

* O desfecho da cobrança é controlado pelos **dois últimos dígitos do valor** (`.00` paga, `.01` expira, `.02` fica pendente).
* Transações criadas com `sk_test_*` ficam isoladas das de produção e incluem `isSandbox: true` no payload dos webhooks.

Comece por aqui antes de ir para produção. Veja [Sandbox](/pages/sandbox).

## Produção

Ambiente real, com a chave `sk_live_*`. Use somente depois de validar o fluxo completo no sandbox e passar pelo checklist de segurança.

<Warning>
  Nunca use `sk_live_*` em código frontend, repositórios públicos ou variáveis de ambiente não protegidas. As chaves secretas só existem no backend.
</Warning>

Veja o checklist em [Ir para produção](/pages/production).

## Como trocar de ambiente

Basta **trocar a chave de API** — nenhuma mudança de código é necessária:

```bash theme={"system"}
# Sandbox
BOB_API_KEY=sk_test_sua_chave

# Produção
BOB_API_KEY=sk_live_sua_chave
```

## Próximos passos

<CardGroup cols={2}>
  <Card title="Testar no sandbox" icon="flask" href="/pages/sandbox">
    Rode o fluxo completo sem movimentar dinheiro real.
  </Card>

  <Card title="Autenticação" icon="key" href="/pages/authentication">
    Entenda as chaves `sk_test_` e `sk_live_` e os erros de auth.
  </Card>

  <Card title="Ir para produção" icon="rocket" href="/pages/production">
    Passe pelo checklist antes de processar pagamentos reais.
  </Card>
</CardGroup>
