Code Monkey home page Code Monkey logo

woocommerce-pagseguro's Introduction

Claudio Sanches - PagSeguro for WooCommerce

Contributors: claudiosanches, [Gabriel Reguly](https://profiles.wordpress.org/Gabriel Reguly)
Donate link: https://claudiosanches.com/doacoes/
Tags: woocommerce, pagseguro, payment
Requires at least: 4.0
Tested up to: 5.2
Stable tag: 2.14.0
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

Adds PagSeguro gateway to the WooCommerce plugin

Description

Add PagSeguro gateway to WooCommerce

This plugin adds PagSeguro gateway to WooCommerce.

Please notice that WooCommerce must be installed and active.

Contribute

You can contribute to the source code in our GitHub page.

Descrição em Português:

Adicione o PagSeguro como método de pagamento em sua loja WooCommerce.

PagSeguro é um método de pagamento brasileiro desenvolvido pela UOL.

Este plugin foi desenvolvido sem nenhum incentivo do PagSeguro ou da UOL. Nenhum dos desenvolvedores deste plugin possuem vínculos com estas duas empresas.

Este plugin foi desenvolvido a partir da documentação oficial do PagSeguro e utiliza a última versão da API de pagamentos.

Estão disponíveis as seguintes modalidades de pagamento:

  • Padrão: Cliente é redirecionado ao PagSeguro para concluir a compra.
  • Lightbox: Uma janela do PagSeguro é aberta na finalização para o cliente fazer o pagamento.
  • Transparente: O cliente faz o pagamento direto no seu site sem precisar ir ao site do PagSeguro.

Além que é possível utilizar o novo sandbox do PagSeguro.

Compatibilidade

Compatível com versões atuais do WooCommerce.

Este plugin também é compatível com o WooCommerce Extra Checkout Fields for Brazil, desta forma é possível enviar os campos de "CPF", "número do endereço" e "bairro" (para o Checkout Transparente é obrigatório o uso deste plugin).

Instalação

Confira o nosso guia de instalação e configuração do PagSeguro na aba Installation.

Integração

Este plugin funciona perfeitamente em conjunto com:

Dúvidas?

Você pode esclarecer suas dúvidas usando:

Colaborar

Você pode contribuir com código-fonte em nossa página no GitHub.

Agradecimentos

  • Leandro Matos ajudou com o layout e os ícones do Checkout Transparente.

Installation

  • Upload plugin files to your plugins folder, or install using WordPress built-in Add New Plugin installer;
  • Activate the plugin;
  • Navigate to WooCommerce -> Settings -> Payment Gateways, choose PagSeguro and fill in your PagSeguro Email and Token.

Instalação e configuração em Português:

Instalação do plugin:

  • Envie os arquivos do plugin para a pasta wp-content/plugins, ou instale usando o instalador de plugins do WordPress.
  • Ative o plugin.

Requerimentos:

É necessário possuir uma conta no PagSeguro e ter instalado o WooCommerce.

Configurações no PagSeguro:

No PagSeguro é necessário desativar a opção de "Pagamento via Formulário HTML", você pode fazer isso em "Preferências" > "Integrações".

Apenas com isso já é possível receber os pagamentos e fazer o retorno automático de dados.

Atenção: Não é necessário configurar qualquer URL em "Página de redirecionamento" ou "Notificação de transação", pois o plugin é capaz de comunicar o PagSeguro pela API quais URLs devem ser utilizadas para cada situação.

Configurações do Plugin:

Com o plugin instalado acesse o admin do WordPress e entre em "WooCommerce" > "Configurações" > "Finalizar compra" > "PagSeguro".

Habilite o PagSeguro, adicione o seu e-mail e o token do PagSeguro. O token é utilizado para gerar os pagamentos e fazer o retorno de dados.

Você pode conseguir um token no PagSeguro em "Integrações" > "Token de Segurança".

É possível escolher entre três opções de pagamento que são:

  • Checkout no PagSeguro (padrão): O cliente e redirecionado para o site do PagSeguro
  • Checkout em Lighbox: O cliente permanece no seu site é aberto um Lightbox do PagSeguro onde o cliente fará o pagamento
  • Checkout Transparente: O cliente faz o pagamento direto em seu site na página de finalizar pedido utilizando a API do PagSeguro.

Você ainda pode definir o comportamento da integração utilizando as opções:

  • Enviar apenas o total do pedido: Permite enviar apenas o total do pedido no lugar da lista de itens, esta opção deve ser utilizada apenas quando o total do pedido no WooCommerce esta ficando diferente do total no PagSeguro.
  • Prefixo de pedido: Esta opção é útil quando você esta utilizando a mesma conta do PagSeguro em várias lojas e com isso você pode diferenciar os pagamentos pelo prefixo.

Checkout Transparente

Para utilizar o checkout transparente é necessário utilizar o plugin WooCommerce Extra Checkout Fields for Brazil.

Com o WooCommerce Extra Checkout Fields for Brazil instalado e ativado você deve ir até "WooCommerce > Campos do Checkout" e configurar a opção "Exibir Tipo de Pessoa" como "Pessoa Física apenas".

Isto é necessário porque é obrigatório o envio de CPF para o PagSeguro, além de que o PagSeguro aceita apenas CPF.

Note que é necessário aprovação do PagSeguro para utilizar o Checkout Transparente, saiba mais em "Como receber pagamentos pelo PagSeguro".

Pronto, sua loja já pode receber pagamentos pelo PagSeguro.

Frequently Asked Questions

What is the plugin license?

  • This plugin is released under a GPL license.

What is needed to use this plugin?

  • WooCommerce version 3.0 or latter installed and active.
  • Only one account on PagSeguro.

FAQ em Português:

Qual é a licença do plugin?

Este plugin esta licenciado como GPL.

O que eu preciso para utilizar este plugin?

  • Ter instalado uma versão atual do plugin WooCommerce.
  • Possuir uma conta no PagSeguro.
  • Gerar um token de segurança no PagSeguro.
  • Desativar a opção "Pagamento via Formulário HTML" em integrações na página do PagSeguro.

PagSeguro recebe pagamentos de quais países?

No momento o PagSeguro recebe pagamentos apenas do Brasil.

Configuramos o plugin para receber pagamentos apenas de usuários que selecionarem o Brasil nas informações de pagamento durante o checkout.

Quais são os meios de pagamento que o plugin aceita?

São aceitos todos os meios de pagamentos que o PagSeguro disponibiliza, entretanto você precisa ativa-los na sua conta.

Confira os meios de pagamento e parcelamento.

Como que plugin faz integração com PagSeguro?

Fazemos a integração baseada na documentação oficial do PagSeguro que pode ser encontrada nos "guias de integração" utilizando a última versão da API de pagamentos.

Instalei o plugin, mas a opção de pagamento do PagSeguro some durante o checkout. O que fiz de errado?

Você esqueceu de selecionar o Brasil durante o cadastro no checkout.

A opção de pagamento pelo PagSeguro funciona apenas com o Brasil.

É possível enviar os dados de "Número", "Bairro" e "CPF" para o PagSeguro?

Sim é possível, basta utilizar o plugin WooCommerce Extra Checkout Fields for Brazil.

O pedido foi pago e ficou com o status de "processando" e não como "concluído", isto esta certo?

Sim, esta certo e significa que o plugin esta trabalhando como deveria.

Todo gateway de pagamentos no WooCommerce deve mudar o status do pedido para "processando" no momento que é confirmado o pagamento e nunca deve ser alterado sozinho para "concluído", pois o pedido deve ir apenas para o status "concluído" após ele ter sido entregue.

Para produtos baixáveis a configuração padrão do WooCommerce é permitir o acesso apenas quando o pedido tem o status "concluído", entretanto nas configurações do WooCommerce na aba Produtos é possível ativar a opção "Conceder acesso para download do produto após o pagamento" e assim liberar o download quando o status do pedido esta como "processando".

Ao tentar finalizar a compra aparece a mensagem "PagSeguro: Um erro ocorreu ao processar o seu pagamento, por favor, tente novamente ou entre em contato para obter ajuda." o que fazer?

Esta mensagem geralmente aparece por causa que não foi configurado um Token válido. Gere um novo Token no PagSeguro em "Preferências" > "Integrações" e adicione ele nas configurações do plugin.

Outro erro comum é gerar um token e cadastrar nas configurações do plugin um e-mail que não é o proprietário do token, então tenha certeza que estes dados estão realmente corretos!

Note que caso você esteja utilizando a opção de sandbox é necessário usar um e-mail e token de testes que podem ser encontrados em "PagSeguro Sandbox > Dados de Teste".

Se você tem certeza que o Token e Login estão corretos você deve acessar a página "WooCommerce > Status do Sistema" e verificar se fsockopen e cURL estão ativos. É necessário procurar ajuda do seu provedor de hospedagem caso você tenha o fsockopen e/ou o cURL desativados.

Para quem estiver utilizando o Checkout Transparente é obrigatório o uso do plugin WooCommerce Extra Checkout Fields for Brazil para enviar o CPF ao PagSeguro, caso o contrário será impossível de finalizar o pedido, veja no guia de instalação como fazer isso.

Por último é possível ativar a opção de Log de depuração nas configurações do plugin e tentar novamente fechar um pedido (você deve tentar fechar um pedido para que o log será gerado e o erro gravado nele). Com o log é possível saber exatamente o que esta dando de errado com a sua instalação.

Caso você não entenda o conteúdo do log não tem problema, você pode me abrir um tópico no fórum do plugin com o link do log (utilize o pastebin.com ou o gist.github.com para salvar o conteúdo do log).

O status do pedido não é alterado automaticamente?

Sim, o status é alterado automaticamente usando a API de notificações de mudança de status do PagSeguro.

Caso os status dos seus pedidos não estiverem sendo alterados siga o tutorial do PagSeguro:

A seguir uma lista de ferramentas que podem estar bloqueando as notificações do PagSeguro:

  • Site com CloudFlare, pois por padrão serão bloqueadas quaisquer comunicações de outros servidores com o seu. É possível resolver isso desbloqueando a lista de IPs do PagSeguro.
  • Plugin de segurança como o "iThemes Security" com a opção para adicionar a lista do HackRepair.com no .htaccess do site. Acontece que o user-agent do PagSeguro esta no meio da lista e vai bloquear qualquer comunicação. Você pode remover isso da lista, basta encontrar onde bloquea o user-agent "jakarta" e deletar ou criar uma regra para aceitar os IPs do PagSeguro).
  • mod_security habilitado, neste caso vai acontecer igual com o CloudFlare bloqueando qualquer comunicação de outros servidores com o seu. Como solução você pode desativar ou permitir os IPs do PagSeguro.

