You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Shopify API:如何查询使用指定折扣码的订单?

如何通过Shopify API查询使用指定折扣码的订单

我之前也碰到过这个问题——Shopify确实没有专门的「按折扣码查订单」独立接口,但咱们可以借助现有API的筛选能力来实现,下面分REST和GraphQL两种常用方式给你具体指导:

方法1:使用REST API查询

直接调用Shopify的Orders API,通过discount_code参数筛选出使用目标折扣码的订单。示例请求如下:

GET /admin/api/2024-07/orders.json?discount_code=TESTCODE123&status=any
  • discount_code=TESTCODE123:指定要匹配的目标折扣码
  • status=any:确保获取所有状态的订单(默认仅返回「open」状态,若需要已完成、已取消的订单必须添加该参数)

注意事项:

  • 记得替换为你当前使用的Shopify API稳定版本号(比如2024-07是近期的稳定版)
  • 若订单数量超过50条,Shopify会返回分页结果,你需要通过响应头的Link字段处理分页逻辑
  • 你的API密钥需要拥有read_orders权限才能发起此请求

方法2:使用GraphQL API查询(更灵活)

GraphQL能让你精准获取所需字段,同时完成折扣码筛选。示例查询代码如下:

query {
  orders(first: 50, query: "discount_code:TESTCODE123 status:any") {
    edges {
      node {
        id
        name
        createdAt
        totalPriceSet {
          shopMoney {
            amount
            currencyCode
          }
        }
        discountCodes {
          code
          amountSet {
            shopMoney {
              amount
            }
          }
        }
      }
    }
    pageInfo {
      hasNextPage
      endCursor
    }
  }
}
  • query: "discount_code:TESTCODE123 status:any":和REST参数逻辑一致,用于筛选符合条件的订单
  • first:50:单次返回50条结果,需通过pageInfo中的endCursor处理后续分页
  • 你可以按需调整返回字段,比如只保留订单ID和创建时间,减少不必要的数据传输

额外提醒

  • 如果你的折扣码曾修改过(比如重命名),要确保使用的是当前生效的折扣码code,而非初始名称
  • 若一个订单同时使用多个折扣码,上述筛选仍会正确匹配到包含目标折扣码的订单,不影响你的查询需求

内容的提问来源于stack exchange,提问作者Teshan N.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 11:12:31