Anderson Madeira
Forum Replies Created
-
Claudio,
Acontece aqui que na linha
if ( is_object( $order ) && $amount === intval( $order->get_total() * 100 ) && $order_number === $order->id ) {
a condição $amount === intval( $order->get_total() * 100 ) estava sendo avaliada como false para alguns pedidos, mesmo que os valores dois dois lados da expressão sejam verdadeiros, tanto com === (que verifica o tipo) como com == como pode ver aqui na saída do debug que fiz: https://pastebin.com/77mLBjfv
Eu retirei essa condição da expressão e até agora a cielo não reportou mais falhas de comunicação.
Claudio, na linha 284 do arquivo class-wc-checkout-cielo-gateway.php não deveria ter
echo ‘<status>OK</status>’;
e depois o
exit;
porque a cielo requer que seja impresso o ok pra dar sinalizar que o servidor recebeu a requisição como é descrito aqui:“Quando acessada pelo servidor da Cielo, enviando o POST da tabela acima, a URL cadastrada para Notificação deverá exibir um código informando que recebeu a mudança de status e a processou com sucesso. Código:<status>OK</status>”
Obrigado pela ajuda.
Entendo.
Já verifiquei com o pessoal do servidor e garantiram que não há nada bloqueando as requisições. Como falei no primeiro comentário, a cielo chega no servidor, mas a condição do if da linha 270 é avaliada como falsa:if ( is_object( $order ) && $amount === intval( $order->get_total() * 100 ) && $order_number === $order->id ) {
e a execução está entrando no else da linha 280:
} else {
if ( ‘yes’ == $this->debug ) {
$this->log->add( $this->id, ‘Invalid status change: ‘ . print_r( $data, true ) );
}
}Como demonstrei no primeiro comentário. Acha que pode ser algum problema nessa condição ou nos pedidos gerados pelo meu site?
Muito obrigado pela ajuda!Não seria o caso da url estar errada?
Porque aqui o arquivo class-wc-checkout-cielo-api.php, linha 22 usa a url https://cieloecommerce.cielo.com.br/Transactional/Order/Index. Mas no manual do cielo checkout a url informada é https://cieloecommerce.cielo.com.br/api/public/v1/orders
Alguém pode ajudar?!