Funciona com o Lightbox do PagSeguro?

Sim, basta ativar esta nas opções do plugin.

Funciona com o checkout transparente do PagSeguro?

Sim, funciona. Você deve ativar nas opções do plugin. Note que é necessário aprovação do PagSeguro para utilizar o Checkout Transparente, saiba mais em "Como receber pagamentos pelo PagSeguro".

Funciona com o Sandbox do PagSeguro?

Sim, funciona e basta você ativar isso nas opções do plugin, além de configurar o seu e-mail e token de testes".

O total do pedido no WooCommerce é diferente do enviado para o PagSeguro, como eu resolvo isso?

Caso você tenha este problema, basta marcar ativar a opção Enviar apenas o total do pedido na página de configurações do plugin.

Quais URLs eu devo usar para configurar "Notificação de transação" e "Página de redirecionamento"?

Não é necessário configurar qualquer URL para "Notificação de transação" ou para "Página de redirecionamento", o plugin já diz para o PagSeguro quais URLs serão utilizadas.

Mais dúvidas relacionadas ao funcionamento do plugin?

Por favor, caso você tenha algum problema com o funcionamento do plugin, abra um tópico no fórum do plugin com o link arquivo de log (ative ele nas opções do plugin e tente fazer uma compra, depois vá até WooCommerce > Status do Sistema, selecione o log do pagseguro e copie os dados, depois crie um link usando o pastebin.com ou o gist.github.com), desta forma fica mais rápido para fazer o diagnóstico.

