billcommerce-laravel maintained by clonixdev
clonixdev/billcommerce-laravel
Cliente Laravel para integrar aplicaciones con Billcommerce (API tenant tipo Elafact).
Instalación
composer require clonixdev/billcommerce-laravel
php artisan vendor:publish --tag=billcommerce-config
php artisan vendor:publish --tag=billcommerce-migrations
php artisan migrate
Repositorio local (desarrollo)
"repositories": [
{
"type": "path",
"url": "../billcommerce-laravel",
"options": { "symlink": true }
}
],
"require": {
"clonixdev/billcommerce-laravel": "@dev"
}
Variables de entorno
BILLCOMMERCE_URL=https://tenant.billcommerce.test
BILLCOMMERCE_MASTER_TOKEN=
BILLCOMMERCE_WEBHOOK_SECRET=
BILLCOMMERCE_ORIGIN=deploy-app
Compatibilidad con nombres legacy: BILLING_URL, BILLING_MASTER_TOKEN, etc.
Eventos webhook
Registra listeners en tu EventServiceProvider:
use Clonixdev\Billcommerce\Events\BillcommerceInvoicePaid;
use Clonixdev\Billcommerce\Events\BillcommerceSubscriptionCancelled;
protected $listen = [
BillcommerceInvoicePaid::class => [
\App\Listeners\HandleYourAppPayment::class,
],
BillcommerceSubscriptionCancelled::class => [
\App\Listeners\HandleYourAppSuspended::class,
],
];
Filtra por SKU con Clonixdev\Billcommerce\Support\BillcommerceProductMatcher.
Compatibilidad nix (tablas legacy)
En config/billcommerce.php:
'tables' => [
'tokens' => 'billing_tokens',
'configs' => 'billing_configs',
'products' => 'billing_hosting_products',
],
'models' => [
'product' => \App\Models\BillingHostingProduct::class,
],
Rutas incluidas
POST api/v1/webhooks/billcommerce(y aliaswebhooks/billing)- Proxy
api/v1/billing/orders|invoices|payments - Admin
api/v1/admin/billcommerce/config|products