Magento新手求助:sales_order_address等表的Web API端点查询
解答Magento 2中sales_order_address和sales_order_payment对应的REST API端点
作为Magento新手,你已经找对了方向——用Web API确实是导出数据的标准方式。针对你问的两个表,我整理了对应的端点和实用技巧:
1. sales_order_address 对应的API端点
sales_order_address表存储订单的账单和配送地址,你有两种便捷的获取方式:
- 通过订单详情直接关联获取(更推荐,因为地址和订单强绑定):
调用GET /V1/orders/{order_id}时,返回的JSON数据里会包含billing_address和shipping_address字段,直接就能拿到对应地址的所有信息,不用单独调用地址接口。 - 单独的地址端点:
- 获取单个地址详情:
GET /V1/order-addresses/{address_id} - 搜索/过滤地址列表:
GET /V1/order-addresses/search(可以用order_id作为搜索条件,筛选某一订单的所有地址)
- 获取单个地址详情:
2. sales_order_payment 对应的API端点
sales_order_payment表存储订单的支付信息,同样有两种获取路径:
- 通过订单详情关联获取:
调用GET /V1/orders/{order_id}时,返回数据里的payment字段会包含该订单的支付方式、金额、交易ID等核心信息,这是日常开发中最常用的方式。 - 单独的支付端点:
- 获取单个支付记录详情:
GET /V1/order-payments/{payment_id} - 搜索/过滤支付记录:
GET /V1/order-payments/search(比如按order_id筛选某一订单的支付数据)
- 获取单个支付记录详情:
小提醒
- 调用这些端点时,确保你的API用户拥有
Sales > Orders > View的权限,否则会返回权限不足的错误。 - 如果需要批量导出数据,建议用
search端点配合过滤条件(比如created_at时间范围)来获取批量数据,避免单次请求数据量过大导致超时。
内容的提问来源于stack exchange,提问作者CodeIT
相关产品推荐
相关产品推荐

