Public-widget checklist
Account and app
- Developer status is
active, and the account owner performs publication actions. - The permanent app code is claimed and matches the identity used in your deployment.
client_id, secret and API key were copied into a secret store; none are committed or bundled.required_permissionscontains only what the integration uses.- Install, revoke and webhook URLs are public HTTPS endpoints.
Marketplace card
- Every selected language has a name and clear pre-install description.
- Post-install text explains configuration and support, and uses only supported placeholders.
- Privacy-policy and support links are public and tested.
- Pricing and payment responsibility are clear.
- 400×272, 108×108 and gallery artwork is readable in every published language.
Widget package
manifest.jsonandscript.jsare at the ZIP root.- Each manifest language has
i18n/<lang>.json. - Only used surfaces and exact network origins are declared.
- Every optional
left_menutitle_keyexists in the default-language bundle (ideally in all). - No secret, test customer data, source map, nested archive, debug-only code or unused asset is included.
- Upload validation reports
ok: truefor the exact archive being submitted.
Real testing
- The version was previewed or saved locally in the developer tenant.
- Every declared surface, settings flow and teardown path was exercised.
- Install, uninstall and reinstall callbacks were verified.
- Consent shows the expected permissions and destinations.
- Remote-service failures are understandable and fail closed.
- Webhook signatures use the raw body and handlers tolerate duplicate, missed and out-of-order delivery.
Moderation and publication
- No sibling release is already
queuedortesting. - Release notes identify what changed and provide a reproducible test path.
- The widget release is submitted and moderator-approved.
- The app card is submitted separately and approved.
- A second tenant can find, install and consent to the published version.
- The version loaded after publication is the same version that was reviewed.
This checklist follows the same private-test → archive → moderation → publish discipline as the amoCRM public-widget requirements, but every item above is stated in Bito terms.