leftovers Reviewed-on: #5 Co-authored-by: Aleksandr Neychev <alexnejchev73@gmail.com>
28 KiB
Публикация в Microsoft Store
Инструкция с нуля: от регистрации разработчика до отправки пакета на проверку. Документ существует только на русском — переводить его не нужно.
Ссылки на первоисточники стоят по ходу текста, сводный список — в конце. Правила Store меняются, поэтому перед подачей стоит сверяться с ними, а не с пересказом здесь: этот документ отражает положение дел на август 2026 года.
1. Аккаунт разработчика
С 2026 года регистрация бесплатна для обоих типов аккаунта. Прежние взносы ($19 и $99) отменены — объявление для компаний, объявление для частных лиц. Новостные заметки за 2025 год, где у Company ещё указан взнос $99, устарели.
Начинать нужно с https://storedeveloper.microsoft.com — это единственный вход в бесплатный процесс регистрации. Если зайти через Partner Center, Visual Studio или Xbox, откроется старый порядок со взносом.
Какой тип выбрать
Критерии обоих типов и порядок регистрации — «Открытие аккаунта разработчика».
| Individual | Company | |
|---|---|---|
| Кому | частное лицо, хобби, некоммерческие проекты | ИП, ТОО, организация — всё, что связано с предпринимательской деятельностью |
| Имя издателя в Store | ваше имя | название организации |
| Вход | только личный аккаунт Microsoft | личный аккаунт или рабочий Microsoft Entra ID |
| Проверка | документ с фотографией и селфи | D-U-N-S или уставные документы плюс рабочая почта на домене организации |
| Срок | минуты, если снимки читаемые | от минут до 2–5 рабочих дней при ручной проверке |
Company доступен только тем, у кого уже есть зарегистрированное юридическое лицо или ИП: проверка требует либо номера D-U-N-S, либо регистрационных документов. Без них остаётся Individual, и для личного бесплатного приложения этого достаточно.
Три вещи после регистрации не меняются — тип аккаунта, страна и имя издателя (FAQ по управлению аккаунтом). Что с этим делать при отсутствии компании и планах на платный продукт, разобрано в разделе 9.
Что подготовить
Для Individual: удостоверение личности или паспорт (оригинал, не копия) и телефон с камерой — снимок документа и селфи делаются на мобильном.
Для Company:
- номер D-U-N-S, если он есть — тогда данные подтянутся автоматически и проверка пройдёт быстрее. Иначе понадобится справка о регистрации, устав или выписка из государственного реестра;
- почта на домене организации. Gmail и подобные не принимаются; если домен почты не совпадает с доменом организации, попросят подтвердить владение доменом — счётом от регистратора или записью из реестра доменов.
На каждый вид проверки даётся не более трёх попыток, поэтому данные лучше перепроверить до отправки. Ответить на запрос документов нужно в течение 30 дней.
Налоги и выплаты
Приложение бесплатное, встроенных покупок и рекламы нет — значит платёжный профиль и налоговые формы не нужны (FAQ по управлению аккаунтом). Они потребуются, только если появятся платные функции, — тогда см. раздел 8.
После создания аккаунта данные расходятся по Partner Center до получаса. Если раздел «Apps & Games» не появился сразу — подождать и обновить страницу.
2. Резервирование имени
Partner Center → Apps and games → New product → MSIX or PWA app. Ввести имя, нажать Check availability, затем Reserve product name.
Подробности — «Резервирование имени приложения MSIX» и «Управление резервированием имён».
Имя можно занять за три месяца до публикации, даже если приложение ещё не
готово. Стоит сразу занять запасные написания — например CursorLang и
Cursor Lang.
3. Данные пакета
После резервирования: Product management → Product identity. На странице будут три значения:
| Значение в Partner Center | Куда подставить |
|---|---|
| Package/Identity/Name | параметр -IdentityName |
| Package/Identity/Publisher | параметр -Publisher, вида CN= и длинный идентификатор |
| Package/Properties/PublisherDisplayName | параметр -PublisherDisplayName |
Эти значения должны совпадать с манифестом пакета до символа. Расхождение даёт при загрузке невнятную ошибку, которая не называет поле, — поэтому копировать их нужно буквально, а не набирать руками. Разбор таких ошибок — «Устранение ошибок отправки MSIX».
В сборочном конвейере эти значения лежат в переменных репозитория
MSIX_IDENTITY_NAME, MSIX_PUBLISHER и MSIX_PUBLISHER_DISPLAY_NAME. Это
переменные, а не секреты: identity виден в любом опубликованном пакете, а
маскирование в логах только мешало бы разбирать ошибки сборки.
4. Сборка пакета
pwsh -File Packaging\build-msix.ps1 `
-Version 1.0.0.0 `
-IdentityName "<Package/Identity/Name>" `
-Publisher "<Package/Identity/Publisher>" `
-PublisherDisplayName "<PublisherDisplayName>"
Получится artifacts\packages\CursorLang-1.0.0.0-x64.msix. Загружать его нужно
без подписи: Store подписывает пакет своим сертификатом.
Версия при каждой следующей отправке должна расти, а последнее число всегда остаётся нулём.
5. Заявка
Product release → Start submission. Разделы можно заполнять в любом порядке. Полный перечень полей с пометками обязательности — «Создание заявки для приложения MSIX».
Pricing and availability
Обязательны рынки, аудитория, обнаружимость, расписание и цена. Всё, кроме цены, имеет разумные значения по умолчанию — цену выставить Free (подробности о ценах и доступности).
Properties
- Category — обязательна. Подходит Productivity либо Utilities & tools.
- Privacy policy URL — обязателен, только если приложение собирает или передаёт персональные данные. CursorLang не собирает ничего: настройки лежат в папке приложения, наружу ничего не уходит. Поле можно оставить пустым, но безопаснее выложить короткую страницу с фразой о том, что данные не собираются, — это снимает вопросы у проверяющих.
- Contact details — обязательны для аккаунта Company.
Age ratings
Обязательна вся анкета. Приложение не игровое, ничего не собирает — ответы однозначные, рейтинг присвоится автоматически.
Packages
Загрузить .msix. Раздел остаётся «Incomplete», пока не заполнены все
обязательные поля, даже если сам пакет уже помечен как «Validated».
Store listings
Хотя бы для одного языка. Стоит заполнить и английский, и русский — приложение переведено на оба. Основным лучше сделать английский: он работает как запасной вариант для рынков, где отдельного перевода нет.
Обязательны описание и минимум один снимок экрана (рекомендуется четыре и больше). Снимки: PNG, от 1366×768. Показать стоит окно настроек и саму подсказку у курсора — вторую снять сложнее, поможет отложенный снимок экрана.
Submission options
-
Restricted capabilities — заполнить обязательно, потому что пакет объявляет
runFullTrust. Для обычной программы рабочего стола это подтверждается без разбирательств; в обосновании достаточно написать, что приложение — обычная программа Windows, а не UWP. -
Notes for certification — не обязательно, но здесь лучше не молчать. Приложение ставит низкоуровневый перехватчик клавиатуры, и без объяснений это выглядит подозрительно. Стоит написать примерно так:
The app installs a WH_KEYBOARD_LL hook to offer an optional Caps Lock shortcut that switches the keyboard layout instead of toggling case. The hook only inspects the Caps Lock key, is off by default, and is enabled by the user in the app's settings. No keystrokes are recorded, stored or transmitted anywhere.
Затем Submit for certification.
6. Чего ждать от проверки
Проверка занимает обычно от нескольких часов до трёх дней. Проверяющие смотрят сам пакет, а не исходники: ссылка на репозиторий им не нужна и, скорее всего, останется без внимания. Всё, что важно донести, идёт в Notes for certification.
Слабые места именно этого приложения:
- Перехватчик клавиатуры. Главный повод для вопросов. Снимается пояснением в Notes for certification и тем, что настройка выключена по умолчанию.
- Права администратора. Их больше нет — ни в манифесте, ни в поведении.
Возможности
allowElevationв пакете тоже нет. Возвращать их нельзя: «приложения, которым права администратора нужны хоть для какой-то части работы, в Store не принимаются» — «Подготовка к упаковке». - Чистое удаление. Настройки упакованной версии лежат в папке данных пакета и уходят вместе с ним — это проверено.
Общие требования, по которым идёт проверка, — правила Microsoft Store.
7. Обновления
Порядок тот же, короче: поднять версию, собрать пакет теми же значениями identity, создать новую заявку, загрузить пакет. Имя резервировать заново не нужно.
8. Если приложение будет платным
Раздел на будущее: для CursorLang ничего из этого не нужно.
Нужен ли для этого Company
Не обязательно. Платёжный профиль доступен обоим типам аккаунта, и запрета продавать с Individual в документации нет (FAQ по управлению аккаунтом). Критерий Individual против Company описывает характер деятельности (типы аккаунтов), а не техническую возможность брать деньги.
Практический вывод: заводить ИП ради требований Microsoft не нужно. Оно скорее понадобится по местному праву — чтобы легально оформлять регулярный доход из-за рубежа. Это вопрос к бухгалтеру, а не к Partner Center.
Если всё же понадобится именно Company, помните: сменить тип у существующего аккаунта нельзя, придётся заводить второй, а уже опубликованные приложения в него штатно не переедут — см. раздел 9.
Платёжный и налоговый профиль
Account settings → Payout and tax profile (порядок настройки). Без них платное приложение не отправить на проверку. Понадобятся банковский счёт и налоговая форма: для тех, кто не платит налоги в США, это W-8BEN (частное лицо) или W-8BEN-E (организация) (налоговые сведения, налоговые обязанности).
Между Казахстаном и США действует соглашение об избежании двойного налогообложения, поэтому удержание с продаж в США ниже базовых 30%. Точную ставку показывают при заполнении формы — гадать заранее не нужно.
Выплаты в Казахстан
Поддерживаются. По таблице выплат по регионам для Казахстана доступны и Microsoft Store, и PayPal.
| Порог выплаты | 50 USD — ниже суммы накапливаются |
| PayPal | около одного рабочего дня |
| ACH/SEPA | два–три рабочих дня |
| Банковский перевод | семь–десять рабочих дней |
Доля Microsoft
По действующим условиям — 15% с продаж приложений и 12% с игр; для неигровых приложений можно подключить собственную платёжную систему и оставлять себе всю выручку. Эти цифры широко приводятся в отраслевых публикациях, но отдельной страницы с ними в документации нет: обязывающий документ — соглашение разработчика приложений, и сверяться нужно с его действующей редакцией.
Что меняется в самом приложении
Почти ничего. Store выдаёт лицензию при покупке и без неё приложение не
устанавливает, так что проверка в коде не обязательна. При желании лицензию
читают через Windows.Services.Store. Пробный период включается в
Partner Center и правок в коде не требует.
Рынки
Для платного приложения список стран стоит выбрать осознанно, а не оставлять «все»: где-то автоматически пересчитанная цена окажется неуместной, где-то появятся местные налоговые обязанности.
9. Регистрация из Казахстана
Раздел для случая, когда разработчик живёт и платит налоги в Казахстане, а гражданство у него другое. Юридических советов здесь нет — только то, что касается устройства Partner Center.
Страна аккаунта важнее гражданства
Microsoft смотрит на страну проживания и налогового резидентства, а не на паспорт. Страна указывается при регистрации и после неё не меняется (FAQ по управлению аккаунтом); штатного способа исправить её нет, остаётся обращение в поддержку без гарантии результата.
Разница между Казахстаном и Россией существенная и необратимая:
| Казахстан | Россия | |
|---|---|---|
| Выплаты Microsoft Store | да | да, но PayPal помечен как приостановленный |
| Налоговое соглашение с США | действует, предел по роялти 10% | приостановлено с 16 августа 2024 |
| Удержание в США | 10% при поданной форме W-8BEN | 30%, льготные ставки не применяются |
Данные о выплатах — из таблицы выплат по регионам, налоговые — из перечня действующих соглашений США.
Документ и автозаполнение профиля
Регистрация Individual идёт через снимок документа и селфи, после чего профиль заполняется данными из документа. Отсюда практическое правило: если есть казахстанский документ — вид на жительство или удостоверение личности, — верифицироваться лучше по нему. Если под рукой только иностранный паспорт, страну и адрес нужно проверить и при необходимости исправить на казахстанские до подтверждения профиля.
Имя издателя задаётся один раз
Publisher display name — то, что видят пользователи в карточке приложения, — тоже не меняется после регистрации. Если в Store должно значиться название бренда, а не ФИО, это задаётся на шаге заполнения профиля. Переименование потом — только через поддержку, с вероятным ответом «заводите новый аккаунт».
Приложения между аккаунтами не переносятся
Штатной процедуры передачи приложения из одного аккаунта в другой в Partner Center нет. Значит, если позже завести отдельный Company-аккаунт под платный продукт, ранее опубликованное бесплатное приложение останется на первом.
Для бесплатной утилиты это не проблема: она продолжит работать и обновляться там, где опубликована. Но переиграть решение задним числом не выйдет, поэтому выбор имени издателя и страны стоит сделать вдумчиво с первого раза.
Порядок действий
- Начать с https://storedeveloper.microsoft.com — иначе откроется старый платный процесс.
- Выбрать Individual, если зарегистрированного юридического лица или ИП нет.
- Верифицироваться по казахстанскому документу, если он есть.
- Проверить, что страна в профиле — Казахстан, а адрес казахстанский.
- Проверить имя издателя: оно останется навсегда.
- Платёжный и налоговый профиль пропустить — для бесплатного приложения он не нужен.
Когда дойдёт до платного приложения, добавится форма W-8BEN с указанием Казахстана как страны налогового резидентства и ИИН в поле иностранного налогового номера. Сертификат налогового резидентства РК Microsoft не запрашивает, но он подтверждает право на ставку 10%, если вопрос возникнет.
Источники
- Открытие аккаунта разработчика
- Типы аккаунтов разработчика
- Бесплатная регистрация для компаний
- Бесплатная регистрация для частных лиц
- FAQ по управлению аккаунтом
- Резервирование имени приложения MSIX
- Управление резервированием имён
- Создание заявки для приложения MSIX
- Цены и доступность
- Устранение ошибок отправки MSIX
- Подготовка к упаковке программы рабочего стола
- Правила Microsoft Store
- Настройка платёжного и налогового профиля
- Выплаты по регионам
- Налоговые сведения
- Налоговые обязанности
- Соглашение разработчика приложений
- API лицензий и покупок Windows.Services.Store
- Форма W-8BEN, IRS
- Действующие налоговые соглашения США, IRS
- Соглашение США — Казахстан, IRS
- Соглашение США — Россия и его приостановка, IRS