Pular para o conteúdo
LeztyPay docs
Painel

Cobranças

Uma cobrança é um PIX que você emite para o seu cliente. A API chama esse recurso de transaction. Criar uma cobrança devolve um QR Code; a partir daí a Lezty Pay acompanha o pagamento e avisa você. Para comprador no México ou no Chile existe a cobrança em moeda local, que não usa PIX nem QR Code: ver Criar uma cobrança. Para quem não tem PIX há também a cobrança em USDT ou USDC, com repasse direto para a sua carteira: ver Cobrança em cripto. Para comprador de fora do Brasil, em euro, dólar ou libra, existe a cobrança por cartão: ver Cartão internacional.

Todo valor da API é inteiro em centavos. 10000 são cem reais. Não existe campo em reais nem em ponto flutuante, em lugar nenhum.

Bruto, taxa e líquido

A criação já devolve a conta fechada:

  • amount é o que o cliente paga.
  • fee é a nossa taxa, calculada com as condições vigentes no momento da criação e congelada ali. Reajuste de taxa não muda cobrança já criada.
  • net é amount menos fee, o que entra na sua conta.
  • reserve vem sempre 0 no PIX: não há reserva, o líquido todo fica disponível. O campo continua na resposta para não quebrar integrações. Só cobrança LATAM (voucher) tem reserva.

O ciclo de vida

Uma cobrança nasce pending e termina em um destes estados:

Status O que aconteceu
pending Criada, QR válido, esperando o pagamento.
paid Paga. O líquido entrou.
expired O prazo acabou sem pagamento.
failed O processador recusou ou não respondeu na criação. Não existe QR.
refunded Estornada depois de paga, sempre pelo valor total.
chargeback Paga e depois contestada pelo cliente, com o valor devolvido.

As transições possíveis são poucas e valem a pena decorar:

  • pending vai para paid, expired ou failed.
  • expired ainda pode virar paid. É o pagamento tardio, e acontece de verdade. Ver Expiração.
  • paid pode virar refunded ou chargeback.
  • Nada sai de refunded, chargeback ou failed.

Qualquer outra transição é recusada com 409 invalid_state.

O que chega no seu webhook

Cada transição entrega um evento assinado no seu endpoint: transaction.paid, transaction.expired, transaction.failed, transaction.refunded, transaction.chargeback. O transaction.reserve_released só existe para cobrança LATAM (voucher), quando a reserva dela é liberada.

A criação não emite evento: você já recebeu o objeto na resposta do POST.

Trate tipo de evento desconhecido sem quebrar. Evento novo pode aparecer a qualquer momento e não é mudança que quebra contrato.

Próximo passo

Criar uma cobrança.

Referência: Consulta uma cobrança.