Розробники часто стикаються з відмовою сертифікації через невірний маніфест або іконки. Помилка The package manifest is not valid у WACK — типова проблема навіть для досвідчених команд. Додамо сюди ще одну складність: застосунок повинен коректно працювати на різних архітектурах (x86, x64, ARM64) та версіях Windows 10/11. Неправильне прив'язування до конкретної збірки — часта причина провалу WACK. Ми допомагаємо пройти цей шлях за 3–5 днів — від упаковки MSIX до публікації під ключ. Замовте оцінку вашого проєкту, і ми підготуємо застосунок до релізу.
Microsoft Store підтримує три формати: упаковані MSIX (Win32), UWP та PWA. MSIX забезпечує чисте встановлення та видалення без слідів. Electron та інші кросплатформові фреймворки публікуються саме через MSIX — це дозволяє використовувати повний Win32 API без переписування на WinRT.
Формати публікації в Microsoft Store
| Формат | Аудиторія | Особливості |
|---|---|---|
| MSIX (упакований Win32) | Усі Windows 10/11 | Повний доступ до Win32 API, підтримка Electron |
| UWP | Windows 10/11 (Store) | Sandbox, обмежений доступ до файлової системи |
| PWA | Windows 10/11 (Edge) | Тільки веб-застосунки, без десктоп-функцій |
Як упакувати Electron-застосунок у MSIX?
electron-builder вміє збирати MSIX напряму. Приклад конфігурації:
# electron-builder.yml win: target: - target: nsis - target: msix icon: build/icon.ico msix: applicationId: com.company.AppName backgroundColor: "#transparent" displayName: "App Name" publisherDisplayName: "Company Name" identityName: "CompanyName.AppName" npx electron-builder --win msix Для підпису пакета необхідний сертифікат розробника від Trusted CA (DigiCert, GlobalSign) або сертифікат із Partner Center. Self-signed сертифікати не приймаються. Ми використовуємо автоматичний підпис через CSC_LINK та CSC_KEY_PASSWORD у CI.
Чому MSIX — найкращий формат для Store?
MSIX надає ізольоване середовище, гарантує коректне видалення та оновлення через Store. На відміну від UWP, MSIX-пакети можуть використовувати Win32 API, тому існуючі застосунки не потребують повної переробки. Формат сертифікується WACK, який перевіряє відповідність вимогам Microsoft. Помилки WACK — основна причина відмови, тому ми приділяємо особливу увагу попередній перевірці.
Як пройти сертифікацію WACK з першого разу?
Перед завантаженням обов'язково запустіть WACK локально:
& "C:\Program Files (x86)\Windows Kits\10\App Certification Kit\appcert.exe" ` test -apppackagepath .\AppName.msix -reportoutputpath .\report.xml WACK перевіряє: наявність валідного маніфесту, відсутність заборонених API, коректність іконок (обов'язкові Square44x44, Square150x150, StoreLogo 300x300). Перевірте Publisher у маніфесті: він має збігатися із сертифікатом. Наш досвід — 5+ років у публікації Windows-застосунків, понад 30 успішних релізів у Store. Ми гарантуємо проходження WACK з першої спроби.
Що робити, якщо WACK видає помилку?
| Помилка | Причина | Рішення |
|---|---|---|
| Невірний Publisher у маніфесті | Відрізняється від сертифіката | Використати Publisher із сертифіката |
| Відсутні обов'язкові іконки | Не всі розміри в маніфесті | Додати Square44x44, Square150x150, StoreLogo |
| Використання заборонених API | Несумісність із Store | Замінити аналогічними Win32 API |
| Перевищення розміру пакета | >10 ГБ (обмеження Store) | Оптимізувати або розділити |
Реєстрація в Partner Center
- Зареєструйте обліковий запис розробника (одноразовий внесок).
- Створіть новий застосунок: Partner Center → Apps → New product.
- Зарезервуйте ім'я та заповніть метадані: опис, скріншоти (мінімум 3, роздільна здатність від 1366×768), категорія, віковий рейтинг.
- Вкажіть цінову модель (безкоштовно або платний продукт).
Заповнення метаданих — критичний етап: невірний віковий рейтинг або неправильна категорія ведуть до відмови. Ми рекомендуємо довірити цю роботу нашим спеціалістам.
Автоматизація публікації оновлень
Використовуйте GitHub Actions із екшеном microsoft/store-submission-action. Приклад workflow:
- name: Build MSIX run: npx electron-builder --win msix env: CSC_LINK: ${{ secrets.WIN_CERTIFICATE }} CSC_KEY_PASSWORD: ${{ secrets.WIN_CERTIFICATE_PWD }} - name: Upload to Partner Center uses: microsoft/store-submission-action@v1 with: seller-id: ${{ secrets.MS_SELLER_ID }} product-id: ${{ secrets.MS_PRODUCT_ID }} package-path: dist/AppName.msix tenant-id: ${{ secrets.MS_TENANT_ID }} client-id: ${{ secrets.MS_CLIENT_ID }} client-secret: ${{ secrets.MS_CLIENT_SECRET }} Після завантаження Microsoft проводить модерацію (1–3 робочих дні). Оновлення проходять швидше — за 1–2 дні. Для GitLab CI конфігурація аналогічна — використовуйте відповідний екшен або shell-скрипт із Azure CLI.
Що входить у роботу?
- Аналіз застосунку та вибір формату (MSIX, UWP або PWA)
- Створення MSIX-пакета з коректним маніфестом та іконками
- Проходження WACK та усунення помилок
- Реєстрація в Partner Center та заповнення метаданих
- Налаштування CI/CD для автоматичної публікації (GitHub Actions, GitLab CI)
- Гарантія успішної публікації з першої спроби
Строки
Підготовка MSIX, проходження WACK та перша публікація: 3–5 робочих днів. Для складних застосунків (із драйверами, розширеннями) строк може збільшитися до 7–10 днів. Вартість розраховується індивідуально і залежить від складності проєкту.
Ми маємо багаторічний досвід, реалізували десятки проєктів із публікації застосунків у Microsoft Store. Інженери мають сертифікати Microsoft і готові вирішувати нестандартні проблеми. Отримайте консультацію — оцінимо ваш проєкт та запропонуємо оптимальний шлях.







