pagseguro / pagseguro-modulo-woocommerce

Módulo de integração para WordPress/WooCommerce
GNU General Public License v3.0
28 stars 26 forks source link

Status do pedido não é alterado após o envio da notificação pelo Pagseguro #45

Open DocasDev opened 3 years ago

DocasDev commented 3 years ago

Comportamento esperado

O plugin deveria alterar o status do pedido após o envio de uma notificação do pagseguro.

Comportamento atual

O Status do pedido não é alterado após o envio das notificações. Foram feitos testes e constatado que as notificações chegam, porém o retorno do método $order->update_status() é FALSE.

Ambiente (produção, sandbox)

Descrição Detalhada

No arquivo: woocommerce-pagseguro-oficial/classes/class-wc-pagseguro-gateway.php No método: process_nofitication() O seguinte código não funciona caso o valor da configuração Invoice Prefix tenha um valor diferente de WC- $order_id = str_replace('WC-', '', $transaction->getReference());

Possível solução

Alterar o código da linha: $order_id = str_replace('WC-', '', $transaction->getReference()); Por: $order_id = str_replace($this->settings['invoice_prefix'], '', $transaction->getReference());