Expressivo por padrão
Crie checkouts, cobranças PIX, assinaturas e webhooks em uma ou duas linhas — sem esconder a API v2 completa.
SDK tipado e expressivo para a AbacatePay v2. Menos boilerplate, mais Laravel — com cobertura completa da API v2.
Compare o mesmo fluxo sem e com o pacote.
use Illuminate\Support\Facades\Http;
$response = Http::withToken(config('abacatepay.api_key'))
->post('https://api.abacatepay.com/v2/transparents/create', [
'method' => 'PIX',
'data' => [
'amount' => 10000,
'description' => 'Pedido #123',
'expires_in' => 3600,
'metadata' => ['order_id' => 'ORDER-123'],
],
]);
if ($response->failed()) {
throw new RuntimeException($response->json('error.message') ?? 'AbacatePay error');
}
$brCode = $response->json('data.brCode');use Cavalheri\LaravelAbacatePay\Facades\AbacatePay;
$charge = AbacatePay::transparentCheckouts()->pix(10000, [
'description' => 'Pedido #123',
'metadata' => ['order_id' => 'ORDER-123'],
]);
$brCode = $charge->brCode;use Illuminate\Support\Facades\Http;
Http::withToken(config('abacatepay.api_key'))
->post('https://api.abacatepay.com/v2/webhooks/create', [
'name' => 'Pagamentos',
'endpoint' => route('webhooks.abacatepay'),
'secret' => config('abacatepay.webhook_secret'),
'events' => ['checkout.completed', 'checkout.expired'],
]);
$secret = $request->query('webhookSecret');
$signature = $request->header('X-Webhook-Signature');
$expected = hash_hmac('sha256', $request->getContent(), $secret);
if (! hash_equals($expected, (string) $signature)) {
abort(401);
}use Cavalheri\LaravelAbacatePay\Facades\AbacatePay;
AbacatePay::webhooks()
->checkoutEvents()
->at(route('webhooks.abacatepay'))
->named('Pagamentos')
->create();
$isValid = AbacatePay::webhooks()->verify(
rawBody: $request->getContent(),
signature: $request->header('X-Webhook-Signature'),
secret: $request->query('webhookSecret'),
);| Requisito | Versão |
|---|---|
| PHP | 8.3+ |
| Laravel | 13.x |
| AbacatePay API | v2 |
composer require cavalheri/laravel-abacatepay
php artisan vendor:publish --tag=abacatepay-configDepois configure ABACATEPAY_API_KEY no .env e pronto.
Open source criado e mantido por Lucas Cavalheri.