Go-Live Checklist
Use this checklist to verify everything is configured before submitting your application for marketplace review. Complete each item in order — later items depend on earlier ones.
Organization Setup
- Organization created — Your organization exists and has a name, logo, and support email configured. (Guide)
- Provider status verified — Your organization has been approved as a provider. Check at
/developer/settings/provider-status. - Team members invited — Any teammates who need access have been invited with appropriate roles.
Application Registration
- Application registered — Your application is created at
/developer/applicationswith all required fields completed. (Guide) - Callback URL configured — Your application correctly handles the
?gwSession=<JWT>parameter at your callback URL. - JWKS endpoint accessible — Your JWKS endpoint returns valid keys and is publicly accessible over HTTPS.
SDK Integration
- SDK installed — The
@mission_sciences/provider-sdkpackage is installed in your application. (Quickstart) - SDK initialized — The SDK is initialized with your application ID and correct JWKS URI.
- Session lifecycle handled — Your app responds to
session.started,session.paused,session.resumed, andsession.endedevents. - Warning modal functional — The session expiry warning displays when time is running low.
- Session end handled gracefully — Your app shows an appropriate message and cleans up state when a session expires.
Authentication
- JWT validation working — Your application validates the session JWT signature against the JWKS endpoint. (Auth Providers)
- Claims extracted correctly — Your app reads
sessionId,userId,orgId,applicationId,tier, anddurationMinutesfrom the JWT. - Expired tokens rejected — Your app returns an appropriate error for expired or invalid tokens.
- HTTPS enforced — Your callback URL and all endpoints use HTTPS (no HTTP in production).
Testing
- Test session confirmed — You have successfully completed a full session in the development environment. (Testing)
- Session pause/resume tested — Pausing and resuming a session works correctly.
- Session extension tested — If you offer extensions, verify the extension flow works end-to-end.
- Error scenarios tested — Your app handles network failures, invalid tokens, and session conflicts gracefully.
- Multiple concurrent users tested — Your app supports multiple simultaneous sessions without interference.
Marketplace Listing
- Pricing configured — Base price, session duration, and extension pricing are set in SMART tokens. (Guide)
- Description written — A clear, accurate description of your application's capabilities.
- Screenshots uploaded — At least 3 screenshots showing real application functionality (not mockups).
- Categories and tags set — Primary category selected and relevant tags added.
- Listing previewed — You have reviewed the listing in card view and full page view.
Legal and Financial
- Provider Agreement accepted — The organization Owner has accepted the Provider Agreement. (Guide)
- Stripe Connect configured — Your Stripe account is connected and showing "Connected" status. (Guide)
- Bank account verified — Stripe has verified your bank account for payouts.
- Tax information provided — Required tax documents submitted through Stripe.
Production Readiness
- Production environment tested — Your application runs correctly in the production environment with production API keys.
- Performance acceptable — Your application loads within 3 seconds and handles session initialization without errors.
- Uptime monitoring configured — You have monitoring in place to alert you if your application goes down. Consider BetterUptime, Datadog, or a similar service.
- Status page available — A public status page where users can check service availability (optional but recommended).
- Support channel defined — Users have a way to report issues (email, in-app chat, or help desk).
- Incident response plan — Your team knows how to respond if the application goes down during active sessions.
Final Submission
Once all items above are checked:
- Navigate to
/developer/applications/[your-app]/listing. - Click Submit for Review.
- Your application enters the review queue (2-3 business days).
- Monitor your email for the review outcome.
tip
If your submission is rejected, you receive specific feedback on what to fix. Address the issues and resubmit — most rejections are resolved in a single round of feedback.
Post-Launch
After your application is approved and live on the marketplace:
- Monitor analytics at
/developer/analytics— track sessions, revenue, and user engagement. - Respond to user feedback — ratings and reviews affect your marketplace ranking.
- Keep your application updated — regular updates signal active maintenance to users.
- Watch your uptime — repeated downtime during sessions leads to refund requests and may trigger a listing review.
Quick Reference
| Step | Where | Who |
|---|---|---|
| Create organization | /settings/organizations | Anyone |
| Apply for provider | /developer/settings/provider-status | Owner |
| Register application | /developer/applications | Owner, Admin, Developer |
| Configure listing | /developer/applications/[app]/listing | Owner, Admin, Developer |
| Accept agreement | /developer/settings/provider-agreement | Owner only |
| Connect Stripe | /developer/settings/payouts | Owner, Admin |
| Submit for review | /developer/applications/[app]/listing | Owner, Admin, Developer |