Screenshots

1. Configurações do plugin.

Configurações do plugin.

2. Método de pagamento na página de finalizar o pedido.

Método de pagamento na página de finalizar o pedido.

3. Exemplo do Lightbox funcionando com o Sandbox do PagSeguro.

Exemplo do Lightbox funcionando com o Sandbox do PagSeguro.

4. Pagamento com cartão de crédito usando o Checkout Transparente.

Pagamento com cartão de crédito usando o Checkout Transparente.

5. Pagamento com debito online usando o Checkout Transparente.

Pagamento com debito online usando o Checkout Transparente.

6. Pagamento com boleto bancário usando o Checkout Transparente.

Pagamento com boleto bancário usando o Checkout Transparente.

Changelog

2.14.0 - 2019/09/20

  • Atualizado o nome do plugin de "WooCommerce PagSeguro" para "Claudio Sanches - PagSeguro for WooCommerce".

2.13.1 - 2018/08/03

  • Corrigido alerta do PHP sobre variável inexistente.

2.13.0 - 2018/08/02

  • Força o campo "Bairro" como obrigatório quando checkout transparente está ativado.
  • Implementada baixa automática de estoque ao comprar por boleto (funciona apenas no WooCommerce 3 ou superior).
  • Estoque é restaurado automaticamente quando alguma notificação do PagSeguro marca o pedido como reembolsado ou cancelado (funciona apenas no WooCommerce 3 ou superior).
  • Corrigida a mudança de status do pedido de Cancelado para Processando (funciona apenas no WooCommerce 3 ou superior).
  • Adicionadas informações sobre a taxa de intermédio do PagSeguro nos meta dados do pedido.

2.12.7 - 2018/06/21

  • Removido métodos do Itaú e Banrisul em débito online no checkout transparente, ambos não são mais suportados pelo PagSeguro.

2.12.6 - 2018/05/09

  • Adicionado valor total ao parcelamento no checkout transparente para tornar mais prático para o cliente a visualização do juros. Mais detalhes em #75.

