
Before you submit to the Theme Market: a complete checklist and a manual merchants can follow
What Zid reviews in a public theme, the technical and listing checks to run before submitting, required template updates, and how to write a clear theme manual.
What the review looks for
A public theme is listed on the Theme Market for every merchant, so it goes through Zid's review before publication. According to Create & Update Your Public Theme, the team reviews new themes for essential features, flexibility, resilience and performance, and the review takes up to 2 days. A theme that meets the requirements is considered for approval; one that lacks requirements or needs major changes is rejected.
The Theme Type and Appearance article adds that public themes should follow Zid's theme guidelines, including design specs, accessibility, responsiveness and feature completeness, and that they require ongoing support from you to ensure quality and compatibility.
Technical checks before you package
Most of these come from the Theme Development guidelines in the docs and from the Vitrin changelog:
- Every template extends
layout.jinja, and the layout includes{% vitrin_head %}and{% vitrin_body %}. - Open your preview link with
/validateadded and fix everything the Theme Test tool reports. - Since December 2025, undefined-variable errors are shown in the development preview. Add fallbacks, handle optional values and use
safegetwhere needed. - Generate links with
url_forinstead of hardcoding paths./pnow redirects to/productsand/cto/categories, and the changelog warns that hardcoded URLs may break if routes change again. - Don't render your own error UI for server responses. Server error messages are handled by the SDK.
- Keep the template context within platform size limits. Large contexts slow rendering and increase bandwidth usage.
- Check that your
.pofiles compile withmsgfmt --checkbefore uploading. Don't upload the generated.mofile; it's ignored.
# Preview link
https://my-preview?theme={themeId}
# Validation report
https://my-preview/validate?theme={themeId}Required template updates from the Vitrin changelog
Several Vitrin changelog entries are tagged Action Required or state that theme developers are required to apply the change. Go through them before submitting, especially if you started from an older copy of a sample theme:
- Bank Discounts (August 20, 2026): add the shared template to both the product details and cart pages. Without it, Bank Discounts configured by merchants won't appear there. No checkout changes are required.
- Apple Pay Quick Checkout (December 11, 2025): update your theme to use the new template to prevent checkout issues.
- Multi-inventory and the region & language modal (December 23, 2025): required for compatibility and should also be applied to previously released themes. The changelog notes that QA test cases will cover it.
- Grouped products (December 16, 2025, tagged Performance but the entry says the change is required): replace the old Twig
{{ template_for_product_grouped }}with the new Jinja include.
{# product.jinja and cart.jinja #}
{% include 'vitrin:shared/bank_discounts.jinja' %}
{% include 'vitrin:checkout/apple-pay-quick-checkout.jinja' %}
{# product.jinja #}
{% include 'vitrin:products/grouped-product.jinja' %}
{# layout.jinja #}
{% include 'vitrin:shared/region_settings_dialog.jinja' %}Also respect the merchant's Show coupon code field setting: render the whole coupon section only when store.settings.checkout.is_coupon_form_enabled != false, on every cart surface (cart page, cart drawer, mini cart, checkout popup). The checklist in the docs asks you to test true, false, null and a missing value.
Listing and account: the final checklist
The Publish Your Theme article lists the tasks that must be complete before you submit your theme for review:
- Theme created and uploaded.
- Theme tested in a development store.
- Images and details added.
- Maintainer email provided.
- Support plan defined.
- Payment details entered.
- Images: 3 to 9. Desktop at 4:3, between 800×600 and 1600×1200. Mobile at 9:16, between 360×640 and 720×1280.
- Support: email is required; a ticket portal or support website is optional. Set them in the General Data tab or describe them clearly in your listing.
- Payment details: theme payouts are generated on the 6th of each month under Payments, then Payouts, then the Themes tab, and you won't receive them until you upload an invoice. Have your company's legal name, CR and VAT numbers (if applicable) and IBAN ready.
Write a theme manual merchants can follow
The help centre's How to Write a Clear Theme Manual treats the manual as part of the product. The main rule: you're writing for a merchant, not a developer, so assume no technical background. If a merchant has to contact you to understand a feature, the manual has failed. It must cover:
- What the theme is and which stores it suits, then installation and activation.
- Home page customization: adding, removing and reordering sections, and each section with its options.
- Basic setup (logo, colors, fonts, menus), product and category pages, and the header and footer.
- Arabic and English setup, recommended image sizes, and mobile vs. desktop differences.
- Supported integrations, limitations and unsupported cases, troubleshooting, and your support contact with response hours.
When writing: one step per line, numbered; name things exactly as they appear in the Theme Editor; say where, then what; end with the expected result; and avoid technical terms. The article's example of a clear instruction for changing the main banner:
- Open the Theme Editor.
- Select the Main Banner section.
- Click Change image and upload your image (recommended size: 1920 × 600 px).
- Click Save. Result: your new banner appears at the top of the home page.
After you click Submit to Publish
Your theme moves from Pending to In Review, and ends as Published or Rejected with feedback. Details you'll need along the way:
- You can edit details and images while the theme is Draft or Rejected. Once it's In Review, you can't submit changes until it's Published or Rejected. If something must change during review, contact the support team.
- Save Draft lets you prepare everything without submitting, and themes in Draft or Rejected status can be deleted.
- For any concerns, raise a ticket through the help centre widget in the Partner Dashboard.
- To ship an update later: in Themes Management, click the edit icon, open the Update Theme tab, choose the change type (the version number increases based on it), upload the file, describe the changes, then Submit to Publish to send the update for review.
After publishing, merchants report issues through Report Theme in the Zid Dashboard, and Zid forwards valid tickets to you to resolve within the agreed SLA. A clear manual is what keeps those tickets few.
Key takeaways
- Review covers essential features, flexibility, resilience and performance, and takes up to 2 days.
- Clear the /validate report and undefined-variable errors, and use url_for for links.
- Apply the Action Required changelog updates and the coupon-field setting before you submit.
- Complete the final checklist: correctly sized images, maintainer email, support plan and payment details.
- Ship a bilingual, merchant-first theme manual and update it with every release.
Sources
- Publish Your Theme
- Create & Update Your Public Theme
- Theme Type and Appearance
- How to Write a Clear Theme Manual for Your Zid Theme
- Maintain Your Theme Support
- Theme Payouts
- What happens if my app or theme is rejected?
- Theme Development
- Vitrin Changelog
- Template Replacements
- Show or Hide the Coupon Code Field in a Zid Theme
Start building on Zid
Sign up in the partner portal, then build and test on a development store.


