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

Google Play Billing Laravel Package

imdhemy/google-play-billing

A PHP package for server-side Google Play Billing integration. Validate in-app purchases and subscriptions, verify purchase tokens with Google Play, handle acknowledgements, and add billing support to Laravel or any PHP app.

Deep Wiki
Context7

Product Decisions This Supports

  • Monetization launch on Android. This package is the plumbing between a Laravel/PHP backend and the Google Play Developer API: purchase-token validation, product/subscription lookup, purchase acknowledgement, and Real-time Developer Notification (RTDN) parsing. It directly answers "can we ship paid tiers on Android this quarter without a dedicated billing squad?"
  • Build vs. buy vs. borrow. The decision it informs is concrete: 3–6 engineer-weeks to hand-roll Google API auth, token validation, acknowledgement semantics, idempotent RTDN handling and a subscription state machine — versus adopting an MIT-licensed library and owning only the entitlement logic on top. It makes "borrow" a credible third option alongside "build" and "buy RevenueCat/Adapty."
  • Cross-platform subscription architecture. Choosing a single-platform library forces an explicit decision about whether Android and iOS billing live behind one internal abstraction, or whether you accept two parallel integrations. That architectural call is cheaper to make before launch than after.
  • Subscription lifecycle UX. Grace periods, account holds, pause/resume, upgrade/downgrade with proration, and free-trial abuse all depend on correctly interpreting Google's subscription states. The library's state coverage shapes which retention and dunning features are feasible in v1 versus v2.
  • Third-party IAP middleware economics. Using this instead of a managed IAP vendor removes a per-revenue fee and a data-sharing relationship from the unit economics — a roadmap-relevant input if subscription revenue is a top-line assumption.
  • Operational design for revenue events. RTDN handling forces decisions on push-vs-poll, idempotency, replay, reconciliation jobs against the Play Console, refund/chargeback flows, and alerting on acknowledgement failures. These are product-visible reliability commitments, not just engineering detail.

When to Consider This Package

Adopt it when:

  • Your backend is PHP/Laravel and you already own user identity, entitlements and entitlement checks; billing is a bounded integration, not the product.
  • Google Play is your only (or first) billing surface, or you are comfortable pairing it with a separate App Store library behind an internal interface.
  • You need the core primitives — validate a purchase token, acknowledge a purchase, read subscription state, decode RTDN payloads — and you are willing to own the entitlement state machine, retry logic and monitoring yourself.
  • License purity and zero per-transaction cost matter (MIT, no revenue share).
  • You have engineering capacity to fork-and-own if upstream stalls. The recent release date is the main positive maintenance signal; low star count means effectively no community.

Look elsewhere when:

  • Revenue-critical path with no owner. At ~51 stars this is a single-maintainer dependency with limited public production evidence. Do not put it under a primary revenue stream without a named internal owner, a pinned version, and a practiced fork/patch path.
  • You want a product, not a library. Hosted dashboards, cohort/revenue analytics, paywall A/B testing, cross-platform entitlements, webhook fan-out and support SLAs are not here — that is RevenueCat, Adapty, Qonversion territory.
  • You also need Apple. A Google-only library means writing the StoreKit side yourself or adding a second dependency; a cross-platform abstraction is cheaper than two bespoke integrations.
  • You need vendor assurances. No SOC 2, no support contract, no security-review artifacts. If procurement requires them, this is a non-starter.
  • Your stack isn't PHP. Use Google's official client libraries in your actual service language rather than standing up a PHP sidecar.
  • You need bleeding-edge Play Billing features immediately. Verify release cadence and CI against Google's API change history before committing; a small library can lag deprecations and new subscription types.

Before adopting, verify: test coverage and CI status, whether RTDN signature verification and idempotency are handled or left to the caller, how it treats acknowledgement deadlines (unacknowledged purchases are auto-refunded), and the maintainer's responsiveness on issues.

How to Pitch It (Stakeholders)

For executives: We can accept Google Play payments on Android using an MIT-licensed PHP library instead of building the Google API integration from scratch — roughly 3–6 engineer-weeks of avoided work and no revenue share to a billing middleware vendor. The cost is that we own the subscription logic, monitoring and reconciliation on top of it. The risk is concentration: it is a small, single-maintainer open-source project. Because it is MIT and a thin wrapper over a public API, the downside is bounded — we can fork and maintain it internally at modest cost, and we should budget a small owner's allowance for exactly that. Recommendation: adopt for launch with the version pinned and an internal owner named; revisit if we expand to iOS, in which case evaluate a cross-platform abstraction rather than adding a second bespoke integration.

For engineering: Treat it as a typed client over the Google Play Developer API, not a subscription platform. Expect to own: the entitlement state machine, idempotent RTDN ingestion, acknowledgement-failure alerting, periodic reconciliation against Play Console, and refund/chargeback handling. Keep billing behind an internal interface from day one so the App Store integration and any future vendor swap are additive. Pin the version, wrap every call, and write contract tests against recorded fixtures so upstream changes surface in CI rather than in revenue.

Decision ask: Approve adoption for the Android launch, contingent on a maintainer/CI review and a named internal owner; defer the cross-platform abstraction decision until iOS is on the roadmap.

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.
3mdikram/worldmoneywords
snowsoft/config
itmosoft/laravel-subscriptions
larva/laravel-ai-qwen
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib