Saltar para o conteúdo principal
Lusopay

Voltar aos manuais / Pay by Link

Callback

Não obstante o manual de callback para pagamentos como Multibanco, MB Way e Payshop para pagamentos e/ou subscrições com Cartões de Crédito/Débito, Apple Pay e Google Pay, assim que o movimento for considerado válido, a lusopay irá disparar uma comunicação POST para o URL indicado na área de homebanking a dar conta do estado do pagamento, para além do redirecionamento no final do pagamento para o URL explicado no início do capítulo 5.7. As informações que irão seguir são, desta forma:

https://exemploURLdefinido.com?PID=cliente07&OID=1213&CPM=P7&S=pending

A notificação é enviada através de um pedido HTTP POST, com o corpo em formato application/x-www-form-urlencoded:

POST {URL_CALLBACK_DO_COMERCIANTE}
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Accept: application/json
t: {clientGuid}

O pedido inclui o cabeçalho t, que contém a clientGuid associada ao comerciante.

t: {clientGuid}

O comerciante deverá, para segurança acrescida, validar este valor contra a clientGuid previamente conhecida para o PID utilizado na geração do link de pagamento.

O endpoint configurado para receção do callback deverá devolver uma resposta HTTP válida, preferencialmente com código 200 OK, 201 Created, 202 Accepted ou 204 No Content, num curto intervalo de tempo.

A resposta não deverá de conter um URL de redirecionamento, nem qualquer outro conteúdo específico. Caso seja devolvido JSON, recomenda-se a utilização de uma resposta simples, por exemplo:

{
  "status": "OK"
}

A lusopay considera o callback entregue quando o endpoint responde com sucesso HTTP. Se o endpoint não devolver qualquer resposta dentro do tempo limite definido, a tentativa será registada como falhada por timeout, ainda que o pagamento tenha sido concluído com sucesso.

O URL de redirecionamento final do utilizador não é determinado pela resposta ao callback. Qualquer URL devolvido no corpo da resposta ao callback será ignorado para efeitos de redirecionamento.