error.code da resposta, então comece sempre por ele.
Antes de abrir um chamado
Guarde o requestId
requestId. É o protocolo da requisição.Reproduza com cURL
Envie ao suporte
requestId, o cURL sem a sua chave, o horário com fuso e o que você esperava, para [email protected].Autenticação
401 invalid_api_key
401 invalid_api_key
Confira o cabeçalho
Authorization: Bearer nyx_live_..., com a palavra Bearer e um espaço.Confira a chave
nyx_.Confira no dashboard
403 permission_denied
403 permission_denied
message diz qual: Permissão necessária: payments:write.Crie uma nova chave com a permissão. Veja Gestão de chaves.403 ip_not_allowed
403 ip_not_allowed
403 kyc_required
403 kyc_required
Cobranças
400 ao criar a cobrança
400 ao criar a cobrança
message. Os motivos mais comuns:Recebi 201 mas o pedido não foi pago
Recebi 201 mas o pedido não foi pago
201 só diz que a cobrança existe. O pagamento chega depois, em transaction.approved. Libere o pedido apenas com status: "approved".O cliente pagou e o meu pedido não liberou
O cliente pagou e o meu pedido não liberou
Consulte a transação
GET /transactions/{externalId}. Se vier approved, o pagamento está certo e o seu webhook falhou.Veja se o webhook chegou
Veja se a assinatura foi rejeitada
Rode a conciliação
approved recentes resolve pedidos presos. Veja Acompanhar.O QR Code não aparece na página
O QR Code não aparece na página
qrCodeBase64 vem sem o prefixo data:image. Monte o src assim:O Copia e Cola não valida no banco
O Copia e Cola não valida no banco
pix.copyPaste. Espaço, quebra de linha ou truncamento invalida o código.Reenviei a cobrança e veio a antiga, já cancelada
Reenviei a cobrança e veio a antiga, já cancelada
PEDIDO-1042-t2). Veja Idempotência.O valor do Pix é maior do que o amount que enviei
O valor do Pix é maior do que o amount que enviei
coverFee: true. O amount da resposta é o que o pagador paga e inclui a tarifa. Veja coverFee.Transferências
409 WITHDRAWAL_IN_PROGRESS
409 WITHDRAWAL_IN_PROGRESS
pending na conta. Só pode haver uma por vez. Espere transaction.approved ou failed da anterior e envie a próxima. Enfileire do seu lado.422 Saldo insuficiente
422 Saldo insuficiente
GET /balance. Lembre que coverFee: true (o padrão) soma a tarifa ao que sai do saldo.423: saques bloqueados
423: saques bloqueados
400: informe o valor para pagar este Pix Copia e Cola
400: informe o valor para pagar este Pix Copia e Cola
amount. Quando o código já tem valor, omita amount.400: chave Pix e tipo de chave são obrigatórios
400: chave Pix e tipo de chave são obrigatórios
pix_key, envie destination.value e destination.keyType (cpf, cnpj, email, phone ou random), e confira que o tipo bate com o formato da chave.Fiz a transferência e continua pending
Fiz a transferência e continua pending
202 e pending com processingState: "reconciling" significam que a NyxPag está conferindo o resultado. Aguarde o webhook. Não envie de novo: reenviar com outra chave cria um segundo envio.Webhook
O webhook não chega
O webhook não chega
A URL é aceitável?
#, e que não resolva para rede privada nem localhost. Veja as regras.A URL redireciona?
O endpoint responde 2xx em até 8 segundos?
Há endpoint vinculado à chave?
webhookUrl na requisição.Já esgotou as tentativas?
GET /transactions.Assinatura inválida
Assinatura inválida
Corpo reserializado
JSON.parse e JSON.stringify muda a ordem e o espaçamento.Chave errada
Segredo rotacionado
Proxy alterando o corpo
Recebi o mesmo evento várias vezes
Recebi o mesmo evento várias vezes
2xx. Deduplique pelo id do evento (transaction.*) ou pelo X-NyxPag-Delivery (med.*).O webhook chega mas o meu processamento falha
O webhook chega mas o meu processamento falha
2xx e processe fora do request.Limites
429 rate_limit_exceeded
429 rate_limit_exceeded
Espere o Retry-After
Ache o que consome a cota
refresh=true. Troque por webhook.Separe as cargas
Saldo
O reservado é diferente do que eu esperava
O reservado é diferente do que eu esperava
reserved guarda o que ainda não está livre: transferências em andamento e a parte de vendas retida pela política de reserva da conta. Ele é liberado ou debitado quando a operação termina. Veja Saldo.Um valor foi retido depois de uma venda aprovada
Um valor foi retido depois de uma venda aprovada
GET /meds. Veja Contestações (MED).
