top of page

用 Python × SP-API 检索订单管理信息 | Amazon Selling Partner API

7月19日
讀畢需時 2 分鐘

Selling Partner API(SP-API)是面向Amazon卖家合作伙伴的自动化功能的新一代API套件,是Amazon Marketplace Web Service(MWS)API的演进版本。MWS已提供对Amazon重要功能的程序化访问超过十年。SP-API公开后,将可在目前支持MWS的所有Amazon商店的生产环境中使用。

目前使用MWS的开发者,需要在2024年4月1日之前迁移到SP-API。(截至2023年1月23日的信息)

Selling Partner API for Orders

使用Orders的API,可以通过程序获取订单信息。利用这些API,可以在订单信息管理、订单状况调查、基于需求的决策支持工具等领域开发灵活的自定义应用。

环境准备

要在Python中使用SP-API,需要安装python-amazon-sp-api库。我在AWS Lambda中执行Python,因此为了把库安装到Lambda的目标项目中,加上了「-t .」选项

pip install python-amazon-sp-api -t .

执行SP-API需要凭据。把凭据统一存放在credentials中会比较方便。各个值的获取方法将在另一篇文章中介绍。

credentials : {
    "refresh_token": 刷新令牌,
    "lwa_app_id": 客户端ID,
    "lwa_client_secret": 客户端密钥,
    "aws_access_key": AWS访问密钥,
    "aws_secret_key": AWS私有密钥
}

执行API

getOrders:返回在指定参数所示时间段内创建或更新的订单信息。可应用各种筛选条件来缩小返回的订单信息。若存在NextToken,则使用NextToken而非其他条件来检索订单信息。

getOrder:返回由指定订单ID所示的订单。

getOrderBuyerInfo:返回指定订单的买家信息。

getOrderAddress:返回指定订单的收货地址。

getOrderItems:返回由指定订单ID所示订单的详细订单项目信息。若指定了NextToken,可获取下一页的订单项目。

getOrderItemsBuyerInfo:返回按指定订单下单商品的买家信息。

getOrders(示例)

from sp_api.api import Orders
from sp_api.base.marketplaces import Marketplaces
def lambda_handler(event, context):
	#创建用于使用Orders API的对象
	obj = Orders(marketplace=Marketplaces.JP,
	                   credentials=event['credentials'])
	#设置检索所需的值并获取订单信息
	result = obj.get_orders(CreatedAfter='2023-01-01T00:00:00',
	                        CreatedBefore='2023-01-31T23:59:59',
	                        FulfillmentChannels=["AFN"],
	                        OrderStatuses=["Shipped,Canceled"])
	return result.payload

若已从Orders API获取到NextToken,则参数中只传NextToken即可

	result = obj.get_orders(NextToken=event['NextToken'])

参数说明

CreatedAfter:以该日期时间之后创建的订单为对象

CreatedBefore:以该日期时间之前创建的订单为对象

FulfillmentChannels:AFN(FBA)或 MFN(自行配送)

OrderStatuses:按Pending·Shipped·Canceled等订单状态筛选

NextToken:用于获取下一页的令牌

执行结果(示例)


{
	"Orders": [
		{
			"BuyerInfo": {
				"BuyerEmail": "*****@****.***"
			},
			"AmazonOrderId": "***-******-******",
			"EarliestShipDate": "2023-01-04T14:59:59Z",
			"SalesChannel": "Amazon.co.jp",
			"OrderStatus": "Shipped",
			"NumberOfItemsShipped": 1,
			"OrderType": "StandardOrder",
			"IsPremiumOrder": false,
			"IsPrime": false,
			"FulfillmentChannel": "AFN",
			"NumberOfItemsUnshipped": 0,
			"HasRegulatedItems": false,
			"IsReplacementOrder": "false",
			"IsSoldByAB": false,
			"LatestShipDate": "2023-01-04T14:59:59Z",
			"ShipServiceLevel": "Expedited",
			"IsISPU": false,
			"MarketplaceId": "A1VC38T7YXB528",
			"PurchaseDate": "2023-01-03T07:21:21Z",
			"ShippingAddress": {
				"StateOrRegion": "◯◯県",
				"PostalCode": "000-0000",
				"CountryCode": "JP"
			},
			"IsAccessPointOrder": false,
			"SellerOrderId": "***-******-******",
			"PaymentMethod": "Other",
			"IsBusinessOrder": false,
			"OrderTotal": {
				"CurrencyCode": "JPY",
				"Amount": "2180.00"
			},
			"PaymentMethodDetails": [
				"Standard"
			],
			"IsGlobalExpressEnabled": false,
			"LastUpdateDate": "2023-01-05T09:02:23Z",
			"ShipmentServiceLevelCategory": "Expedited"
		},
		{
			"BuyerInfo": {},
			"AmazonOrderId": "***-******-******",
			"EarliestShipDate": "2023-01-05T14:59:59Z",
			"SalesChannel": "Amazon.co.jp",
			"OrderStatus": "Canceled",
			"NumberOfItemsShipped": 0,
			"OrderType": "StandardOrder",
			"IsPremiumOrder": false,
			"IsPrime": false,
			"FulfillmentChannel": "AFN",
			"NumberOfItemsUnshipped": 0,
			"HasRegulatedItems": false,
			"IsReplacementOrder": "false",
			"IsSoldByAB": false,
			"LatestShipDate": "2023-01-05T14:59:59Z",
			"ShipServiceLevel": "Expedited",
			"IsISPU": false,
			"MarketplaceId": "A1VC38T7YXB528",
			"PurchaseDate": "2023-01-03T11:51:29Z",
			"IsAccessPointOrder": false,
			"SellerOrderId": "***-******-******",
			"PaymentMethod": "Other",
			"IsBusinessOrder": true,
			"PaymentMethodDetails": [
				"Standard"
			],
			"IsGlobalExpressEnabled": false,
			"LastUpdateDate": "2023-01-03T11:53:35Z",
			"ShipmentServiceLevelCategory": "Expedited"
		}
	],
	"CreatedBefore": "2023-01-04T23:59:59Z"
}


多设置几种参数,让自己能够获取所需的数据吧。

 
 
 

留言


© Copyright ROBIN planning LLC.

bottom of page