Skip to main content

upag (upag-node)

Pacote npm oficial para Node.js e TypeScript. Código em github.com/upaghq/upag-node.

Requisitos

  • Node.js 16 ou superior
  • Chave secreta de teste ou produção (sk_test_... / sk_live_...)

Instalação

Autenticação e host

Carregue a chave do ambiente (nunca hardcode):
sk_test_ usa https://api.upag.dev/v1. Qualquer outra chave usa https://api.upag.io/v1. baseURL sobrescreve o host. Valores são inteiros em centavos, ids são UUIDs, datas são strings ISO 8601 e listas retornam { data, count }. Veja Convenções.

Exemplo: cobrança Pix

Exemplo: cartão com 3D Secure

Tokenize no browser com o upag-js. No servidor:
Fluxo completo em Cartão com 3DS.

Recursos

subAccounts, apps, webhooks.validateSignature e os campos de teste grátis estão no Unreleased do changelog do upag-node. Confira a versão instalada.
Cada página da Referência traz o exemplo do método correspondente.

Idempotência

cards.create e threeDSecure.createSession aceitam { idempotencyKey } como último argumento (header Idempotency-Key):

Webhooks: validar a assinatura

A assinatura (X-Webhook-Signature) cobre o corpo cru. Não use express.json() nesta rota: reserializar o JSON muda o payload e quebra a comparação.
Detalhes em Segurança de webhooks.

Erros

Falhas da API são lançadas como UpagError com message, code, statusCode, details e meta:
code inclui NETWORK_ERROR e CLIENT_ERROR (falhas sem resposta da API), VALIDATION_FAILED e os códigos específicos da API. Veja Erros.

TypeScript

A biblioteca é escrita em TypeScript e exporta os tipos:

Onde ir depois

Quickstart

Primeira cobrança.

Referência HTTP

Parâmetros e respostas de cada endpoint.

SDK browser

Cartão, 3DS e checkout com pk_....

Índice de SDKs

Comparativo upag / upag-js.