跳到主要内容

微软应用商店支付接入指南

本文档详细介绍了在 Microsoft Store 中接入应用内购买(In-App Purchase)的完整流程,涵盖账户注册验证、MSIX 打包、支付 API 接入、测试及上架等环节。

支付流程概览

微软支付流程总览

并行操作提示

账户层面的公司验证税务系统验证可以同步进行;技术层面的 MSIX 打包也可同步推进,无需等待账户验证完成。


微软账户模块

公司验证

注册开发者账户

前往 Microsoft Store 开发者注册页面 进行注册:

Microsoft Store 开发者注册页面

相关参考文档:

注册页面指南

注册页面指南 - 基本信息

注册页面指南 - 详细配置

注册注意事项
  • 浏览器推荐使用 EdgeChrome
  • 注册发布者名称应与公司名称一致,否则后续需提供名称与公司之间的所属关系证明
  • 注册地址应与公司主体一致
  • 批准人、联系人、联系方式的邮箱后缀域名应与公司有所属关系,后续需提供域名证明

账户验证状态无变化时

如果账户验证状态长时间无变化,可在后台查看 AI 助手指引,或联系支持人员:


税务系统验证

参考文档:税务系统验证操作指南

税务设置概览

操作步骤

  1. 登录 合作伙伴中心
  2. 点击 【设置】【付款和税务】

合作伙伴中心设置入口

付款和税务配置页面

税务信息填写

税务表单提交

税务验证完成


应用准备

重要提示

微软支付不支持 Win32 应用,应用必须是 MSIXUWP 格式才能接入 Microsoft Store 支付系统。

MSIX 打包概述

MSIX 格式打包官方文档:使用 MSIX 打包工具创建应用包

MSIX 打包工具文档

MSIX 打包详细说明

方式一:使用 Visual Studio 2022 打包

适用于使用 VS 2022 进行开发的应用,可直接通过 IDE 搜索打包程序进行打包。

第一步:检查 VS 2022 依赖

确保 VS 2022 已安装所需的依赖组件(企业版一般默认已安装)。关键依赖包括:

  • Microsoft Visual C++ 2022
  • ASP.NET and Web Tools
  • NuGet 包管理器
  • TypeScript Tools
提示

可通过 VS 2022 的 帮助关于 Microsoft Visual Studio 查看已安装组件的完整列表。

第二步:创建打包项目

在搜索框中输入"打包",VS 将筛选出专门用于打包的项目模板,选择适合自己的项目即可。

VS 搜索打包项目模板

选择打包项目

第三步:关联微软应用商店

为上架 Microsoft Store 做准备,需要将项目与应用商店关联。

关联应用商店 - 入口

关联应用商店 - 登录

关联应用商店 - 选择应用

账号信息说明
  • 登录账号必须是全局管理员或其他权限较高的角色(可在 Microsoft 合作伙伴中心 设置)
  • 账号最好使用工作邮箱
登录失败/获取应用失败

一般是网络问题,可尝试以下方式解决:

  • 更改网络连接
  • 使用科学上网
  • 更换 DNS(如 8.8.8.8

关联应用商店 - 确认

关联应用商店 - 配置

关联应用商店 - 完成

关联说明
  • 理论上可以通过配置打包模块的信息来关联 Microsoft Store
  • 接入微软支付必须先关联 Microsoft Store,且应用必须先上架应用商店

第四步:生成安装包

使用正常流程 生成/重新生成 即可生成安装包。

生成安装包

打包说明
  • 打包/重新打包会在 Debug/Release 目录生成适用于 Microsoft Store 上传的包
  • 参考:UWP 打包官方文档

方式二:基于现有 EXE 创建 MSIX 应用包

适用于已有 EXE 安装包的应用,使用 MSIX 打包工具(MSIX Packaging Tool) 进行转换。

第一步:打开 MSIX 打包工具

打开"MSIX 打包工具",进入首页,选择 "创建应用包(Create App Package)"

MSIX 打包工具首页

第二步:选择打包方式

可选择以下三种打包方式:

  • 从当前计算机创建
  • 从远程计算机创建
  • 从本地虚拟计算机创建

选择打包方式

第三步:系统准备

工具将自动完成以下准备工作:

  • 安装 MSIX 打包工具驱动
  • 临时关闭系统更新
  • 为重启系统做准备
  • (可选)关闭系统搜索功能

系统准备界面

第四步:选择安装包与签名

选择已有安装包文件(如果没有可不填),设置静默安装参数,并选择签名方式。

选择安装包与签名配置

签名建议

建议对 MSIX 包进行签名,否则后续安装时会被提示"不受信任"。

第五步:填写包信息

包信息需要先在 Partner Center 后台进行名称注册,后台会生成一个 【产品标识】,按照生成的信息进行填写。

Partner Center 产品标识

设置安装目录(告诉打包工具需要监控哪个目录的变更情况),通常填写程序包默认安装目录,如 C:\Program Files\

可视情况勾选是否向下兼容(覆盖对 Win10 v1709 更早系统的支持)。

填写包信息与安装目录

第六步:执行安装

等待 Next 按钮被点亮,即表示安装完成。

执行安装 - 进行中

执行安装 - 完成


应用内购买配置

接入支付 API

配置应用内购买的 API(MSIX 格式可以复用 UWP 的 Store SDK API)。

官方 Demo 下载:

官方 Demo 下载页面

基于 C++ 接口的文档也在此链接下方:

C++ 接口文档

需要配置软件套餐的产品信息时,参考文档:为应用启用订阅加载项

订阅加载项文档

配置包年包月等多项付费

  1. 进入 合作伙伴中心 后台
  2. 创建新的加载项

创建新的加载项

  1. 选择 订阅 类型,填写相关信息

选择订阅类型

签名与证书配置

由于打包时 MSIX 包的 manifest 文件中的 publisher 需与 EV 证书保持一致,而 Microsoft 合作伙伴后台中的 publisher 是自动生成的。

Publisher 信息说明

可参考以下文档使用 SignTool 对证书进行辅助验证:

SignTool 文档

加密工具集文档


应用内购买测试指南

参考文档:应用内购买和试用 - UWP applications | Microsoft Learn

应用内购买和试用文档


常见问题(FAQ)

1. 如何配置包年包月等软件套餐?
2. 如何测试应用内购买功能?
前提条件

测试功能需要应用上架后才能进行(可设置为商店内不可见)。

参考文档:应用内购买和试用 - 测试

应用内购买测试说明

3. 如何获知用户购买了会员?(Webhook 回调)

获取用户唯一标识符

可使用 StoreContext.UserId 并结合其他信息生成用户唯一标识。

参考文档:获取当前用户信息

获取用户信息文档

服务端注册回调接口(Webhook)

注意

Webhook 是匿名触发的,不包含用户信息,需要结合其他方式关联用户。

参考文档:

Partner Center Webhooks 文档

从服务查看和授予产品文档

4. 如何接入微软用户体系?

参考文档:身份验证流和应用程序方案

针对无 Azure AD 的普通用户:

  • 可通过 OAuth 获取 Microsoft 账户的 suboid 作为全局唯一 ID,但需要用户授权登录
  • 只能通过 OAuth 弹窗让用户登录其系统账号,记录并提示一致性
  • 走正常的 OAuth/MSAL 登录流程,拿到用户 oidsub,再作为后端或本地存储的用户标识

OAuth/MSAL 登录流程