Tutorial PagSeguro: Entendendo o Retorno Automático

 

Temos recebido dúvidas sobre o funcionamento do retorno automático. Neste post, esclarecemos algumas dúvidas e damos algumas dicas que auxiliarão no processo de recebimento das informações das transações.

Após o processo de compra e pagamento, o usuário é enviado de volta a seu site. Para isso, você deve configurar uma URL de retorno.

 

A URL configurada tem duas funções distintas. São elas: redirecionar o comprador de volta para sua loja após o término da compra na página de checkout do PagSeguro e enviar os dados da transação e alteração de status da transação via POST para o seu servidor.

Se o pagamento entrou em análise ou se o usuário pagou usando boleto bancário, o status será “Em Análise” ou “Aguardando Pagamento”. Nesses casos, quando a transação for confirmada (o que pode acontecer alguns dias depois) a loja receberá outro POST, informando o novo status.

 

Cada vez que a transação muda de status, um POST é enviado:

1) A transação se inicia quando a sua loja envia ao PagSeguro um POST com os dados do pedido:

2) O PagSeguro envia um POST para a URL de retorno que você configurou, com os dados da transação, acrescido do status.

3) Por segurança, o seu sistema deve confirmar os dados recebidos. Para isso, retorne o POST, acrescido do Token de segurança e o parâmetro “comando” validar (comando=Validar).

O PagSeguro recebe sua confirmação e confere se os dados trocados são válidos. Os valores retornados para essa validação são VERIFICADO ou FALSO. Isso garante a integridade da comunicação do retorno automático.

4) Com a validação do POST, você terá o último status da transação atualizado.

 

 

Exemplo de informações que foram enviadas via POST e validadas:

 

Dicas sobre Retorno Automático:

  • O envio do POST é automático ao final da transação e quando ocorre uma alteração no status da transação, ambos em background, abre uma nova sessão no seu site.
  • Não é possível imprimir nenhum campo do post no momento do recebimento (echo, print, Response.Write, etc).
  • As informações deverão ser salvas em seu banco de dados, arquivo texto ou XML no momento do recebimento.
  • É necessário que o site e a URL de Retorno estejam hospedados em um domínio válido.
  • Não poderá ser uma aplicação local (você não conseguirá receber os dados em um ambiente local, como “localhost” por exemplo).
  • O código de NPI (Notificação de Pagamento Instantâneo) não conseguirá ler valores de Sessions ou Cookies, porque assim que o PagSeguro envia o POST para o seu web site, é aberta uma nova sessão (conforme mencionado acima).
  • Não há restrições de saída no PagSeguro, mas caso você não esteja recebendo nenhum dado do PagSeguro, libere em seu firewall os seguintes IP’s de POST do NPI: 200.221.19.20 e IP de Redirecionamento simples: 200.221.19.4.
  • Servidor configurado em uma porta da 80 (HTTP) ou 443 (HTTPS).
  • A programação do retorno automático deve enviar de volta para o PagSeguro todos os campos recebidos no POST, mais o comando=validar e o token=”Seu Token”.
  • Use o token de segurança para validação da transação.
  • Retorne os dados para validação sem nenhuma conversão, exatamente da maneira como recebeu (verifique se a sua string está sendo enviada com Encode, por exemplo: “%20” ou o sinal de adição “+” substituindo o espaço, etc).
  • É muito importante sempre colocar um debug em seu código, salvando o erro do debug no seu banco de dados para analisar onde e porque ocorreu o erro no momento do retorno.
  • O script em nossa página é apenas ilustrativo, cada desenvolvedor altera de acordo com o próprio sistema.


Links úteis:

 

Defina a URL que receberá as informações das transações: Retorno Automático

Configure o endereço de redirecionamento: Página de Redirecionamento

Crie um Token para sua conta PagSeguro: Token

 

Observe todos esses itens, e se ainda você não conseguir receber o POST, entre em contato com nosso suporte técnico

Ainda não possui uma conta PagSeguro? Cadastre-se, é grátis: