Skip to main content

Apps FAQ

Building​

Do I need a server to build an app?​

Not for a storefront app. SitePack hosts your app.json, templates, scripts and translations and renders them on the merchant's site. You only need your own server for an API integration: an app that reads or changes the merchant's data through the API or receives webhooks.

Do I need OAuth?​

Only when your app calls the SitePack API or receives webhooks. A chat button, a banner, a pixel or a tag manager needs no OAuth. See Do you need OAuth?

Can I build my own settings screen?​

You can, with settings_type: "iframe", but we recommend the SitePack settings form. It is generated from your schema, appears in the merchant's language and feels like part of SitePack. See App Settings.

Can I use React, Vue or an npm package?​

In a script, yes, as long as you bundle it into a single classic script under assets/js/ yourself. Scripts from other domains are blocked, and there is no build step on our side. Keep in mind that your script loads on every page of the merchant's site: keep it small.

Can I load a script from my own CDN?​

No. Ship your scripts inside the app, under assets/js/, so they are scanned, versioned and served from the SitePack app CDN. Do not load <script src> from your own domain in a block.

Can my template include another template?​

No. A block is one standalone template, so include and extends are not available, and neither are macros. Use set for repeated values, or render the parts as separate blocks.

Why is raw not allowed?​

Because a single merchant setting containing </script> would turn into stored XSS on their site. Use sitepack_html for rich text and sitepack_json for data in a <script> tag. See The sandbox.

Installing and testing​

How do I test my app before it is approved?​

Open the Install link from your app page in the Partner Portal while signed in to your own site, and approve the consent screen. See Try the app on your own site.

Why is there no Install button for my app?​

The Marketplace only lists apps that are Public and approved. Until then, share the Install link from the Distribution card on your app page in the Partner Portal; it opens a consent screen. A paid app without OAuth shows as unavailable in the Marketplace, so share its install link as well.

Can one merchant install my app on several sites?​

Yes. Each site is a separate install, with its own settings and, for an API integration, its own access token. A token is bound to one site.

What happens when a merchant removes my app?​

Its blocks and scripts disappear from the storefront on the next page load, its subscription is cancelled and its API access stops. Your next API call gets a 401 or 403; clean up the tokens for that site.

Publishing​

Does every update go through review?​

No. Only the first submission is reviewed. Every sitepack app:publish after that is live on all installs straight away, so test on your own site first.

Can merchants stay on an older version?​

No. All installs use your latest published version. Keep your settings schema backwards compatible: when you rename a setting, read the old key as a fallback in your template.

My review was rejected. Now what?​

The Submission History on your app page has the reviewer's notes, and you received them by email. Fix what they point out and click Resubmit for Review. There is no limit on resubmissions.

How do I take my app off the Marketplace?​

Set its Visibility to Private. After that you can also remove it under Danger Zone.

Money​

How do I charge for my app?​

Add a plan under Manage Plans: a one-time fee or a monthly subscription, optionally with a yearly price. SitePack invoices the merchant and handles the licence. Do not take payments inside your app. See Publishing & Monetization.

In which currency?​

Euro. All plans, invoices and payouts are in euros.

Still stuck?​

See Testing & Debugging, or contact SitePack support.