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

Appstore Iap Laravel Package

imdhemy/appstore-iap

Verify Apple App Store receipts and handle in-app purchases with imdhemy/appstore-iap. It validates receipts, parses App Store server notifications, and integrates with Laravel, letting you confirm purchases and subscriptions server-side without writing Apple's verification logic yourself.

Deep Wiki
Context7

Product Decisions This Supports

  • Monetization model feasibility. Server-side receipt validation and App Store Server Notification handling are prerequisites for paid subscriptions, consumables, and non-renewing purchases on iOS. This package moves that from "unscoped engineering project" to "integration task," which is the difference between shipping paid tiers this quarter and not.
  • Build vs. buy for a commodity integration. Apple's receipt/JWS verification, certificate chain handling, and notification payload parsing are well-understood but fiddly. Using an MIT-licensed library is a "borrow, don't build" call: it trades a small dependency risk for roughly 1–3 engineer-weeks of avoided work and avoided crypto bugs.
  • Entitlement architecture. Deciding how subscription state (active, in grace period, billing retry, expired, refunded, revoked) maps to product permissions forces an explicit product decision about downgrade behavior, grace-period access, and refund handling — the package supplies the raw events, the PM owns the policy.
  • Roadmap sequencing. This is Apple-only. Adopting it implicitly commits to an iOS-first billing path and defers Google Play / web billing to a separate workstream, ideally behind an internal entitlement interface so platform-specific libraries stay swappable.
  • Fraud and support posture. Server-side verification (versus trusting the client) reduces receipt-spoofing losses and enables support tooling like "what is this user's current subscription state?" — both are product-quality decisions, not just engineering ones.
  • Pricing and retention experiments. Reliable renewal/cancellation/refund events are what make churn, trial conversion, and win-back cohorts measurable; without them, monetization analytics are guesswork.
  • Scope boundary. No Google Play, no Stripe, no cross-platform subscription abstraction. If the roadmap includes Android within two quarters, plan the abstraction layer now rather than discovering the gap later.

When to Consider This Package

Adopt (with guardrails) when:

  • You are a PHP/Laravel shop shipping an iOS app with in-app purchases or subscriptions and you need server-side validation plus notification handling now, not after a research spike.
  • Your team has no one who wants to own JWS signature verification, Apple root certificate handling, and notification idempotency as a side project.
  • You are pre-product-market-fit or in an MVP where speed matters more than vendor SLA, and you are willing to wrap the library behind an internal EntitlementService interface with your own contract tests.
  • The library's supported surface actually covers your needs — verify that it handles App Store Server Notifications V2 / StoreKit 2 signed transactions, not only the legacy verifyReceipt endpoint, which Apple has been steering developers away from.

Look elsewhere or build thin in-house when:

  • You need multi-platform billing in one model. A cross-platform subscription vendor (RevenueCat, Adapty, or similar) or a unified billing abstraction will save you from maintaining parallel Apple/Google entitlement logic; picking up this library alongside one of those duplicates the very logic you are trying to centralize.
  • You need vendor support or an SLA. With ~56 stars and modest adoption, treat this as community code: no support contract, unclear bus factor, and upgrade cadence you do not control.
  • Security review is strict. Receipt/notification verification is a trust boundary; a lightly-adopted dependency there needs a real audit plus pinned versions before it touches production payments.
  • You already have a subscription platform in place. Adding this creates a second source of truth for entitlements.
  • Your stack is not PHP. Obvious, but worth stating: this is a PHP library, not a cross-language service.
  • You only need client-side StoreKit 2 entitlement checks. If purchases are non-consumable and low-value, on-device verification plus periodic reconciliation may be sufficient and cheaper to own.

Minimum due diligence before commit: confirm maintenance activity and last-release content, check test coverage and issue responsiveness, confirm Laravel/PHP version compatibility, verify support for the App Store Server API and V2 notifications, and budget a 1–2 day spike to validate against a sandbox account.

How to Pitch It (Stakeholders)

To executives (one paragraph): This is a small, MIT-licensed PHP library that implements Apple's in-app purchase verification and subscription notification handling — commodity plumbing, not a differentiator. Adopting it compresses an estimated 1–3 engineer-weeks of payment-integration work into a short integration, which directly affects when we can start charging iOS users. Cost is effectively zero in licensing; the real cost is dependency risk, since the project has limited community adoption and no support contract. The recommendation is to adopt it for the iOS monetization MVP, isolate it behind an internal entitlement interface so we can swap it or move to a cross-platform subscription vendor later without rewriting product logic, and revisit the decision once revenue and scale justify a supported solution.

To engineering (the honest framing): Use it to skip the Apple crypto and payload-parsing boilerplate, but you still own everything that matters: the subscription state machine and grace/refund policy, webhook endpoint authentication, idempotency and replay handling, App Store Server API key management, retry/observability, and reconciliation jobs. Pin the version, wrap it in an adapter with our own contract tests against Apple's sandbox, and keep raw notification payloads persisted so we can reprocess or migrate off it later. First task is a short spike confirming StoreKit 2 / V2 notification support before we plan around it.

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.
skyraptor/chatter
edlugz/sasapay
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource