亚马逊SP-API入门指南:从零开始注册开发者账号

📅 发布时间:2026/7/6 4:20:25 👁️ 浏览次数:
亚马逊SP-API入门指南:从零开始注册开发者账号
1. 为什么你需要亚马逊SP-API从MWS到SP-API的进化之路如果你正在做亚马逊相关的开发或者你的公司业务和亚马逊店铺数据紧密相连那你肯定听说过或者用过亚马逊的MWSMarketplace Web Service。我刚开始接触亚马逊开发的时候用的就是MWS它确实帮我们解决了很多自动化问题比如自动同步订单、上传库存、生成报告。但说实话MWS用久了痛点也越来越多比如权限管理比较粗放安全性上总觉得差点意思而且感觉亚马逊官方对它的更新维护也没那么上心了。后来亚马逊推出了SP-API也就是Selling Partner API。我第一次听说的时候第一反应是又来一套新API是不是又要重新学一遍但深入了解之后我发现这不仅仅是“另一套API”而是一次全面的升级和换代。你可以把它理解为MWS的“现代化重构版”。亚马逊官方已经明确SP-API是未来所有新功能都会在这里发布而MWS将逐步进入维护状态不再增加新特性。所以无论你是新入局的开发者还是已经在用MWS的老手转向SP-API都是迟早的事而且越早开始越能抢占先机。SP-API带来的好处是实实在在的。首先它采用了更现代的OAuth 2.0授权流程安全性大大提升权限控制也更精细。以前用MWS一个授权密钥能访问店铺几乎所有数据风险不小。现在SP-API可以按需申请具体的数据权限比如只读订单、只管理库存这样更安全也符合数据最小化原则。其次它的API设计更规范采用了标准的RESTful风格响应格式也统一为JSON对于我们开发者来说调用和理解起来都更友好。最后它和亚马逊云服务AWS深度集成这意味着你可以利用AWS强大的基础设施来构建更稳定、可扩展的应用程序。所以这篇指南就是为你准备的不管你是想开发一个内部用的数据看板还是想做一个给多个卖家使用的SaaS工具第一步都是从注册一个SP-API开发者账号开始。别担心这个过程虽然步骤不少但跟着我一步步来避开我当初踩过的那些坑你会发现其实没那么复杂。咱们的目标很明确用最清晰的方式带你从零开始拿到那把开启亚马逊数据宝库的“钥匙”。2. 注册前的必备功课理清概念与准备材料在真正动手点击注册按钮之前花点时间把几个核心概念和需要准备的东西搞清楚能让你后面的操作顺畅不止一倍。我自己刚开始的时候就因为没搞明白在几个后台之间反复横跳浪费了不少时间。首先你得理解这里面涉及的几个“角色”和它们之间的关系。这就像玩一个游戏你得先知道有哪些NPC非玩家角色。第一个是亚马逊卖家后台这是你经营店铺的地方也是你作为“卖家”身份的大本营。第二个是亚马逊开发者后台这是你申请成为开发者、创建和管理SP-API应用程序的地方。第三个是AWS管理控制台这是亚马逊的云服务平台你需要在这里创建一些安全凭证和角色用来授权你的应用程序访问数据。简单来说流程是这样的你以卖家身份在开发者后台创建一个应用然后这个应用需要通过在AWS创建的角色获得访问你卖家后台数据的权限。那么你需要准备什么呢一个有效的亚马逊卖家账号。这是基础中的基础。你需要用这个账号登录去完成开发者注册和应用创建。确保这个账号能正常登录卖家后台并且有你要管理的店铺的完全访问权限。一张可以国际支付的信用卡或借记卡。这里主要是用于注册AWS账户时进行验证。AWS账户本身有免费套餐注册和后续我们创建IAM用户、策略等操作在免费额度内都是不收费的但亚马逊需要绑定一张卡来验证你的身份防止滥用。不用担心会被随意扣费只要你不主动开通收费服务比如EC2虚拟机就不会产生费用。一个常用的电子邮箱。用于接收各类验证邮件和通知。清晰的笔记工具。我强烈建议你新建一个文档或笔记因为接下来你会生成好几串像“arn:aws:iam::123456789012:role/YourSPAPIRole”这样的长字符串ARN还有Access Key ID和Secret Access Key。这些信息一旦生成有些只会显示一次丢了会很麻烦必须妥善保存。这里有个特别重要的点需要判断你之前是否已经注册过MWS开发者如果你之前为了使用MWS已经在卖家后台的“Apps Services” - “Develop Apps”下看到过界面并且生成过MWS的授权令牌那么你可能已经是一个“开发者”了。对于这部分朋友注册SP-API应用的流程会略有不同有些步骤可以简化。我们会在下一章具体操作时详细说明这一点。如果完全没接触过那就跟着我从最全新的流程开始走。3. 第一步完成亚马逊开发者身份注册好了材料备齐我们开始动手。第一步我们要正式成为亚马逊认可的“开发者”。这个步骤是在亚马逊的体系内完成的和AWS还没关系。首先打开浏览器登录你的亚马逊卖家后台。注意是卖家中心Seller Central不是消费者购物的那个网站。登录成功后在右上角找到“应用程序和服务”或者“Apps Services”这个菜单把鼠标放上去在下拉菜单里找到“开发应用程序”或“Develop Apps”点击它。这时你会面临两种情况情况A直接看到了一个开发者界面。这可能是一个应用列表可能是空的或者有创建应用的按钮。如果看到这个恭喜你说明你这个卖家账号已经完成了开发者注册可以直接跳到下一章第4章去创建SP-API应用了。情况B跳转到了一个注册引导页面。页面上会提示你需要注册成为开发者并可能要求你阅读并同意《亚马逊开发者协议》等法律条款。这是大多数新朋友会遇到的情况。对于情况B你需要仔细阅读相关的协议条款然后勾选同意并点击继续。接下来系统会要求你填写一份开发者资料。这里的信息需要认真填写开发者名称可以是你个人的名字也可以是公司名称。如果你将来开发的应用要上架到亚马逊应用商店供其他卖家使用这里填写的名称会对外显示。联系邮箱和电话确保填写准确亚马逊可能会通过这里的信息与你联系进行验证或发送重要通知。其他业务信息可能会询问你开发应用的目的、类型等。根据实际情况填写即可例如选择“内部使用”或“计划提供给其他卖家使用”。填写完毕后提交亚马逊通常会很快几乎是实时完成审核。完成后再次点击“Apps Services” - “Develop Apps”你就会看到情况A中的开发者界面了。这一步的核心目的就是让你的卖家账号获得“开发者”这个附加身份从而解锁创建API应用的权限。记得整个过程中如果遇到任何下拉选项或复选框如果不确定就选择最保守、最符合你当前情况的选项比如应用初期先选择“仅供自己使用”。4. 第二步创建并配置AWS账户与IAM权限拿到开发者身份后我们进入下一个核心环节配置AWS。这是SP-API安全架构的关键也是新手最容易懵的地方。别被“云服务”吓到我们只需要完成几个非常具体的操作就像在后台点几个按钮一样。### 4.1 创建AWS根账户打开AWS官网点击“创建AWS账户”。你会被要求输入邮箱、密码、账户名这个账户名是AWS根账户的名称方便你识别可以和亚马逊卖家账号不同。然后就是填写联系信息、绑定之前准备好的那张信用卡或借记卡。绑卡过程中AWS会发起一笔小额预授权大约1美元左右来验证卡片有效性这笔钱之后会退还。最后一步是身份验证通常会通过电话或短信让你输入一个验证码。完成这些你的AWS根账户就创建成功了。重要提示根账户权限极高请务必为其开启多因素认证MFA并妥善保管密码。日常操作我们不会使用根账户。### 4.2 创建IAM用户你的操作员登录AWS管理控制台在搜索框输入“IAM”并进入IAM服务。IAM是身份访问管理服务我们的原则是绝不直接用根账户干活而是创建权限受限的“子用户”。在IAM控制台左侧导航栏点击“用户”然后“创建用户”。输入一个用户名例如sp-api-developer。在“选择AWS访问类型”下务必勾选“编程访问”。这将为此用户生成访问密钥Access Key ID和Secret Access Key我们的代码调用API时需要用到它。暂时不要直接附加任何权限点击“下一步权限”。在设置权限页面选择“直接附加现有策略”。我们先不在这里附加策略后面会专门创建。直接点击“下一步标签”可以跳过标签再点“下一步审核”最后“创建用户”。最关键的一步来了创建成功后AWS会显示该用户的访问密钥ID和秘密访问密钥并且这是你唯一一次能完整看到秘密访问密钥的机会。你必须立即点击“下载.csv文件”并妥善保存到安全的地方。这组密钥相当于这个IAM用户的密码丢失后无法找回只能创建新的。我通常会把.csv文件加密存储同时把关键信息复制到密码管理器中。### 4.3 创建IAM策略定义权限规则现在我们来定义这个IAM用户能做什么。策略Policy就是一个JSON格式的权限说明书。在IAM控制台点击“策略”然后“创建策略”。选择“JSON”标签页将以下策略文档粘贴进去。这个策略授予了调用STS安全令牌服务获取临时凭证的权限这是SP-API调用所必需的。{ Version: 2012-10-17, Statement: [ { Effect: Allow, Action: sts:AssumeRole, Resource: * } ] }粘贴后点击“下一步标签”再“下一步审核”。给这个策略起个名字比如SP-API-STS-AssumeRole-Policy描述可以写“允许担任SP-API所需角色”。最后点击“创建策略”。这样一个自定义策略就做好了。### 4.4 创建IAM角色SP-API的通行证角色Role是SP-API概念中的核心。你可以把它想象成一张“通行证”你的应用程序通过IAM用户需要“扮演”这个角色才能获得访问亚马逊卖家数据的资格。在IAM控制台点击“角色”然后“创建角色”。选择可信实体类型为“AWS账户”。在下一个选项中选择“另一个AWS账户”然后在账户ID栏里填写你自己的AWS账户ID可以在AWS控制台右上角你的账户名下拉菜单中找到。这表示这个角色允许你自己账户内的实体来扮演。点击“下一步权限”。在权限策略搜索框搜索并勾选我们上一步创建的SP-API-STS-AssumeRole-Policy。继续“下一步标签”然后“下一步审核”。给角色起个名字例如AmazonSPAPIRole描述写清楚。最后点击“创建角色”。角色创建成功后点击角色名称进入详情页找到“角色ARN”并复制保存下来。这个ARNAmazon Resource Name长得像arn:aws:iam::123456789012:role/AmazonSPAPIRole它非常重要下一步注册应用时会用到。### 4.5 将策略附加给IAM用户最后一步把权限规则交给操作员。回到IAM的“用户”列表找到你创建的sp-api-developer用户点击其用户名进入详情。切换到“权限”标签点击“添加权限” - “直接附加现有策略”。在策略列表里搜索并勾选我们创建的SP-API-STS-AssumeRole-Policy然后点击“下一步审核”最后“添加权限”。至此AWS端的配置全部完成。我们创建了一个有特定权限的用户和一个可以被该用户扮演的特定角色为SP-API应用准备好了安全凭证。5. 第三步在开发者后台注册你的SP-API应用经过前面略显繁琐但至关重要的AWS配置现在我们回到熟悉的亚马逊开发者后台进行最后的“组装”将卖家身份、开发者身份和AWS资源关联起来。再次登录你的亚马逊卖家后台导航到“Apps Services” - “Develop Apps”。点击“创建新的应用配置”或类似的按钮。这时你会看到一个表单需要填写以下关键信息应用程序名称给你的应用起个名字比如“我的库存管理工具”。这个名字主要用于你自己识别。应用程序ARN这是整个注册的核心。你需要把上一步在AWS创建的那个IAM角色的ARN粘贴到这里。请务必确认你粘贴的是角色的ARN包含:role/字样而不是IAM用户的ARN包含:user/字样。这是新手最高频的错误之一。角色ARN才是SP-API认可的授权实体。OAuth重定向URI这是一个稍高级的配置项。如果你开发的应用需要让其他卖家来登录授权即开发一个多卖家使用的SaaS应用那么这里需要填写你应用服务器的一个回调地址用于接收授权码。但如果你是为自己店铺开发内部工具这个字段可以留空。留空就意味着这个应用只能由你应用创建者自己的卖家账号进行“自授权”简化了初始流程。我们入门指南可以先留空后续需要支持多卖家时再回来配置。填写完毕后仔细检查一遍特别是ARN有没有抄错。然后点击“保存”或“注册”。提交后系统需要一点时间处理。你可能会立即在应用列表里看到状态显示为“错误”或“待处理”别慌这很正常。通常等待几分钟后刷新页面状态就会变为“有效”或“已发布”。当应用状态正常后点击进入应用详情你会找到两个至关重要的信息客户端标识符Client Identifier和客户端密钥Client Secret。把它们像之前保存AWS密钥一样妥善保管好。这一对密钥加上之前AWS的Access Key和Secret Key就是你程序代码调用SP-API的“四件套”凭证缺一不可。6. 常见问题与避坑指南走完整个流程你可能已经成功了也可能卡在了某个环节。这里我总结几个我踩过的坑和常见问题希望能帮你快速排雷。### 6.1 ARN填错了怎么办这是头号杀手。如果误将IAM用户的ARN当成了角色ARN填入应用注册会看似成功但在后续调用API时一定会失败并返回关于“未经授权”或“角色无效”的错误。解决方法在开发者后台找到你的应用配置直接修改ARN字段填入正确的角色ARN并保存。通常修改后很快生效。### 6.2 保存的密钥丢失了怎么办AWS Secret Access Key如果丢失无法找回。你必须在IAM中为该用户“创建新的访问密钥”生成新的Key Pair并立即禁用或删除旧的密钥。然后更新你所有使用旧密钥的程序配置。SP-API Client Secret同样如果丢失无法直接查看。你需要在开发者后台该应用的设置里找到“生成新的客户端密钥”或类似选项重新生成一套新的客户端标识符和密钥。旧密钥会立即失效。 所以再次强调首次生成立即备份。### 6.3 应用状态一直是“错误”或“待处理”首先耐心等待5-10分钟再刷新。系统同步需要时间。如果长时间无效请按以下顺序检查检查ARN确认角色ARN填写无误且该角色确实存在于你的AWS账户中。检查IAM策略确认你为IAM用户附加的策略是否正确包含sts:AssumeRole并且角色的信任策略允许你的账户扮演它。检查网络确保没有浏览器插件或公司网络拦截了某些请求。### 6.4 调用API时遇到“Access Denied”或“Invalid Client”这通常意味着凭证问题。请按顺序核对调用API时使用的client_id和client_secret是否正确来自SP-API应用。获取临时安全令牌时使用的AWSaccess_key和secret_key是否正确来自IAM用户。请求中传入的role_arn参数是否正确即注册应用时填的那个角色ARN。 一个完整的调用链是用AWS用户密钥去STS服务换取扮演指定角色的临时令牌然后用这个临时令牌加上SP-API的客户端密钥去获取访问卖家数据的最终令牌LWA令牌。任何一个环节的凭证出错都会导致失败。### 6.5 关于“发布Listing”应用在开发者后台你可能还会看到一个“发布”或“提交审核”的选项。请注意这个操作是可选的。只有当你的应用需要上架到亚马逊应用商店供其他卖家搜索和安装时才需要走这个发布流程并接受亚马逊的审核审核周期可能长达数周。如果你开发的是仅供自己使用的内部工具完全不需要进行发布。你的应用在注册成功后状态显示为“有效”就已经可以用于API调用了。别被这个按钮迷惑去提交了不必要的审核白白等待。