Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Cashier Laravel Package

chargebee/cashier

Laravel Cashier for Chargebee provides an expressive, fluent interface for subscription billing with Chargebee. It handles subscriptions, invoices, payment methods, and recurring payments, letting Laravel developers integrate Chargebee billing quickly.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. Unchanged. chargebee/cashier is a Laravel-native wrapper around the Chargebee PHP SDK, mirroring Laravel Cashier conventions: a Billable trait, subscription lifecycle helpers, checkout, and webhook handling. It remains a high fit for a Laravel monolith or modular monolith on Eloquent and queues, and a poor fit for polyglot or event-driven estates where only PHP consumers can use it. v1.4.0 does not alter the package's surface area — no new features, no new abstractions — so architectural fit is exactly as assessed previously.

Integration feasibility. Unchanged in effort, slightly better in confidence. Install, publish config/migrations, add the Billable trait, configure the Chargebee site and API keys, register webhook routes — the 1–2 week sandbox spike estimate stands, and the real lift is still Chargebee catalog configuration (plans, add-ons, coupons, tax, dunning). What v1.4.0 adds is a usable compatibility statement: illuminate/* now allows ^10.0|^11.0|^12.0|^13.0 with a minimum of PHP ^8.1, and CI exercises PHP 8.1–8.5 against Laravel 10, 11, 12, and 13. That directly answers the compatibility-matrix question that was previously open, and it means a team on Laravel 12 or planning a Laravel 13 upgrade can adopt without a known version ceiling.

Technical risk. The headline risk — ecosystem maturity — is unchanged. Sixty-four stars and zero dependents still means minimal community validation, few production references, and thin troubleshooting material. v1.4.0 is a positive but narrow signal: it is a pure maintenance release that tracks the newest Laravel major promptly and explicitly preserves backward compatibility ("no breaking changes — Laravel 10, 11 and 12 remain supported"), which is evidence of active vendor stewardship rather than a one-off publishing event. One release does not establish cadence, and it does not reduce the operational risk of Chargebee API version drift, webhook payload changes, or incomplete edge-case coverage (proration, multi-currency, tax, dunning). Note also that the PHP 8.1 floor is retained, so consumers on 8.1 are supported even though that runtime is itself out of upstream security support — an internal decision, not a package defect, but worth flagging to security review. The dompdf/dompdf constraint widening to ^2.0|^3.0 is non-forcing and low risk, but teams rendering invoice PDFs should confirm which major they resolve to, since dompdf 3.x is a separate upgrade path. Test-only churn (orchestra/testbench matrix, PHPUnit resolved via Testbench) has no production impact.

Key questions.

  • Which Laravel and PHP versions are supported, and is there a published compatibility matrix? Largely answered by v1.4.0: Laravel 10–13, PHP ^8.1, CI-tested on PHP 8.1–8.5. Confirm our specific Laravel minor and PHP patch are inside the tested matrix.
  • Does the package cover the subscription operations we actually need: trials, plan swaps, quantity changes, pause/resume, cancellation feedback, and invoices? (Unchanged — v1.4.0 adds no functionality.)
  • How are webhooks verified, queued, and made idempotent? What happens on duplicate or out-of-order delivery? (Unchanged.)
  • Is the Chargebee PHP SDK version pinned, and how quickly are breaking API changes absorbed? (Partially informed: Laravel-side drift is being tracked promptly; Chargebee SDK-side drift is still unproven.)
  • Who owns billing correctness — the package, our application code, or Chargebee's hosted pages?
  • What is the fallback if the package is abandoned or lags Laravel releases: fork, direct SDK use, or migrate to Chargebee's hosted checkout? (Slightly de-risked: the Laravel 13 support and explicit no-breaking-change posture mean a fork would be a small, well-scoped maintenance burden rather than a rewrite.)

Integration Approach

Stack fit. Unchanged. Best suited to a Laravel application using Eloquent, queues, and scheduled commands with Chargebee as the system of record for subscriptions and invoices, and a single Billable model (User or Account). Multi-tenant billing still requires an explicit decision about which entity owns the subscription. If the estate is polyglot or already standardized on Stripe Cashier, adopting this package still introduces a second billing paradigm. The only change to stack-fit reasoning is scheduling: Laravel 13 support means the package need not be a gating item in a framework-upgrade plan, and it can be adopted alongside or ahead of a Laravel 13 migration.

Migration path. Unchanged. From Stripe Cashier this is not a drop-in replacement — trait methods and subscription schema differ, and historical state must be reconciled into Chargebee: parallel run for new subscriptions, backfill existing subscribers with mapped plans and proration rules, dual-write or reconcile during a defined overlap window, then cut over webhook ownership after at least one full billing cycle reconciles. From no billing system, introduce package and Chargebee catalog together in sandbox, then promote. v1.4.0 changes nothing here because it changes no runtime behavior.

Compatibility. Improved, with three layers still to validate. (1) Package vs. Laravel/PHP: now explicit and CI-backed — Laravel 10/11/12/13, PHP ^8.1, tested across PHP 8.1–8.5. Verify our exact PHP patch and Laravel minor are in the tested set rather than inferring from the constraint. (2) Bundled Chargebee SDK vs. the Chargebee site's API version — still the least documented layer. (3) Webhook event set vs. events actually enabled in Chargebee. Continue pinning versions in composer.json and treating package upgrades as billing changes requiring regression tests; that discipline is what makes a low-risk maintenance release like v1.4.0 cheap to absorb, and it is also what will catch a future release that is not low-risk.

Sequencing. Unchanged, with a minor addition: run the v1.4.0 upgrade in the discovery spike so the compatibility baseline is proven in our environment rather than assumed from CI.

  1. Discovery spike (1–2 weeks): sandbox Chargebee site, install the package at v1.4.0, prove checkout, webhook receipt, and one plan change end to end.
  2. Catalog and data model: Chargebee plans, add-ons, coupons, tax; local subscriptions table; Chargebee customer ↔ Billable mapping.
  3. Core flows: signup with trial, upgrade/downgrade with proration, cancellation, payment method update, invoice retrieval.
  4. Webhook hardening: signature verification, idempotency keys, queue-based processing, dead-letter handling, reconciliation jobs.
  5. Parallel run and cutover: limited cohort, reconciliation reports against Chargebee, then full rollout.
  6. Operational readiness: runbooks, dashboards, on-call ownership before retiring any legacy billing path.

Operational Impact

Maintenance. Low-to-moderate, unchanged in substance but marginally better in trajectory. v1.4.0 is exactly the kind of release a small-dependency consumer wants: constraint widening, dev-dependency upkeep, CI expansion, no breaking changes, no migration steps. It is absorbable as a routine dependency bump. That said, one maintenance release does not establish a cadence, and the team still owns Chargebee configuration, webhook handlers, reconciliation logic, and upgrade testing — with a thin community, upgrade notes may still require reading source and Chargebee changelogs. Keep budgeting a recurring fraction of an engineer for dependency and API-version upkeep.

Support. Unchanged. Chargebee supports its platform; the package's community surface remains thin. Internal support still depends on a billing runbook and a named owner, and finance/customer-support questions about invoice discrepancies, failed payments, and refunds will route to engineering unless Chargebee's admin tooling and permission model are set up deliberately. The v1.4.0 CI matrix is a useful support artifact — it gives the team a defensible answer to "which versions do we support?" without empirical testing.

Scaling. Unchanged. The package is not the bottleneck; Chargebee API rate limits and webhook throughput are. Burst signup or plan-change traffic should be queued with backoff, webhook processing must be idempotent and horizontally safe, and reconciliation jobs should re-derive state from Chargebee rather than trusting local rows. Multi-currency, tax, and multi-entity billing add configuration and reporting complexity, not code complexity. Nothing in v1.4.0 affects throughput or failure characteristics.

Failure modes. Unchanged. The highest-impact failures remain silent: a missed webhook leaves entitlement stale, a duplicate webhook double-applies a credit, a proration mismatch produces a wrong invoice, or an API version change breaks subscription updates. Dunning and payment-failure paths are the most sensitive because they combine Chargebee configuration with access control. Mitigations: signature verification, idempotency stores, replay tooling, daily reconciliation against Chargebee, alerting on webhook lag and 4xx/5xx rates, and entitlement checks that degrade gracefully instead of locking customers out on transient errors. The one risk v1.4.0 specifically retires is "package blocked on a Laravel upgrade" — the package is now forward-compatible with Laravel 13, so a framework upgrade is no longer a forced billing project.

Ramp-up. Unchanged. A Laravel engineer familiar with Cashier conventions is productive in days; Chargebee catalog, proration, and invoicing semantics take weeks. Finance and support need separate onboarding on the Chargebee admin console. The 64-star, zero-dependent profile still means no community examples to lean on, so internal documentation and a tested sandbox remain essential onboarding assets. Overall verdict holds: a reasonable buy for a Laravel-centric team already committed to Chargebee, and a weak fit as a first billing integration where vendor neutrality or broad ecosystem support is a priority. v1.4.0 modestly improves the maintenance-risk side of that trade-off without touching the ecosystem-support side.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle
glavweb/extra-bundle
glavweb/api-bundle
glavweb/admin-bundle
adachsoft/api-version-bundle
elsayed85/laravel-api-exceptions
ouhssini/laravel-demo-mode
daworks/ncloud-outbound-mailer-driver
gp247/cms
ignibyte/aic-gates
nexa-merchant/blog
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
shitoudev/permissionmanager