Ao criar uma transação ou uma assinatura, você tem a opção de passar o parâmetro postback_url
na requisição, sendo esta uma URL de seu sistema que irá receber notificações a cada alteração de status dessas transações/assinaturas.
1. Propriedades de um postback
Propriedades específicas do postback:
Propriedade | Descrição |
---|---|
objectString | Nome do tipo do objeto criado/modificado. Valor retornado: postback |
statusString | Status atual do postback. Pode ser: processing , waiting_retry , pending_retry , failed , success |
modelString | A que tipo de objeto o postback se relaciona. Pode ser 'transaction', 'subscription' ou 'recipient' |
model_idString | Id do objeto relacionado. |
headersString | String com formato json dos headers enviados no postback |
payloadString | Corpo do postback, envolve o conteúdo do objeto a que corresponde a notificação. Dentre eles transaction, subscription e recipient. Mais na seção a seguir. |
request_urlString | URL para onde o postback foi enviado |
retriesInteger | Quantidade de reenvios. A primeira tentativa não conta como uma retentativa |
next_retryDatetime | Data e hora do próximo reenvio. |
deliveriesArray com objetos do tipo postback_delivery | Lista das tentativas até então. Retornam informações sobre a comunicação entre nossos servidores e sua aplicação, descrevendo status response header, etc. |
date_createdDatetime | Data de criação |
date_updatedDatetime | Data da ultima mudança |
signatureString | Hmac SHA1 do payload |
idString | ID do postback |
2. Payload de um postback
Você irá receber em sua postback_url
, isto é, seu servidor, uma propriedade chamada payload
, em formato de query string, e que contém as informações do evento que ocorreu junto à transação ou assinatura de sua company. A seguir mais detalhes sobre cada propriedade:
Propriedade | Descrição |
---|---|
idString | ID do objeto sendo enviado no payload. Objetos possíveis: transação, assinatura ou recebedor. |
fingerprintString | Hash gerada para validação do postback em seu servidor. |
eventString | Define qual evento aconteceu para que o postback tenha sido enviado. Valores possíveis: transaction_status_changed , subscription_status_changed , recipient_status_changed , transaction_created . |
old_statusString | Indica qual o status antigo do objeto sendo enviado. |
desired_statusString | Indica qual o status ideal para objetos deste tipo, em um fluxo normal. |
current_statusString | Indica qual o real status do objeto. |
object | Objeto enviado e que teve mudanças significativas, para iniciar um postback. Valores possíveis: transaction , subscription ou recipient . |
3. Observações sobre postback
Atenção
Não é possível alterar a URL de postback de uma
transaction
,subscription
ourecipient
.
Problemas com POSTback?
Alguns pontos a considerar:
-Houve alguma mudança de
url
do seu sistema? Por exemplo : https://lojateste.com.br para https://novalojateste.com.br ; Se sim, você deve redirecionar os postbacks para sua novaurl
.-Houve troca de protocolo? Por exemplo : http://lojateste.com.br para https://lojateste.com.br ; Este caso também requer que você mantenha ambas URLs funcionando, e redirecionando postback de acordo com necessidade. Caso tenha mais dúvidas, entre em contato com [email protected] que podemos te ajudar ;)
4. Postback deliveries
Cada tentativa de envio de postback cria uma nova entidade de delivery. Ou seja, um novo registro de tentativa, bem-sucedida ou não, de entrega de postback à sua aplicação. Segue a descrição de cada propriedade de um delivery:
Propriedade | Descrição |
---|---|
objectString | Nome do tipo do objeto criado/modificado. Valor retornado: postback_delivery |
statusString | Status do delivery. Pode ser: processing , failed , success |
status_reasonString | Razão do status. Pode ser http_status_code ou null |
status_codeString | Http status recebido como response de seus servidores. |
response_timeInteger | Milissegundos entre envio do postback e a response |
response_headersString | Headers da response do postback |
response_bodyString | Corpo da resposta do postback. Esta é a response que seus servidores enviaram à API Pagar.me |
date_createdDatetime | Data de criação do delivery |
date_updatedDatetime | Data da última atualização do delivery |
idString | ID do delivery |