Troubleshooting Accounts Payable Duplicate Payment Batches (R09801, P09801)

Purpose
Troubleshooting Steps
 Overview
 Basic Post Overview Video Presentation
 Caution: Please Read This Important Disclaimer!
 Data Collection Instructions - (Summarized Details)
  Data Collection Instructions - (Full Details)
 Successful Post Summary (One Valid Payment Batch Type (K))
 Good Record Example before Automatic Payment Posts to General Ledger
 Good Record Example After Automatic Payment Posts to the General Ledger
 Duplicate Payment Batches Scenarios
 Preventing Duplicate Payment Groups (P04571)
 Check Temporary Payment Tables for Corruption
 Verify Payment ID Next Number Set Up
 Verify Code for Programs/UBEs
 Additional Tips
 Frequently Asked Questions
 Question 1: When duplicate payments are created, what is the best option to resolve an issue where the paid voucher is updated twice, the Open Amount is listed as a debit and the Pay Status as A?
 Question 2: Is there a report that identifies possible duplicate payments?

Purpose

This document has been created to help troubleshoot a specific automatic payment batch (K) post failure due to duplicate payment batches.

Troubleshooting Steps

Overview

This troubleshooting document provides assistance with resolving this specific post failure condition below:

Basic Post Overview Video Presentation

Below you will find a link to our AP Payment basic post presentation. This includes an overview for automatic payment processing, manual payment with voucher match payment processing and manual payment without voucher match payment processing.

Note - For additional documents that provide details on the Automatic Payment and Post processes, refer to the References section.

Caution: Please Read This Important Disclaimer!

Data Collection Instructions - (Summarized Details)

Oracle support will ask for these items below to troubleshoot this specific post failure scenario:

  1. Query F0413 and F0911 by each batch number (ICU) that are duplicates, export to excel.
    1. The General Ledger (F0911) only exists if batch has partially or successfully posted. You may find zero records.
    2. The General Ledger (F0911) is the key table that determines how the payment batch can be resolved.
  2. From the F0413 query in step 1 above, gather all unique payment ID numbers (PYID) and query the F0414 for each separate duplicate batch number found, export to excel.
  3. From F0414 in step 2 above, gather all unique voucher document numbers, query F0411, export to excel.
    1. A/P Payment Detail table (F0414) does not have batch number (ICU) as a field. The A/P Payment Header table (F0413) connects to the detail table (F0414) only by payment ID number.
  4. Attach R09801 for same batch number
  5. Attach R09801E for same batch number
  6. Attach image of work center error(s) for same batch number
Note - For all UTB (Universal Table Browser) or data browser queries exported to excel, it is important to include all column headings and include this data for only the duplicate batches involved to avoid co-mingling of resolution between different batch scenarios.

Data Collection Instructions - (Full Details)

Successful Post Summary (One Valid Payment Batch Type (K))

Note - Duplicate payments is caused by either someone setting the payment status field for vouchers back to A by mistake via SQL, data corruption. Oracle Support encourages clients to be at the latest code for all supported releases, use a single thread job queue and post each batch before creating another one. Run integrities weekly.

Good Record Example before Automatic Payment Posts to General Ledger

F0413 Key Fields

F0413 Pymt ID F0413 Batch # F0413 Match Doc Type F0413 Payment Item (aka CK #) F0413 Payment Amt F0413 Pay Status (aka post code) F0413 GL Date F0413 Period F0413 Century F0413 Fiscal Yr
4321 500 PK 1234 -3,000.00 blank 4/01/2014 04 20 14

F0414 Key Fields

F0414 Pymt ID F0414 File Line F0414 Match Doc Type F0414 Doc Type F0414 Doc # F0414 Pay Item F0414 Payment Amt F0414 Post Code F0414 Period F0414 Fiscal Year F0414 Century
4321 1 PK PV 1 001 -1,000.00 blank 04 14 20
4321 2 PK PV 1 002 -2,000.00 blank 04 14 20

