Introduction to CroissantPay

In-app purchase infrastructure for React Native (open source coming soon)

What is CroissantPay?

CroissantPay is a complete solution for managing in-app purchases and subscriptions in React Native applications. It handles the complexity of integrating with Apple's App Store and Google Play, so you can focus on building your app.

Whether you're building a subscription-based app, selling one-time purchases, or offering consumables, CroissantPay provides a unified API that works across both platforms.

Why Choose CroissantPay?

Cross-Platform

One SDK for iOS and Android. Write purchase logic once and it works everywhere.

Self-Hostable (coming soon)

Self-hosting coming soon. Deploy on your own infrastructure with Docker. Full control over your data.

Server-Side Validation

All receipts are validated server-side for maximum security against fraud.

Built-in Analytics

Track MRR, churn, conversions, and more without any additional setup.

No Revenue Share

Unlike some alternatives, we don't take a cut of your revenue. Ever.

Open Source (coming soon)

We're going open source under MIT. Soon: inspect the code, contribute, or fork for your needs.

How It Works

1

Install the SDK

Add the CroissantPay React Native SDK to your project with npm or yarn.

2

Configure Your Products

Set up your products, entitlements, and offerings in the dashboard.

3

Display Your Paywall

Use our hooks to fetch offerings and display products to users.

4

Process Purchases

When users purchase, we validate receipts and grant entitlements automatically.

5

Check Access

Use hasEntitlement() to gate premium features in your app.

Key Concepts

Products

Products map to items in the App Store and Google Play. They can be subscriptions, one-time purchases, or consumables. Each product is linked to entitlements that define what access it grants.

Entitlements

Entitlements represent features or content that users can unlock through purchases. For example, a 'premium' entitlement might unlock ad-free experience and exclusive content.

Offerings

Offerings are curated groups of products to show on your paywall. You can have different offerings for different use cases (e.g., a 'default' offering and a 'sale' offering).

Subscribers

Subscribers are users identified by a unique app user ID. CroissantPay tracks their purchases, subscriptions, and entitlements across sessions and devices.

Architecture Overview

┌─────────────────┐     ┌─────────────────┐
│   Your App      │     │   App Store /   │
│  (React Native) │     │   Google Play   │
└────────┬────────┘     └────────┬────────┘
         │                       │
         │ SDK                   │ Receipts
         ▼                       ▼
┌─────────────────────────────────────────┐
│           CroissantPay Server           │
│  ┌─────────┐  ┌─────────┐  ┌─────────┐  │
│  │ Receipt │  │ Entitle │  │ Webhook │  │
│  │ Valid.  │  │  ments  │  │ Handler │  │
│  └─────────┘  └─────────┘  └─────────┘  │
└─────────────────────────────────────────┘
         │
         │ Webhooks
         ▼
┌─────────────────┐
│  Your Backend   │
│   (Optional)    │
└─────────────────┘

Deployment Options

☁️ CroissantPay Cloud

Managed service with automatic updates, scaling, and support. Perfect for teams who want to focus on their app.

  • No infrastructure to manage
  • Automatic updates
  • 99.9% SLA on paid plans

🏠 Self-Hosted (coming soon)

Self-hosting coming soon. Deploy on your own infrastructure with Docker. Full control over your data and no usage limits.

  • Complete data ownership
  • No subscriber limits
  • Free forever (MIT license)

Next Steps