softpampa / moip-laravel
Laravel package for Moip SDK PHP
This package's canonical repository appears to be gone and the package has been frozen as a result.
1.1.15
2017-02-20 17:21 UTC
Requires
- php: >=5.4.0
- illuminate/support: 4.2.*
- softpampa/moip-sdk-php: ~1
This package is not auto-updated.
Last update: 2022-08-06 15:26:52 UTC
README
Este package permite receber WebHooks do Moip assim como fornece Façades para o Moip SDK.
1.0.7
Instalação
Via composer
composer require softpampa/moip-laravel
Configuração
app/config.php
<?php 'aliases' => array( ... 'MoipPayments' => 'Softpampa\MoipLaravel\MoipPaymentsFacade', 'MoipSubscriptions' => 'Softpampa\MoipLaravel\MoipSubscriptionsFacade' )
Para publicar o arquivo de configuração e criar as tabelas. Execute:
$ php artisan config:publish softpampa/moip-laravel
$ php artisan migrate --package="softpampa/moip-laravel"
Importar planos e assinaturas
$ php artisan moip:import
Importar uma assinatura pelo código
$ php artisan moip:subscription:import $CODE
Utilizando
Relacionar model User com o MoipCustomer
<?php use Softpampa\MoipLaravel\Models\MoipCustomer; class User extends Eloquent { public function moip() { return $this->hasOne(MoipCustomer::class, 'user_id', 'id'); } }
Alguns exemplos
<?php $user = User::find(1); // Retorna todas assinaturas do customer $user->moip->subscriptions->toArray(); // Retorna um assinatura por código $user->moip->subscriptions()->byCode('882173')->first(); // Retorna o plano de um assinatura $user->moip->subscriptions()->byCode('882173')->first()->plan; // Retorna o cliente de um assinatura $user->moip->subscriptions()->byCode('882173')->first()->customer;
Webhook
Para receber requisições do Moip é necessário configurar a URL de Webhook
$ php artisan moip:setup
WebTunnel para localhost
Caso a aplicações esteja rodando no localhost é necessário criar um WebTunnel, o ngrok dá conta da situação:
$ php artisan serve
$ ngrok http 8000
# Informar URL: {subdomain}.ngrok.io/webhook/moip/subscription
$ php artisan moip:setup
Todo
- Criar controle ao importar dados para evitar duplicados;
- Atualizar dados do sistema com os dados do MoIP.