关于SP-API及卖家账号访问权限的技术咨询
亚马逊SP-API私有应用多店铺集成解决方案
1. 无需将私有应用转为公开应用
私有应用专为同一商业实体下的多店铺集成设计,完全满足企业内部库存、价格同步及订单拉取的需求。公开应用是为服务外部第三方卖家设计的,转公开会增加审核复杂度和不必要的权限风险,完全没必要。
2. 正确操作流程(核心步骤)
前提确认
确保你的开发者账户与企业所有卖家中心店铺属于同一亚马逊商业实体(注册信息、企业主体一致),这是私有应用授权的必要条件。
步骤1:获取开发者ID
登录亚马逊开发者控制台,在【账户信息】中找到你的开发者ID并记录。
步骤2:卖家中心主账户授权
由企业卖家中心的主账户(或拥有「管理员」权限的账户)操作:
- 进入卖家中心,点击顶部【设置】>【用户权限】>【第三方开发者和应用程序】
- 选择【授权新的开发者】,输入你记录的开发者ID
- 在权限选择界面,勾选业务所需的API权限组:
- 订单拉取:
OrdersReadOnly、OrdersV0 - 库存同步:
Inventory - 价格同步:
ProductPricing
- 订单拉取:
- 完成授权后,复制保存系统生成的刷新令牌(Refresh Token)。
步骤3:调用SP-API时关联店铺
在代码中结合以下凭证调用对应API:
- IAM用户的
Access Key ID和Secret Access Key(已配置) - 私有应用的LWA客户端ID、客户端密钥(开发者控制台应用详情中获取)
- 上述步骤获取的刷新令牌
- 目标店铺的
Seller ID(卖家中心店铺设置中可查看)
调用逻辑示例(伪代码):
# 通过LWA获取访问令牌 def get_access_token(client_id, client_secret, refresh_token): # 调用LWA接口生成access_token pass # 拉取订单数据 def fetch_orders(access_token, seller_id): api_url = f"https://sellingpartnerapi-na.amazon.com/orders/v0/orders" request_headers = { "x-amz-access-token": access_token, "x-amz-seller-id": seller_id } # 发起请求并处理返回结果 pass
3. 私有应用场景下开发者账户的作用
- 作为SP-API的管理载体:负责创建私有应用、申请API权限、管理应用的LWA凭证,是连接IAM账户与卖家中心店铺的中间层
- 统一管控多店铺授权:所有企业店铺的授权都绑定到该开发者账户的私有应用下,无需为每个店铺单独创建应用
- 合规与权限管控:可精准申请业务必需的API权限,符合亚马逊最小权限原则,降低合规风险
4. 常见误区纠正
- 开发者账户无需拥有商品/订单数据:开发者账户是工具账户,SP-API返回的数据来自被授权的卖家中心店铺,自身不需要任何业务数据
- 无需由主用户创建应用客户端:应用由开发者账户创建,主用户仅需完成授权操作,将店铺数据权限开放给私有应用即可
内容的提问来源于stack exchange,提问作者Jason Gray
相关产品推荐
相关产品推荐

