Flat-fee pricing, per app. Pay only for what you need.
$0 / mo
  • 100 validations

  • Consumable Products
  • Non-Consumable Products
  • Ticket Support

$5 / mo *
  • 500 validations

  • Everything in FREE, plus...
  • + Subscription Products
  • + 1 Year Transaction Storage
  • + 6 Months User Storage
$20 / mo *
  • 2500 validations

  • Everything in STARTER, plus...
  • + 2 Year Transaction Storage
  • + 1 Year User Storage
  • + Simple Webhooks
$75 / mo *
  • 10000 validations

  • Everything in INDIE, plus...
  • + Priority Ticket Support
  • + Burst

  • $1 per additional 100 validations
* Prices excl. VAT
$125 / account / mo *
+ $1 per 100 validations

  • Everything in PRO, plus...
  • + One Invoice per Account
  • + Live Chat Support
  • + Reliable Webhooks BETA
  • + Extended Analytics
Get in touch for a chat, custom requirements or request monitoring support during rollout.
In short: one validation typically means one in-app purchase.

One validation is deducted from your monthly quota for each successful receipt validation on a new purchase, like a new product/subscription purchase or subscription renewal. Also, for non-consumable purchases a transaction is deemed as new after it expired (see Transaction and User Storage) and the user invoking the restore transactions workflow again. Sandbox purchases and failed receipt validations (fake purchases) or adding the same transaction to a different user device do not count against your monthly quota.
You pay for a specific amount of validations, plus additional features, in the selected plan. If you subscribe to a plan mid-month, you only pay a portion of the full price and enter a 'trial' state for the remaining days in the current month. On the first day of next month, the regular subscription begins. Please see the documentation for more information.
The validation quota resets on the first day of the month, at 00:00 UTC.
Yes! If you see a sudden increase in validations for your app, you can upgrade to extend your quota immediately.
Absolutely. If you cancel your paid subscription, you will still be able to use its remaining quota and features until the following month. At that date, your app will convert into the free plan.
Transaction Storage ensures that transaction receipts are unique across your app. Different users will not be able to validate a purchase more than once in order to unlock content they do not rightfully own.
The inventory of users (subscriptions and non-consumables) can be stored in the cloud and retrieved by logging into your app. Without interaction, this inventory is available for the duration stated in the plan. The duration is extended when adding new transactions. After expiration, the inventory can be restored by invoking the native restore transactions workflow.
Simple Webhooks do not have a retry mechanism in case the receiving server sends a failed response. When using Reliable Webhooks, failed messages are put into a queue and retried multiple times.