如何将账单操作与QuickBooks收到的对应Webhook关联?
QuickBooks账单操作与Webhook关联方案
QuickBooks 不会在API操作的响应中返回专门用于关联Webhook的操作ID,也不会在Webhook请求的头或体中携带和原操作响应一致的专属标识来直接绑定单次账单操作。
你之前尝试的intuit-tid之所以失效,是因为它只是单个API请求的追踪ID,Webhook是异步触发的独立事件,和原操作的请求生命周期不绑定,所以无法用来做操作与Webhook的关联。
可行的关联方案:
- 基于实体ID+操作类型+时间戳匹配:调用API执行账单操作后,记录下返回的
Bill.Id、操作类型(Create/Update/Delete)以及操作时间;收到Webhook时,解析请求体里的Entity.Id(即账单ID)、Operation字段(对应操作类型),再结合Webhook的事件时间戳做时间范围匹配(比如前后5分钟),就能对应到你系统里的原操作。 - 自定义业务标识绑定:在账单的
PrivateNote字段或者自定义字段中,存入你自己系统生成的唯一操作ID(比如你的业务流水号),调用API修改/创建账单时把这个标识写入;收到Webhook后,通过Webhook里的Entity.Id调用Get Bill API获取账单详情,读取你存入的自定义标识,就能精准关联到你系统里的对应操作。
内容的提问来源于stack exchange,提问作者Tarun Kumar
相关产品推荐
相关产品推荐

