• Resolved Ricardo

    (@maverickws)


    Bom dia,

    Tendo activado o envio de registo de eventos para depura??o por email, verificámos a existência de pagamentos que entram em duplicado, sendo um registado com sucesso e o outro dando erro.

    Exemplo:
    Callback (www.dominio.pt /website/wc-api/WC_Multibanco_IfThen_Webdados/?chave=…&entidade=…&referencia=434046807&valor=20.00&datahorapag=02-03-2021%2011:29:00&terminal=5-…-SANTANDER%20TOTTA) from 62.48.212.7 – Multibanco payment received

    E em simultaneo:
    Callback (www.dominio.pt /website/wc-api/WC_Multibanco_IfThen_Webdados/?chave=…&entidade=…&referencia=434046807&valor=20.00&datahorapag=02-03-2021%2011:29:00&terminal=5-…-SANTANDER%20TOTTA) from 23.97.198.40 – No orders found awaiting payment with these details

    Isto é uma situa??o normal?

    Cumpts

Viewing 10 replies - 1 through 10 (of 10 total)
  • Bom dia,

    As referências n?o ficam invalidadas depois de serem pagas e podem ser pagas de novo. é assim que funciona o sistema da Ifthenpay.

    Hipótese 1:
    Se o cliente pagar duas vezes a mesma referência, é perfeitamente normal que a primeira dê OK e a segunda dê erro porque essa encomenda já n?o está a pagamento (no WooCommerce).

    Hipótese 2:
    Por alguma raz?o o sistema da IfthenPay n?o conseguiu obter o OK da primeira vez que fez callback e fez uma segunda chamada (tentam 13x até desistirem), mas o WooCommerce já tinha dado a encomenda como paga logo na primeira tentativa de callback. Deve ter sido este o cenário porque como podemos ver a data hora de pagamento é exactamente a mesma.

    Em qualquer dos casos é uma situa??o relativamente normal, sendo o primeiro caso menos comum e verificável apenas pela consulta do backoffice da IfthenPay onde devem aparecer os dois pagamentos.

    De qualquer forma vamos verificar com a IfthenPay estes dois callbacks específicos.

    Thread Starter Ricardo

    (@maverickws)

    Bom dia Marco,

    Creio que a situa??o se enquadraria dentro da hipótese 2, no entanto ambos os emails foram recebidos em simultaneo, o que me leva a questionar, qual é o intervalo de tempo entre cada um dos callbacks até realizar as mencionadas 13 chamadas?
    é suposto serem simultaneos? (entre o email 1 e o email 2, analisando a source, existe apenas a diferen?a de 2 segundos).

    Eu também acho que é o segundo caso, e é precisamente pela quest?o que coloca, que indiquei que ia verificar com a IfthenPay.

    Eu sei que a segunda tentativa é praticamente de seguida, mas estou a achar estranho ser t?o rápida, e ainda por cima vir de um IP diferente. Sei que o prazo é curto e vai alargando ao longo das várias tentativas, para dar tempo ao site para recuperar de alguma eventual indisponibilidade temporária.

    Thread Starter Ricardo

    (@maverickws)

    Relativamente ao curto intervalo, 2 segundos (até 5, 10, mesmo 30 segundos) podem derivar de lentid?o na rede, n?o chega sequer a timeout.
    Analisando todos os outros emails dos outros pagamentos, verifico que todos originam no primeiro IP.

    Ficaremos a aguardar mais informa??o. Grato.

    A indica??o que temos parte da IfthenPay é a seguinte:

    – O primeiro callback é feito por um determinado sistema (do IP 62.48.212.7) para ser mais rápido, e por alguma raz?o falhou (n?o receberam OK 200, mas a liga??o foi completada, n?o dando timeout).
    – Quando isso acontece entregam imediatamente a tarefa a outro sistema (do IP 23.97.198.40) que trata da pool de callbacks falhados e que arranca logo imediatamente com a sua primeira tentativa (daí apenas os 2 segundos), sendo que ent?o v?o até às 13 tentativas se for necessário.

    Em suma:
    – No primeiro callback o site conseguiu identificar o pagamento, mas por alguma raz?o n?o devolveu o HTTP OK 200 (vejam se identificam algum problema no error log do servidor à volta desta hora)
    – O sistema da IfthenPay fez a(s) tentativa(s) adicional(is) de callback
    – N?o existe qualquer impacto em callbacks adicionais a pagamentos já identificados

    Thread Starter Ricardo

    (@maverickws)

    Boa tarde,

    No log temos o seguinte:

    23.97.198.40 – – [02/Mar/2021:12:30:16 +0100] “GET /website/wc-api/WC_Multibanco_IfThen_Webdados/?chave=…&entidade=…&referencia=434046807&valor=20.00&datahorapag=02-03-2021%2011:29:00&terminal=5-…-SANTANDER%20TOTTA HTTP/1.1” 200 2 “-” “-”

    62.48.212.7 – – [02/Mar/2021:12:29:46 +0100] “GET /website/wc-api/WC_Multibanco_IfThen_Webdados/?chave=…&entidade=…&referencia=434046807&valor=20.00&datahorapag=02-03-2021%2011:29:00&terminal=5-…-SANTANDER%20TOTTA HTTP/1.1” 200 2 “-” “Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)”

    Ambos com HTTP OK 200.

    Olá de novo Ricardo,

    OK, vou enviar para a IfthenPay porque isso já está fora do ambito do plugin.

    Thread Starter Ricardo

    (@maverickws)

    OK Marco, agrade?o o feedback.
    Ficarei a aguardar novas informa??es.

    No que diz respeito ao plugin, o funcionamento é o correcto, e como referi, a dupla notifica??o e “erro” na segunda é apenas um registo de log n?o tendo qualquer impacto no funcionamento do sistema.

    Passei para a IfthenPay a informa??o de que efectivamente foi um 200 para eles analisarem e, se assim entenderem, contactá-lo para mais esclarecimentos, pelo que por este canal n?o terei mais informa??es úteis para lhe fornecer.

    Thread Starter Ricardo

    (@maverickws)

    Grato.

Viewing 10 replies - 1 through 10 (of 10 total)
  • The topic ‘Pagamento recebido / notifica??o duplicada’ is closed to new replies.