App Types — Embedded vs Off-Platform
App Types — Embedded vs Off-Platform
App Types — Embedded vs Off-Platform
Every Fanvue app is either embedded or off-platform. This choice shapes where your app appears for creators (and their fans), what rules apply to it, and whether it must be listed on the App Store.
Embedded apps run inside Fanvue’s UI. They’re rendered in iframes on one or more app surfaces — predefined locations where Fanvue allows third-party UI.
For each surface your app uses, you provide:
sandbox attribute values) the surface needs in order to function.Iframe sandbox permissions should be the minimum required for your app to function. Over-permissive configurations are a common reason apps are rejected during review. If your surface doesn’t need allow-top-navigation, allow-popups, or allow-same-origin, don’t request them.
Off-platform apps run outside Fanvue’s UI — on your own domain, as a desktop app, CLI tool, mobile app, or any other standalone experience. They use the Fanvue API via OAuth, but creators interact with them somewhere other than Fanvue itself.
Two connected rules govern how app type, App Store listing, and Fanvue payment rails interact:
Fanvue payment rails are available only to embedded apps on the App Store; any paid app on the App Store must use them.
Taken together, these rules mean that off-platform apps listed on the App Store must be free: they can’t use Fanvue payment rails (because they aren’t embedded), and they can’t use any other processor (because listed apps must use Fanvue rails).
Both public App Store listings and Fanvue payment rails are still rolling out. Today you can submit any type of app for pre-approval — the rules above govern review decisions now, so your submission should already comply. Approved apps will appear on the App Store and (if applicable) be able to charge through Fanvue once those pieces launch. Off-platform apps are unaffected.
Every valid plan fits one of these rows. Anything not on this list is ruled out by the rules above.
A quick decision guide: