Oracle EBS 里"应收票据"对应的是Bills Receivable(BR),归在 AR 模块,但贴现/背书会牵动 Cash Management(CE)、AP、GL。标准功能里"贴现"是原生支持的,"背书"反而没有独立事务——国内实施圈常用的做法是"借道贴现 + 虚拟银行 + 中转科目"去冲 AP,R12 后来 Remittance 窗口也给了 Endorse 动作但用得少。下面拆开讲。
一、先理清 BR 在 EBS 里的定位
BR 本质上是个"兼具交易和收款特征"的对象:
像发票:是 customer 欠你的借记项
像收款:可以 remit 给银行换钱,或背书/贴现
核心表:AR_BILLS_RECEIVABLE_ALL(主表)、AR_BR_HISTORY_ALL(状态历史),未清项统一挂到AR_PAYMENT_SCHEDULES_ALL。
BR 生命周期(Oracle 官方定义):Creation → Acceptance → Remittance(Factor) → Endorse / Risk Elim / Maturity。
二、贴现(Discount)的标准实现
🏦 业务含义
把未到期的 BR 交给银行,银行扣掉贴现息后把净额打给你。分有追索权(with recourse)/ 无追索权(without recourse),会计上决定是否终止确认。
操作路径
前提配置
Receipt Class 里定义一个 "BR Remittance" 类,方法选
Remittance(不是Standard)Remittance Bank 挂到该 Receipt Class 下
自动会计(AutoAccounting)里配BR_FACTOR 类型的科目映射(这是贴现专属的会计默认)
执行 Remittance
职责:Receipts / Bills Receivable Workbench
打开Remittances 窗口 → 新建 Remittance Batch → 选 BR → 选银行
Factor with recourse(有追索)/Factor without recourse(无追索)二选一
提交Bills Receivable Maturity and Risk 并发程序:对有追索的 factored BR 做 risk elimination(把风险从客户转到银行侧),应用 receipt 并消除原 BR 的风险敞口
创建会计分录 → 过账 GL
典型分录(无追索,终止确认)
借 | 贷 |
|---|---|
银行存款(实收净额) | |
财务费用(贴现息) | |
应收票据——BR |
有追索(不终止确认,视同短期借款)
借 | 贷 |
|---|---|
银行存款(净额) | |
财务费用(贴现息) | |
短期借款 |
💡 国内准则下"9+6 大行承兑"一般判终止确认,"非 9+6 行承 + 商承"判不终止确认,这块要在科目映射里分两套 BR_FACTOR 规则,或者用不同的 Receipt Method 区分。
三、背书(Endorsement)的实现——这里是坑
⚠️ 标准功能的局限
收款工作台(Receipts Workbench)里没有独立的"背书"事务类型。Oracle 标准给的 Endorse 动作在Bills Receivable Portfolio Management 窗口里能做状态记录,但它只改 BR 状态,不会自动帮你冲 AP 发票——所以国内实施几乎都走 workaround。
主流做法:虚拟银行 + "贴现"方式中转(国内最常见)
思路:把"背书给供应商"模拟成"先贴现进虚拟银行 → 再用这笔钱付 AP"。
建一个虚拟银行 + 虚拟收款账户,收款方法叫"应付票据背书"之类
录入一笔 Receipt,收款账户选这个虚拟银行,金额 = 票据面值
核销 AP 发票:在 Receipts Workbench 里把这笔"虚拟现金" apply 到要付的 AP 发票上,完成冲销
运行收款自动结算(结算折扣收款 = 是),让应收票据—已确认科目借贷相抵
BR 端用 Remittance/Endorse 把状态关掉
生成的中转逻辑大致是:
收票时:借 应收票据—已确认 贷 应收账款—未核销 背书(虚拟贴现):借 应收票据—已背书/中转 贷 应收票据—已确认 付 AP:借 应付账款 贷 应收票据—已背书(或贷 虚拟现金)📌 这个做法的关键是中转科目 + 虚拟银行账户的组合,保证 AR 的 BR 能闭环,AP 那头也能拿到正常的 payment 核销痕迹。
R12 另一种走法:Remittance → Endorse 动作
Portfolio Management 窗口(Bills Receivable → Portfolio Management)里可以直接Endorse 一个 BR,记录"已背书给 XX",再手工或 API 去 AP 侧做支付。这条路径更"正统"但自动化弱,小众在用。
四、关联系数与易踩点
BR 收票时原发票被 BR 替换,应收余额从"发票"转到"BR",
AR_PAYMENT_SCHEDULES_ALL里那行 invoice 会变成 BR 的 payment schedule有追索贴现一定要跑Bills Receivable Maturity and Risk程序,否则风险没消、报表会怪
冲销:BR 在任何阶段(含已解除风险)都能 Reverse,系统自动生成反向分录
到期退票/追索:客户违约时,有追索的 factored BR 要反向走:借 应收账款—承兑人/前手,贷 银行存款(垫付),再向前手追索
科目配置关键:AutoAccounting 里
BR_FACTOR、BR_REMITTANCE、BR_ENDO这几条默认别漏,否则分录科目会串