Exemplo de pagamento cripto em JavaScript: um fluxo que funciona hoje
Exemplo de pagamento cripto em JavaScript: um fluxo funcional com a API v1, uma chamada no servidor e um webhook, e a chamada do SDK marcada como roteiro.
Este exemplo de pagamento cripto em JavaScript mostra um fluxo que funciona hoje: o servidor cria o pagamento com a API v1 em produção, o navegador é redirecionado para a página hospedada e o webhook confirma o pedido. A chamada do Low-Code SDK no final é apenas uma prévia do roteiro.
O fluxo em quatro passos
O cliente clica em pagar, o seu servidor cria o pagamento, o navegador vai ao redirectUrl e o webhook confirma o status final. Cada passo é uma chamada HTTP comum ou um redirecionamento, então o exemplo não precisa de biblioteca especial.
A chamada no servidor em JavaScript
Um manipulador em Node.js envia POST /api/v1/payment com o cabeçalho x-api-key, o id do pedido e o preço em USD, e devolve o redirectUrl ao navegador. A chave nunca sai do servidor.
x-api-key: sk_live_…
{
"id": "order_1024",
"price": 149.99,
"paymentSystemId": 12
}
// 201 Created
{
"data": {
"id": "8f3k2a1c",
"redirectUrl": "https://my.qvard.com/pay/8f3k2a1c"
},
"code": 201,
"message": "success",
"status": true
}O lado do navegador
A página só precisa de um botão que chame o seu manipulador e depois siga o redirectUrl devolvido. No navegador não há chave nem lógica de valores.
O manipulador do webhook
O endpoint do webhook lê id e status, confere o cabeçalho x-api-key e marca o pedido como pago quando o status é paid. Torne o manipulador seguro para repetição, porque a mesma mensagem pode chegar duas vezes.
x-api-key: sk_live_…
{ "id": "order_1024", "status": "paid" }A chamada prevista do SDK
Espera-se que o Low-Code SDK do roteiro abra o mesmo fluxo a partir da página com uma única chamada. É uma prévia de uma API não lançada, mostrada apenas para orientação, e não deve ser usada em produção.
Teste antes de ir ao ar
Crie uma fatura de demonstração, pague na página hospedada e confirme que o seu webhook recebe o status final e marca o pedido.
// ROADMAP preview: the SDK is not released yet.
QvardCheckout.open({ amount: 149.99, currency: "USD", orderId: "order_1024" });FAQ
Este exemplo usa um SDK?
Não. O fluxo que funciona usa chamadas HTTP comuns e um redirecionamento. A chamada do SDK é apenas prévia do roteiro.
Posso usar a chamada QvardCheckout.open() em produção?
Não. O SDK ainda não foi lançado. Use a API, o redirectUrl e o webhook.
Onde a chave de API deve ficar?
Somente no servidor. O navegador recebe apenas o redirectUrl.
Como saber que o pagamento foi concluído?
Somente quando o webhook entregar o id e o status paid.

