• Resolved Mateus Leon

    (@mateus-leon)


    Uso os arquivos padrão do WooCommerce para produzir a loja e simplesmente adicionei o plugin que fez, juntamente com outros como o dos Correios, Extra Checkouts, etc.

    O que acontece para mim é que, após a confirmação, aceite dos termos de compra e uso, escolha das formas de pagamento (a do pagSeguro é a única), frete, tudo numa mesma página, eu escolho “Finalizar Compra” e o WordPress me joga pra página de pagamento (detalhe que escolhi o lightbox como forma de pagamento). O seguinte erro aparece:

    Warning: Missing argument 2 for WC_PagSeguro_API::do_payment_request(), called in /var/www/html/lovebookids.com.br/web/wp-content/plugins/woocommerce-pagseguro/includes/class-wc-pagseguro-gateway.php on line 441 and defined in /var/www/html/lovebookids.com.br/web/wp-content/plugins/woocommerce-pagseguro/includes/class-wc-pagseguro-api.php on line 587

    Logo em seguida uma mensagem de feedback no formato do WooCommerce também é mostrada:

    PagSeguro: Por favor, selecione um método de pagamento.

    Olhei no código fonte das classes que criou e nas linhas indicadas pelo erro, no arquivo class-wc-pagseguro-api.php, o bloco de código a seguir é o que contém o erro:

    /* LINES 579 TO 602 - Mateus Leon */
        /**
         * Do payment request.
         *
         * @param  WC_Order $order  Order data.
         * @param  array    $posted Posted data.
         *
         * @return array
         */
        public function do_payment_request( $order, $posted ) {
            $payment_method = isset( $posted['pagseguro_payment_method'] ) ? $posted['pagseguro_payment_method'] : '';
    
            /**
             * Validate if has selected a payment method.
             */
            if ( ! in_array( $payment_method, $this->get_available_payment_methods() ) ) {
                return array(
                    'url'   => '',
                    'data'  => '',
                    'error' => array( '<strong>' . __( 'PagSeguro', 'woocommerce-pagseguro' ) . '</strong>: ' .  __( 'Please, select a payment method.', 'woocommerce-pagseguro' ) )
                );
            }
    
            // Sets the xml.
            $xml = $this->get_payment_xml( $order, $posted );

    Isso ajuda a esclarecer o problema que acontece comigo? Precisa de mais alguma informação?

    https://wordpress.org/plugins/woocommerce-pagseguro/

Viewing 7 replies - 1 through 7 (of 7 total)
  • Thread Starter Mateus Leon

    (@mateus-leon)

    Notei que há uma versão nova há pouco, a 2.5.1.

    Agora abre o lightbox mas o iframe do pagSeguro acusa que o código de checkout está inválido.

    A API Key do pagSeguro está correta, o email de cadastro também. Não há nenhuma outra alteração.

    O que acha que pode ser?

    Plugin Author Gabriel Reguly

    (@gabriel-reguly)

    Está autorizado pelo pagSeguro o uso do checkout transparente?

    Vai ver que é isto. Confere com eles 🙂

    Plugin Author Claudio Sanches

    (@claudiosanches)

    Envia o link do seu site Mateus.

    Thread Starter Mateus Leon

    (@mateus-leon)

    Olá Claudio, o link do site é http://www.lovebookids.com.br.

    Eu tinha deixado ele no modo de manutenção. Vou tirar para que veja.

    Plugin Author Claudio Sanches

    (@claudiosanches)

    Esta tudo funcionando bem Mateus: http://i.imgur.com/M7j6ChI.png

    Acontece o seguinte, como antes estava quebrado, você ainda esta no mesmo número de pedido que já foi enviado para o PagSeguro e desta forma vai dar erro mesmo, mas basta clicar no botão de cancelar o pedido ou cancelar pelo admin e assim vai começar com um número novo de pedido.
    Se não me engano, você pode também usar a opção de limpar “os carrinhos” que tem em WooCommerce -> Status do sistema, desta forma evita que qualquer pessoa que tentou comprar na versão antiga tenha esse problema ainda.

    Thread Starter Mateus Leon

    (@mateus-leon)

    Olá Claudio, de fato está tudo ok. Agradeço a atenção dispensada!

    Plugin Author Claudio Sanches

    (@claudiosanches)

    😉

Viewing 7 replies - 1 through 7 (of 7 total)
  • The topic ‘"Finalizar Compra" quebra antes de entrar no pagSeguro’ is closed to new replies.