Skip to main content
When a user taps a purchase or restore button on a No-Code screen, the SDK shows a native loading spinner until the store finishes processing the payment and Qonversion validates the receipt. The Purchase Loader lets you replace that default spinner with your own — a styled spinner or a Lottie animation — configured entirely in the Builder, so the loading state matches your paywall’s design.
The Purchase Loader is off by default. When it’s off, nothing changes — the SDK keeps showing its standard native loader.

Enabling the Purchase Loader

  1. Open your screen in the Builder and go to Settings → General.
  2. Find the Purchase loader card and turn on Use a custom purchase loader.
  3. Pick a loader type — Spinner or Lottie animation — and style it.
The loader is shown as an overlay on top of the screen for the entire purchase window: from the moment the purchase starts, through store processing, until entitlements are returned (or the purchase fails).

Loader types

Spinner

A lightweight, built-in animated spinner. You can set:
  • Color — the spinner’s accent color.
  • Spinner style — choose between Ring, Dots, or Bars.
A live Preview shows exactly how it will look on the screen.

Lottie animation

Use your own Lottie animation for a fully branded loader.
  • Click Select or upload to pick an animation from your project’s asset gallery, upload a .json / .lottie file, or paste a link.
  • Speed — play the animation faster or slower (0.1×–3×).
  • Loop animation — repeat the animation for as long as the purchase is processing (recommended, since processing time varies).
A Preview renders the animation with your chosen speed and background.

Background color

Both loader types are shown over a full-screen backdrop. Set the Background color (with transparency) to dim or hide the screen behind the loader while the purchase is in progress.

SDK version requirement

The custom Purchase Loader requires Qonversion iOS SDK 6.13.0+ or Android NoCodes 1.10.0+.On older SDK versions the app’s native loader is shown on top of your custom one (a double loader), because the SDK doesn’t yet know the screen renders its own. Users on the current SDK see only your custom loader. Make sure your app ships a supported SDK version before relying on this feature.

Good to know

  • The system payment sheet still covers the loader while it’s up. During the native Apple/Google payment confirmation sheet, the OS renders on top of everything — your loader (like the default one) is hidden behind it. It becomes visible again during the post-sheet receipt-validation window, which is where a branded loader adds the most value (this can range from under a second to several seconds on a slow network).
  • Republish to apply changes. The loader is baked into the published screen. After changing its settings, publish the screen so devices pick up the new loader.
Keep Lottie loaders short and set to loop — the purchase-processing time isn’t fixed, so a looping animation reads better than a one-shot one that finishes mid-wait.