You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过QBXML解除QuickBooks中ReceivePayment与发票的关联

QuickBooks Desktop收款与发票解除关联操作方案

你参考的基础聚合类清空规则仅适用于地址、联系人信息这类普通属性聚合,不适用于AppliedToTxnMod这类交易关联类聚合,不能直接传入空标签触发清空,需要按以下规则配置参数:

方法1:指定待解绑发票重置关联金额为0

你需要先从之前ReceivePaymentQueryRS返回的AppliedToTxnRet中,获取原关联发票的TxnID,在ReceivePaymentMod中添加完整的AppliedToTxnMod节点,将关联金额设置为0即可解除绑定:
正确的QBXML示例如下:

<ReceivePaymentModRq>
    <ReceivePaymentMod>
        <TxnID>612-1631305229</TxnID>
        <EditSequence>1631418450</EditSequence>
        <CustomerRef>
            <ListID>80000089-1613077827</ListID>
        </CustomerRef>
        <ARAccountRef>
            <ListID>8000001B-1578805288</ListID>
        </ARAccountRef>
        <TxnDate>2021-09-04</TxnDate>
        <RefNumber>cash11</RefNumber>
        <TotalAmount>11.00</TotalAmount>
        <PaymentMethodRef>
            <ListID>80000001-1578006261</ListID>
        </PaymentMethodRef>
        <Memo/>
        <DepositToAccountRef>
            <ListID>80000021-1620340635</ListID>
        </DepositToAccountRef>
        <!-- 替换原空标签的完整关联修改节点 -->
        <AppliedToTxnMod>
            <TxnID>xxxx-xxxxxxx</TxnID> <!-- 替换为原关联发票的实际TxnID -->
            <AppliedAmount>0.00</AppliedAmount>
            <DiscountApplied>0.00</DiscountApplied> <!-- 原关联存在折扣时添加 -->
        </AppliedToTxnMod>
    </ReceivePaymentMod>
</ReceivePaymentModRq>

提交请求后,QuickBooks会自动解除该笔收款和对应发票的关联,收款金额会转为未应用状态。

方法2:删除原收款记录重新创建

如果无法获取原关联发票的TxnID,可以先调用ReceivePaymentQueryRq获取该收款最新的EditSequence值,调用ReceivePaymentDelRq删除原记录,再用ReceivePaymentAddRq重新创建一笔无关联发票的收款记录,最终效果完全一致。

注意:所有修改操作都需要先查询获取最新的EditSequence值,避免出现并发修改冲突报错。

内容的提问来源于stack exchange,提问作者jbobbins

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 06:54:03