What is the best way to implement in-app purchases without a third-party service?

This page summarizes the projects mentioned and recommended in the original post on /r/swift

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • laravel-in-app-purchases

    Validate products and subscription receipts. Handle subscription lifecycle.

  • This part is necessary if you offer subscriptions and you have to keep track of the subscription status. It's a bit more difficult to build, so I suggest you look for a library that can handle it for you (examples Laravel/NodeJS). That said, it is not impossible to implement it yourself.

  • app-store-server-api

    A Node.js client for the App Store Server API

  • This part is necessary if you offer subscriptions and you have to keep track of the subscription status. It's a bit more difficult to build, so I suggest you look for a library that can handle it for you (examples Laravel/NodeJS). That said, it is not impossible to implement it yourself.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • php-jwt

    PHP package for JWT

  • This depends on the library you end up downloading for the platform of your choosing. Some of the parts I explained above will be handled by the library for example in my case I decoded signedTransactionInfo using firebase/php-jwt. This has the added benefit of always checking the validity of the signature which was omitted in the manual method.

  • jwt-decode

    Decode JWT tokens; useful for browser applications.

  • Now I should mention it's NOT recommended to do this manually. There are great libraries that can help (examples PHP/NodeJS). For the sake of completeness here's how you do it.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts