Configure o Callback de Pagamentos

A página de retorno Callback, ou URL de redirecionamento, é uma página da web para onde o usuário é redirecionado após a conclusão do processo de pagamento.

Normalmente, é uma página de retorno de uma tela de comércio eletrônico ou de um aplicativo móvel com uma mensagem de sucesso/falha.

Este link é configurado através do portal de administração. No menu lateral, clique em “ Editar Aplicação ” e após insira o link da URL de redirecionamento no campo abaixo.

A própria página

 

A Página de Redirecionamento é um link normal que recebe 3 parâmetros por query string ao final do fluxo de pagamento.

  • ticket=eyJhbGciO… (contém informações sobre o token utilizado no processo de pagamento)

  • state=HVLeXYgP6… (é o ID de consentimento)

 

Para confirmar que o pagamento foi processado com sucesso (e o status do pagamento) você pode verificar o status do pagamento através do Webhook na Iniciação do Pagamento ou usando a API Pooling usando alguma solicitação AJAX para algum backend que gera um Token com a API e chama alguma API para recuperar as informações de pagamento.

Por exemplo, o parâmetro state traz o ID de consentimento , então você pode utilizar a API Get Pix by ConsentId , conforme abaixo:

 

curl --location 'https://api-smartkeys.celcoin.dev.fsapps.io/api/smart-keys/payment-consumer/v1/pix/consents/HVLeXYgP6…' \ --header 'Authorization: Bearer <PUT_HERE_THE_ACCESS_TOKEN>' \

 

A resposta é algo como abaixo:

{ "data": { "paymentId": "9be63638-3ef9-4427...", "endToEndId": "E139358932023091...", "consentId": "urn:celcoin:1e308e7f-b705-...", "creationDateTime": "2023-09-12T19:11:38Z", "statusUpdateDateTime": "2023-09-12T19:11:42Z", "proxy": "55155...", "status": "ACSC", "localInstrument": "DICT", "cnpjInitiator": "1393589...", "payment": { "amount": "1.15", "currency": "BRL" }, "remittanceInformation": "Pagamento Pix", "creditorAccount": { "accountType": "CACC", "ispb": "9289...", "issuer": "0...", "number": "101..." }, "debtorAccount": { "ispb": "12345678", "issuer": "1774", "number": "1234567890", "accountType": "CACC" } }, "links": { "self": "https://api.opb.celcoin.dev.fsapps.io/open-banking/payments/v2/pix/payments/9be63638-3ef9-..." }, "meta": { "requestDateTime": "2023-09-12T19:11:56Z" } }

 

 É importante não chamar essas APIs de uma página pública, pois para gerar um token é necessário utilizar seu ID e segredo da API e ele pode ser exposto se utilizado em um site público do cliente.

 

Agora você tem todas as informações de pagamento necessárias para criar uma página de sucesso como a mostrada abaixo, ou uma tela de falha indicando o motivo da falha. As empresas contratantes do Open Keys são responsáveis por criar e apresentar a tela de Efetivação da Jornada, conforme os modelos apresentados como sugestão, abaixo.

 

Modelos de tela de efetivação por definição do Open Finance

 

Iniciação de Pagamentos

 


Exemplo de tela disponível no Guia de UX do Open Finance

 

Informações que precisam estar contidas na tela de efetivação

 

  1. Forma de pagamento (de acordo com os arranjos de pagamento vigentes e Resolução BCB nº 109;

  2. Valor da transação de pagamento (opcional para transações sucessivas cujo valor pactuado seja variável);

  3. Informações referentes ao Recebedor da Transação de Pagamento;

  4. Valor da tarifa do serviço de iniciação da transação de pagamento, se houver; 

  5. data de pagamento (p. ex: dia do pagamento, todo dia 05, todo dia 17);

  6. Periodicidade das transações e prazo. vii. informações da descrição/finalidade do pagamento.