Bothub.AI 用户手册简体中文版
Primary version
Primary version
  • 概览
  • 介绍
    • 什么是 Messenger Bot 🤔
  • 快速入门
    • 5分钟创建一个机器人
  • BotHub 基础知识
    • Messenger 机器人的基本功能
    • 多用户管理功能
    • 数据分析
      • 内容分析
      • 流量来源
    • 内容管理
      • 内容结构介绍
      • 文本、图片和视频卡片
      • 菜单卡片及各类按钮
      • 橱窗卡片以及快捷回复
      • 列表卡片
      • 系统设置介绍
      • 标签化内容
      • 广告消息
    • 受众人群
      • 查看历史消息
      • 推送事件
    • 消息群发
      • 广播消息
      • 订阅消息
      • 多时区支持
      • 问卷调研
    • Handover Protocol
    • 人工智能
      • 对话管理
      • 识别优先级
  • BotHub高级工具
    • 高级插件
      • Messenger 网页插件
      • RSS Feed插件
      • 用户输入插件
      • Google搜索插件
      • 订阅管理插件
      • 订阅插件“加入受众”和“移出受众”
      • 商品选取插件
      • 商品搜索插件
      • 购物车展示插件
      • Json Api组件
      • 条件跳转插件
      • 属性设置插件
      • 随机回复插件
      • Typing插件
      • 计数器
      • 语境跳转插件
    • 数据集成
      • 知识库-自动获取Gitbook的文档数据
    • API介绍
      • 开始使用API
      • 关联账号
      • Messenger内的登录按钮
      • 交易信息通知
      • 发送消息API
      • 发送模板消息
      • 生成优惠券的接口的写法
      • 发送知识库条目
      • 参数设置API
      • 呼叫人工
      • whatsapp消息入口
      • 发送whatsapp消息
      • 发送liveChat请求
    • 推广
      • 推广工具
      • 广告管理
      • 再营销SDK的集成
      • 评论回复功能
      • 砍价免费拿
      • Messenger 广告
    • 电商机器人
      • 电商机器人功能介绍
      • 配置你的电商机器人
      • 顾客查询
      • 商家推送
      • 场景应用:顾客查询订单 & 包裹
      • 场景应用:推送订单回执
      • 场景应用:推送订单回执(旧版SDK)
      • 场景应用:包裹更新提醒
      • 场景应用:购物车召回配置
      • 场景应用:购物车召回配置(旧版SDK)
    • 商品管理
      • 商品Feed-Facebook商品数据集成
      • 自定义商品-手动创建活动商品
  • WhatsApp相关说明
    • whatsapp消息入口
    • 发送Whatsapp消息
    • 发送liveChat请求
  • FAQ常见问题
    • Bot 配置常见问题
    • Bot 操作流程问题
      • 如何授权新的FB Page 至Bot平台
      • 首次登录 messenger.bothub.ai 邮箱验证流程
      • 设置仅工作时间段人工客服有效
    • Facebook平台政策问题
      • FB 平台政策
      • Messenger page禁封影响&解封流程
      • 24小时窗口期与24+1 政策解读
Powered by GitBook
On this page
  • 交易信息即时通知
  • 参数说明
  • 返回值
  • 重发机制
  • 其他交易通知
  1. BotHub高级工具
  2. API介绍

交易信息通知

让您第一时间获取用户在Messenger上的订单

PreviousMessenger内的登录按钮Next发送消息API

Last updated 6 years ago

交易信息即时通知

Bothub提供对基于Messenger的交易提供了通知机制。商户可以通过实现bothub定义的数据交换机制,让用户在Messenger里的任何和交易相关的操作都即时反应到商户的系统中,便于商户进行库存管理,发货操作和客服回应。

商户可以在后台的“设置”界面填写交易通知链接

作为示例,此处以订单通知为例说明通知的工作方式。 订单通知是指当有Facebook用户通过Messenger完成支付后,若商户填写了订单通知链接,bothub会向此地址发送一个Post格式的Http订单通知请求。请求的参数如下:

参数说明

参数

request.timestamp

unix时间戳,以秒为单位(e.g. 1401111222)

request.token

令牌,以确认请求发送者为Bothub。令牌计算方式见下文。

request.request_id

该请求的唯一标识符

order.products

商品信息,为数组,其中每个元素如下

order.products.id

商品外部id,由商户在合作时提供给Bothub