Good Record Example After Automatic Payment Posts to the General Ledger

F0413 Key Fields

F0413 Pymt ID F0413 Batch # F0413 Match Doc Type F0413 Payment Item (aka CK #) F0413 Payment Amt F0413 Pay Status (aka post status) F0413 GL Date F0413 Period F0413 Century F0413 Fiscal Yr
4321 500 PK 1234 -3,000.00 D (Posted) 4/01/2014 04 20 14

F0414 Key Fields

F0414 Pymt ID F0414 File Line F0414 Match Doc Type F0414 Doc Type F0414 Doc # F0414 Pay Item F0414 Payment Amt F0414 Post Code F0414 Period F0414 Fiscal Year F0414 Century
4321 1 PK PV 1 001 -1,000.00 D (Posted) 04 14 20
4321 2 PK PV 1 002 -2,000.00 D (Posted) 04 14 20

F0911 Key Fields

F0911 Doc Type F0911 Doc # F0911 G/L Date F0911 JE Line # F0911 Post Code F0911 Batch # F0911 Period F0911 Fiscal Year F0911 Century F0911 Amount
AE 1 4/01/2014 1 P (Posted) 500 04 14 20 1,000.00
AE 1 4/01/2014 2 P (Posted) 500 04 14 20 2,000.00
PK 1234 4/01/2014 1 P (Posted) 500 04 14 20 -3,000.00

Duplicate Payment Batches Scenarios

See examples of different scenarios of where there are duplicate or triplicate payment batches and how to fix them.

Scenario 1: Duplicate Payment Batches (Type K) - First batch created pays vouchers and is posted successfully like example above, however, vouchers show as negative open total, why?

  1. Find second payment batch (unique batch number, unique payment ID not matching first batch but are paying the same vouchers as first payment batch is), it is either fully posted, partially posted or post failed.
  2. Follow the query instructions above to export out all the data, good original batch plus duplicate bad batch.
    1. First, confirm good batch is in balance and posted successfully to the General Ledger. Once this is confirmed nothing will need to be done to this batch, it will stay in the system as is.
    2. Next, from the query confirm if the second (bad) duplicate batch has been posted to the General Ledger fully or not.
      1. If fully, all you need to do is void each of these payments in this batch, then post the batch to post the voids. This will reopen the vouchers to approved for payment status again which you do not want to leave. Get with your DBA, IT and SQL the pay status for these vouchers back to P for paid and set the open amount to zero dollars since the good batch still is there and okay. Done. Or
      2. If the second batch is not posted to the General Ledger and no attempt to post it has been done, then you should be able to delete the payments (no audit trail), note it will reopen the vouchers so you will have to SQL the pay status to P and open amount to zero on the vouchers in this scenario as well. Done.
NOTE - If The duplicate payments are using the same Check number, you will need to SQL the "bad" check number and put 99 in front of it in F0413 and F0911 records so you can void. Be aware that field Document - Matching(Payment or Item) (DOCM) has a max of 8 digits.

CAUTION: No matter what the scenario is for duplicates you should do all of this in a test environment first, then when performing in Production be sure it is during off peak hours, no one is creating payment groups and no one is posting batches. The GL and AP periods must be open for the GL Dates on these records as well.

Scenario 2: Triplicate Payment Batches (Type K) - First batch created pays vouchers and is posted successfully like example above, however, vouchers show as 3 times negative open total, why?

  1. Find second and third payment batches (unique batch number, unique payment ID not matching first batch but are paying the same vouchers as first payment batch is), it is either fully posted, partially posted or post failed.
  2. Follow the query instructions above to export out all the data, good original batch plus next two duplicate bad batches.
    1. First, confirm good batch is in balance and posted successfully to the General Ledger. Once this is confirmed nothing will need to be done to this batch, it will stay in the system as is.
    2. Next, follow scenario 1 steps and repeat for the 3rd duplicate batch.

