Deployment
Deploy your add-on to production hosting. Any platform that serves HTTPS works.
HTTPS required
SyncBooks will NOT load add-ons over HTTP. Your Launch URL must use HTTPS in production.
Vercel (Recommended — Free)
1
Install Vercel CLI
Terminal
npm install -g vercel2
Build and deploy
Terminal
npm run build
vercel deploy --prodFollow the prompts. Your URL will be something like: https://my-addon.vercel.app
3
Connect to GitHub (auto-deploy)
Link your GitHub repo to Vercel. Every push to main auto-deploys. Every PR gets a preview URL.
Netlify
Terminal
npm run build
npx netlify deploy --prod --dir distRailway
Terminal
# Push to GitHub, then connect to Railway
railway init
railway upSelf-Hosted (Nginx)
Terminal
# Build
npm run build
# Copy dist/ to your server
scp -r dist/ user@server:/var/www/my-addon/
# Nginx config
server {
listen 443 ssl;
server_name my-addon.example.com;
root /var/www/my-addon;
index index.html;
location / {
try_files $uri $uri/ /index.html;
}
}Environment Variables
If your add-on has a backend (webhook server, external APIs), you may need env vars:
Vercel Dashboard → Settings → Environment Variables
# Example environment variables
WHATSAPP_API_KEY=sk_live_123456
WEBHOOK_SECRET=my_webhook_secret
DATABASE_URL=mongodb+srv://...Static add-ons don't need env vars
If your add-on only uses the SyncBooks SDK (no external backend), you don't need any environment variables. The SDK handles authentication via the session token.
Performance Tips
- Keep bundle size small — aim for <200KB gzipped. Users wait for your iframe to load.
- Lazy-load heavy dependencies — chart libraries, PDF generators, etc.
- Use code splitting — Vite does this automatically for dynamic imports.
- Target load time <3 seconds — slow add-ons get poor reviews.
After Deployment
Once deployed, update your add-on's Launch URL in the marketplace:
- Go to /developers → Marketplace Add-ons
- Click Edit on your add-on
- Set Launch URL to your production URL
- Save
Next Steps
- Marketplace Submission — submit for review
- Pricing & Revenue — monetize your add-on