keepcloud/pagarme-laravel

A Laravel package to integrate with Pagar.me API

1.1.4 2024-10-28 19:18 UTC

This package is auto-updated.

Last update: 2025-07-21 18:45:12 UTC


README

Pagar.me

Pagar.me - Laravel

Integração da API Pagar.me com o framework Laravel.

📚 Índice

Instalação

Você pode instalar o pacote via composer.

composer require keepcloud/pagarme-laravel

Configuração

Antes de começar a utilizar o pacote, adicione sua chave de API no arquivo .env da aplicação:

PAGARME_API_KEY=ak_test_sua_chave_aqui

Em seguida, certifique-se de que o arquivo de configuração config/pagarme.php esteja publicado e corretamente configurado. Ele será responsável por armazenar os dados de conexão com a API do Pagar.me:

config/pagarme.php
<?php

return [
    'api_key'     => env('PAGARME_API_KEY', 'ak_test_*'),
    'base_url'    => 'https://api.pagar.me/core',
    'api_version' => 'v5',
];

Se você ainda não publicou o arquivo de configuração, execute o comando abaixo:

php artisan vendor:publish --tag="pagarme-config"

Esse passo é essencial para garantir que a integração com a API funcione corretamente, utilizando a chave de autenticação e a URL base da API do Pagar.me.

Endpoints

Consulte as funções disponíveis para interagir com a API do Pagar.me.

Módulo Descrição Documentação
Customer Gerenciamento de clientes, cartões e endereços Ver detalhes
Charge Cobranças e captura de pagamentos Ver detalhes
Order Criação e controle de pedidos e itens Ver detalhes
Recipients Gerenciamento de recebedores/destinatários Ver detalhes
Subscription Assinaturas e faturamento recorrente Ver detalhes
Anticipation Antecipação de recebíveis Ver detalhes

Como usar

Adicione o import no local onde desejar utilizar o pacote:

use Pagarme;

Exemplo de uso:

// Criar cliente
$newCustomer = Pagarme::customer()->create([
    'name' => 'Cliente Teste',
    'email' => 'cliente@teste.com',
    'type' => 'individual',
    'documents' => [
        ['type' => 'cpf', 'number' => '12345678900']
    ]
]);
dd(json_decode($newCustomer->getBody()->getContents(), true));

// Listar todos os clientes
// $customers = Pagarme::customer()->all();
// dd(json_decode($customers->getBody()->getContents(), true));

// Buscar cliente por ID
// $customer = Pagarme::customer()->find('cus_xxx');
// dd(json_decode($customer->getBody()->getContents(), true));

// Atualizar cliente
// $updated = Pagarme::customer()->update('cus_xxx', [
//     'name' => 'Cliente Atualizado',
//     'email' => 'atualizado@teste.com',
// ]);
// dd(json_decode($updated->getBody()->getContents(), true));

// Criar cartão de crédito
// $card = Pagarme::customer()->createCreditCard('cus_xxx', [
//     'number' => '4111111111111111',
//     'holder_name' => 'Cliente Teste',
//     'exp_month' => '12',
//     'exp_year' => '2030',
//     'cvv' => '123'
// ]);
// dd(json_decode($card->getBody()->getContents(), true));

// Buscar cartão
// $card = Pagarme::customer()->findCreditCard('cus_xxx', 'card_xxx');
// dd(json_decode($card->getBody()->getContents(), true));

// Listar cartões
// $cards = Pagarme::customer()->allCreditCards('cus_xxx');
// dd(json_decode($cards->getBody()->getContents(), true));

// Renovar cartão
// $renewed = Pagarme::customer()->renewCreditCard('cus_xxx', 'card_xxx');
// dd(json_decode($renewed->getBody()->getContents(), true));

// Atualizar cartão
// $updatedCard = Pagarme::customer()->updateCreditCard('cus_xxx', 'card_xxx', [
//     'holder_name' => 'Novo Nome'
//     'exp_month' => 12,
//     'exp_year' => 2036,
// ]);
// dd(json_decode($updatedCard->getBody()->getContents(), true));

// Deletar cartão
// $deletedCard = Pagarme::customer()->deleteCreditCard('cus_xxx', 'card_xxx');
// dd(json_decode($deletedCard->getBody()->getContents(), true));

// Adicionar endereço
// $address = Pagarme::customer()->createAddress('cus_xxx', [
//     'line_1' => 'Rua A',
//     'zip_code' => '12345678',
//     'city' => 'Cidade',
//     'state' => 'SP',
//     'country' => 'BR'
// ]);
// dd(json_decode($address->getBody()->getContents(), true));

// Buscar endereço
// $address = Pagarme::customer()->findAddress('cus_xxx', 'addr_xxx');
// dd(json_decode($address->getBody()->getContents(), true));

// Listar endereços
// $addresses = Pagarme::customer()->allAddresses('cus_xxx');
// dd(json_decode($addresses->getBody()->getContents(), true));

// Atualizar endereço
// $updatedAddress = Pagarme::customer()->updateAddress('cus_xxx', 'addr_xxx', [
//     'line_1' => 'Rua B',
//     'city' => 'Nova Cidade'
// ]);
// dd(json_decode($updatedAddress->getBody()->getContents(), true));

// Deletar endereço
// $deletedAddress = Pagarme::customer()->deleteAddress('cus_xxx', 'addr_xxx');
// dd(json_decode($deletedAddress->getBody()->getContents(), true));

Créditos

Keepcloud

Licenca

Licença MIT (MIT). Por favor, consulte o Arquivo de Licença para mais informações.