NOTE - If The duplicate payments are using the same Check number, you will need to SQL the "bad" check number and put 99 in front of it in F0413 and F0911 records so you can void.

CAUTION: Direct database updates are not recommended and only provided as a last resort. When doing an update make sure to request assistance from a database administrator familiar with this type of database update, perform updates in a test environment first, make sure to have a current back-up of the table prior to performing the database update. Direct database updates are performed at your own risk and are not supported by Oracle Support Services.


Preventing Duplicate Payment Groups (P04571)

Prior to payment processing, duplicate vouchers should be identified because this can lead to duplicate payments. The Suspected Duplicate Payments UBE (R04601) is used to find duplicate vouchers. Information on this report is retrieved from the Accounts Payable Ledger (F0411) table. Vouchers appear on this report based on one of the following criteria:

This report does not adjust the status of any vouchers listed. The report totals are dependent on the following sequence:

  1. Address Number (AN8)
  2. Invoice Number (VINV)
  3. Document Number (DOC)
  4. Document Type (DCT)
  5. Document Company (KC0)
  6. Pay Item (SFX)
  7. Pay Item Extension Number (SFXE)

To avoid duplicate vouchers, the Duplicate Invoice Number Edit (data dictionary item DUIN) in the Accounts Payable Constants (P0000) should be set to H (Hard Error). This setting prevents any duplicate invoice numbers to be entered and thus eliminates the need for the Suspected Duplicate Payments (R04601) UBE to run.

Caution: Changing the data sequence for this report can cause unpredictable results. Therefore, the data sequence for this report should not be changed.

Check Temporary Payment Tables for Corruption

The automatic payment process uses three temporary worktables:

If duplicate payments are a consistent issue, it is possible that these three tables are corrupted. Follow these steps to check these tables for corruption:

  1. Ensure that there are no Create Payment Control Groups (R04570) jobs processing.
  2. In Work with Payment Groups (P04571), find all payment groups in process.
  3. Select all payment groups.
  4. Choose the Undo option from the Row exit.
  5. After the Work with Payment Groups (P04571) returns no more groups, use a database utility to query over the three worktables. If no groups exist, these tables should be empty. If data exists, the tables must be cleared out and regenerated.

Verify Payment ID Next Number Set Up

It is also possible that the Next Number being used to assign Payment Numbers (data dictionary item PYID) is incorrect. Find the highest Payment Number in the Accounts Payable Matching Document (F0413). Verify that this number is lower than the Unique Key ID (data dictionary item UKID) where the Object Name (data dictionary item OBNM) is F0413 in the Unique Key File - Next Available Unique Key (F00022).

Verify Code for Programs/UBEs

For Automatic Payment processing, it is extremely important that the latest code for all programs and UBEs is being used. Check the Update Center for the latest ESUs.

Additional Tips


Frequently Asked Questions

Question 1: When duplicate payments are created, what is the best option to resolve an issue where the paid voucher is updated twice, the Open Amount is listed as a debit and the Pay Status as A?

Answer 1: When duplicate payments are created in the system with the same Payment Number (data dictionary item DOCM) and GL Bank Account, the best option is to void one of the duplicate payments using the batch number (data dictionary item ICU):

  1. Access the Void Payment Entry application (P0413M).
  2. Search based on Batch Number.
  3. Inquire on the Payment Number.
  4. Void the duplicate payment.
  5. Post the void transaction.
NOTE: It is important that to verify any related vouchers have a correct Pay Status (data dictionary item PST) and Open Amount (data dictionary item AAP) after a duplicate payment is voided.


Question 2: Is there a report that identifies possible duplicate payments?

Answer 2: The Suspected Duplicate Payments report (R04601) can be used to locate duplicate invoice numbers prior to a payment run. This report is used to prevent duplicate payments from occurring.