softpampa/moip-laravel

Laravel package for Moip SDK PHP

1.1.15 2017-02-20 17:21 UTC

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.