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

Stripe Laravel Package

shapin/stripe

A lightweight Laravel integration for Stripe that wraps the official Stripe PHP SDK with a simple, expressive API. It helps streamline common billing tasks like customers, payments, subscriptions, and webhook handling in PHP applications.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Monetization roadmap sequencing. Billing is a gating dependency for any revenue feature — checkout, subscriptions, invoicing, dunning, refunds. This package only touches the integration layer beneath those features; it does not unlock capability the official Stripe SDK doesn't already provide, so it should not appear as a line item that "enables" a roadmap goal.
  • Build vs. buy vs. fork. The genuine decision this surfaces is: (a) official stripe/stripe-php, (b) laravel/cashier for subscription ergonomics, (c) a first-party internal wrapper, or (d) a fork like this — with shapin/stripe representing option (d). PM framing: choose the option with the lowest total cost of ownership across the revenue surface, not the lowest integration effort.
  • Supply-chain risk posture on revenue-critical code. Payments is the one subsystem where "we cannot take money" is the failure mode. A package with 4 stars, 0 dependents, and an unverified maintenance cadence is a risk acceptance decision, not a technical preference — it should be escalated to whoever owns vendor/security risk, not decided by an individual engineer.
  • Pricing and packaging experiments. One-time charges, tier changes, proration, trials, and coupons are the levers for pricing experiments. Because this package's webhook and subscription conveniences are unproven, a PM planning rapid pricing iteration should assume webhook-driven state sync is the critical path — and favor tooling with a documented, community-validated event handling story.
  • Build-vs-adopt for internal platform teams. If your org already runs a private package registry or maintains internal forks, this package may be a sibling to that practice. That's an org-capability question ("do we have a payments platform team?") rather than a package-selection question.
  • Deprecation / tech-debt planning. If it's already in the codebase, this is an input to a migration decision (behind a service abstraction) with a scoped cost, not a permanent commitment.

When to Consider This Package

Consider only if all of these hold:

  • There is an organizational relationship with the shapin team — this is an internal fork, a package under a maintenance agreement, or part of a private registry the org controls.
  • You need a specific customization the official SDK cannot express — custom HTTP transport, internal proxy, pinned conventions, or a compliance-mandated wrapper.
  • You have explicitly accepted ownership of security patching and Stripe API version tracking, with a named owner and a review cadence.
  • A provenance audit has confirmed it's a thin wrapper over stripe/stripe-php rather than an independent reimplementation of Stripe's REST API (the latter is a hard stop).
  • Payments already sit behind a first-party abstraction, so the SDK underneath is swappable without touching product code.

Look elsewhere — decisively — if:

  • You are a typical Laravel product team shipping billing features. Use stripe/stripe-php directly, or laravel/cashier for subscriptions, portal, and webhook plumbing. Estimated effort is comparable, with far lower long-term risk.
  • Procurement or security review requires identifiable maintainers, changelog discipline, or demonstrated dependent adoption (here: zero).
  • Your roadmap includes subscription lifecycle edge cases — dunning, proration, trials, tax, SCA/3DS. You want a battle-tested path, and community knowledge that on-call engineers can consult at 2 a.m.
  • Your platform upgrade cadence matters: an unpinned wrapper can block PHP/Laravel upgrades on the payment path.
  • You rely on CVE response and Stripe API version tracking as a vendor obligation rather than an internal one.

PM decision rule: the burden of proof sits with the third-party package. On the evidence available — 4 stars, 0 dependents, MIT, self-described as "a Stripe PHP SDK" — it does not clear the bar for greenfield adoption. It clears it only as a controlled internal fork.

How to Pitch It (Stakeholders)

To executives — one line: this is a thinly adopted wrapper around Stripe's own SDK, with no capability beyond it; our recommendation is to standardize on the official Stripe SDK (plus laravel/cashier where subscriptions matter) and not adopt this package.

The argument: Stripe integration is revenue-critical, and its failure mode is that we cannot take money. This package has 4 GitHub stars, zero dependents, and no visible maintenance governance. Every dollar of engineering effort it saves at integration is repaid with interest in security patching, upgrade blocking, and incident response that Stripe would otherwise absorb on our behalf. It also carries supply-chain risk sitting directly on the payment surface — API keys, card data, webhook signatures. Sticking to the official SDK keeps us on Stripe's supported upgrade path, keeps us inside our PCI scope assumptions, and keeps hiring and onboarding simple because every Laravel engineer already knows that SDK. Ask: approve the official SDK as the standard, and if this package is already in the codebase, approve a scoped migration budget behind a payments-service interface.

To engineering: treat this package as a fork, not a library — there is no ecosystem, no CVE channel, and no guarantee it tracks Stripe API versions. Do not adopt it fresh. Pin stripe/stripe-php, put it behind a thin first-party PaymentGateway interface so HTTP transport, persistence, and vendor choices stay swappable, and route all state transitions through verified webhooks rather than client-side confirmation. If it's already in production, migration is near-mechanical if it's a thin wrapper (swap calls plus a small adapter) and a genuine rework if it diverged — so the first task is a provenance audit and a diff against upstream before we size the migration. Either way, the sequencing is: audit → sandbox proof of concept → security review of key handling, logging, and webhook verification → adopt only if it measurably beats the official SDK on some concrete axis → roll out behind the abstraction.

What we give up by saying no: nothing on the product roadmap. There is no user-facing feature this package enables that the official SDK does not. The only thing forgone is whatever narrow internal convention motivated the fork in the first place — which is worth confirming with the maintainers before closing the door.

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.
tequilarapido/trackit
gregsphotography/site-builder-filament
cabaoctavio/laravel-query-log
gregsphotography/site-builder-components
io-digital/clickatell
snowsoft/laravel-admin
oxygen/auth
relicsoftware/barakah-payment-gateway
tobya/work-with-composer
equipc/laravel-email-validator
equipc/laravel-email-database-log
adedsec/nova-translated-labels
wazza/laravel-db-encryption
hokny/laravel-generator
vonsogt/backup
jengo/queues
jeremykenedy/laravel-observability
coleus/frame
thtg88/journalism
filagora/filagora-ai-forums