Erros seguem o formato compatível com OpenAI:
{ "error": { "message": "descrição do erro", "type": "certigw_error" } }

Códigos de status

StatusSignificadoO que fazer
401 UnauthorizedChave ausente/inválida, ou modelo não permitido para a chaveVerifique o Authorization: Bearer cs_live_... e a allowlist da chave
402 Payment RequiredSaldo insuficienteFaça um top-up via Pix no portal
429 Too Many RequestsLimite de concorrência atingidoReduza o paralelismo / faça retry com backoff
502 Bad GatewayFalha ao falar com o provedor upstreamRetry com backoff
5xxErro internoRetry; se persistir, contate o suporte

Exemplo de saldo insuficiente

{
  "error": {
    "message": "insufficient balance: 0.00 BRL. please top up at certisecure.com.br",
    "type": "certigw_error"
  }
}
Implemente retry com backoff exponencial para 429 e 502/5xx, como você já faria com a OpenAI/OpenRouter. O comportamento é o mesmo.