Menu da documentação
Guias
Ambientes: sandbox e produção
O Pagaki tem dois ambientes separados: cada um com o seu banco, as suas credenciais, os seus webhooks e as suas instalações de gateway. Nada passa de um para o outro.
| Sandbox | Produção | |
|---|---|---|
| API | https://api.sandbox.pagaki.com.br |
A definir (proposta: https://api.pagaki.com.br) |
| Token | https://api.sandbox.pagaki.com.br/oauth/token |
/oauth/token no host da produção |
| Painel | No sandbox, a conta é criada pela equipe do Pagaki (M5.6) | Criada na contratação |
| Gateways | Os sandboxes oficiais (Asaas: https://api-sandbox.asaas.com/v3) |
As contas reais |
| Dinheiro | Nenhum dinheiro de verdade | Real |
livemode nos webhooks |
false |
true |
| E-mails | Não saem (ficam em log) | Saem |
| Atualizações | Recebe toda versão nova antes da produção | Recebe depois do sandbox |
Todo deploy passa primeiro pelo sandbox, com testes automáticos, e só então vai para a produção. Uma mudança da API aparece no sandbox antes.
Credenciais
client_ideclient_secretsão por ambiente. O do sandbox não funciona na produção, e vice-versa.- A lista de IPs permitidos também é por ambiente: cadastre os IPs de cada um.
- Os IDs (
pay_…,evt_…) só existem no ambiente onde nasceram. Consultar no ambiente errado dá404 not_found. - Guarde as credenciais de cada ambiente em variáveis separadas e confira
livemodeno endpoint de webhook de produção (recusefalse).
Planejado cadastro sozinho no sandbox, com chaves de teste geradas na hora.
Credenciais de sandbox do gateway
No sandbox, o Pagaki usa o sandbox oficial de cada gateway, na sua conta. Para o Asaas:
- crie uma conta em https://sandbox.asaas.com e gere a chave de API (começa com
$aact_hmlg_); - no painel do Pagaki (sandbox), em Gateways, instale o Asaas com essa chave e o ambiente
sandbox; - o Pagaki confere a chave (consulta o saldo) e cadastra sozinho o webhook do Asaas apontando para ele.
Na produção, o mesmo passo usa a chave de produção ($aact_prod_) da conta real, com a prova de vida feita no Asaas.
O que o sandbox do Asaas não simula
| Situação | No sandbox | Consequência para a homologação |
|---|---|---|
| Pagamento do PIX por um banco | Nenhum banco paga o QR de verdade | O payment.paid depende da ferramenta de teste do próprio Asaas para marcar a cobrança como recebida (ver https://docs.asaas.com/docs/testando-no-sandbox). Procedimento a confirmar na homologação (M7.3) |
| Expiração em minutos | O Asaas não expira PIX por minuto | Igual à produção: quem expira é o Pagaki, que cancela a cobrança no Asaas quando passa do expires_at |
| Pague Contas (pagamento de conta) | Nada compensa: o resultado esperado de todo pagamento de conta é FAILED |
O caminho bill_payment.paid não é testável no sandbox; o bill_payment.failed é o resultado normal lá |
| Boleto de outro banco | Boletos reais de fora "não são reconhecidos" e podem dar erro ou FAILED |
Teste com uma linha digitável de um boleto criado na mesma conta sandbox |
| Saldo insuficiente, boleto vencido, horário de corte | A doc do Asaas não oferece um jeito de forçar esses resultados | Esses failure.code só aparecem com dados reais |
| Ação crítica | Token fixo 000000 |
Em produção é o código real da conta |
| Autorização de saque por webhook | A doc do Asaas não diz se funciona no sandbox | Não ligue no MVP |
Fonte de cada linha: docs/gateways/asaas.md §8.
Em produção, nunca teste com boleto real de terceiros. O primeiro pagamento de conta real é com uma guia do próprio integrador, de valor baixo, acompanhado pela equipe do Pagaki.
Limites
O limite de requisições (por minuto, pelo plano) vale nos dois ambientes. A conta Asaas também tem cota própria (25.000 requisições a cada 12 h por conta): no sandbox, evite laços de consulta e use os webhooks.