arrendales/recurrente-laravel
Composer 安装命令:
composer require arrendales/recurrente-laravel
包简介
SDK no oficial de Recurrente (pasarela de pagos de Guatemala) para Laravel: checkouts, suscripciones, productos y verificación de webhooks.
README 文档
README
SDK no oficial de Recurrente (pasarela de pagos de Guatemala) para Laravel. Permite crear checkouts, productos con precios recurrentes (suscripciones), cancelar suscripciones y verificar la firma de los webhooks.
Paquete extraído del proyecto ArrendaLes. Framework: Laravel 11/12, PHP 8.2+.
Instalación
composer require arrendales/recurrente-laravel php artisan vendor:publish --tag=recurrente-config
Configura tus llaves en .env (o inyéctalas en runtime, ver abajo):
RECURRENTE_PUBLIC_KEY=pk_... RECURRENTE_SECRET_KEY=sk_... RECURRENTE_WEBHOOK_SECRET=whsec_... RECURRENTE_MODE=test
Uso básico
use Recurrente\Laravel\Facades\Recurrente; use Recurrente\Laravel\DataObjects\CheckoutData; $checkout = Recurrente::checkouts()->create( CheckoutData::make() ->withPrice('price_abc') // o ->withInlineItem('Plan Pro', 29900) ->successUrl(route('billing.success')) ->cancelUrl(route('billing.cancel')) ->metadata(['organization_id' => $org->id]) ->paymentMethods(card: true, bankTransfer: true) ); return redirect($checkout['checkout_url']);
Llaves en runtime (multi-cuenta / desde base de datos)
use Recurrente\Laravel\RecurrenteClient; $client = new RecurrenteClient(secretKey: $secretFromDb, publicKey: $publicFromDb); $client->subscriptions()->cancel($subscriptionId);
Productos recurrentes (suscripciones)
$product = Recurrente::products()->createRecurring( name: 'Plan Pro Mensual', amountInCents: 29900, currency: 'GTQ', billingInterval: 'month', freeTrialDays: 14, );
Webhooks
use Recurrente\Laravel\Webhooks\WebhookVerifier; use Recurrente\Laravel\Webhooks\WebhookEvent; public function handle(Request $request, WebhookVerifier $verifier) { $ok = $verifier->verify( payload: $request->getContent(), headers: $request->headers->all(), secret: config('recurrente.webhook_secret'), ); abort_unless($ok, 400); $event = WebhookEvent::fromArray($request->json()->all()); if ($event->isPaymentCompleted()) { // activar suscripción usando $event->metaValue('organization_id') } }
Esquemas de firma soportados: svix (por defecto) y hmac. Configurable en config/recurrente.php.
Tests
composer install vendor/bin/phpunit
Licencia
MIT.
统计信息
- 总下载量: 0
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 3
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-06-21