Nesse plugin você terá as seguintes APIs do
Moip Assinaturas, através dos respectivos Components:
API | Component
---------------- | ------------------------
Planos | MoipAssinaturas.Plans
Clientes | MoipAssinaturas.Customers
Assinaturas | MoipAssinaturas.Subscriptions
Faturas | MoipAssinaturas.Invoices
Pagamentos | MoipAssinaturas.Payments
Retentativas | MoipAssinaturas.Retries
Preferências | MoipAssinaturas.Preferences
A seguir, os métodos disponíveis para cada Component:
Planos - MoipAssinaturas.Plans
Criar novo plano:
Plans::create(plan_attributes)
Atualizar plano:
Plans::update(plan_code, plan_attributes)
Listas todos os planos:
Plans::listAll()
Detalhes de um plano específico:
Plans::details(plan_code)
Ativar um plano:
Plans::activate(plan_code)
Desativar um plano:
Plans::inactivate(plan_code)
Clientes - MoipAssinaturas.Customers
Criar novo cliente. Notar o parâmetro "new_vault", que deve ser "true | false", isso serve para criar um cliente com dados de cartão de crédito ou não. Se esse parâmetro for true, deverá fornecer os dados de cartão obrigatoriamente.
Customers::create(new_vault, customer_attributes)
Atualizar cliente:
Customers::update(customer_code, customer_attributes)
Listas todos os clientes:
Customers::listAll()
Detalhes de um cliente específico:
Customers::details(customer_code)
Atualizar dados do cartão do cliente:
Customers::updateBillingInfos(customer_code, customer_attributes)
Assinaturas - MoipAssinaturas.Subscriptions
Criar nova assinatura, atentar para o parâmetro "new_customer", as opções que devem ser fornecidas são "true | false", passando true você pode criar uma assinatura junto com o cliente de uma vez só.
Subscriptions::create(new_customer, subscription_attributes)
Atualizar assinatura:
Subscriptions::update(subscription_code, subscription_attributes)
Listas todas as assinaturas:
Subscriptions::listAll()
Detalhes de uma assinatura específica:
Subscriptions::details(subscription_code)
Suspender uma assinatura:
Subscriptions::suspend(subscription_code)
Ativar uma assinatura:
Subscriptions::activate(subscription_code)
Cancelar uma assinatura:
Subscriptions::cancel(subscription_code)
Faturas - MoipAssinaturas.Invoices
Listar todas faturas de uma assinatura:
Invoices::listAll(subscription_code)
Detalhes de uma fatura específica:
Plans::details(invoice_id)
Pagamentos - MoipAssinaturas.Payments
Listar todos pagamentos de uma fatura:
Payments::listAll(invoice_id)
Detalhes de um pagamento específico:
Payments::details(payment_id)
Retentativas - MoipAssinaturas.Retries
Retenta a cobrança de uma fatura:
Payments::retry(invoice_id)
Atualiza regras de retentativas:
Payments::rules(rules_attributes)
Preferências - MoipAssinaturas.Preferences
Atualiza preferências:
Preferences::set(preferences_attributes)
Como usar
* Nota importante: No Controller, onde você deseja utilizar o plugin/componente, carregue o componente conforme sua necessidade. Mas lembre-se, o componente "MoipAssinaturas.Moip" é obrigatório sempre.
Exemplo carregando plugin e componente de planos:
public $components = array('MoipAssinaturas.Moip', 'MoipAssinaturas.Plans');
Nas páginas que se seguem, você verá exemplos de utilização para cada componente.