Skip to main content
POST
Pagar fatura
Cria uma cobrança para o valor em aberto da fatura (amountDue) e a vincula em payments. A fatura precisa estar open, em brl e sem outro pagamento em andamento.
  • Pix: a fatura continua open com um pagamento pending. Ela vira paid quando a cobrança é paga (webhook invoice.paid); se o Pix vencer, vira uncollectible.
  • Cartão: o resultado sai na própria resposta. Aprovado, a fatura já volta paid; recusado, ela continua open, attemptCount sobe e você pode pagar de novo.
Permissão: invoice.write. Apenas chave secreta (sk_…).
Os exemplos usam o sandbox (https://api.upag.dev/v1). Em produção use https://api.upag.io/v1 com sk_live_….

Endpoint

Pix

A resposta é a fatura: o QR code do Pix está na cobrança de payments[0].charge. Consulte-a em Obter cobrança.

Cartão

O card vem de Criar cartão (idealmente tokenizado no navegador com upag-js). Para autenticar o portador antes de cobrar, veja Cartão com 3DS.

Parâmetros

string (uuid)
required
ID da fatura.
string
required
pix ou card. Define quais dos campos abaixo valem.

Pix (method: "pix")

string
Vencimento do QR code (ISO 8601). Padrão: 10 minutos a partir de agora.

Cartão (method: "card")

string (uuid)
required
UUID de um cartão tokenizado da conta.
integer
default:"1"
Número de parcelas, de 1 a 12.
string (uuid)
Sessão 3D Secure concluída para este cartão, valor e parcelamento.
string
IP público do pagador (IPv4 ou IPv6).
object
Localização do pagador: city (até 50 caracteres), state (2), country (2) e zip (até 9). Todos opcionais.
string
Texto na fatura do cartão, de 1 a 13 caracteres.

Resposta

200 OK com o objeto fatura. Exemplo de cartão aprovado:
Response
Num Pix, status fica open e payments[0] vem com type: "pix", status: "pending" e settledAt: null. Num cartão recusado, status fica open, attemptCount é 1 e o pagamento vem failed.

Erros

Erros do cartão (card inexistente, 3DS inválido etc.) seguem as regras de Criar cobrança.