下面我按 “设计逻辑 → 实现流程 → 操作步骤 → 会计分录 → 常见问题” 给你把 Oracle EBS(R12)AP 模块 ** 预付款发票(Prepayment)** 讲透,全部是标准功能逻辑,可直接落地。
一、设计逻辑(核心思想)
1. 本质定位
- 预付款是一种特殊的发票类型,属于 AP 发票的子类,类型为 Prepayment。
- 分为两类:
- 临时预付款(Temporary):后续可核销标准发票 / 费用报表,用完可冲抵。
- 永久预付款(Permanent):不核销,如押金、保证金,长期挂账。
2. 核心设计原则
3. 关键字段设计
- 发票类型(Invoice Type):Prepayment
- 预付款类型(Prepayment Type):Temporary / Permanent
- 结算日期(Settlement Date):允许核销的最早日期
- 关联 PO(PO Number):可选,用于采购预付款关联
- 核销状态(Apply Status):未核销 / 部分核销 / 已核销。
二、实现流程(端到端)
标准业务场景(采购预付)
业务:向供应商采购 1000 元,先预付 500 元,货到收票后核销。
流程总图
三、详细操作步骤(R12 AP 模块)
前提配置(必须先做)
- 定义 预付账款 GL 科目(如 112301)
- 配置 AP 会计科目生成器(AutoAccounting)
- 配置 付款方式、银行账户。
步骤 1:录入预付款发票(Invoice Workbench)
- 发票类型:选择 Prepayment(预付款)
- 供应商:选择对应供应商
- 发票日期 / 编号 / 金额:录入(如 500)
- 预付款类型:Temporary(临时,可核销)
- 结算日期:录入允许核销日期(如当天)
- 行信息:金额 500,科目选 预付账款
步骤 2:支付预付款(Payment)
- 付款类型:Check/Electronic
- 供应商:同预付款发票
- 应用发票:选择刚才的 500 预付款发票
- 金额:500(全额支付)
步骤 3:收到标准发票(Standard Invoice)
- 类型:Standard
- 金额:1000
- 科目:原材料 / 费用 + 应付账款
步骤 4:核销预付款(Apply Prepayment)
步骤 5:支付尾款
- 标准发票剩余应付:1000 − 500 = 500
- 正常付款流程支付 500 即可。
四、关键会计分录(自动生成)
1. 录入预付款发票(验证后)
借:预付账款 500
贷:应付账款 500
2. 支付预付款
借:应付账款 500
贷:银行存款 500
3. 核销预付款(标准发票 1000)
借:原材料/费用 1000
借:进项税 130
贷:应付账款 1130
借:应付账款 500
贷:预付账款 500
4. 支付尾款
借:应付账款 630
贷:银行存款 630
五、临时 vs 永久预付款对比
| 核销 | 可核销标准发票 / 费用报表 | 不可核销,长期挂账 |
| 用途 | 采购定金、项目预付款 | 押金、保证金、不可退回预付款 |
| 取消 | 可反核销后取消 | 直接取消(需权限) |
| 报表 | 显示待核销金额 | 显示永久预付余额 |
六、常见问题与注意事项
- 检查:类型是否为 Temporary、结算日期是否已到、供应商是否一致、发票是否已验证 / 已付款。
- 未验证:可改;已验证 / 已付款:不可改,需取消付款 → 反验证 → 修改。
- 核销时录入部分金额,剩余金额可后续继续核销。
如果你需要,我可以给你:
- 一份可直接照着点的 R12 菜单路径 + 事务码(T-code)速查表
- 一套 预付款 + 核销 + 付款的完整测试脚本(含数据)
- 对应的 会计科目配置与 AutoAccounting 设置截图说明