2.12.5 - 2017/05/11

  • Corrigido valor total das parcelas do cartão de crédito no checkout transparente, o valor tinha parado de ser atualizado no WooCommerce 3.0.

2.12.4 - 2017/04/12

  • Corrigido icones no checkout transparente.

2.12.3 - 2017/04/10

  • Corrigido ndash que aparecia no nome dos itens listados no PagSeguro.

2.12.2 - 2017/04/07

  • Adicionado suporte ao novo sistema de logs do WooCommerce 3.0, assim permitindo que seja utilizado sistema de logs personalizados.
  • Adicionado validação e higienização no código de transação do PagSeguro antes de salvar.

2.12.1 - 2017/04/04

  • Correção dos títulos dos campos personalizados salvos ao fazer um pedido.

2.12.0 - 2017/04/03

Upgrade Notice

2.14.0

  • Atualizado o nome do plugin de "WooCommerce PagSeguro" para "Claudio Sanches - PagSeguro for WooCommerce".

woocommerce-pagseguro's People

Contributors

claudiosanches avatar danilowm avatar darthaud avatar dependabot[bot] avatar eliasjnior avatar greguly avatar marlonamancio avatar rcnascimento avatar renatonascalves avatar rogerioespindula avatar sir-daniel avatar thiagogsr avatar thiagolcks avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

woocommerce-pagseguro's Issues

Bairro (district) Obrigatório no checkout transparente do Pagseguro

Não sei se devo adicionar esse issue aqui ou no extra-checkout-fields, mas ao instalar o pagseguro com o extra-checkout-fields, como o bairro não é um campo obrigatório, o checkout transparente dá erro.

Pensei em duas soluções, ou preencher um valor padrão de bairro se o usuário não preencher, já que o pagseguro aceita qualquer valor, ou colocar o bairro como required => true no extra-checkout-fields se o checkout transparente estiver ativado.

Assumir parcelas com juros

Opa!

Está implementada a opção de assumir, por exemplo, 3 parcelas sem juros para o comprador, e ele paga o juros da quarta em diante?

Tratar erro 53081

<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<errors>
  <error>
    <code>53081</code>
    <message>sender is related to receiver.</message>
  </error>
</errors>

Pequeno fix de linguagem apenas

No painel de admin, em configurações do PagSeguro temos

"Habilitar textos de notificação da loja pata todo o site"
acredito que pata seria "para"

Valor do pagamento não considera cupons

Opa

Estou com uma issue onde o valor das parcelas ficam iguais ao valor do produto, sem considerar o cupom aplicado. Isso é alguma configuração do plugin ou bug? Fiz um print para mostrar o problema:

image

Vou investigar olhando o código também!

Erro no número de telefone

Boa tarde,

Estou com um problema quando tento usar o checkout transparente no meu site.

Não importa qual número de telefone que eu coloque ele sempre me retorna: "PagSeguro: Por favor, digite um número de telefone válido com DDD. Exemplo: (11) 5555-5555."

Já tentei com diferentes DDD e com 8 ou 9 digitos, mas não consigo fazer funcionar.
Você sabe o que pode estar acontecendo?

Formulário
Erro

Erro Checkout Transparente

Os clientes informam que acaba travando e não finaliza o pagamento. Segue o erro:

01-11-2018 @ 11:00:16 - PagSeguro payment status for order 9597 is: 4
01-11-2018 @ 12:08:32 - Requesting session ID...
01-11-2018 @ 12:08:33 - PagSeguro session is valid! The return is: SimpleXMLElement Object
(
[id] => bb37e60f47b3417cbdadded92d75b118
)

01-11-2018 @ 12:09:45 - Requesting session ID...
01-11-2018 @ 12:09:46 - PagSeguro session is valid! The return is: SimpleXMLElement Object
(
[id] => 75e71f17de174e2eb6223890cb55d44a
)

01-11-2018 @ 12:09:54 - Requesting session ID...
01-11-2018 @ 12:09:55 - PagSeguro session is valid! The return is: SimpleXMLElement Object
(
[id] => f65995ed66eb47a2b66d4d74e39fd441
)

01-11-2018 @ 13:45:19 - Requesting session ID...
01-11-2018 @ 13:45:20 - PagSeguro session is valid! The return is: SimpleXMLElement Object
(
[id] => 7027387abaf249cd8e7364ee8ab6269f
)

01-11-2018 @ 14:38:59 - Requesting session ID...
01-11-2018 @ 14:39:00 - PagSeguro session is valid! The return is: SimpleXMLElement Object
(
[id] => d1b12b3d416d4cb5a59bdd19ae3df26b
)

01-12-2018 @ 07:26:59 - Requesting session ID...
01-12-2018 @ 07:27:00 - PagSeguro session is valid! The return is: SimpleXMLElement Object
(
[id] => 7f4d7be64a7749ee9745d597d53530e3
)

