Pular para o conteúdo
CXPag - Documentação

'Linkando' uma transação

Existem dois motivos para querer ‘linkar’ uma transação:

Usuário fechou a janela de pagamento

Caso o usuário feche a janela de pagamento sem pagar, você pode reenviar o link de pagamento para ele. Para isso, você pode usar o endpoint https://api.cxpag.com/v1/transaction/:id para reenviar o link de pagamento.

Valor da transação errado

Como a transação é criada usando um QR Code que o usuário pode ler, ele pode alterar o valor e, no final, o valor do pagamento pode ser diferente do valor da transação. Nesse caso, na URL de callback, você receberá tanto o valor da transação quanto o valor do pagamento. Para resolver essa situação, você pode utilizar o endpoint https://api.cxpag.com/v1/transaction/:id para obter o valor da transação e compará-lo com o valor do pagamento.

Exemplo

const res = await fetch('https://api.cxpag.com/v1/transaction/idtransaction, {
  method: 'POST',
  headers: {
    'Application-Type': 'application/json',
    apikey: 'sua-api-key',
    apisecret: 'sua-api-secret'
  },
  body: JSON.stringify({
    // obrigátório
    returnLink: 'https://localhost:3000/test',
  })
}).catch(err => console.log(err))

const data = (await res.json()) as {
  link: string,
  transaction: string
}

Nota: Caso deseje aceitar o valor incorreto, você pode utilizar o endpoint https://api.cxpag.com/v1/confirm/transactionId para aceitar o pagamento, mesmo que o valor esteja errado. Ou, alternativamente, pode utilizar o nosso Manager para aceitar o pagamento.