Wednesday, October 14, 2009

Creating AP Checks in Oracle R12

Check Printing has changed considerably in Oracle R12. Initially it looked to me to be very complex, but after spending considerable time understanding it, I have started to like many of the new features. Some of the new additions are:


  1. There is a standard Oracle Program to generate the XML. It creates most of the fields necessary to create checks.
  2. Check payment data has been moved from 'Payables' responsibility to 'Payments' responsibility. The schema name for Payments is IBY.
  3. You have to create only the RTF file since the XML file is generated by Oracle. You may change or add a new RTF - all you have to do is to upload the new RTF file once the check processes have been setup.
  4. The number of lines per page can be setup in the Payment Processing Profile. The XML file will be generated based on this number. It does seem to me that this option puts some restrictions on the flexibility provided by oracle, but so far I was able to work with it.

Pre-requisites:

  1. Download BI Publisher Template Builder for Word ver 10.1.3.4.1 from download.oracle.com
  2. Basic requirements to start creating checks is to have an RTF file (Template) and an XML file (data definition).
  3. There are 2 ways that you can have an RTF file:
    o Create your own, or
    o (Recommended) Download standard oracle Template
    Payables Manager > Setup > Payment > Payment Administrator > Formats > XML Publisher Format Templates
    Query and download the RTF file
    ‘Standard Check Format’ IBYDC_STD1.rtf or
    Standard Check Format (Stub After Payment) IBYDC_STD1A.rtf
  4. Getting an XML file is tricky. I had to spend some trying to get this extract. This is kind of a Catch-22 situation. You have to actually create the entire Payment setup first and run a payment process to get the extract. Here is what Oracle recommends:

    --> Go to Metalink and Check Oracle Note 457539.1. This note says that the Package IBY_FD_EXTRACT_EXT_PUB controls the XML extract used in check printing. The supplied version can be found in $IBY_TOP/patch/115/sql/ibyfdxeb.pls

    --> Better way is to follow the instructions in Doc ID: 465389.1 R12 Create Or Modify A Payment Format Using XML Builder. This note explains the same steps that I have defined below
  5. MICR Fonts. This is another important requirement which you will run into later on. So I have decided to address it right away because you may end up spending a lot more time if you start thinking about it later. One of the easiest way is to buy the MICR font from a third party like IDAutomation (http://www.idautomation.com/) and use MICRW1B.ttf. Typical cost is around $750.00 per user license – you may need to purchase only one license. You may also download their Demo version which is good for testing.

    The good news is that Oracle also provides a MICR font which is available if you have downloaded the BI Template Builder. Some banks reject this font, but so far I did not have any problem with the bank that we used.

    Download and install BI Publisher ver 10.1.3.4.1
    Font File Location: C:\Program Files\Oracle\BI Publisher\BI Publisher Desktop\Template Builder for Word\fonts\ MICR____.TTF

    In order to use this file in the RTF template, copy the font file MICR____.TTF to C:\WINDOWS\Fonts

At this stage, you may or may not have designed the Check template. But you can still use IBYDC_STD1.rtf downloaded earlier.

Following steps are needed to create a check in AP from scratch. These steps may also be used to create the initial payment to get the XML file.

Step 1: Create XML Template

Payables Manager > Setup > Payment > Payment Administrator > Formats > XML Publisher Format Templates
Click 'Create Template'
Enter valid name, Code, Application (= Payments)
Type = RTF
Data Definition = Oracle Payments Funds Disbursement Payment Instruction Extract 1.0
Default File Language = English
Default File Territory = UNITED STATES
Upload your RTF File

Step 2: Create Payment Format

Payables Manager > Setup > Payment > Payment Administrator > Formats > Formats
Select Type = Disbursement Payment Instruction
Click on Create
Enter Code, NameType = Same as above
Data Extract = Oracle Payments Funds Disbursement Payment Instruction Extract 1.0
XML Publisher Extract = XML Template name created in Step 1

Step 3: Create Payment Document

Payables Manager > Setup > Payment > Bank Accounts

Query up your Bank Name. It is assumed that your Bank has already been setup in AP.
Select the Bank Account and click on Manage Payment Documents.
Click on Create
Enter:
Name: XXXX Check Payment Document
Paper Stock Type: Blank Stock or Prenumbered Stock
If you have remittance stub, check the box for Attached Remittance Stub
Important: If you check the above box, a new field called ‘Number of Lines per Remittance Stub’ will show up. This is number that you will have to find out by trial and error once you start testing your template. Initially, set it to a lower number, say 15.
Format: Enter Format defined in step 2
First Available Document Number:
Last Available Document Number
Enter any other information that you may need.
Click Apply

Step 4: Create Payment Profile

Payables Manager > Setup > Payment > Payment Administrator > Payment Process Profiles

Click on Create
Enter:
Code
Name
Payment Instruction Format: As defined in Step 2
Processing Type: Printed
Payment Completion Point: When the Payment Instruction is Formatted
Default Payment Document: Document created in Step 3
Payment File: Send to Printer
Check the box ‘Automatically Print After Formatting’ (Note: You mau choose not to check this box initially – it will help in testing)
Default Printer: Valid oracle printer name
Click Apply

Now you are all set to create checks. All you have to do is create an Invoice, or select any existing validated invoice for a vendor.

There is one more thing that you must check before creating the payment.

Verify Concurrent Program

Go to Application Developer or Sys Admin responsibility and bring up the concurrent program Format payment Instructions

Concurrent > Program > Define > F11 > Format Payment Instructions > Ctrl-F11
(Short Name: IBY_FD_PAYMENT_FORMAT)

Set Output Format to XML: Use this option to first generate your XML (Data Definition) file

Set Output to PDF : This will create your check in PDF format once your check template is ready. Also, Set Style to PDF Publisher in this case.


How to Submit a Request to create Payments

Submission process for AP Checks/Payments has also changed in R12. Most of the options are now available in HTML screens. The good news is that you can create templates (Not XML templates - these are different) so that you do not have to enter the same information every time you submit a request.

Submit Request:

Payables Manager > Payment Manager > Submit Single Payment Process Request

Following parameters are minimum required - you can enter others as necessary:

Following parameters are minimum required - you can enter others as necessary:
Payment Process Request name (Mandatory): Provide any useful Name

Use Template: Leave Blank

Payee : Vendor NamePayment Method: Check (Or any other name that has been setup is payment method)

Click on Payment Attributes Tab:
Payment Date: Defaulted to today's date

Disbursement Bank Account: Enter your Bank Account Name associated with this payment
Payment Document : Enter payment document name created in Step 3 above
Payment Process Profile : This value will get filled automatically with the profile defined above in step 4
Payment Exchange Rate Type: Enter valid excahnge rate type (Ex: Corporate, Spot)


These parameters are sufficient to create a payment. Click on Submit in order to process. However, I do recommend following steps also in the begining.

Click on Processing Tabs:

Check following boxes

  • Stop Process for Review After Scheduled Payment Selection. This step will stop after building the payments so that you can review the payments selected, and cancel any of them, if necessary
  • Stop Process for Review After Creation of Proposed Payments
    Click on Submit. Click on Home. Click on Monitor Requests.

How to Create Template for Request Submission

Payables Manager > Payment Manager > Create Template

Note: All of the fields in this process are the same as in 'Submit Single Request'. Enter any fields that you repeat for request submission. In the above example, usually leave the Payee field blank if you want to run for separate vendors every time. Once the template has been created and saved, you may enter the template name in the field 'Use Template' in the example above.

There are several other options which I haven't explored yet. I will add more once I get to try them out.

9 comments:

  1. Thanks. Please let me know what else you would like me to add.

    ReplyDelete
  2. Thanks for the informative post. I have tried to set the value of the field "Maximum Document per Payment" to 6 in the payment process profile(Payment Creation tab). But all the 12 invoices are being displayed in the same page. Can you please provide some more details about the following setup.

    "The number of lines per page can be setup in the Payment Processing Profile. The XML file will be generated based on this number. "

    ReplyDelete
  3. Great post ... very helpful!
    Wondering if anyone has figured out how to set a check minimum. For example, do not print a check less than $50... just hold due invoices until total due for a supplier is $50 or more.

    Thanks for any suggestions on how to achieve this in R12!

    ReplyDelete
  4. "The number of lines per page can be setup in the Payment Processing Profile. The XML file will be generated based on this number. "

    Sorry I have been out of R12 for sometime so could not reply earlier. The condition that I have mentioned here relates to generation of XML data. In order to control the number of invoices to be printed on a single page, you will have to control it in the RTF template. Try using a while loop and SKIP after desired number of invoices have been printed.

    ReplyDelete
  5. "Wondering if anyone has figured out how to set a check minimum. For example, do not print a check less than $50... just hold due invoices until total due for a supplier is $50 or more"

    Hi Beth - I do not know how to setup the limit. However, you can easily setup a condition in the RTF template not to print checks for <$50 or any amount. It can be done by using the IF-ENDIF command.

    ReplyDelete
  6. There is a field 'Number of Lines per Remittance Stub' in the payment documents set up for a bank account. This can be set to an appropriate number to restrict the number of lines per page in the check stub.

    ReplyDelete
  7. Hi
    IN Check printing, I have printed 10 invoice in same page in one printer
    (after 10 invoice)remaining in another other printer.please help

    ReplyDelete
  8. if you have ans plese posted prrajagopalan111@gmail.com

    ReplyDelete