01-12-2018 @ 08:52:55 - Requesting session ID...
01-12-2018 @ 08:52:57 - PagSeguro session is valid! The return is: SimpleXMLElement Object
(
[id] => e49b57ee34ca442b9db7f8b1e703eab9
)

01-12-2018 @ 11:24:41 - Requesting session ID...
01-12-2018 @ 11:24:42 - PagSeguro session is valid! The return is: SimpleXMLElement Object
(
[id] => 390f4e97a6c44587af8de00c0c3e6fea
)

01-12-2018 @ 13:34:31 - Requesting session ID...
01-12-2018 @ 13:34:32 - PagSeguro session is valid! The return is: SimpleXMLElement Object
(
[id] => 0235ccfaeb8a4fe58aa55aac8fe120e5
)

01-12-2018 @ 14:22:14 - Requesting session ID...
01-12-2018 @ 14:22:15 - PagSeguro session is valid! The return is: SimpleXMLElement Object
(
[id] => e3614a95284949579d0703659aa842e3
)

01-12-2018 @ 15:07:24 - Requesting session ID...
01-12-2018 @ 15:07:26 - PagSeguro session is valid! The return is: SimpleXMLElement Object
(
[id] => 5f1ba696352141bc863dd50d0373c757
)

01-12-2018 @ 15:11:39 - Requesting session ID...
01-12-2018 @ 15:11:40 - PagSeguro session is valid! The return is: SimpleXMLElement Object
(
[id] => 17bf03fecb6b45f5ab7f606416634342
)

01-12-2018 @ 15:13:32 - Requesting session ID...
01-12-2018 @ 15:13:33 - PagSeguro session is valid! The return is: SimpleXMLElement Object
(
[id] => 2b597c018d584923b139a9da3469ef11
)

Campos nome e sobrenome nao reconhecidos

Fiz um pedido na loja normalmente, depois instalei o plugin do woocommerce-pagseguro e ao realizar um pedido fica pedindo nome e sobrenome, mesmo com eles preenchidos.

Alguma sugestão?

Forçar CEP antes de pedir outros campos do endereço

Olá Cláudio e pessoal.

No checkout transparente o que acha de esconder alguns campos do endereço até que o cliente digite o CEP. Assim poderia ser mostrado menos campos diminuindo a desistência. A página de finalização do PagSeguro já usa esse recurso.

Posso tentar implementar isso, mas gostaria de uma "luz" da sua parte.

Até mais, Miguel

É obrigatório incluir no checkout o país em que a transação é realizada

Notificação do PagSeguro.
+++
Devido à nova regulamentação da Bandeira Visa, informamos que é obrigatório incluir no checkout o país em que a transação é realizada.
Já implementamos esta atualização nos checkouts tipo padrão e lightbox. Como você utiliza o checkout transparente, a atualização precisa ser feita diretamente em seu site.
O prazo limite para a regularização é até 31/01/2017, sujeito à aplicação de multa pela bandeira caso haja o descumprimento.

Atenciosamente,
Equipe PagSeguro
+++

Alguém viu? Precisamo alterar alguma coisa no checkout transparente, ou o plugin já adiciona o pais por padrão?

Abs

Erro ao finalizar pagamento

Olá,
Estou usando a integração com o método de checkout transparente e, quando finalizo a compra, me retorna a mensagem: "Um erro ocorreu ao processar o seu pagamento, por favor, revise os seus dados e tente novamente. Ou entre em contato conosco para obter assistência.".
Debugando um pouco, vi que o código do erro é "53079", porém esse erro não se encontra nos "erros" do plugin (get_error_message()).
Alguém já passou por algo semelhante?

Desde já, agradeço!

Envio de CPF usando WooCommerce API

Quando crio uma nova ordem de pagamento usando a API do WooCommerce o campo de CPF fica sempre em branco, fazendo que a ordem seja inválida. Existe uma forma de contornar esse problema?

Configurando notificação

Olá. Como configurar corretamente a comunicação do pagseguro com o plugin? (retorno automatico)

fiz um teste de pagamento usando lightbox, pagamento em debito online. e o pedido continua como aguardando.

Option to not set order completed after payment is received

Hello,

I was using your plugin and I had a problem because I sell software licenses, and I had to include the licensing information after the payment is received.
But I want to include this on the order completed email.
I had to change a little bit the code to avoid to have the order completed after the payment is done.

Maybe should be an interesting idea to have this checkbox "Complete order after payment is approved".

Also, if you can put an option to temporary disable the PAGSEGURO to be shown to people from outside Brazil. I'm located in Brazil but my network is from SWE, so I cannot select pagseguro while developing. I had to change the code for that.

Thanks

