Skip to content

Search the documentation by title, section, or page text.

Migrate to Botsi

Migrating means pointing your subscription logic at the Botsi API, pointing store notifications at Botsi, and optionally importing your subscription history. Three steps, and only the first two are required.

Active subscribers need no manual migration

Every user with an active or previously active subscription transitions on their own. Once your integration is calling the Botsi API, their subscription status is verified and premium access resumes.

There is nothing to run against your existing user base, and no window where paying users lose access.

Step 1: Integrate the Botsi API#

Wire your app to the Botsi API. See the AI Pricing Model Setup for the dashboard setup and the AI Pricing Model API for the call sequence.

Then replace your legacy subscription logic with the Botsi equivalents:

  • Access checks for premium content, against the Access Levels on a Profile
  • Purchase initiation, through the store's own billing
  • Purchase restoration
  • Managing and syncing user data, through Create a Profile and custom attributes

Step 2: Configure server notification endpoints#

Apple and Google deliver renewals, cancellations, refunds, and pauses through server notifications. Point them at Botsi. See App Store Server Notifications.

Botsi can technically run without them, which is exactly why this step gets skipped. Without them:

  • Third-party integration events are delayed.
  • Analytics has no real-time updates.
  • A/B test data for Paywalls may be inaccurate.

You can keep your existing system running alongside

Event forwarding sends subscription data through Botsi and on into your legacy backend, so you do not have to cut over both systems at once.

See App Store Server Notifications for forwarding from another platform or from your own middleware.

Step 3: Import subscription history#

Optional, but it decides whether your analytics are useful on day one or in six months.

Immediate analytics accuracy. Botsi matches users on original transaction IDs. Without an import, it only knows what arrives by webhook from now on, so every historical cohort, LTV curve, and retention chart starts empty.

Enriched profiles. Your segments and analytics include prior subscription history and properties straight away.

To import, send a CSV export from your existing system to Botsi support, following the reference file format they provide.