PagSeguro

Enrolment ::: enrol_pagseguro
Maintained by Daniel Neis Araujo
Este plugin de inscrição permite que você venda seus cursos no Moodle através do PagSeguro. This plugins allow you to setup paid courses using the PagSeguro service.
Latest release:
247 sites
65 downloads
45 fans
Current versions available: 3

Plugin de inscrição via PagSeguro para o Moodle

Este plugin de inscrição permite que você venda seus cursos no Moodle através do PagSeguro.

Também disponível em https://moodle.org/plugins/enrol_pagseguro

Instalação

Você deve colocar este código no diretório moodle/enrol/pagseguro

Você pode fazer o "git clone" deste repositório ou então fazer o download da útlima versão no link https://github.com/danielneis/moodle-enrol_pagseguro/archive/master.zip

Configuração

  • Primeiro, você deve criar um Token no site do PagSeguro para utilizar o plugin.
  • Também no site do PagSeguro, você deve preencher a "URL de retorno Fixa" com a URL do seu site Moodle + o caminho para o script do plugin que processará o retorno. Deve ficar algo como: https://www.meumoodle.org/enrol/pagseguro/process.php . ATENÇÃO: Este link é só um exemplo, você deve substituir "www.meumoodle.org" com a URL do seu Moodle.
  • Preencha também, mais abaixo, o campo "Notificação de transação" com a URL do seu site Moodle + o caminho para o script do plugin que processará o retorno. Deve ficar algo como: https://www.meumoodle.org/enrol/pagseguro/process.php. ATENÇÃO: Este link é só um exemplo, você deve substituir "www.meumoodle.org" com a URL do seu Moodle.
  • Ainda no site do PagSeguro, você deve preencher o campo "Código de transação para página de redirecionamento" com o valor "transaction_id" (sem as aspas).
  • Com o token criado, volte ao seu Moodle e habilite o plugin indo em "Bloco administração" > Administração do Site > Plugins > Inscrições > Gerenciar plugins de inscrições
  • Acesse o link das configurações do plugin PagSeguro
  • Preencha o campo de token com o token criado
  • Agora você pode utilizar o método de inscrição PagSeguro nos cursos. Você deve ir em um curso, acessar o "Bloco Administração" > Usuários > Métodos de inscrição e lá adicionar o novo método "PagSeguro". Ao adicionar este método você poderá definir o valor do curso, a moeda de pagamento e o email associado com o PagSeguro que receberá os pagamentos.

Funcionalidades

  • Para cada curso Moodle, você pode configura o valor que o usuário deve pagar para se inscrever.
  • A inscrição é feita automaticamente no caso de pagamento via cartão de crétido.
  • Não é feita a desinscrição do usuário após devolução do dinheiro no PagSeguro.
  • A inscrição automática via boleto bancário é feita quando o boleto é gerado. Não é validada a compensação do boleto, de forma que o usurio deve ser desinscrito manualmente caso no pague o boleto.

Sandbox

