Fedex Logo

业务规则和验证流程


  • 一个托运账号不能用于多个 Advanced Integrated Visibility
  • 客户创建的目的地 URL/端点必须符合以下条件:
    • 属于 HTTPS 主机。
    • 响应 POST 请求并解析 JSON 有效负载。
    • 字符限制为 200 个字符
    • 如果您的 URL 中包含以下内容,将会被拦截:
      • RFC1918 IP 空格
      • fedex.com 或其任何子域
      • URL 中的 IP 地址(包括 localhost、127.0.0.1)

 

  • Advanced Integrated Visibility 安全性:仅支持可使用 TLS (SSL) 1.2 或更高版本协议的 HTTPS 连接,且该连接已配置有效认证机构 (CA) 所签发的证明。将以下 IP 地址加入白名单,可在不中断的情况下接收来自 FedEx 服务器的更新:
    Prod

         客户端可以将 “nat.fxconnect.eastus2.heap-prod.fedex.io” 加入白名单

         使用 CIDR "20.65.16.22/31"

  • 有时,客户可能会收到杂乱无序的查询事件更新,因而必须查看扫描事件时间戳以了解正确顺序。
  • 删除 FedEx Developer Portal 中的账号:
    • 用户/客户无法删除账号:
      1. 如果此账号与任何已激活的 Advanced Integrated Visibility 关联。
      2. 该账号是否可以使用或已经与项目关联,或者
      3. 如果此账号是项目/Advanced Integrated Visibility 中的唯一账号。
        注意:用户/客户需要先从项目/Advanced Integrated Visibility 中移除账号,然后再从组织中删除该账号。
    • 用户/客户可以删除账号:
      1. 该账号必须属于同一组织。
      2. 用户/客户必须是管理员才能从组织中删除账号。

常见限制

  • 所有与运营公司——FedEx Express®、FedEx Ground® 和 FedEx Ground® Economy(以前称为 FedEx SmartPost®)的 FedEx 9 位数账号关联的客户货件,无论目的地或始发地(进口、出口、国际、国内等)是什么,均适用于此范围。
  • Advanced Integrated Visibility Webhook 仅支持 9 位数的企业/包裹账户。企业账户允许创建与所有 FedEx 运营公司(包括 FedEx Express 和 FedEx Ground)关联的货件。

  • 注意:不支持仅限托运零担重货的 9 位数账号;若想添加托运零担重货账号,您必须联系客户支持,才能将 LTL 转移到企业账号。
  • 客户必须管理在其终端收到的货件查询事件的顺序。
  • 每当已订阅的 Advanced Integrated Visibility Webhook 上有任何活动(保存/失败/创建/更新/取消/删除)时,都会发送自动电子邮件通知。
  • 翻译:
    • 支持 41 种语言(地区)的查询负载翻译。(即将上线)
      单击此处,浏览受支持语言的列表。
    • 目前支持英文(美国)查询负载翻译。
    • 电子邮件通知翻译仅适用于美国地区支持的语言。(地区:en-US、es-US)

 


FedEx Developer Portal 用户角色:


在 FedEx Developer Portal 中,您可根据已配置的角色执行特定的功能。
如需详细了解 FedEx Developer Portal,请参阅组织管理指南

Advanced Integrated Visibility 验证流程

什么是 MAC/HMAC?在验证流程中如何使用 MAC/HMAC?

消息验证码 (MAC) 方法让您可以根据秘密密钥,检查在不可靠媒介中进行传输或存储的信息完整性。通常,MAC 是在共享秘密密钥的双方之间进行使用,用于验证双方之间传输的信息。

基于加密散列函数的 MAC 机制被称为 HMAC。HMAC 可与任何加密散列函数一起使用,例如 SHA256 与共享秘密密钥结合使用。在 RFC 2104 中指定 HMAC。FedEx Advanced Integrated Visibility Webhook 将使用 HMAC SHA256。

SHA256(安全令牌 + 有效负载)=  Base 64 编码的 fdx 签名,作为载重量标题的一部分

