Estou tendo o mesmo problema no meu site, as vezes ocorre do pedido entrar no sistema como pagamento pendente. Já tive alguns casos dele entrar como pendente e no portal da GetNet o valor ser debitado do cartão mas não atualizar no site.
A umas duas semanas começou aqui o problema. Muitos ligam também informando o erro DENY na tela, quando envio um link de pagamento o mesmo consegue efetuar sem problema.
@juliparaiso esse erro é quando a API não retorna nossos valores esperados. Tu tem algum log da hospedagem com algo informando como “timeout” ou algo do genero?
@jlpetri o erro “DENY” normalmente é causado pelo anti-fraude. É valido confirmar os valores das compras em seu site (se são muito altas, por exemplo)
Pra mim os erros são estes:
2021-07-16T17:03:11+00:00 CRITICAL Uncaught TypeError: Return value of VVerner\Getnet\API::fetchGetnetData() must be of the type array, null returned in /home/u355441484/domains/thermasdeolimpiasp.com.br/public_html/wp-content/plugins/vverner-getnet-gateway/app/controller/API.php:254
Stack trace:
#0 /home/u355441484/domains/thermasdeolimpiasp.com.br/public_html/wp-content/plugins/vverner-getnet-gateway/app/controller/API.php(74): VVerner\Getnet\API->fetchGetnetData('v1/payments/cre...', Array)
#1 /home/u355441484/domains/thermasdeolimpiasp.com.br/public_html/wp-content/plugins/vverner-getnet-gateway/app/controller/Getnet_Gateway.php(165): VVerner\Getnet\API->processPayment(Object(Automattic\WooCommerce\Admin\Overrides\Order), 3, Array)
#2 /home/u355441484/domains/thermasdeolimpiasp.com.br/public_html/wp-content/plugins/woocommerce/includes/class-wc-checkout.php(971): Getnet_Gateway->process_payment(8541)
#3 /home/u355441484/domains/thermasdeolimpiasp.com.br/public_html/wp-content/plugins/woocommerce/includes/class-wc-checkout.php(1186): WC_Che, em /home/u355441484/domains/thermasdeolimpiasp.com.br/public_html/wp-content/plugins/vverner-getnet-gateway/app/controller/API.php, na linha 254
2021-07-16T22:56:54+00:00 CRITICAL Uncaught TypeError: Return value of VVerner\Getnet\API::fetchGetnetData() must be of the type array, null returned in /home/u355441484/domains/thermasdeolimpiasp.com.br/public_html/wp-content/plugins/vverner-getnet-gateway/app/controller/API.php:254
Stack trace:
#0 /home/u355441484/domains/thermasdeolimpiasp.com.br/public_html/wp-content/plugins/vverner-getnet-gateway/app/controller/API.php(74): VVerner\Getnet\API->fetchGetnetData('v1/payments/cre...', Array)
#1 /home/u355441484/domains/thermasdeolimpiasp.com.br/public_html/wp-content/plugins/vverner-getnet-gateway/app/controller/Getnet_Gateway.php(165): VVerner\Getnet\API->processPayment(Object(Automattic\WooCommerce\Admin\Overrides\Order), 3, Array)
#2 /home/u355441484/domains/thermasdeolimpiasp.com.br/public_html/wp-content/plugins/woocommerce/includes/class-wc-checkout.php(980): Getnet_Gateway->process_payment(8545)
#3 /home/u355441484/domains/thermasdeolimpiasp.com.br/public_html/wp-content/plugins/woocommerce/includes/class-wc-checkout.php(1195): WC_Che, em /home/u355441484/domains/thermasdeolimpiasp.com.br/public_html/wp-content/plugins/vverner-getnet-gateway/app/controller/API.php, na linha 254
E o DENY este:
2021-07-19T11:44:28+00:00 ERROR Array
(
[message] => DENY
[name] => CreditServiceError
[status_code] => 402
[details] => Array
(
[0] => Array
(
[antifraud] => Array
(
[code] => DENY
[status_code] => 481
[description] => Transacao negada.afpd!
[transaction_token] => AxjzbwSTU7tpVwftu0+A/+YCTyxKjmqr2htXwSwXh0ky9GK63CYEMAAAJgEK
[transaction_id] => 6266950661636750004096
[transaction_reference_code] => 227e1fd0-823a-4215-9a8a-e9d91e8f8253
[transaction_datetime] => 2021-07-19T11:44:28.334Z
[device_fingerprint] => Array
(
[received] => 1
[smartID] => f7cc451646e2488ba0fdd20e47518c61
)
)
[brand] => mastercard
[payment_id] => 227e1fd0-823a-4215-9a8a-e9d91e8f8253
)
)
)
Os valores variam de 20 reais a mil reais as trasações. Algumas de valor baixo "100 reais" falham e as altas "800" ou mais passam sem problema.
Imaginei ser o anti-fraude mesmo nesse caso, existe algo que posso fazer nessa questão ?
@jlpetri pior que quanto ao anti-fraude é um erro bem genérico mesmo. Na própria documentação não fala muito sobre ele clique para ver a tabela de erros
Quanto aos erros críticos, só vai retonar null se a API não retornar nada, ou seja, a conexão for encerrada antes do recebimento das informações. De qualquer maneira colocarei no roadmap um tratamento neste erro
Como não tivemos mais resposta, estamos fechando este ticket