Parcelas no checkout transparente

Olá, sou bastante leiga em programação e nova por aqui, então peço a sua paciência desde já. 🙂

Estou com um problema. Preciso que a opção de parcela 1x esteja sempre selecionada por default e não consigo fazer isso sozinha. Uma outra opção que resolveria a minha vida seria permitir somente a parcela em 1x, eliminando as outras opções. Como faço isso e em qual arquivo eu faço a modificação?

Obrigada por toda a ajuda!

Desconto boleto

Olá Cláudio!

Eu testei seu outro modulo de desconto por metodo de pagamento, mas ele nao atende a minha necessidade de deconto somente para o boleto.

Existe essa possibilidade?

Tradução

Blz, eu estava utilizando e achei uma frase bastante exquisita.

: templates/payment-instructions.php:18

536 msgid "Please click in the following button to view your Banking Ticket."
537: msgstr "Por favor, click no botão a seguinte para visualizar o seu boleto bancário."

O ponto é "no botão a seguinte" eu troquei para "no botão a seguir", no caso eu gerei um novo arquivo de tradução, mas estou avisando pois como é uma coisa rápida, acredito que essa mudança possa ser implementada rapidamente.

Checkout Transparente

Olá, o checkout transparente está redirecionando para a página do PagSeguro, estou tentando utilizar no WP 4.0.0, alguma ideia do que pode ser?

Campo de CPF aparecendo 2 vezes no checkout transparente

Na documentação do plugin diz:

Para quem estiver utilizando o Checkout Transparente é obrigatório o uso do plugin WooCommerce Extra Checkout Fields for Brazil para enviar o CPF ao PagSeguro, caso o contrário será impossível de finalizar o pedido, veja no guia de instalação como fazer isso.

Porem quando o mesmo esta instalado e devidamente configurado com "Exibir Tipo de Pessoa" como "Pessoa Física apenas" como manda o README o campo de CPF aparece 2 vezes na pagina, uma no formulário de cadastro e outro no formulário de pagamento

Se eu altero as configurações do plugin Extra Checkout Fields for Brazil para não pedir CPF eu sequer consigo terminar a compra porque parece que este plugin do pagseguro esta usando o CPF do Extra Checkout Fields for Brazil, sem ele o CPF vai em branco e a compra não finaliza.

WordPress: 4.8.2
WooCommerce: 3.1.2
WooCommerce Extra Checkout Fields for Brazil: 3.6.0
WooCommerce PagSeguro: 2.12.5

Produtos aleatoriamente sem descrição no XML. PagSeguro retorna erro 400.

Tenho um set-up configurado para usar PHP 7 + APCu sobre nGinx.
Roda maravilhosamente bem, mas de uns dias pra cá tenho encontrado problemas com o plugin da PagSeguro retornando erro. Fui aos logs e percebi que, de maneira aleatória, algum produto do carrinho é enviado sem descrição. PagSeguro retorna erro 400, que é Bad Request.

Realmente preciso de ajuda aqui, não faço ideia de onde começar.
Algum problema conhecido?

Valor Liquido

Olá estou tendo uma dificuldade e eu gostaria de saber como eu exibo o valor liquido do retorno do pagseguro no woocommerce ou a taxa cobrada pelo o pagseguro desde já eu agradesso

Status: Aguardando pagamento vs nível de estoque

Boa noite,

Gostaria de ilustrar um possível edge case com relação a alteração de status dentro do plugin woocommerce-pagseguro:

Tenho apenas 3 itens em estoque de um produto que já saiu de linha. Um cliente vem e faz o pedido e seleciona boleto como forma de pagamento (pedido 1).

Pelo que futriquei aqui no source, o estoque não é baixado quando um item vai para o status on-hold:

$order->update_status( 'on-hold', __( 'PagSeguro: The buyer initiated the transaction, but so far the PagSeguro not received any payment information.', 'woocommerce-pagseguro' ) );

Portanto, esse mesmo cliente volta no e-commerce e faz outro pedido para 3 unidades desse mesmo item (que está fora de linha) e seleciona boleto como forma de pagamento (pedido 2).

O WC gera esse novo pedido normalmente...

Então, esse abençoado cliente paga os 2 boletos, alterando os status dos pedidos 1 e 2 para processando. O que atualiza o estoque para 0 e -3, respectivamente:

Caso o status fosse alterado para wc-pending eu poderia usar a opção woocommerce_hold_stock_minutes do WooCommerce que "em tese", bloqueia o estoque por x minutos para evitar esse tipo de situação.

Compreendo que não faz sentido usar wc-pending, portanto sugiro que usemos a mesma abordagem do método original do WC cheque:

