PagSeguroApi by Os Studios Module
tiagosampaio / osstudios_pagseguroapi Goto Github PK
View Code? Open in Web Editor NEWPagSeguroApi by Os Studios Module
PagSeguroApi by Os Studios Module
Conforme printscreen confira a coluna "Valores Finais"
Bom dia Thiago,
Parabéns pelo módulo, funciona muito bem mesmo!!!
Eu só tenho uma dúvida, qdo os pagamentos são pagos, o status muda automaticamente para PENDENTE, por que percebi que só depois que eu entro em:
PagSeguro API -> Ações -> Verificar Status de Pedidos no PagSeguro
é que os status estão sendo atualizados.
Tem como fazer isso automaticamente?
Obrigado!
Permitir a edição via painel administrativo dos fatores de parcelamento para que, caso o PagSeguro altere o mesmo, seja possível o usuário edita-los via painel administrativo
No arquivo OsStudios/PagSeguroApi/Model/Payment/Method/Api/Xml.php, método getNodeExtraAmount acontece erro quando salva a configuração com algum valor para o campo "Valor Adicional ou Desconto" e depois apaga e salva novamente. A configuração fica vazia, assim como o elemento do XML. Para que não fique vazio, modifiquei o método com cast para float e number_format:
protected function _getNodeExtraAmount()
{
$this->_xml->addChild('extraAmount', number_format((float)$this->_formatNumberToXml(Mage::getStoreConfig('payment/pagseguro_api/extra_amount')), 2, '.', ''));
return $this;
}
Implementar o campo Sort Order no método de pagamento para permitir a ordenação dos métodos de pagamento via painel administrativo.
Prezado, gostaria de lhe agradecer imensamente pelo desenvolvimento deste módulo.
Estou com uma dúvida a respeito da opção "Mudar Status de Pedidos Pagos Para", presente na aba "Configurações Gerais do PagSeguro". Em minha instalação tenho somente três opções:
Mesmo quando eu crio um status personalizado, ele não aparece nesta listagem. Gostaria de criar um status com o nome de "Pagamento Aprovado PS". Existe esta possibilidade?
Obrigado pela atenção. Estou no aguardo!
Ola Tiago, sou novato em tudo isso e por falta de recurso estou eu mesmo buscando informações e tentando colocar meu projeto no ar e graças a Deus conseguirei por ter pessoas como vc e Mário Sam.
Minha loja instalei o seu modulo do pagseguro e esta 100% se nao fosse o detalhe de após a finalização do pagamento ao retorno a loja para passar credibilidade ao cliente o retorno se da para um template padrão da loja e nao o meu template personalizado, um detalhe é que quando testo com outro meio de pagamento o retorno acontece para o template correto.
Pode me dar uma luz do que possa estar fazendo de errado?
Abracos
O módulo não está enviando o email de confirmação do pedido quando o pedido é finalizado, nem pro cliente nem pro gerente da loja. Quando eu vou na página do pedido tem lá "email não enviado" então não é problema com o meu servidor.
Fala Tiagão. Beleza?
Primeiramente parabéns ai pelo módulo.
Queria deixar aqui a sugestão de colocar a opção de selecionar qual status o pedido fica quando o pagamento é aprovado. Isso é bom porque, no meu caso, quando o pagamento é confirmado ele já muda sozinho para "Confirmado", e eu tenho um outro módulo que já cancela automaticamente pedidos pendentes com mais de 3 dias.
Abraço
O Módulo não atualiza mais o estado do pedido quando o cliente escolhe outra forma de pagamento a partir do link de pagar "novamente" (Disponível no e-mail ou na Página do Cliente) que redireciona para a página do pagseguro de novo.
Exemplo de Situação onde ocorre o erro:
O cliente efetua e compra e ao ser redirecionado para o pagseguro escolhe transferência bancária, porém não efetua a transferência e retorna a página do pagseguro e escolhe cartão de crédito e efetua o pagamento. A Partir desse momento a loja já marcou seu pedido como cancelado pois o módulo não identifica o segundo pagamento efetuado, mantendo o estado do primeiro meio de pagamento escolhido como definitivo.
o que gera muitos problemas de clientes ligando dizendo que o pedido foi cancelado e o pagamento foi efetuado.
Fatal error: Call to undefined method SimpleXMLElement::__toString() in /home/store/public_html/app/code/community/OsStudios/PagSeguroApi/Model/Payment/Method/Api.php on line 207
No template pagseguroapi/info.phtml temos 👍
<?php if($this->isPaid()):?>
<?php echo $this->__('The payment was successfully registered in PagSeguro.') ?>
Mas, no bloco a função retorna como pago para status = 1
Onde deveria ser 3 ou 4 ( Pago ou Disponivel )
public function isPaid()
{
return ( in_array($this->getPagseguroInfo()->getPagseguroTransactionStatus(), array(3,4)) );
}
Correto?
Assim o cliente tera o link disponivel para pagamento.
No checkout deve ser adicionado uma mensagem que deve ser cadastrada nas configurações do módulo.
Atualmente a configuração já existe, porém é necessário implementar o front-end para que a mensagem apareça.
Olá,
estou recebendo falha ao tentar finalizar compras com o pagseguro,
Segue abaixo retorno do ajax:
{"success":false,"error":true,"error_messages":"Error: Item amount invalid pattern: 20. Must fit the patern: \d+.\d{2} (11029)\nError: shippingAddressNumber invalid length: {0} (11019)\nError: senderAreaCode invalid value: 1 (11013)"}
haviam mais erros mas alterei o xml.php para resolver.
Oi Tiago,
tem ocorrido por algumas vezes a seguinte mensagem enviada pelo site:
Transação de Pagamento Falhou
Razão
senderName invalid value: {0}
Tipo de Pagamento
onepage
Cliente:
tirado para manter sigilo
Itens
tirado para manter sigilo
Total:
tirado para manter sigilo
Endereço de Cobrança:
tirado para manter sigilo
Endereço de Entrega:
tirado para manter sigilo
Forma de Entrega:
Forma de Pagamento:
PagSeguro UOL
Data e Hora:
04/03/2013 14:04:08
Não é sempre que ocorre, e algumas vezes que ocorreu o pagamento foi aprovado pelo PagSeguro.
Isto nunca aconteceu quando tinha seu módulo anterior, então suscita a dúvida.
Como sempre, agradeço pelo suporte
Abs
Puntel
Olá pessoal,
verifiquei em meu site que quando os novos clientes realizam o checkout através da opção Cadastrar, os steps seguem normalmente até o botão finalizar compra. Mas quando clicam nesse botão, o pedido é criado, o usuário é registrado, porém não redireciona para o PagSeguro, sem nenhuma mensagem de erro. No pedido backend, há o link para o pagamento, mas este não é enviado para o cliente. Possuo o módulo de checkout padrão do Magento. Para clientes já resgistrados funciona normalmente.
Queria saber se este problema se refere ao módulo OsStudios_PagSeguro_Api, confirmando se vocês também possui este tipo de erro. Ou se é um problema da minha aplicação mesmo.
Agradecimentos,
Alysson Rocha;
Quando Criado um pedido pelo Backend não é gerado a transação junto ao PagSeguro para poder efetuar o pagamento.
Fala Tiago,
Como proceder com esse tipo de erro? É um problema no módulo ou algo relacionado a configuração do magento/pagseguro?
Abraços.
Eu uso um plugin de pontos e descontos. O cliente pode trocar pontos por desconto na hora de fechar o pedido, porém os descontos não estão indo pro PagSeguro. Tentei olhar no código mas não consegui descobrir o que poderia ser. Pelo PayPal e MercadoPago funciona normalmente, então imagino que é algo do módulo mesmo que não está pegando o valor total com desconto.
Olá Tiago, inicialmente gostaria de parabenizá-lo pelo excelente módulo.
Estou utilizando o tema Ultimo junto com seu módulo, este tema grava os layouts em um pasta específica, porém copiei as pastas do root base para o ultimo. O módulo está exibindo a matriz de formas de pagamento porém ao finalizar o pedido é exibida uma caixa de diálogo sem nada dentro e nos logs tenho esta mensagem:
2013-05-08T15:37:07+00:00 ERR (3): Warning: Illegal offset type in /var/www/html/app/code/community/OsStudios/PagSeguroApi/Model/System/Config/Source/Config.php on line 40
Abaixo segue a estrutura de pastas
? README.md
? app/code/community/OsStudios/PagSeguroApi/Block/Adminhtml/Transaction.php
? app/code/community/OsStudios/PagSeguroApi/Block/Adminhtml/Transaction/Grid.php
? app/code/community/OsStudios/PagSeguroApi/Block/Api/Form.php
? app/code/community/OsStudios/PagSeguroApi/Block/Api/Info.php
? app/code/community/OsStudios/PagSeguroApi/Block/Api/Installments.php
? app/code/community/OsStudios/PagSeguroApi/Block/Api/Success.php
? app/code/community/OsStudios/PagSeguroApi/Controller/Adminhtml/Action.php
? app/code/community/OsStudios/PagSeguroApi/Controller/Front/Action.php
? app/code/community/OsStudios/PagSeguroApi/Helper/Data.php
? app/code/community/OsStudios/PagSeguroApi/Helper/Visie.php
? app/code/community/OsStudios/PagSeguroApi/Model/Abstract.php
? app/code/community/OsStudios/PagSeguroApi/Model/Consulter.php
? app/code/community/OsStudios/PagSeguroApi/Model/Credentials.php
? app/code/community/OsStudios/PagSeguroApi/Model/Data.php
? app/code/community/OsStudios/PagSeguroApi/Model/Mysql4/Payment/History.php
? app/code/community/OsStudios/PagSeguroApi/Model/Mysql4/Payment/History/Collection.php
? app/code/community/OsStudios/PagSeguroApi/Model/Mysql4/Returns/Transaction.php
? app/code/community/OsStudios/PagSeguroApi/Model/Mysql4/Returns/Transaction/Collection.php
? app/code/community/OsStudios/PagSeguroApi/Model/Observer.php
? app/code/community/OsStudios/PagSeguroApi/Model/Payment.php
? app/code/community/OsStudios/PagSeguroApi/Model/Payment/History.php
? app/code/community/OsStudios/PagSeguroApi/Model/Payment/Method/Api.php
? app/code/community/OsStudios/PagSeguroApi/Model/Payment/Method/Api/Xml.php
? app/code/community/OsStudios/PagSeguroApi/Model/Resource/Payment/History.php
? app/code/community/OsStudios/PagSeguroApi/Model/Resource/Payment/History/Collection.php
? app/code/community/OsStudios/PagSeguroApi/Model/Resource/Returns/Transaction.php
? app/code/community/OsStudios/PagSeguroApi/Model/Resource/Returns/Transaction/Collection.php
? app/code/community/OsStudios/PagSeguroApi/Model/Returns.php
? app/code/community/OsStudios/PagSeguroApi/Model/Returns/Transaction.php
? app/code/community/OsStudios/PagSeguroApi/Model/System/Config/Source/Config.php
? app/code/community/OsStudios/PagSeguroApi/Model/System/Config/Source/Error/Codes.php
? app/code/community/OsStudios/PagSeguroApi/Model/System/Config/Source/Shipping/Type.php
? app/code/community/OsStudios/PagSeguroApi/Model/System/Config/Source/Transaction/Payment/Methods/Codes.php
? app/code/community/OsStudios/PagSeguroApi/Model/System/Config/Source/Transaction/Payment/Methods/Types.php
? app/code/community/OsStudios/PagSeguroApi/Model/System/Config/Source/Transaction/Sources.php
? app/code/community/OsStudios/PagSeguroApi/Model/System/Config/Source/Transaction/Status.php
? app/code/community/OsStudios/PagSeguroApi/Model/System/Config/Source/Transaction/Types.php
? app/code/community/OsStudios/PagSeguroApi/controllers/Adminhtml/ActionsController.php
? app/code/community/OsStudios/PagSeguroApi/controllers/Adminhtml/TransactionController.php
? app/code/community/OsStudios/PagSeguroApi/controllers/PayController.php
? app/code/community/OsStudios/PagSeguroApi/controllers/ReturnsController.php
? app/code/community/OsStudios/PagSeguroApi/etc/adminhtml.xml
? app/code/community/OsStudios/PagSeguroApi/etc/config.xml
? app/code/community/OsStudios/PagSeguroApi/etc/system.xml
? app/code/community/OsStudios/PagSeguroApi/sql/pagseguroapi_setup/mysql4-install-1.0.0.0.php
? app/design/adminhtml/default/default/layout/osstudios/pagseguroapi.xml
? app/design/adminhtml/default/default/template/osstudios/pagseguroapi/info.phtml
? app/design/frontend/base/default/layout/osstudios/pagseguroapi.xml
? app/design/frontend/base/default/template/osstudios/pagseguroapi/form.phtml
? app/design/frontend/base/default/template/osstudios/pagseguroapi/info.phtml
? app/design/frontend/base/default/template/osstudios/pagseguroapi/installments.phtml
? app/design/frontend/base/default/template/osstudios/pagseguroapi/success.phtml
? app/design/frontend/ultimo/default/layout/osstudios/pagseguroapi.xml
? app/design/frontend/ultimo/default/template/osstudios/pagseguroapi/form.phtml
? app/design/frontend/ultimo/default/template/osstudios/pagseguroapi/info.phtml
? app/design/frontend/ultimo/default/template/osstudios/pagseguroapi/installments.phtml
? app/design/frontend/ultimo/default/template/osstudios/pagseguroapi/success.phtml
? app/etc/modules/OsStudios_PagSeguroApi.xml
? app/locale/pt_BR/OsStudios/PagSeguroApi.csv
? skin/frontend/base/default/css/pagseguroapi/checkout.css
? skin/frontend/base/default/images/pagseguroapi/cards-sprite.gif
? skin/frontend/base/default/images/pagseguroapi/logo-pagseguro.gif
É preciso limitar a descrição dos itens a 100 caracteres, conforme documentação do PagSeguro. Segue código:
app/code/community/OsStudios/PagSeguroApi/Model/Payment/Method/Api/Xml.php
protected function _getNodeItems()
{
$xmlItems = $this->_xml->addChild('items');
if($this->getOrder()) {
foreach($this->getOrder()->getAllVisibleItems() as $item) {
$xmlItem = $xmlItems->addChild('item');
$xmlItem->addChild('id', (string) $item->getProductId());
$xmlItem->addChild('description', substr($item->getName(), 0, 100));
$xmlItem->addChild('amount', $this->_formatNumberToXml(($item->getRowTotal() / $item->getQtyOrdered())));
$xmlItem->addChild('quantity', (int) $item->getQtyOrdered());
$xmlItem->addChild('shippingCost', '0.00');
$xmlItem->addChild('weight', (int) $item->getWeight());
}
}
return $this;
}
Oi Tiago!
Primeiramente parabéns pelo módulo.
Estou com o mesmo problema relatado pelo Maickel, Lauro e Cristine no seu site. Quando eu vou finalizar a comprar e ir para a página do PagSeguro nada acontece. Aparece apenas uma box de mensagem com a url do meu site escrita. Imporante: meu e-mail e Token do PagSeguro estão digitados corretamente.
O estranho é que primeiro instalei a versão que está no MagentoConnect e funcionou perfeitamente. Porém reparei que ela não tem as mesmas opções de configuração e usabilidade da versão do GitHub. Por isso optei pela instalação manual do ZIP do GitHub acreditando que esta é a mais atualizada. Certo?
Uso apenas os módulos OneStepCheckout e Correios by Pedro Teixeira.
No LOG apareceu as seguintes mensagens:
2013-05-11T00:12:39+00:00 ERR (3): Warning: Illegal offset type in /home/patch694/public_html/app/code/community/OsStudios/PagSeguroApi/Model/System/Config/Source/Config.php on line 40
2013-05-11T00:12:39+00:00 ERR (3): Warning: Illegal offset type in /home/patch694/public_html/app/code/community/OsStudios/PagSeguroApi/Model/System/Config/Source/Config.php on line 40
Obrigado pela atenção e novamente parabéns pela iniciativa!
Para resolver realizei a seguinte alteração no seu código:
(Claro que esta solução é bem simples, não possuo tamanho conhecimento em Expressões Regulares que daríam um melhor código, mas este serve e funciona)
xml.php => 275
$xmlItem->addChild('shippingCost', '0.00'); // removi o (double)
xml.php => 385
protected function _formatNumberToXml($value = 0.00)
{
if($value == 0){
return "0.00";
}
$value = (double) number_format($value, 2, '.', '');
$nums = explode(".", $value);
if($nums[0] == "00"){
return 0 . "." . $nums[1];
}
return $value ;
}
Espero ter ajudado.
Muito obrigado para o modulo
mas para me essa path de returno nao ta fucionando http://www.minhaloja.com.br/pagseguroapi/returns/
Olá,
Antes de mais nada peço perdão se isso não for um bug, porém estou com o seguinte problema ao tentar finalizar a compra:
Unable to connect to ssl://ws.pagseguro.uol.com.br:443. Error #86585952: unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP?
Gostaria de perguntar se é necessária a certificação ssl ou se está acontecendo outro problema com o módulo que impede o redirecionamento para a pagina.
Atualmente estou com a opção de pagamentos via API habilitada e estou solicitando para que o redirecionamento ocorra na mesma página da loja. O endereço é http://hungria.cray.com.br/~monterea/site/index.php e estou tentando utilizar o módulo do pagseguro junto ao módulo webshoppapps matrixrate.
Obrigada!
Acabei de atualizar e está aparecendo a seguinte mensagem de erro ao clicar em Checkout:
Error: Item amount invalid pattern: 247. Must fit the patern: \d+.\d{2} (11029)
Estou usando Magento versão. 1.7.0.2 com o IWD’s One Step Checkout Module.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.