Shopify API已经更新,原专有应用(Private app)已移除,更新为自定义应用(Custom app),若您的店铺是新开店铺或者旧店铺无法通过原有Private app授权获取订单,请参照此页面重新配置API对接。
与本章节有关的主题
*重要提示*
1. 【州】(或省)和【联系方式】(或手机号码)在PFC系统中为必填栏位,这两个栏位值为空将无法确认订单。请提前更新Shopify设置,将【收货地址电话号码】设置为必填。若指定国家地址不需要提供州名称,可以直接复制城市名称至州。
2. API获取订单时,系统默认将Shopify订单ID填充至【参考号】栏位,参考号默认不允许重复。若您有多个Shopify店铺需要添加至PFC系统,请提前更新您的Shopify订单前缀以区分不同店铺的订单。
1. 在Shopify允许自定义应用开发
1. 登录Shopify后台,点击左侧目录中的【设置】;
2. 点击左侧的【应用和销售渠道】,然后点击右上角的【开发应用】;
3. 若您是第一次使用开发应用,则需要先点击【允许自定义应用开发】启用应用;
4. 在确认页面点击【允许自定义应用开发】。
2. 创建Shopify应用
1. 启用自定义应用后,点击右上角的【创建应用】;
2. 在弹出窗口中输入应用名称PFC,选择应用开发者(默认是登录账户),然后点击【创建应用】。
3. 配置Shopify应用权限
1. 创建应用成功后,点击【配置】选项卡定义API权限;
2. 在【后台API集成】栏位右侧,点击【配置】;
3. 勾选以下列出的所有权限,然后点击【保存】;
write_products, read_products,
write_product_listings, read_product_listings,
write_shipping, read_shipping,
write_fulfillments, read_fulfillments,
write_merchant_managed_fulfillment_orders, read_merchant_managed_fulfillment_orders,
write_locales, read_locales,
write_locations, read_locations,
write_assigned_fulfillment_orders, read_assigned_fulfillment_orders,
write_third_party_fulfillment_orders, read_third_party_fulfillment_orders,
write_draft_orders, read_draft_orders
write_orders, read_orders,
4. 安装Shopify应用
1. 配置权限完成后,点击【API凭证】选项卡,然后点击【安装应用】;
2. 在弹出窗口中,点击【安装】;
3. 安装完成后,页面会列出加密令牌,点击【显示一次令牌】;
4. 复制令牌至记事本。
注意:您只能在此页面上看到一次后台 API 访问令牌,因为该令牌提供对敏感商店数据的 API 访问。在页面显示访问令牌后,请在安全的地方写下或记录该令牌,以便您可以再次参考它。请将令牌视为密码。只能与您信任的开发人员分享访问令牌。
5. 定义Shopify发货和配送
1. 在您的Shopify后台,点击左下角的【设置】;
2. 点击【发货和配送】;
3. 根据需要定义一般运费或自定义运费。
请注意,您在发货和配送设置中定义的运费名称(Rate name)将被用于匹配PFC运输方式。
6. 在PFC系统设置API
1. 登录PFC系统,点击进入【出口转运】>【订单管理】>【API对接】,或;
2. 点击进入【仓储管理]> 【出口转运】>【API对接】;
3. 如您是第一次在PFC系统中配置API,请在默认【API接口】选项卡中,点击【生成密钥】(若您已经配置过API可忽略此步骤);
4. 在弹出窗口中点击【生成】(您的API密钥将展示在客户ID右侧);
5. 切换至【Shopify】选项卡,然后点击【Add】;
6. 在弹出窗口中,输入您的Shopify店铺域名(请输入您第一次注册Shopify时所使用的域名,不包含.myshopify.com);
7. 复制并粘贴您在步骤4中保存的API访问令牌至【API密钥】和【密码】输入框中;
8. 在【是否启用】下拉选项中选择【启用】,其他两个选择根据需要选择;
9. 在【运输方式对应】部分,点击右侧的【添加】定义您的自动运输匹配规则;
9.1 在第一列【运输方式】栏位,复制您在Shopify中所设置的运费名称Rate name;
9.2 在第二列【PFC运输方式】栏位,选择您需要使用的运输方式;
9.3 重复上述步骤直至完成了所有目标国家的运输匹配设置;
10. 根据需要设置默认申报价值和重量;
11. 若您需要使用仓储服务来处理Shopify订单,请选择您已开通服务的仓库;
12. 设置完成后点击【生成】。
7. 批量获取Shopify产品
配置API完成后,若您是通过仓储管理发货,则需要先在Shopify创建好产品,然后直接通过API把产品信息同步到PFC系统。当然,您也可以从Shopify导出所有产品信息,然后更新至PFC模板批量导入至PFC系统,详细步骤请参考仓储管理。
1. 登录PFC系统,点击进入【出口转运】>【订单管理】>【API对接】,或;
2. 点击进入【仓储管理]> 【出口转运】>【API对接】;
3. 在您的Shopify店铺右侧,点击【获取订单】;
4. 在弹出窗口中,选择订单的起止时间(时间范围每次最多支持选择3天);
5. 点击【Acquire Product】。
8. 批量获取Shopify订单
当您完成了所有的配置,并且有订单需要发货,您可以根据以下步骤获取订单;
1. 登录PFC系统,点击进入【出口转运】>【订单管理】>【API对接】,或;
2. 点击进入【仓储管理]> 【出口转运】>【API对接】;
3. 在您的Shopify店铺右侧,点击【获取订单】;
4. 在弹出窗口中,选择订单的起止时间;
5. 在Financial status下拉菜单中选择【Paid】;
6. 根据需要选择Fulfillment status;
7. 点击【Acquire Order】。
系统将处理您的订单请求并返回相应的提示。若提示订单创建成功,则您可以前往【出口转运】>【订单管理】>【出口订单列表】>【草稿】查看代发货订单,或前往【仓储管理】> 【出口转运】>【仓储订单列表】>【草稿】查看仓储订单。
9. 确认Shopify订单
1. 在PFC系统中,点击进入【出口转运】>【订单管理】>【出口订单列表】>【草稿】,或;
2. 点击进入【仓储管理】> 【出口转运】>【仓储订单列表】>【草稿】;
3. 勾选需要的订单,然后点击上方的【提交】。
操作成功后,订单将移送至【确认】状态。
10. Shopify API对接常见问题解答
Q1. 获取订单失败,提示“未将对象引用设置到对象的实例”,或”Not Found“该怎么操作?
A1. 请检查您是否输入了正确的Shopify店铺名称。此名称必须与您第一次注册Shopify所使用的名称完全匹配。若您不知道第一次注册时所使用的名称,可以通过以下方法查看:
1. 登录您的Shopify后台;
2. 查看浏览器地址栏中的网址,复制https://和.myshopify.com中间所有的字符,这些字符就是您最初注册Shopify使用的店铺名称。
Q2. 获取订单失败,提示"[API] This action requires merchant approval for read_orders scope.",该怎么操作?
A2. 请检查您在Shopify后台的权限设置,必须开通以下权限才能获取订单:
write_products, read_products,
write_product_listings, read_product_listings,
write_shipping, read_shipping,
write_fulfillments, read_fulfillments,
write_merchant_managed_fulfillment_orders, read_merchant_managed_fulfillment_orders,
write_locales, read_locales,
write_locations, read_locations,
write_assigned_fulfillment_orders, read_assigned_fulfillment_orders,
write_third_party_fulfillment_orders, read_third_party_fulfillment_orders,
write_draft_orders, read_draft_orders
write_orders, read_orders,
Q3. 获取订单失败,提示“Cannot find the product”,该怎么操作?
A3. 若您是使用仓储管理来处理Shopify订单,则您需要在Shopify产品中添加SKU,且此SKU必须与PFC系统中上架的SKU完全匹配(区分大小写)。若您没有完成此步骤,当买家下单时,对应的SKU值为空,系统无法匹配PFC SKU,则导致获取订单失败。Shopify完善SKU信息后只对未来的订单生效。若您的订单在添加Shopify SKU之前已经生成了,则您需要手动在PFC系统中创建订单或者使用Excel批量上传订单。
Q4. 获取订单失败,提示“Cannot find the channel code”,该怎么操作?
A4. 出现此提示可能有以下原因:
1. 所选择的运输方式已禁用。
2. 所选择的运输方式不再支持运送至订单中的目的地国家。
系统可能会根据需要调整运输方式,若您所选择的运输方式已被禁用,或目的地国家已被屏蔽,可以联系您的客户经理为您推荐新的运输方式并更新到设置中。
Q5. 获取订单成功,但是系统匹配的运输方式并不是我所选择的,该怎么操作?
A5. 请检查您在Shopify设置中填写的运费名称(Rate name)与PFC设置中填写的Rate name是否完全匹配(区分大小写)。若系统无法匹配Rate name,则会默认为相应订单选择PFCEXPRESS运输方式。请注意一定要填写运费名称Rate name,而不是填写运费规则标题。
Q6. 获取订单失败,提示已存在,该怎么操作?
A6. 出现此提示可能有以下原因:
1. 订单参考号重复,同一个订单只能获取一次,若之前已经获取过,必须将之前的订单彻底删除才能重新获取;
2. 订单的状态不是已付款/未发货。系统默认拉取已付款且是未发货的订单,若您的订单是未付款/付款未结清/手动标记为付款等状态,或者订单已经手动标记发货,系统不会拉取,您需要同时在Finance status下拉菜单和Fulfillment status下拉菜单选择any来强制拉取此类订单。