Skip to main content
Em poucos minutos você sai do zero e chega a um QR Code Pix funcionando. No fim, você sabe criar, apresentar e confirmar uma cobrança.
Não existe sandbox. Os exemplos apontam para produção (https://api.nyxpag.com.br/v1) e a cobrança é real: se você pagar, o dinheiro entra na sua conta. Para testar, use um valor baixo, como R$ 1,00.

Antes de começar

1

Conta NyxPag verificada

As rotas financeiras exigem a conta com verificação de identidade concluída. Sem ela, a API responde 403 com kyc_required. Crie a conta em nyxpag.com.br.
2

Uma API Key com a permissão certa

Em Dashboard → Chaves de API, clique em Nova chave, dê um nome e marque Pagamentos (payments:write) e Transações (transactions:read). A chave começa com nyx_live_ e aparece uma única vez.
3

Um servidor para guardar a chave

A chave movimenta dinheiro. Ela fica no seu servidor, nunca em frontend, app mobile ou repositório.

1. Guarde a chave numa variável de ambiente

2. Crie a cobrança

POST /transactions cria a cobrança e devolve o QR Code e o Copia e Cola. Toda cobrança precisa de uma chave de idempotência: o cabeçalho Idempotency-Key ou o campo externalId. Aqui usamos externalId, que vem do seu número de pedido. Nas duas formas o valor é salvo como externalId da transação, e você consulta depois por ele.

O que volta (201)

Os valores de fee e netAmount são ilustrativos. A tarifa real depende da sua conta e vem sempre na resposta. Todos os campos estão em Ciclo de vida.

Códigos de resposta

Só considere a cobrança paga quando o status for approved. Um 201 ou 202 apenas diz que a cobrança existe.

3. Mostre o Pix ao pagador

Use data.pix.qrCodeBase64 como imagem e data.pix.copyPaste como código Copia e Cola:
O Pix vale 15 minutos (expiresAt). Depois disso a NyxPag cancela a cobrança. Mostre um contador para o cliente e ofereça gerar um novo código quando expirar.

4. Receba a confirmação

Quando o cliente paga, a NyxPag envia transaction.approved para o seu webhook. É o caminho recomendado.

Configurar webhooks

Registre a URL, valide a assinatura e responda 2xx.
Ainda sem webhook? Consulte pelo seu próprio número de pedido:
refresh=true força a NyxPag a conferir o estado mais recente enquanto a cobrança está pending. Use com moderação: cada consulta gasta a cota de 100 requisições por minuto da chave.
Prefira webhook a consulta repetida. Consultar a cada poucos segundos esgota a cota e ainda é mais lento do que receber o aviso.

O que fazer com cada estado

Próximos passos

Visão geral da API

Convenções, formato de resposta e mapa de endpoints.

Autenticação

Permissões, rotação e boas práticas da chave.

Idempotência

Reenvie com segurança sem cobrar duas vezes.

Antes de ir para produção

A lista do que costuma quebrar no primeiro dia.