Ambientes
O modo é da credencial, nunca da chamada
Não existe parâmetro mode nem cabeçalho de ambiente. Cada chave é de teste
ou de produção, e isso foi decidido quando ela foi criada.
Isso é deliberado. Um parâmetro na chamada colocaria um erro de digitação de distância entre um teste e dinheiro real.
As duas não se cruzam, nas duas direções
Uma chave de teste nunca alcança o ambiente real. Uma chave de produção nunca alcança o de teste.
Um recurso criado num modo não é visível no outro: uma cobrança de teste não
aparece na listagem de produção, e o id dela responde 404 para a chave de
produção.
Como saber em qual você está
A cobrança e o saque carregam o modo em que nasceram. Se você precisa de uma salvaguarda no seu código, essa é a fonte — e não uma variável de ambiente do seu lado, que é justamente o que costuma ficar errado num deploy.
Endereços
| O quê | Endereço |
|---|---|
| A sua API | https://<sua-conta>-api.connectionpay.io |
| O seu painel (credenciais e webhooks) | https://<sua-conta>.connectionpay.io |
| Esta documentação | https://docs.connectionpay.io |
O endereço é o mesmo para teste e produção: quem decide o ambiente é a chave.
O que testar antes de ir para produção
- A assinatura.
GET /integration/v1/balancesprova a credencial sem criar nada. - O caminho feliz completo — criar cobrança, receber o webhook de
charge.paid, conferir o saldo. - A verificação de assinatura do webhook, inclusive rejeitando uma assinatura errada de propósito. É o teste que mais gente pula e o que mais custa depois.
- A idempotência do seu handler. Entrega é ao menos uma vez: mande o mesmo evento duas vezes para o seu endpoint e confira que o pedido não é processado em dobro.
503e429. Force-os no seu código e confira o recuo.
:::warning A troca de chave é a hora do erro
Ao virar para produção, troque clientId e clientSecret juntos, e
reinicie. Uma chave nova com o segredo antigo produz invalid_signature — que é
indistinguível de qualquer outro problema de assinatura.
:::