Xero API中payment与transaction的区别及关联规则是什么
Xero API Payment与Transaction常见问题解答
1. Payment与Transaction的具体区别
两者属于Xero系统中完全不同维度的凭证:
- Payment是业务核销层面的记录,仅用于标记发票(Invoice)、账单(Bill)、费用报销单等业务单据的收付款结清状态,核心关联属性为对应业务单据ID、收付款金额、结算日期、付款方式。
- Transaction(全称Account Transaction/Bank Transaction)是账户资金层面的流水记录,仅用于反映某一现金/银行账户的实际资金变动情况,核心关联属性为所属账户ID、流水金额、收支方向、对账匹配状态。
2. Payment操作是否会自动生成对应的Transaction
不会。调用Payments接口创建收付款记录后,仅会更新对应业务单据的核销状态,不会自动生成关联账户的Transaction记录。你需要手动调用BankTransactions接口创建对应流水,或等待绑定的银行Feed自动同步流水后,将Payment与对应Transaction做对账匹配。
3. Transaction是否仅在手动添加时才会被创建
不是。除了手动调用接口创建、Xero后台手动录入的场景外,还有两类自动生成Transaction的场景:
- 绑定银行账户并开启银行Feed同步功能后,系统会定时拉取银行端的实际流水,自动生成对应的Transaction
- 配置了自动对账规则、重复流水模板后,系统会按照规则自动生成符合条件的Transaction
4. 所有自然产生的业务记录都是以payment而非transaction的形式接入吗
不是。两类记录的接入场景完全独立:
- 有对应业务单据(发票、账单等)需要核销的收付款记录,走
Payments接口接入 - 无对应业务单据的资金变动(比如银行手续费、账户间转账、无票零星收支),直接走
BankTransactions接口接入即可,不需要创建对应的Payment记录
内容的提问来源于stack exchange,提问作者be2213444
相关产品推荐
相关产品推荐

