Primeira cobrança
Do
sk_test_ ao QR na tela, com o webhook já ligado.Referência da API
As cinco operações, com playground.
Webhooks
Os nove eventos e como conferir a assinatura.
Receitas
Fluxos completos, do checkout à conciliação.
Quatro convenções que valem para tudo
São quatro decisões de design que se repetem em toda a API. Conhecendo elas, o resto da documentação fica previsível — e você evita os quatro tropeços mais comuns de quem começa.Dinheiro é sempre centavos inteiros
Dinheiro é sempre centavos inteiros
R$ 100,00 se envia como
10000. Uma convenção só, em todos os campos, então nunca há dúvida
sobre o formato. Decimais são recusados com 422 porque 19.99 * 100 dá 1998.9999999999998 em
ponto flutuante — e o centavo perdido aí só apareceria na conciliação do mês.Valores em centavos →A chave secreta fica no servidor
A chave secreta fica no servidor
O valor em claro aparece uma única vez, na criação: guardamos apenas um hash SHA-256, de modo
que nem um vazamento do nosso banco permite cobrar em seu nome. Em troca, a chave é sua para
guardar — e o lugar dela é o servidor, nunca o navegador do comprador.Autenticação →
Idempotency-Key em todo POST
Idempotency-Key em todo POST
Com ela, uma conexão que cai entre a requisição e a resposta deixa de ser um problema: você repete
com a mesma chave e recebe a cobrança que já existe, em vez de criar uma segunda.Idempotência →
Erros têm código estável
Erros têm código estável
Todo erro traz um
code que não muda, então dá para escrever a sua lógica em cima dele com
segurança. A message fica livre para ser reescrita e melhorada sem quebrar a sua integração.Erros →O que existe na v1
Cinco operações, todas sob/v1:
Nove eventos, que nós enviamos para o seu sistema:
Quatro coisas que vale saber de antemão
Para você não procurar o que não existe:- A imagem do QR você gera. Devolvemos o payload copia-e-cola em
pix.qr_code, e qualquer biblioteca de QR o transforma em imagem em milissegundos. Assim as respostas ficam leves e você controla tamanho, cor e formato. - A API cria PIX; o cartão chega pelos mesmos eventos.
POST /v1/chargessó cria cobrança PIX, então toda cobrança que nasce daqui vempayment_method: pix. As vendas de cartão feitas pelo checkout ou por link de pagamento são suas também, e aparecem emGET /v1/chargese nos webhooks compayment_method: credit_card. - O saque é pedido pelo painel. A API não tem endpoint para isso, mas avisa quando o dinheiro
cai, pelo evento
withdrawal.paid. - Cada chave enxerga só a própria conta. A lista devolve apenas as cobranças do vendedor dono da
chave, e uma cobrança de outra conta responde o mesmo
404de uma que não existe.
URL base
Toda chamada vai para:/v1. A URL completa de uma criação de cobrança é
https://api.usevext.com/v1/charges.
Ficou algo de fora? Chame no WhatsApp. Se o assunto for uma chamada específica, informe o horário dela; se for uma entrega de webhook, informe o
X-Vext-Delivery — é por ele que localizamos a tentativa, a resposta do seu servidor e o horário.