A user subscription management backend
for developers
Maintaining subscription management logic in your app can be a pain.
SubTru does all of that for you, so you can focus on what matters to you.
Get any user's subscription status in a single API call.
Works with Stripe, Apple, & Google Play.
Try the access check endpoint
The GET /access API endpoint takes a user ID and returns a list of entitlements for that user.
A paid subscription in good standing grants access.
Your code
curl https://api.subtru.com/v1/projects/your_project_id/users/active_user/access \
-H "Authorization: Bearer subtru_live_xxxxxxxx.your_api_key"Response
Click Send request to see the response.
Each entitlement in the response returns a productId for that user's subscription and a hasAccess boolean that you can use when making access decisions in your app. The response has the same, normalized structure whether you're using Stripe, Apple App Store, Google Play, or any combination of these three providers.
How SubTru works
- Direct your provider events at SubTru. Stripe webhooks, Apple App Store Server Notifications, and Google Play Real-Time Developer Notifications are all sent to SubTru.
- SubTru verifies, deduplicates, and orders every event, then normalizes it into a single subscription state model.
- Your app calls the SubTru access check endpoint to get a user's current subscription state whenever you need it to make an access decision.

Why subscription access is hard to get right
Stripe, Apple, and Google all do subscriptions differently. Stripe webhooks, Apple App Store Server Notifications, and Google Play Real-Time Developer Notifications each have their own format, validation requirements, retry rules, and edge cases.
Even small mistakes when handling provider subscription events can prevent a user from receiving access after purchasing a subscription, remove access from a paying user, or give access away for free. Correctly handling even a single provider's subscription events can take months of effort to implement properly, and can become a constant source of bugs, risk, and ongoing maintenance work. Whether you're considering building things yourself or using SubTru instead, how subscription access works is worth understanding.