pagamento pix
-
Olá meu cliente efetuou o pagamento via pix, porem não apareceu nos pedidos do woocommerce e também ele não recebeu o produto digital pois não constou como compra.
e o dinheiro caiu na hora na minha conta, existe alguma atualização?
-
Estou com o mesmo problema. Pagamento PIX, o plugin não esta reconhecendo e mudando para processando.
Olá, o problema não seria do plugin deste plugin, né? Ele ainda não foi atualizado com o pagamento com PIX
@alanabilio a API do PagSeguro continua a mesma, é como receber qualquer outro pagamento por transferia, cartão ou boleto. Então já funciona sim com PIX neste plugin, só não precisou atualizar nada.
E eu não vejo nada na documentação do PagSeguro dizendo que precisa de algo especial para o PIX: https://dev.pagseguro.uol.com.br/docs/comecando-introducao
Muito obrigado por sua resposta! Entendi então onde estou moscando. Abraço!
@alanabilio qual a resolução para o problema vocês conseguiram? Tenho o mesmo problema com o PIX aqui.
Alguém encontrou alguma solução? Também estou passando pelo mesmo problema…
Claudio, tudo bem?
Eu preciso fazer alguma coisa para que a opção PIX apareça no checkout transparente? Aqui só aparece boleto e cartão de crédito.
O PIX funciona no checkout transparente? Vocês que conseguiram habilitar o PIX, que checkout usam? Precisaram habilitar algo no PagSeguro?
@ricardomorganti @fabertleury @jhouccc @jffaria O PIX funciona no checkout transparente? Vocês que conseguiram habilitar o PIX, que checkout usam? Precisaram habilitar algo no PagSeguro?
@jorgehen estou usando o checkout com redirecionamento, assim foi habilitado automaticamente. @claudiosanches, entrei em contato diretamente com o PagSeguro e eles disseram que “É preciso verificar com o módulo que utiliza se está preparado para tratar o retorno de pagamentos via PIX, que possui o código 11.”. Pode ser por isso que o PIX não esteja se comunicando propriamente?
@ricardomorganti o plugin vai verificar e vai informar tudo no log de erro dele se ativado, caso seja isso o problema, vai mostrar lá o código.
Também por padrão vai pegar o código enviado pelo PagSeguro e enviar de volta para eles para validar, veja: https://github.com/claudiosanches/woocommerce-pagseguro/blob/c0ceaf7eb4441ab76948b94de73ffb5667ea124c/includes/class-wc-pagseguro-api.php#L835
O PagSeguro deve responder com o status do pedido depois disso, e usamos a resposta do PagSeguro para alterar o status do pedido em https://github.com/claudiosanches/woocommerce-pagseguro/blob/6e37bcf952f33644483d023acd52f63837a50c84/includes/class-wc-pagseguro-gateway.php#L551-L653
Amigos, o que acontece é que o PagSeguro retorna direto o status 4. E é isso que o código faz quando recebe esse status:
case 4: $order->add_order_note( __( 'PagSeguro: Payment completed and credited to your account.', 'woocommerce-pagseguro' ) );
Normalmente esse status é utilizado para quando o valor é liberado na nossa conta PagBank, ou seja, no caso do cartão de crédito ali 15 ou 30 dias depois… então o plugin só adiciona essa nota mas não faz mais nada, pois a essa altura do campeonato tudo já foi feito. Esse é o problema. Para resolver é preciso verificar se o pedido ainda está com pagamento pendente e, se for o caso, atualizar o que tem pra atualizar.
@claudiosanches se você achar ok posso fazer um PR.
-
This reply was modified 4 years, 3 months ago by
João Faria.
@ricardomorganti @jorgehen @fabriciobw @alanabilio btw so o jeito mais fácil de fazer funcionar (mas não solução completa pra integrar o PIX de fato) é trocar o case ali de cima por isso aqui:
case 4: // Check if order is not paid already if ( method_exists( $order, 'get_status' ) && 'processing' !== $order->get_status() && 'completed' !== $order->get_status() ) { if ( method_exists( $order, 'get_status' ) && 'cancelled' === $order->get_status() ) { $order->update_status( 'processing', __( 'PagSeguro: Payment approved.', 'woocommerce-pagseguro' ) ); wc_reduce_stock_levels( $order_id ); } else { $order->add_order_note( __( 'PagSeguro: Payment approved.', 'woocommerce-pagseguro' ) ); $order->payment_complete( sanitize_text_field( (string) $posted->code ) ); } } $order->add_order_note( __( 'PagSeguro: Payment completed and credited to your account.', 'woocommerce-pagseguro' ) ); break;
linha 595 do arquivo includes/class-wc-pagseguro-gateway.php
@jorgehen @fabriciobw essa solução aqui em cima só resolve pro checkout com redirecionamento. checkout transparente o buraco é mais embaixo…
-
This reply was modified 4 years, 3 months ago by
- The topic ‘pagamento pix’ is closed to new replies.