public function process_payment( $order_id ) {

	$order = wc_get_order( $order_id );

	// Mark as on-hold (we're awaiting the cheque)
	$order->update_status( 'on-hold', _x( 'Awaiting check payment', 'Check payment method', 'woocommerce' ) );

	// Reduce stock levels
	$order->reduce_order_stock();

	// Remove cart
	WC()->cart->empty_cart();

	// Return thankyou redirect
	return array(
		'result' 	=> 'success',
		'redirect'	=> $this->get_return_url( $order )
	);
}

E, caso o boleto não seja pago, após a notificação pagseguro faríamos o "estorno" do estoque.
Faz sentido o que estou falando? O que pensa a respeito disso @claudiosanches?

Notificações

Olá tudo bom ? Quando o cliente faz a compra em meu website via Pagseguro (transparente) o pedido ainda fica como sem resposta do pagseguro, ou seja, ele não identifica que o mesmo foi pago. Tem como resolver esse problema? Ou ainda não foi implementado? Obigado.

Status do pedido não altera.

Olá,

Possuo meu site com este plugin faz mais de ano.

Tive problemas com o meu host, e tive que trocar. Logo após a migração, os status do pedido não está alterando automaticamente, de aguardando para processando.

Não utilizo Cloudflare, nem nenhuma das ferramentas listadas no FAQ deste plugin.

No site do Pagseguro, consta que está tudo ok.

Qual pode ser o problema?

Obrigado?

checkout.min.js não pressegue para o LightBox

Ao clicar no finalizar compra, o form faz o envio com ajax para o wp e o retorno deveria abrir o lightbox do pageguro na pagina, porém, a página 'trava' e há o retorno no console.
**Uncaught TypeError: Cannot read property 'reload' of null **

O checkout trava no catch, mas não estou entendendo em que momento gera o problema.

success: function(c) {
                            var d = a('.woocommerce-checkout input[name="payment_method"]:checked').attr("id");
                            if ("true" === c.reload) return void window.location.reload();
                            a(".woocommerce-NoticeGroup-updateOrderReview").remove();
                            var e = a("#terms").prop("checked");
                            if (c && c.fragments && a.each(c.fragments, function(b, c) {
                                    a(b).replaceWith(c), a(b).unblock()
                                }), e && a("#terms").prop("checked", !0), "failure" === c.result) {
                                var f = a("form.checkout");
                                a(".woocommerce-error, .woocommerce-message").remove(), c.messages ? f.prepend('<div class="woocommerce-NoticeGroup-updateOrderReview">' + c.messages + "</div>") : f.prepend(c), f.find(".input-text, select, input:checkbox").blur(), a("html, body").animate({
                                    scrollTop: a("form.checkout").offset().top - 100
                                }, 1e3)
                            }
                            b.init_payment_methods(d), a(document.body).trigger("updated_checkout", [c])
                        } 

Se precisar ver o problema real: http://www.svarov.com.br/loja-virtual/

Possível erro na geração do boleto

07-11-2014 @ 10:26:31 - Requesting session ID...
07-11-2014 @ 10:26:33 - PagSeguro session is valid! The return is: SimpleXMLElement Object
(
[id] => 4ee9f69e743e4ed1a9083b1518c0dec0
)

07-11-2014 @ 10:26:40 - Error while parsing the PagSeguro response: String could not be parsed as XML
07-11-2014 @ 10:26:40 - An error occurred while generating the PagSeguro direct payment: Array
(
[headers] => Array
(
[date] => Fri, 11 Jul 2014 13:26:38 GMT
[server] => Apache-Coyote/1.1
[content-type] => text/plain;charset=ISO-8859-1
[content-length] => 9
[vary] => Accept-Encoding,User-Agent
[connection] => close
)

[body] => Forbidden
[response] => Array
    (
        [code] => 403
        [message] => Forbidden
    )

[cookies] => Array
    (
    )

[filename] => 

)

Assinaturas

Integração com o WooCommerce Subscriptions.

Woocommerce Subscription

@claudiosanches boa tarde,
Eu estou lendo a documentação do PagSeguro e gostaria de implementar a funcionalidade do plugin para pagamento recorrente.
Gostaria de saber como está o desenvolvimento (se está) para que eu possa ajudar a colocar essa funcionalidade para funcionar.

Taxas

Seria ótimo ter uma opção de cobrar taxas pra rachar com o cliente.

Valor Liquido

O Woocommerce não me mostra o valor liquido que já vem do pagserguro
ex se uma venda for 100 reais com a taxa do pagseguro ficaria 95.00
estou tentando exibir o valor liquido sendo que ele só me retorna o bruto entende

Passagem de Dados da Compra

Olá @claudiosanches,

Estamos precisando de passar parametros de endereço de entrega na compra. O plugin permite fazer isso? Ademais se não permite tem ideia de por onde posso começar para integrar isso no plugin atual?

abs

Percentual desconto no boleto