Para utilizar ambiente de testes do PagSeguro (https://sandbox.pagseguro.uol.com.br/), inclua a seguinte linha no arquivo config.php do Moodle, antes da linha de include do setup.php:

$CFG->pagsegurousesandbox = true;

Perguntas Frequentes

  • Ao tentar comprar um curso recebo a mensagem: "This host is not authorized to use PagSeguro API"
    • Isso quer dizer que você não configurou o PagSeguro com a URL do seu ambiente Moodle. Você deve seguir os passos de configuração e preencher corretamente os campos no site do PagSeguro. Note que se você estiver usando o SandBox, deve cadastrar seu Moodle tambm no SandBox, pois são ambientes diferentes.

Screenshots

Screenshot #0

Contributors

Daniel Neis Araujo (Lead maintainer)
Nitin Agrawal: Original author
Please login to view contributors details and/or to contact them

Comments RSS

Comments

  • Rodolfo Morais
    Tue, 8 Aug 2017, 5:37 AM
    O endereço não esta funcionando pq tirei o sistema do ar por um tempo.
  • Santinone Santos
    Mon, 14 Aug 2017, 8:40 PM
    Olá, gostaria de tirar uma dúvida, após o aluno ser inscrito pelo pagseguro, por algum outro motivo eu precisar remover a inscrição dele do curso , como faço?
  • L33T-SW
    Mon, 14 Aug 2017, 11:00 PM
    Basta acessar: https://meuMoodle.com/enrol/users.php?id=3
    Onde id=3 é o id do curso.

    Nesse caminho você deve seguir os caminho: CursoTESTE>usuários>usuários inscritos.

    Na opção "métodos de inscrição" você excluir o usuário do curso atual.

    by: daniel.rootdir@gmail.com
  • Yuri Molina Vale
    Tue, 22 Aug 2017, 9:40 AM
    Olá. Instalei o plugin e o habilitei. Entretanto, na hora de habilitar o plugin na página do curso, aparece o seguinte erro:

    Capability "enrol/pagseguro:config" was not found! This has to be fixed in code.
    line 391 of /lib/accesslib.php: call to debugging()
    line 118 of /enrol/pagseguro/lib.php: call to has_capability()
    line 286 of /enrol/instances.php: call to enrol_pagseguro_plugin->get_newinstance_link()

    Fui na tabela mdl_capabilities e não encontrei nenhuma linha do pagseguro.

    Poderia me ajudar?
  • Daniel Neis Araujo
    Thu, 24 Aug 2017, 3:09 AM
    Deve ter acontecido algum problema na instalação. Já tentou desinstalar o plugin e instalar novamente?
  • Yuri Molina Vale
    Mon, 28 Aug 2017, 3:43 AM
    Reinstalei o plugin e deu tudo certo. Já teste na sandbox e sucesso! Obrigado.
  • Yuri Molina Vale
    Mon, 25 Sep 2017, 12:52 PM
    Olá, gostaria de confirmar algumas informações:
    1. É possível habilitar o pagamento via boleto e ter a inscrição automática após confirmação do pagamento?
    2. É possível desinscrever o usuário automaticamente caso ele opte pela devolução do dinheiro (política dos 7 dias) ?
    3. É possível configurar renovação automática, ou seja, cobrar dinheiro do cartão configurado todo mês e desinscrever o aluno automaticamente caso o pagamento não seja aprovado em algum mês ?
  • Daniel Neis Araujo
    Mon, 25 Sep 2017, 8:27 PM
    Olá, Yuri

    1. É possível pagar via boleto, mas o sistema inscreve o usuário na hora, não após a confirmação.
    2. Não
    3. Não
  • Rogerio de Jose Paixao
    Mon, 16 Oct 2017, 8:35 AM
    Boa noite. Onde encontro essa informação - Ainda no site do PagSeguro, você deve preencher o campo "Código de transação para página de redirecionamento" com o valor "transaction_id" (sem as aspas).
  • Rodolfo Morais
    Tue, 31 Oct 2017, 10:22 AM
    Olá Daniel!
    Você poderia me dar uma ajuda:
    Ultimamente tenho recebido esse tipo de email, no email inserido no plugin PagSeguro:

    Ambiente Virtual: Transaction failed.
    Not a valid user id
    O:8:"stdClass":41:{s:4:"date";s:29:"2017-10-30T15:08:50.000-02:00";s:4:"code";s:36:"56D01A33-36EA-4861-A794-C0E87785C4E8";s:9:"reference";s:3:"65,";s:4:"type";s:1:"1";s:6:"status";s:1:"1";s:13:"lasteventdate";s:29:"2017-10-30T15:10:13.000-02:00";s:18:"paymentmethod_type";s:1:"2";s:18:"paymentmethod_code";s:3:"202";s:11:"paymentlink";s:148:"https://pagseguro.uol.com.br/checkout/payment/booklet/print.jhtml?c=d17a4cf379322590a007b9296d9e35bcd09484cba0408babac7f07459785140c436a28843b501c";s:11:"grossamount";s:6:"280.00";s:14:"discountamount";s:5:"15.95";s:9:"feeamount";s:5:"10.94";s:9:"netamount";s:6:"253.11";s:11:"extraamount";s:4:"0.00";s:16:"installmentcount";s:1:"1";s:9:"itemcount";s:1:"1";s:13:"items_item_id";s:2:"65";s:22:"items_item_description";s:51:"Elaboraïïo
    de Projetos de Eficiïncia

    DETALHE:
    - O curso informado no email acima não existe no Moodle, é um curso presencial.
    - A empresa a onde instalei o Moodle com o plugin usa o painel do PagSeguro para gerar boletos para cursos presenciais e envia para o aluno.
    - Me parece que quando um aluno paga o curso presencial, o PagSeguro envia as informações de confirmação para o plugin no Moodle e esse tenta inserir o mesmo no curso, mas gera esse erro, já que o usuário e curso não existem na plataforma e em seguida dispara o aviso para o email inserido no plugin PagSeguro.
    - Ate o momento isso não gerou nenhum problema, mas queria evitar esses emails, mas não decobri o que pode estar gerando isso.
  • Yuri Amaral Bezerra
    Tue, 5 Dec 2017, 7:54 AM
    Boa Noite! Parabéns pelo Plugin de Integração..

    Tenho uma dúvida quanto à emissão de boleto.. Crie um aluno teste e fiz a emissão do boleto, assim que o boleto é gerado, conta-se um minuto dentro da plataforma do PagSeguro e o aluno é redirecionado de volta à página do curso (página inicial do curso), mesmo sem haver nenhuma espécie de pagamento. Tem algum meio para corrigir isso?
  • Daniel Neis Araujo
    Tue, 5 Dec 2017, 8:02 AM
    Olá,

    na verdade o comportamento de inscrever mesmo sem o pagamento não é um problema, mas uma funcionalidade desejada.
    Como o plugin não trata devidamente as requisições do PagSeguro enviadas após a compra, foi decidido por inscrever os alunos e caso nao paguem, fazer a desinscrição manual, ao invés de ter que fazer a inscrição manual toda vez.

    Caso achem interessante, aceito doações para implementar novos fluxos no plugin.
  • Mandrado Silva dos Santos
    Wed, 14 Feb 2018, 2:23 AM
    Olá,

    Primeiro quero agradecer e parabeniza-los pelo desenvolvimento deste plugin.

    Sobre a inscrição automática via boleto bancário ela já foi implementada?

    E sobre os métodos de assinatura (pagamento recorrente)? eu só consegui implementar o pagamento normal, mas queria dar a opção do usuário de decidir se quer assinar por 3 meses, 6 meses, 12 meses ou ilimitado (até que ele cancele), neste caso teria que apresentar 4 opções de pagamento na tela, configurando 4 chaves (Código do Plano).

    Bom eu gostaria de contribuir de alguma forma.
  • Daniel Neis Araujo
    Wed, 14 Feb 2018, 7:28 PM
    Olá, Mandrado

    no estado atual no plugin, não é suportado o pagamento recorrente, nem o uso de múltiplos "apps", apenas configurações com os dados das contas.
    Mas eu estou aberto à contribuições, tanto de código quanto de financiamento para desenvolvimento. Se você tiver interesse, me envie um email ou entre em contato pelas mensagens aqui do site.
  • Carlos Alberto Napoli
    Thu, 5 Apr 2018, 12:44 AM
    O plugin funciona perfeitamente, obrigado pelo desenvolvimento!
    Tenho uma dúvida, há como impedir que o aluno pague o mesmo curso mais de uma vez utilizando o mesmo usuário e senha?
Please login to post comments