Support » Plugin: Claudio Sanches - PagSeguro for WooCommerce » Falha na alteração de Status via API – (Invalid IPN Request) Array vazio

  • Prezados,

    Há alguns meses as notificações do Pagseguro pararam de funcionar no meu site e ao verificar o log me deparei com o seguinte erro : “Invalid IPN request: Array()”.

    07-22-2019 @ 01:00:21 – PagSeguro Payment Token created with success! The Token is: 535BD454909056A7740A0FA785CFDBA9
    07-22-2019 @ 01:02:54 – Checking IPN request…
    07-22-2019 @ 01:02:54 – Invalid IPN request: Array
    (
    )

    Aparentemente isso indica que a chamada via POST para a minha API de notificação:
    https://{meudominio}/wc-api/WC_PagSeguro_Gateway está vazia pois essa é a mensagem de erro quando os parâmetros notificationCode e notificationType não são recebidos de acordo com o trecho abaixo do código em “class-wc-pagseguro-api.php”:

    // Valid the post data.
    if ( ! isset( $data[‘notificationCode’] )
    && ! isset( $data[‘notificationType’] ) ) {
    if ( ‘yes’ == $this->gateway->debug ) {
    $this->gateway->log->add( $this->gateway->id, ‘Invalid IPN request: ‘ . print_r( $data, true ) );
    }
    return false;
    }

    No site do Pagseguro a mensagem de erro é genérica: “Houve erro ao
    tentar conexão”

    Fiz algumas tentativas para simular uma requisição com o Postman e ao realizar a chamada via “x-www-form-urlencoded” passando os parametros de notificação, funcionou.

    OBS: foi aplicado https no site recentemente.
    Dá a impressão de que o PagSeguro está acessando a rota http ao inveés da https

    Alguém sabe como resolver?

    Agradeço desde já,

    Dados de apoio:
    Wordpress v5.2.2
    Woocomerce Pagseguro v2.13.1
    Api de notificação v2 : https://ws.pagseguro.uol.com.br/v2/transactions/notifications/{id_notificao_pagseguro}?email={meuemail}&token={meutoken}
    URL Api https://{meudominio}/wc-api/WC_PagSeguro_Gateway

    • This topic was modified 3 months, 3 weeks ago by  felippefms.
Viewing 5 replies - 1 through 5 (of 5 total)
  • @felippefms estou com o mesmo problema…

    Parece que o Pagseguro fez alguma alteração no envio de mudança de status dos pedidos.

    Na opção Notificações de Transações aparece a seguinte mensagem;
    Atenção!
    O retorno automático de dados foi descontinuado para novas implementações. Confira informações dessa funcionalidade.

    https://pagseguro.uol.com.br/preferencias/integracoes.jhtml

    Sou um pouco leigo no assunto, vou esperar se alguém com mais conhecimento pode nos dar uma luz.

    Estou com o mesmo problema também.
    O PagSeguro parou de enviar notificações ao site, assim não consegue atualizar o status do pedido.

    @felippefms onde encontro o {id_notificacao_pagseguro} no log para fazer esse teste?

    Atualizando: Estou em contato com um dos analistas da parte de integração do pagseguro e ele irá verificar se há algum erro na parte deles, recebendo a resposta atualizo aqui.

    @felipereisfernandes , no menu principal do PagSeguro, acesse:
    Extratos e Relatórios -> Extratos de Transações -> Selecione um pedido efetuado -> Na última guia : Histórico de mudanças de status, há um link chamado:”Notificações da transação enviadas para o servidor”.

    Nele você obtém o código(GUID) da notificação e com ele você passa os parametros notificationCode={GUID} e notificationType=transaction.

    Foi assim que eu descobri que a API do meu server estava ok, contanto que a requisição chegasse na url https.

    @felippefms Como vc fez para resolver esse problema. Estou com esse problema de comunicação do pagseguro com o plugin do WP. Não modificando o status.

    @atmmoreira Ainda não resolvi, estou em contato com o suporte do pagseguros, mas eles alegam que o meu servidor está bloqueando a requisição deles, como se houvesse algum filtro ou permissão no momento de receber a requisição.
    Já procurei algum tipo de restrição no meu arquivo .htaccess mas não encontrei nada.
    O estranho é que neste caso a restrição seria especificamente para o host do pagseguros, visto que ao simular a notificação com o Postman, eu consigo atualizar o status.
    Caso alguém tenha alguma pista do que possa ser, aguardo também.

Viewing 5 replies - 1 through 5 (of 5 total)
  • You must be logged in to reply to this topic.