Olá,

Primeiramente muito obrigado por seu plugin, é genial.
Estou configurando um woocommerce para um cliente onde o mesmo deseja que um produto específico tenha 10% de desconto se for optado a escolha de pagamento por boleto bancário pelo PagSeguro e o outro produto tem 15% de desconto por boleto bancário pelo PagSeguro.

Procurei nas APIs do PagSeguro a programação para descontos para boletos.

boleto DISCOUNT_PERCENT 10.00 ...

Mas não encontrei em seu plugin onde eu encaixo esta informação para enviar junto com o XML.

Pergunta 1: Onde eu devo acrescentar esta informação em seu plugin?
Pergunta 2: É possível acrescentar um percentual de desconto para um produto cujo SKU é 001 e outro percentual para outro produto cujo SKU é 002?

Desde já,
Muito obrigado!

Abraços,
Bruno.

Switch Currency for Woocommerce com PAGSEGURO

Olá!

Tenho uma loja virtual que vende produtos dos Estados Unidos para o Brasil. A moeda está em Dólar (USD) e uso o Switch Currency para fazer a conversão em Reais (BRL). Quando instalo o Plugin do Pagseguro ele me diz que não posso ativar porque a loja está em USD e não BRL.

Vocês teriam alguma solução para isto?

Agradecido,

A tradução está esquisita

Linha: 411

: includes/class-wc-pagseguro-gateway.php:659

msgid ""
"Order %s has been marked as on-hold, because the payment came into dispute "
"in PagSeguro."
msgstr "O pedido %s mudou de status para aguardando, por causa que o pagamento entrou em disputa no PagSeguro."

"por causa que o pagamento", seria melhor "porque o pagamento..."

[Checkout Transparente] Form não inicializa + redirecionamento

Olá, Claudio! @claudiosanches
Obrigado pelo plugin, sou novo no mundo WordPress + WooCommerce etc e estou com uns probleminhas no checkout transparente com o PagSeguro. Pode me ajudar?

Tentei postar no fórum do WordPress e, sinceramente, não sei se a questão foi ou não. Desculpa se aqui não é o melhor lugar...

  1. Na página de checkout, por algum motivo o formulário do plugin PagSeguro (aquele com as opções cartão, transferência, boleto) está escondido na página. O form ( #pagseguro-payment-form ) está com display: none . Investigando o código do plugin, percebi que a inicialização acontece com o recebimento do evento updated_checkout, e debugando o código do checkout do WooCommerce, esse evento é disparado – por algum motivo o código do plugin não está executando após esse evento. Para teste, ao dar um timeout de 10s (por exemplo) no trigger do evento no código do WooCommerce, o formulário do plugin é inicializado e aparece na página corretamente.

  2. Selecionando qualquer uma das opções (cartão, transf, boleto) e preenchendo o que tem de ser preenchido, acontece o redirecionamento pra página do PagSeguro Sandbox. Checkout Transparente está selecionado e Extra Checkout Fields esta instalado OK.

Infos adicionais que podem ser úteis:

  • Vi que pode ter algo a ver o sessionId estar vazio, mas ele está preenchido. O que parece estar vazio é o senderTrackingHash=undefined. Não sei bem o que é isso e se tem alguma relação.

  • WooCommerce e WooCommerce PagSeguro atualizados na versão mais recente.

  • No status do sistema, tenho dois probleminhas que não consegui resolver e não sei se afetariam:

Requisição remota do tipo POST: wp_remote_post() falhou. Entre em contato com a sua hospedagem. cURL error 35: Unsupported SSL protocol version
Requisição remota do tipo GET: wp_remote_get() falhou. Entre em contato com a sua hospedagem. 200

Infelizmente, o cliente não me retornou ainda com autorização de divulgação do link de homologação para postar por aqui. :(

Obrigado pela força, tô ficando careca já. rs

Clientes não conseguem concluir o pagamento (fica carregando)

Prezado Claudio, tenho visto vários clientes que tentam efetuar o pagamento pelo PagSeguro e o pedido acaba ficando aguardando ou é cancelado, tem sido um número relativamente alto, porém alguma poucas vezes, a última hoje, o cliente veio me avisar que selecionava o PagSeguro e em alguma das telas ele ficava carregando eternamente e não concluía.
Tem também vários pedidos que concluíram normalmente, então algo está funcionando.
Tentei ligar para o PagSeguro mas não conseguiram ajudar com nada (sabem menos que a gente).
Dai fui olhar o FAQ e consta para desativar "Pagamento via Formulário HTML", e de fato estava ativada (pode ser isso?)
Estou usando o Lightbox.
Venho aqui pedir algum auxílio para resolver isso pois está além do meu conhecimento.
Tem algo que eu possa fazer? Algum teste, alguma informação?
Muito obrigado.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.