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

# Checklist de produção

> Lista de verificação obrigatória antes de ir a produção com a integração ClearPago.

Use este checklist como portão de entrada antes de ativar a integração em produção. Cada item representa um requisito funcional ou operacional necessário para uma operação saudável.

## Credenciais e ambiente

<Check>Credenciais de **produção** geradas e armazenadas em cofre de segredos (não em repositório).</Check>
<Check>Base URL de produção configurada: `https://api.clearpago.com.br`.</Check>
<Check>Nenhum token de sandbox ou desenvolvimento ativo no ambiente de produção.</Check>
<Check>Rotação de credenciais planejada e documentada internamente.</Check>

## Webhooks

<Check>URL de produção registrada via `POST /webhook` com todos os eventos necessários.</Check>
<Check>Endpoint de webhook acessível publicamente via HTTPS com certificado válido.</Check>
<Check>Verificação de `Digital-Signature` implementada e testada em ambiente de staging.</Check>
<Check>Handler de webhook idempotente: reprocessamento não duplica efeito colateral.</Check>
<Check>Chave pública obtida de `GET /public-key` com cache e lógica de rotação.</Check>
<Check>Endpoint responde `2xx` em menos de 5 segundos.</Check>
<Check>Lógica de negócio executada de forma **assíncrona** após a resposta HTTP.</Check>

## Persistência e rastreabilidade

<Check>`id` (UUID) de **cada** recurso criado persistido imediatamente no `201`.</Check>
<Check>`externalId` armazenado junto ao `id` para correlação com o seu sistema.</Check>
<Check>`transactionId` e `endToEndId` armazenados quando disponíveis (webhooks e consultas).</Check>
<Check>`X-Correlation-ID` sendo gerado e enviado em todas as requisições.</Check>
<Check>Logs de criação, webhook recebido e status final retidos por período adequado (mínimo 90 dias).</Check>

## Idempotência e controle de fluxo

<Check>Criação de cash-in não é reenviada para o mesmo `externalId` sem intenção explícita.</Check>
<Check>Cash-out não é reenviado enquanto estiver em `PROVIDER_RESULT_UNKNOWN` ou `RECONCILIATION_REQUIRED`.</Check>
<Check>Refund não ultrapassa o teto disponível (lógica de controle no lado do integrador).</Check>
<Check>Estados intermediários monitorados e não tratados como terminais.</Check>

## Valores monetários

<Check>Todos os campos de request enviados em **BRL** (ex.: `150.75`).</Check>
<Check>Respostas com campos `*_cents` convertidos corretamente para exibição e comparação.</Check>
<Check>Nenhuma comparação direta entre valor em BRL e campo em centavos.</Check>

## Monitoramento e alertas

<Check>Alertas configurados para transações em `PROVIDER_RESULT_UNKNOWN` e `RECONCILIATION_REQUIRED`.</Check>
<Check>Alerta para cash-ins em `PENDING` há mais de N minutos após expiração esperada.</Check>
<Check>Alerta para taxa de erro 5xx no endpoint de webhook.</Check>
<Check>Dashboard de saúde da integração operacional.</Check>
<Check>Runbook de resposta a incidentes documentado internamente.</Check>

## Segurança

<Check>Todos os itens do [Checklist de segurança](/go-live/security-checklist) validados.</Check>

## Observabilidade

<Check>Todos os itens do [Checklist de observabilidade](/go-live/observability-checklist) validados.</Check>

## Testes de aceitação

<Check>Fluxo de cash-in (criação → pagamento → webhook `pix_cash_in` → `GET` confirmado) testado end-to-end.</Check>
<Check>Fluxo de cash-out (criação → `CONFIRMED` → webhook `pix_cash_out`) testado.</Check>
<Check>Fluxo de refund-in (`POST refund-in/{id}` → webhook `pix_cash_in_reversal`) testado.</Check>
<Check>Handler de webhook idempotente testado com reenvio do mesmo payload.</Check>
<Check>Falha de assinatura testada: endpoint retorna `401`.</Check>
<Check>Tratamento de `externalId` duplicado (`409`) testado.</Check>

## Contato de suporte

`TODO: confirmar canal oficial de suporte técnico para produção.`

Em produção, acione o suporte com:

* `id` da transação afetada
* `X-Correlation-ID` das chamadas
* Timestamp do problema
* Status atual (`GET /.../{id}`)
* Logs relevantes do seu sistema

Endereço atual de suporte: [tech@clearpago.com.br](mailto:tech@clearpago.com.br)