例如(说明 HMAC SHA256 散列的伪代码段):

  • 首先,运用 HmacSHA256 算法并将安全令牌用作秘密密钥,对 MAC 进行初始化。
  • 然后,对 FedEx 所发送的请求负载进行十六进制编码,完成 MAC 操作。
  • 此最终散列应与 FedEx 发送的“推送”中 fdx-signature 标题值相匹配。

Mac mac = Mac.getInstance("HmacSHA256"); 

mac.init(new SecretKeySpec(secureToken.getBytes(), "HmacSHA256")); 

return new String(Base 64 encoded(mac.doFinal(payLoad.getBytes()))); 

注意:所使用的密钥是您在设置 Advanced Integrated Visibility 或测试 Advanced Integrated Visibility URL 时所提供的安全令牌。

 

延迟时间计算

 

事件创建时间代表网络中事件实际发生的时间。
在事件记录到系统中(由消息创建时间戳标示)之前,无论是 Webhook 还是任何其他系统,都无法对其进行处理或递送。

建议

客户应使用消息创建时间戳来衡量延迟,因为它最能代表事件可供数字系统使用的时间。该时间戳与 FedEx 数字系统更新的时间最为接近,并且通常快于 fedex.com 上可见的更新时间或与其高度一致。

 

验证规则: 

  • Advanced Integrated Visibility Webhook 名称必须为唯一。
  • Advanced Integrated Visibility Webhook 目的地 URL 必须符合标准化的语法格式。
  • 创建 Advanced Integrated Visibility Webhook 所需的全部必填字段不能为空。
  • 应关联至少一个可用的 FedEx 托运账号,才能创建 Advanced Integrated Visibility Webhook 
  • 若验证成功
    • 当 Advanced Integrated Visibility Webhook 创建成功后,客户将收到确认消息。

      确认消息示例: <<Advanced Integrated Visibility Webhook 名称>>已成功创建。更改可能需要最多 10 分钟才能生效。

  • 若验证不成功/失败
    • 如果 FedEx 收到的响应不是 200 (OK) 或 202 (Accepted),则 Advanced Integrated Visibility Webhook 目的地 URL 的验证将被视为失败。

业务规则和验证流程示例


  • 一个托运账号不能用于多个 Advanced Integrated Visibility
  • 客户创建的目的地 URL/端点必须符合以下条件:
    • 属于 HTTPS 主机。
    • 响应 POST 请求并解析 JSON 有效负载。
    • 字符限制为 200 个字符
    • 如果您的 URL 中包含以下内容,将会被拦截:
      • RFC1918 IP 空格
      • fedex.com 或其任何子域
      • URL 中的 IP 地址(包括 localhost、127.0.0.1)

 

  • Advanced Integrated Visibility 安全性:仅支持可使用 TLS (SSL) 1.2 或更高版本协议的 HTTPS 连接,且该连接已配置有效认证机构 (CA) 所签发的证明。将以下 IP 地址加入白名单,可在不中断的情况下接收来自 FedEx 服务器的更新:
    Prod

         客户端可以将 “nat.fxconnect.eastus2.heap-prod.fedex.io” 加入白名单

         使用 CIDR "20.65.16.22/31"

  • 有时,客户可能会收到杂乱无序的查询事件更新,因而必须查看扫描事件时间戳以了解正确顺序。
  • 删除 FedEx Developer Portal 中的账号:
    • 用户/客户无法删除账号:
      1. 如果此账号与任何已激活的 Advanced Integrated Visibility 关联。
      2. 该账号是否可以使用或已经与项目关联,或者
      3. 如果此账号是项目/Advanced Integrated Visibility 中的唯一账号。
        注意:用户/客户需要先从项目/Advanced Integrated Visibility 中移除账号,然后再从组织中删除该账号。
    • 用户/客户可以删除账号:
      1. 该账号必须属于同一组织。
      2. 用户/客户必须是管理员才能从组织中删除账号。
CLOSE

Response

Copy