Issues you may hit while building a MiniApp definition before or during Karzoun review.
MiniApp not visible after approval
- Only Karzoun can set
status: 'public'— keepstatus: 'private'in your draft - Confirm approval email and correct
nsin Marketplace search - Partner-only apps may be restricted to specific tenants
Submission rejected for schema errors
- Validate required fields in document schema
- Ensure
nsis unique, lowercase, kebab-case - List every secret field in
auth.sensitiveKeys
OAuth popup does not close
- Redirect URI must be exactly
{SAAS_API_URL}/miniapps/{ns}/oauth2 - Check browser console for
postMessageerrors from the OAuth window
Actions return 401
- Verify
[[accessToken]]mapping inget_token.mapping - For OAuth, confirm
refresh_tokenconfig andauto_refresh: true - Test the same request with curl using sandbox credentials
Automations never fire
triggers[].eventmust match the string produced bywebhook.eventExtractionexactly- Register webhook URL with provider:
{SAAS_API_URL}/miniapps/{ns}/webhooks - Enable signature verification only after confirming secret resolution path
Signature verification fails
- Confirm
secretKeyresolves from credentials vsauth.config(global vs per-tenant) - Compare raw body bytes — re-serialized JSON will not match HMAC
Dropdowns empty
- Test
source.rpc_*URL manually with a valid token - Check
dataPath,valueField, andlabelFieldagainst live JSON - Provide
x-fallback: 'input'so users can paste IDs when RPC fails
Orders not appearing
- Prefer
sync.webhooks.handlersover legacywebhook.ecommerce - Handler
recordTypemust beorderorabandonedCart mapping.codemust extract a stable external ID- Include sample webhook payloads in your submission
Include in support requests:
- MiniApp
nsandversion - Redacted JSON definition
- Sample webhook payload and expected event name
- Provider sandbox account (if available)
Contact: developers@karzoun.chat or your Karzoun partner manager.