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)
travel-id=iUT7Rhfk8… (este é um parâmetro opcional, presente apenas na jornada white label)
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.