order.products.name

商品名称

order.product.price_single

单个商品价格

order.products.amount

商品数量

sender.id

用户的facebook id

sender.email

若此facebook id做过account linking并绑定了邮箱,则此处提供之

sender.phone_number

若此facebook id做过account linking并绑定了手机号,则此处提供之

sender.username

若此facebook id做过account linking并绑定了用户名,则此处提供之

payment.requested_user_info.contact_name

联系人的姓名

payment.requested_user_info.contact_email

联系人的邮箱

payment.requested_user_info.contact_phone

联系人的手机号

payment.requested_user_info.shipping_address.country

国家

payment.requested_user_info.shipping_address.state

州

payment.requested_user_info.shipping_address.city

城市

payment.requested_user_info.shipping_address.street_1

街道信息

payment.requested_user_info.shipping_address.street_2

补充街道信息

payment.requested_user_info.shipping_address.postal_code

邮编

payment.payment_credential.provider_type

付款方式

payment.payment_credential.charge_id

付款追踪id

payment.shipping_option_id

用户选择的送货方式

payment.amount.currency

用户支付的货币

payment.amount.amount

用户支付的数量

payment.shipping_option_id

用户选择的送货方式

summary

订单概要

summary.price

订单不含税不含运费的价格

summary.tax

订单税

summary.shipping_cost

订单运费

summary.sub_total

订单总价

summary.currency

订单货币

summary.order_identifier

订单唯一标识

  • 请求样例

{
    "request": {
        "timestamp": 1401122222,
        "token": "4r2$s003a!@3",
        "request_id": "49192801"
    },
    "sender": {
        "id": "123456",
        "phone_number": "18729182212",
        "email": "mike@sample.com",
        "username": "anonymous" 
    },
    "payment": {
        "requested_user_info": {
            "shipping_address": {
                "street_1": "1107th, Yuyuan Road",
                "street_2": "",
                "city": "Hongji Park",
                "state": "MI",
                "country": "US",
                "postal_code": "94025"
            },
            "contact_name": "Peter Chang",
            "contact_email": "peter@anemailprovider.com",
            "contact_phone": "+15105551234"
        },
        "payment_credential": {
            "provider_type": "paypal",
            "charge_id": "ch_18tmdBEoNIH3FPJHa60ep123"
        },      
        "amount": {
          "currency": "USD",
          "amount": "29.62"
        }, 
        "shipping_option_id": "123"   
    },    
    "order": {
        "products": [
            {
                "id":"P121",
                "name": "Sample good",
                "price_single": 2,
                "currency": "USD"
            } 
        ]
    }
}
  • Token的算法: bothub会为每一个page分发一个密钥secret,所有在此page上进行的交易,token的计算方式为

    token = sha256(timestamp + secret) 其中timestamp会在请求中传送给商户。例如,如timestamp为1482139994, secret为MTg2MjE1NzYyMDJf, 则token的算法为sha1('1482139994MTg2MjE1NzYyMDJf'), 结果为d2dff7379293216aa1e187dafb765a9aa63c7761

返回值

商户应对bothub发送的通知信息,应在处理完毕后返回200.

  • 成功调用样例

{
    'request_id': "F4js0Za2" //此值和请求的request_id一致
}
  • 失败调用样例

{
    "error" : {
        "message": "Missing payment",
        "type": "InvalidParamException",
        "code": 10000,
        "error_subcode": 1234567,
        "request_id": "F4js0Za2"
    }
}

重发机制

为防止商户因某些原因未能收到消息,Bothub提供了交易信息重发机制。

若商户对bothub发送的交易信息通知请求没有返回status=200,或超时仍未响应,bothub会在一段时间之后重发该请求,若仍收到status不等于200,或者超时的情况,则会再重发。这个过程一共会重复7次。每次调用的时候request_id都会保持一致,以免接收方重复处理。

第1次重发:发送后60秒

第2次重发:第1次重发后120秒

第3次重发:第2次重发后5分钟

第4次重发:第3次重发后30分钟

第5次重发:第4次重发后1小时

第6次重发:第5次重发后6小时

第7次重发:第6次重发后1天

若第7次重发仍未获得正确的回应,之后不再重发。

其他交易通知

Bothub将会陆续推出多种交易通知,以让Messenger上的交易和您的系统无缝链接。如果您有定制需求请告知 support@bothub.ai

一个具体的示例请见

这里