r12 payments

Upload: bksidhu

Post on 06-Jul-2018

330 views

Category:

Documents


4 download

TRANSCRIPT

  • 8/17/2019 R12 Payments

    1/35

    COLLABORATE 13 – OAUG Forum  Page 1 of 35 

    Copyright ©2013 Bechtel Corporation 

    Oracle R12 Payments: An In-depth Technical Setup Configuration for

    R12 Upgrade

    Vinod Dua

    Bechtel Corporation

    Editor’s Note: The purpose of this paper is to describe the high-level technical configuration for

    Release 12 Payment process. Since the setup configuration of payment process has drastically changed

    in Release 12, this paper has attempted to highlight all the changes in comparison with 11i payment

    configuration. Additionally, some valuable tips have been addressed to speed up the customizations

    development.

    Overview

    Bechtel is among the most respected engineering, procurement, and construction companies in the

    world. We stand apart for our ability to get the job done right – no matter how big, how complex, or howremote the project. For 115 years, customers have placed their confidence in Bechtel’s ability to manage

    large projects in which they have substantial investments. Our legacy of more than 22,000 successful

    projects in 140 countries reflects a longstanding commitment to quality. It’s a commitment we are proud of

    and one that’s been substantiated by independent audits and customer loyalty.  

    Bechtel implemented Oracle Financials (Release 9.4) in the early 1990’s. Since then it has been

    upgraded multiple times and software patches have also been regularly applied to stay current with the

    technology. In 1999, all financial instances were upgraded to 10.7 to meet Y2K requirements. In 2003, a

    major initiative was undertaken and all 10.7 financial instances were consolidated into One Single Global

    Instance (Oracle 11i). This effort took almost three years. Following this consolidation, Oracle 11i has

    been upgraded to Release 11.5.10 and Oracle patches have been regularly applied.

    In 2007, Oracle released Oracle R12. The premier support for Release 11i ended in 2010 and the

    extended support ends in 2013. Due to this, a business decision was made to upgrade Oracle Release

    11i to Oracle Release 12.1.3, which is the latest release.

    The upgrade to Release 12 requires database versions to be 11g. As a result, all the financial instances

    are being upgraded to 11g in preparation for the upgrade to R12, occurring in the 1st PMC Oracle cycle.

    Release 12 also includes many architectural changes in technology and processes, therefore an

    extensive study and analysis is being conducted to capture all the improvements and key changes.

    Bechtel has three 11i financial instances, and many other custom application 11i instances. The R12

    upgrade has been successfully done on the two smaller financial instances, and several custom

    application instances. The complex financial instance with 1TB database, 25 sets of books, and 24

    operating units is under development and unit testing.

    R12 Payments Benefits

    In Oracle Release 12, the Centralized Payment Processing engine combines both Funds Disbursement

    and Funds Capture into one payment system. Organizations can now leverage the centralized processing

    engine across multiple operating units, currencies, payment methods, and pay groups to increase the

    real-time visibility of cash inflows and outflows.

  • 8/17/2019 R12 Payments

    2/35

    COLLABORATE 13 – OAUG Forum  Page 2 of 35 

    Copyright ©2013 Bechtel Corporation 

    In Oracle Release 12, Payments have a new concept of “Payment Process Request” similar to Release

    11i “Payment Batch.” This feature has better controls, more visibility and flexibility, and thus has

    enhanced the overall performance of Payment process.

    Oracle has also streamlined all the customizations by introducing standard payment XML tags. Custom

    objects typically include check formats and PL/SQL Packages to create Electronic Data Interface (EDI)

    files to be sent to the trading partners. To speed up the customizations, custom hooks to standardpackages have also been provided. Overall, the configuration/customizations changed in R12 were

    designed to help organizations improve their payment processes.

    The new release of Oracle R12 has brought in many enhancements to the Payment Process. Some of

    the key benefits are:

      Offers Centralized Payment Processing to consolidate Payment runs 

      Gives Payables transparency by using Payment Process Manager Dashboard  

      Provides Payment Process Controls and enhanced accurate Payment Information using PaymentProcess Profile 

      Eliminates redundant Payment Processes using Payment Templates 

      Uses MOAC to help the Shared Service Centers drive cost savings and increase the quality ofinformation they provide 

      Includes Banks and Branches as part of the TCA architecture  

      Increases effectiveness of Master Data – Fewer Configuration Steps 

      Reduces Customization by using Standard Oracle-provided XML Tags and RTF Templates    Allows for easy customization through the use of Standard Extensions or hooks to XML Tags 

    Things to Consider

    During an upgrade from Release 11i to Release12, Oracle recommends the following:

      Confirm is cancel the status of all open Payment batches Update the NULL Bank BranchesCountry Code to either “USA,” or the respective country code 

      Closely analyze and document all customizations 

      Use standard custom naming conventions; it is advisable to use the Custom Objects names thesame as one would use Oracle Standard Objects 

      Reduce downtime by using SQL to validate the configuration 

    R12 Payments Process Changes

    The R12 Payments has many process changes. Key changes include:

      To create Quick Checks / Manual Checks, Payment Process Profile is used, which is new to R12

      The use of Templates to run/schedule payment batches  The use of Payment Dashboard to forecast cash balances and monitor payment batches

  • 8/17/2019 R12 Payments

    3/35

    COLLABORATE 13 – OAUG Forum  Page 3 of 35 

    Copyright ©2013 Bechtel Corporation 

    R12 Payment Setup Technical Configuration Changes 

    In the upgrade from Oracle 11i to Oracle Release 12, many changes have been made to Payment

    Configuration.

    Banks, Branches and Bank Accounts 

    This section will explain the details of Banks, Branches, Bank Accounts, and the Payment Process. Ineach section, the 11i and R12 tables and changes will be described. Let’s take an existing bank accountfrom 11i instance and see the corresponding changes in R12.

    Table 1.1 – Details

    S No Form Name Field Name Value

    1 Banks  Bank Name XXX Bank Name

    Bank Branch Name XXX Bank Branch Name

    Institution Bank

    Description XXX Bank Name2 Address Country France

     Address Line1 X1 Address 1

     Address Line 2 X2 Address 2

    City PARIS

    Postal Code 92974

    3 Bank Accounts Operating Unit XXX Operating Unit

    Bank Account Name XXX Bank Account Name

    Bank Account Number X123456

     Account Type Internal

    Currency EUR

    Cash Account Cash Account

    Multiple Currency Payments Yes

     Allow Zero Payments Yes

    Banks

    The Banks in Release 12 are treated as PARTIES, as they are shared with AR, CM, and Payables. Theyare part of TCA architecture. Note that when we upgrade from 11i to R12, the AP_BANK_BRANCHS

    table still exists but it has no role in R12. The Banks from this table are converted to HZ_PARTIES and

    this table is now obsolete. When you create a new Bank, the data gets inserted into HZ_PARTIES.

  • 8/17/2019 R12 Payments

    4/35

    COLLABORATE 13 – OAUG Forum  Page 4 of 35 

    Copyright ©2013 Bechtel Corporation 

    Table 1.1.1 – Banks

    Oracle 11i Oracle R12

    Table Name Column Name Table Name Column Name

    ·  ·  · ·

     AP_BANK_BRANCHES BANK_NAME HZ_PARTIES PARTY_NAME

    The following columns in HZ_PARTIES are important.

    Table 1.1.2 – Table Details

    Table Name Column Name Comments

    HZ_PARTIESPARTY_ID This will be used in

    CE_BANK_BRANCHES_V asBANK_PARTY_ID

    PARTY_NUMBER System Generated

    PARTY_NAME Bank Name

    PARTY_TYPE Defaults to ORGANIZATION

    ORIG_SYSTEM_REFERENCE AP BANK:1000 – Points to 11iBank_Branch_Id

    ORIG_SYSTEM_REFERENCE AP BRANCH:1000 – Points to 11iBank_Branch_Id

    From the Payables Super User Responsibility, navigate to the below screen

    This screen shows all the Banks, Branches and Bank Accounts. This screen is same from any AP Super

    user r esponsibility. The “+” sign under each country indicates that there are many banks and branchesdefined in the country. As we drill down, the “Total Accounts” column indicates the number of Bank Accounts associated with each branch.

    Bank Branch

    The Banks Branches in Release 12 are also part of TCA architecture. The Bank Branch is created as

    another record in HZ_PARTIES. The Bank and Bank Branches are linked together by

  • 8/17/2019 R12 Payments

    5/35

    COLLABORATE 13 – OAUG Forum  Page 5 of 35 

    Copyright ©2013 Bechtel Corporation 

    HZ_RELATIONSHIPS. The Oracle 11i AP_BANK_BRANCHES table is replaced by

     AP_BANK_BRANCHES_V. This view has the base tables from HZ _PARTIES. Note that when we

    upgrade from 11i to R12, the AP_BANK_BRANCHS table still exists but it has no role in R12.

    Table 1.2.1 – Tables

    Oracle 11i Oracle R12Table Name Column Name Table Name Column Name

    ·  ·  · ·

     AP_BANK_BRANCH

    ES

    BANK_BRANCH_NA

    ME HZ_PARTIES PARTY_NAME

     AP_BANK_BRANCH

    ES BANK_NUM

    HZ_ORGANIZATION_PROFIL

    ES

    BANK_OR_BRANCH_NUMB

    ER

    The following Release 12 tables are very important.

    Table 1.2.2 –  Table Details

    Table Name Column Name Comments

    HZ_PARTIESPARTY_ID This will be used in

    CE_BANK_BRANCHES_V asBANK_PARTY_ID

    PARTY_NUMBER System Generated

    PARTY_NAME Bank Branch Name

    PARTY_TYPE Defaults to ORGANIZATION

    ORIG_SYSTEM_REFERENCE AP BRANCH:1000 – Points to 11iBank_Branch_Id

    HZ_RELATIONSHIPS SUBJECT_ID This is the PARTY_ID from HZ_PARTIES.This can be for a Bank or a Branch

    SUBJECT_TABLE_NAME Always HZ_PARTIES

    OBJECT_IDVery Important field. For a Bank, this fieldwill have the PARTY_ID of the BankBranch.

    OBJECT_TABLE_NAME Always HZ_PARTIES

    RELATIONSHIP_CODEFor a Bank, it is HAS_BRANCH and for aBank Branch it has BRANCH_OF

    RELATIONSHIP_TYPE BANK_AND_BRANCH

    HZ_ORGANIZATION_PROFILES PARTY_IDPARTY_ID of the Bank Branch from

    HZ_PARTIES

    BANK_OR_BRANCH_NUMBER Bank Branch Number

    BRANCH_CODE Bank Branch Number

  • 8/17/2019 R12 Payments

    6/35

    COLLABORATE 13 – OAUG Forum  Page 6 of 35 

    Copyright ©2013 Bechtel Corporation 

    The Banks Branches is now a View in Release 12.

    Table 1.2.3 – View Details

    View Name Tables Used in the View Comments

    CE_BANK_BRANCHES_V HZ_ORGANIZATION_PROFILES

    HZ_CODE_ASSIGNMENTS

    HZ_PARTIES

    HZ_ORGANIZATION_PROFILES

    HZ_RELATIONSHIPS

    HZ_CONTACT_POINTS

    Bank Accounts

    The Banks Accounts in Release 12 are also part of TCA architecture. The Bank Account is created as

    another record in HZ_PARTIES. Note that when we upgrade from 11i to R12, the

     AP_BANK_ACCOUNTS_ALL table still exists but it has no role in R12.

    From the Payables Super User Responsibility, navigate to the below screen.

     A simple search region is displayed when the “Bank Accounts” is opened. To find an existing 11iConverted bank account, type the bank account name with a % sign. Some of the 11i bank accountnames have been changed in Release 12. They have been appended by the 11i Operating Unit as shownin the next screen.

  • 8/17/2019 R12 Payments

    7/35

    COLLABORATE 13 – OAUG Forum  Page 7 of 35 

    Copyright ©2013 Bechtel Corporation 

    In Release 12 the INTERNAL Bank Accounts have been separated from EXTERNAL Bank Accounts in

    two different tables.

    Table 1.3.1 – Tables

    Oracle 11i Oracle R12

    Table Name Column Name Table Name Column Name

    ·  ·  · ·

     AP_BANK_ACCOUNTS_A

    LL

    BANK_ACCOUNT_NA

    ME

    CE_BANK_ACCOUNT

    S BANK_ACCOUNT_NAME

    BANK_ACCOUNT_NU

    M BANK_ACCOUNT_NUM

    BANK_BRANCH_ID

    BANK_BRANCH_ID. This is

    the PARTY_ID of the Bank

    Branch from HZ_PARTIES

    BANK_ID. This is the

    PARTY_ID of the Bank from

    HZ_PARTIES

    SET_OF_BOOKS_ID

     ACCOUNT_OWNER_PARTY_ 

    ID

    CURRENCY_CODE CURRENCY_CODE

    ORG_ID ACCOUNT_OWNER_ORG_ID

    HZ_PARTIES

  • 8/17/2019 R12 Payments

    8/35

    COLLABORATE 13 – OAUG Forum  Page 8 of 35 

    Copyright ©2013 Bechtel Corporation 

    When a new INTERNAL Bank Account is created in Release 12, a record is inserted in HZ_PARTIES aswell. For an upgrade from 11i to Release 12, HZ_PARTIES does not have the Bank Account.  

    Table 1.3.2 –  Table Details

    Table Name Column Name Comments

    HZ_PARTIESPARTY_ID This will be used in

    CE_BANK_ACCOUNTSBRANCHES_V asBANK_PARTY_ID

    PARTY_NUMBER System Generated

    PARTY_NAME Bank Account Name

    PARTY_TYPE Defaults to PARTY_RELATIONSHIP

    ORIG_SYSTEM_REFERENCE NULL

    Check Formats

    The Check Formats in Release 12 are XML Templates. The table AP_CHECK_FORMATS is now

    obsolete. All the Standard Check Formats have been converted to XML Template. The names of these

    templates can be found in IBY_FORMATS_B. The AP_CHECK_FORMATS table still exists but it has no

    role in R12. The 11i Check Format executable name can be easily queried in this table using the

    REFERENCE_FORMAT_CODE. The R12 Format Code, Format Type Code, and Format Template Code

    can then be derived for each Oracle Standard Check Format.

    Table 1.4.1 – Tables

    Oracle 11i Oracle R12

    Table Name Column Name Table Name Column Name

    ·  ·  · ·

     AP_CHECK_FORMATS NAME IBY_FORMATS_TL FORMAT_NAME

    IBY_FORMATS_B FORMAT_CODE

    FORMAT_TYPE_CODE

    FORMAT_TEMPLATE_CODE

    Therefore, in Release 12, ALL THE CUSTOM FORMATS have to be converted to XML Template. 

    From the Payables Super User Responsibility, navigate to the below screen.

  • 8/17/2019 R12 Payments

    9/35

    COLLABORATE 13 – OAUG Forum  Page 9 of 35 

    Copyright ©2013 Bechtel Corporation 

    The Administration of Formats is an OA Framework Form.

    The Setup of Formats involves the following steps:a. Create a RTF Template for the Check/EFT Formatb. Register the Templatec. Define Format, link them to XML Template and assign other validations

    For an existing XML Format, the “Formats” Task Name opens up with the below screen.

  • 8/17/2019 R12 Payments

    10/35

    COLLABORATE 13 – OAUG Forum  Page 10 of 35 

    Copyright ©2013 Bechtel Corporation 

    To create a new Format, click the “Create” Button.

     All the 11i Formats have been converted into XML Template. The next few screen shots will show how tocreate a Custom Check Formats which does not upgrade.

     A Def ault “Code” is “SAMPLE_FORMAT_CODE”. This needs to be changed to Custom Format Code

    which will be used in the Template.

  • 8/17/2019 R12 Payments

    11/35

    COLLABORATE 13 – OAUG Forum  Page 11 of 35 

    Copyright ©2013 Bechtel Corporation 

    The other information for “Data Extract” has the following options.

    Choose “Oracle Payments Funds Disbursement Payment Instruction Extract, Version 1.0” 

    a. “XML Publisher Template” and “Name” is the Registered Template and Name.b. “Type “. Choose “Disbursement Payment Instruction”.

    Check Stocks

    The Check Stocks in Release 12 are associated with Bank Account Setup. This is the same as 11i. The

    table AP_CHECK_STOCKS_ALL still exists but it has no role in R12.

    Table 1.5.1 – Tables

    Oracle 11i Oracle R12

    Table Name Column Name Table Name Column Name

    ·  ·  · ·

     AP_CHECK_STOCKS_ALL NAME

  • 8/17/2019 R12 Payments

    12/35

    COLLABORATE 13 – OAUG Forum  Page 12 of 35 

    Copyright ©2013 Bechtel Corporation 

    Perform a “Simple Search” on the Bank Account Name. The 11i Bank Account Name is appended withOperating Unit.

    The results of the “Simple Search” is as shown :

    Select the Bank Account Name using the “Radio” Button. Click on “Manage Payment Documents.” 

  • 8/17/2019 R12 Payments

    13/35

    COLLABORATE 13 – OAUG Forum  Page 13 of 35 

    Copyright ©2013 Bechtel Corporation 

    Once the Bank Account has been queried and selected, the existing Payment Documents will show up:

  • 8/17/2019 R12 Payments

    14/35

    COLLABORATE 13 – OAUG Forum  Page 14 of 35 

    Copyright ©2013 Bechtel Corporation 

    For new Check Stocks, use the “Create” button and enter the required information as in 11i.

  • 8/17/2019 R12 Payments

    15/35

    COLLABORATE 13 – OAUG Forum  Page 15 of 35 

    Copyright ©2013 Bechtel Corporation 

    Valuable Tips prior to the R12 Upgrade

    Before the Upgrade is completed, make sure the following is done:

    1. Make sure all Payment Batches are either “Canceled” or “Confirmed”. There should not be any

    payment batch in any other stat. 

    2. Update the NULL Bank Country Code to the required country. If this is not done, R12 defaults the

    NULL country code to “United States.” 

    3. Cleanup banks, branches, and bank accounts before the upgrade. 

    Valuable Tips after the R12 Upgrade

    The Oracle Release 12 has some new features in every module which has helped the organizations to

    secure data and control access. It has also enhanced the usability of some modules, especially in

    payments.

     After the Upgrade is done, use the following SQL’s to speed up your configuration.

    1. By default – Masking is setup on Internal and External Bank Accounts. If the same bank account

    is used in multiple operating units, the upgrade process appends the ORG_ID after the bank

    account name. Also if the first four characters of Bank Account Numbers are same, then

    unmasking helps.

    From the Payables Super User Responsibility, navigate to the below screen.

    Click “Payment Administrator”. Go to Task “System Security Options” 

  • 8/17/2019 R12 Payments

    16/35

    COLLABORATE 13 – OAUG Forum  Page 16 of 35 

    Copyright ©2013 Bechtel Corporation 

    Set up “Number of Digits” to display for External Bank Accounts 

    2. Bank Accounts Tolerances fields for Internal Bank Accounts are now mandatory in the Bank

     Accounts OA Form. If you are editing any internal bank account, you will have to use a tolerance

    amount and percentage. Use the following SQL to update them:

    UPDATE ce_bank_accountsSET ap_amount_tolerance = 0,ar_amount_tolerance = 0,

    ap_percent_tolerance = 0,ar_percent_tolerance = 0,ce_amount_tolerance = 0,ce_percent_tolerance = 0,recon_oi_amount_tolerance = 0,recon_oi_perence_tolerance = 0

    WHERE account_classification = 'INTERNAL'

    3. Bank Accounts Descriptive Flex Fields (DFF) are the same but in R12.1.3 they are hosted inCE_BANK_ACCOUNTS table. In 11i, if a Bank Account Number has a dash “-“, the dash will be

    removed in R12. The 11i bank account number with dashes has been upgraded to

    CE_BANK_ACCOUNTS. MASKED_ACCOUNT_NUM.

    4. The Bank Account number length is restricted to 11 characters in the Bank Accounts OAF Form.

    5. The Documents for each bank account has been moved to a different table:

    IBY_DOCUMENTS_B.

  • 8/17/2019 R12 Payments

    17/35

    COLLABORATE 13 – OAUG Forum  Page 17 of 35 

    Copyright ©2013 Bechtel Corporation 

    6. The Bank Account Numbers are masked in R12. The masking can be done either in thebeginning of the bank account number or at the end of the bank account number. After masking,only the first four or last four characters will show in the screen.

    7. The Bank Account Number cannot have special characters such as hyphens, dashes, colons, orother special characters.

    8.  After the upgrade, check to see if the Bank Account Number is enabled for “Payables” and “CashManagement” 

  • 8/17/2019 R12 Payments

    18/35

    COLLABORATE 13 – OAUG Forum  Page 18 of 35 

    Copyright ©2013 Bechtel Corporation 

    How to Speed Up Payment Configuration and Customizations

    E-Business Suite Customizations are the key to every upgrade process. Customization costs can inflate

    the lifecycle effort cost by at least 75%. As a result, the challenge every organization faces today is

    determining what customizations have been made, and then deciding what to do about them. Since every

    organization has specific customizations, Oracle has attempted to document many examples and

    recommend the best practice to bring those customizations into R12. Oracle has more than 15 different

    types of customizations, modifications, and extensions. Here are some of the important customizations

    which are affected by the R12 upgrade:

      Folders – If you have created custom folders, you will have to re-create them again after theupgrade. 

      Form Personalization - Some of the Form Personalization will work but there are significantchanges in Invoice Workbench and Supplier Workbench. Additionally, Payments Administration isa new module and all personalization will have to be created again.  

      Custom Check Formats will have to be re-done using XML/eText. 

       Any EDI Payment Program written in PL/SQL Package will have to be rewritten using StandardOracle XML Template.

      If you have used Descriptive Flex Fields (DFF) from AP_BANK_ACCOUNTS_ALL table for anyreports, then those reports will need to be changed to point to CE_BANK_ACCOUNTS. 

    Types of Payments 

    In Release 11i, many organizations have four major categories of payments:

    a. Clearing or Quick Check Payments – Mainly used for Clearing or recording purposes

    b. Manual Checks – Printing on a custom check stock

    c. EDI Payments - Batch Processing for Electronic Data Exchange (EDI)

    d. Third Party Payments with specific file format

    To speed up customizations for the above payment types, do a quick analysis of the existing bank, bankbranches, bank accounts, and check formats in 11i using the following SQL. You can either hard-code theOperating Unit in the SQL or use the bank accounts which have been used to pay in the last 18-24months depending on your needs. 

    SELECT hou.name,abaa.org_id,aipa.set_of_books_id sob,abb.bank_name,abb.bank_branch_name,abb.bank_num,abaa.bank_branch_id,

    aca.currency_code,gcc.concatenated_segments cash_account,abaa.asset_code_combination_id cash_account_id,abaa.bank_account_name,abaa.bank_account_num,abaa.bank_account_id,aia.pay_group_lookup_code,aca.payment_method_lookup_code,acsa.name document_name,

  • 8/17/2019 R12 Payments

    19/35

    COLLABORATE 13 – OAUG Forum  Page 19 of 35 

    Copyright ©2013 Bechtel Corporation 

    max(aca.check_date ) last_used_date,acsa.check_stock_id,acf.name payment_format_name

    FROM ap.ap_checks_all aca,ap.ap_invoice_payments_all aipa,ap.ap_invoices_all aia,ap.ap_check_stocks_all acsa,ap.ap_bank_accounts_all abaa,ap.ap_bank_branches abb,apps.gl_code_combinations_kfv gcc,ap.ap_check_formats acf ,hr_operating_units hou

    WHERE aca.check_id = aipa.check_id AND aipa.invoice_id = aia.invoice_id AND aca.check_stock_id = acsa.check_stock_id AND aca.bank_account_id = abaa.bank_account_id AND abb.bank_branch_id = abaa.bank_branch_id AND gcc.code_combination_id = abaa.asset_code_combination_id AND acsa.check_format_id = acf.check_format_id AND aca.check_date >= '01-JAN-12'

     AND aca.org_id = hou.organization_idGROUP BY aca.bank_account_name,

    aia.pay_group_lookup_code,aca.payment_method_lookup_code,acsa.name,acsa.check_stock_id,abaa.org_id,aipa.set_of_books_id,abaa.bank_account_id,abb.bank_name,abb.bank_num,abb.bank_branch_name,abaa.bank_branch_id,

    abaa.bank_account_name,abaa.bank_account_num,abaa.asset_code_combination_id,gcc.concatenated_segments,acf.name,acf.check_format_id,aca.currency_code,

    hou.nameORDER BY 2,max(aca.check_date );

    Download the output of this SQL into an Excel File. 

    System OrgId SOB

    BankAccountId Bank Branch

    BankBranchId

    XXX_Clearing 5001 1002 10002 XXX Bank Branch 10000

    XXX_Quick Check 5006 1009 10020 XXX Bank Branch 10006

    XXX_Manual_Check_Stock 5166 11009 10282 XX_Bank_BR1 20008

    XXX_EDI 5366 22009 15642 XX_Bank_BR2 210008

  • 8/17/2019 R12 Payments

    20/35

    COLLABORATE 13 – OAUG Forum  Page 20 of 35 

    Copyright ©2013 Bechtel Corporation 

    ZZ17_Third_Party 5426 25009 16028 XX_Bank_BR3 223008

    Bank Branch Name Bank NumberCurrencyCode

    CashAccount

    Bank AccountName

    XXX Bank Branch Name EUR XXXX Bank AccountName 1

    XXX Bank Branch Name CNY XX1XX Bank AccountName 2

    XXX Bank BranchName1 03030 USD XX2

    XX Bank AccountName 3

    XXX Bank BranchName2 2333 AUD XX3

    XX Bank AccountName 4

    XXX Bank BranchName3 3300 PEN XX4

    XX Bank AccountName 5

    BankAccountNumber

    DocumentName

    CheckStockId Payment Format Name

    X12344555 CLEARING-EURO 10003 Clearing Payment-EUR

    X12344555AQUICK-CHECK-CNY 10013

    Evergreen Long CHK FormatCNY

    X12344555B USD_CHECK 10273 BEC-PRAIRE-QCHK

    X12344555C EDI-EFT-AUD 10773 BAP-EDI-AUD-EFT

    X12344555D PAYLINK-PEN 11353 Bechtel Paylink Format - PEN

    Format Payment Program Program Short Name

    CheckFormatId

    PaymentMethod

    Oracle Standard Format Payments APXPBFOR 10001 CLEARING

    Evergreen Format Payments Program APXPBFEG 10004 CHECK

    BECHTEL CUSTOM QUICKCHECK BAPCKFEG1 10224 CHECK

    Bechtel EDI Format Program BAP_EDI_FORMAT 10504 EFT

    Bechtel Paylink Format Program BAP_PAYLINK_FORMAT 10984 PAYLINK

    R12 - IBY Format Code

    R12 - IBYFormatName

    Custom R12 -Payment ProcessProfile Code

    Custom R12 -PaymentProcess Profile

    IBY_PAY_CHK_STANDARD_1StandardCheck Format

    BAP_PAYMENT_CLEARING

    Bechtel - ClearingPayment

    IBY_PAY_CHK_STANDARD_2ExternalCheck Format BAP_PAYMENT_CHECK

    Bechtel - CheckPayment

  • 8/17/2019 R12 Payments

    21/35

    COLLABORATE 13 – OAUG Forum  Page 21 of 35 

    Copyright ©2013 Bechtel Corporation 

      There are three important fields, Payment Format Name, Format Payment Program, andProgram Short Name. Sort the data by these fields.

      Query the program short name from 11i using the below query to find out the corresponding R12IBY Format Name. 

    SELECT ifb.format_code r12_format_code,ifb.format_template_code r12_format_template_code,ift.format_name r12_format_name

    FROM ifb_formats_b ifb,ifb_formats_tl ift

    WHERE ifb.format_code = ift.format_code AND ift.langugae = ‘US’  AND ifb.reference_format_code = ‘program_short_name’; 

      Update the Excel with IBY Format Code and IBY Format Name. 

    Clearing / Quick Check Payment 

    To minimize customization and configuration, follow these steps:

      Create a custom check format for recording/clearing using the standard R12 format code. 

      Navigation Path: Setups/Payments/Payment Administrator

      Create new Format.

      Enter the following details 

    Field Name Field Value

    Code CUSTOM_FORMAT_CODE

    Name Custom Format Code Name

    Type Disbursement Payment Instruction

  • 8/17/2019 R12 Payments

    22/35

    COLLABORATE 13 – OAUG Forum  Page 22 of 35 

    Copyright ©2013 Bechtel Corporation 

    Data Extract

    Oracle Payments Funds Disbursement PaymentFormat Instruction Extract, Version 1.0

    XML Publisher Template Standard Check Format

     Attachments None

      Create a Custom Payment Process Profile. 

      Navigation Path: Setups/Payments/Payment Administrator

      Enter the following details 

    Field Name Field Value Comments

    Code CUSTOM_CHECK_PROFILE

    Name Custom Check Profile

    Processing Type Electronic

    Electronic Processing Channel Oracle Payments

    Payment Completion Point

    When the PaymentInstruction is Formatted

     Allow Manual Setting ofpayment Completion No

    Payment Instruction Format Custom Format Code Name

    This is under"PaymentInstruction

    Format" Tab

  • 8/17/2019 R12 Payments

    23/35

    COLLABORATE 13 – OAUG Forum  Page 23 of 35 

    Copyright ©2013 Bechtel Corporation 

      Now the R12 Check Stock table is ready to be updated with this new Format. This willautomatically connect the newly created custom Payment process profile. This can be done for all

    bank accounts possessing this check Format in 11i. 

    UPDATE ce_payment_documentsSET object_version_number = 2,

    format_code = 'CUSTOM_FORMAT_CODE'WHERE internal_bank_account_id IN (SELECT bank_account_id FROM ap_bank_accounts_all)

    Note: The 11i Bank accounts table gets moved as is after the upgrade, but it is no longer used.  

      This step helps you when making manual/quick payments for clearing. The “Payment ProcessProfile” then defaults for each document name for the bank account. If this is not done, then you

    have multiple payment process profile to choose which is confusing, cumbersome, and error

    prone. 

      Care must be taken as the above SQL updates all the check stocks to Clearing/Quick Check.  

    Manual Check 

    Manual checks printed on a check stock stationary must be customized in R12. The 11i check stock is notupgraded to R12. To customize the check stocks, follow the steps:

      In 11i, generally the custom check stock is copied from the Standard Oracle check format, suchas “Evergreen Format.” Find the concurrent program short name for the standard check format. 

      Query the “Program Short Name” in IBY_FORMATS_B.REFERENCE_FORMAT_CODE. 

      Find out the “Format Code” and “Format Template Code” from the table. 

      This is the starting point for the Customization. 

      The setup of Custom Formats involves the following steps: 

      Create a RTF Template for the Check/EFT Format  Register the Template  Define Format, link them to XML Template and assign other validations

      To create a new Format, use the “Create” Button 

     A Default “Code” is “SAMPLE_FORMAT_CODE>” This needs to be changed to Custom Format

    Code which has been created as a Template.

  • 8/17/2019 R12 Payments

    24/35

    COLLABORATE 13 – OAUG Forum  Page 24 of 35 

    Copyright ©2013 Bechtel Corporation 

    The other information, such as, “Data Extract,” has the following options 

    Choose “Oracle Payments Funds Disbursement Payment Instruction Extract, Version 1.0”  

    “XML Publisher Template” and “Name” is the Registered Template and Name “Type.”. Choose “Disbursement Payment Instruction” 

      Create a Custom Payment Process Profile. 

      Navigation Path: Setups/Payments/Payment Administrator

  • 8/17/2019 R12 Payments

    25/35

    COLLABORATE 13 – OAUG Forum  Page 25 of 35 

    Copyright ©2013 Bechtel Corporation 

      Enter the following details

    Field Name Field Value Comments

    Code CUSTOM_CHECK_PROFILE

    Name Custom Check Profile

    Processing Type Electronic

    Electronic Processing Channel Oracle Payments

    Payment Completion Point

    When the PaymentInstruction is Formatted

     Allow Manual Setting ofpayment Completion No

    Payment Instruction Format Custom Format Code Name

    This is under"PaymentInstructionFormat" Tab

      Once the Custom Check Stock is configured, attach it to the Bank Account as a new PaymentDocument. The Custom Payment Process Profile automatically gets associated.

      Create a Payment Batch using the Bank Account and Custom Payment Document.

      The output of the Payment Batch is an RTF Template.

      Delete the xml fields which are not required and re-format the RTF Template to look similar to the11i Check Format.

    EDI Payments

    Every organization has customized check stocks for printing checks. When we complete the upgrade

    from 11i to R12, none of the custom check formats will be converted. The custom check stocks will

    have to be converted to the RTF template using the standard payment XML Tag.

      Payment Batches are normally created when the organization is either printing a check on a pre-printed check stock or creating an EDI file to be sent to the bank.

      In both circumstances, Oracle R12 provides a standard mechanism to create an XML tag. ThisXML tag can then be used to create an RTF template for Check printing, or it can be used as

    input for an EDI file.   One standard XML tag can be created for all custom check formats and EDI files. 

      To create an standard payment XML tag, it is necessary to create a new Format and a PaymentProcess Profile as shown below: 

  • 8/17/2019 R12 Payments

    26/35

    COLLABORATE 13 – OAUG Forum  Page 26 of 35 

    Copyright ©2013 Bechtel Corporation 

      Navigation Path: Setups/Payments/Payment Administrator

      Create new Format.

      Enter the following details.

    FieldName Field Value

    Code CUSTOM_FORMAT_CODE_FOR_XML

    Name Custom Format Code Name for XML

    Type Disbursement Payment Instruction

    Data Extract

    Oracle Payments Funds Disbursement PaymentFormat Instruction Extract, Version 1.0

    XML Publisher Template Extract Identity

     Attachments None

      Create a Custom Payment Process Profile. 

      Navigation Path: Setups/Payments/Payment Administrator

  • 8/17/2019 R12 Payments

    27/35

    COLLABORATE 13 – OAUG Forum  Page 27 of 35 

    Copyright ©2013 Bechtel Corporation 

      Enter the following details

    Field Name Field Value Comments

    Code CUSTOM_CHECK_PROFILE_XML

    Name Custom Check Profile for XML

    Processing Type ElectronicElectronic ProcessingChannel Oracle Payments

    Payment Completion Point

    When the Payment Instruction isFormatted

     Allow Manual Setting ofpayment Completion No

      Create Payment System Transmissions 

      Navigation Path: Setups/Payments/Payment Administrator

    Field Name Field Value Comments

    Select Protocol Local File System Delivery Click "Create Configuration"

    Name Bechtel File System Delivery

    Enter Name and leave the rest

    as default

  • 8/17/2019 R12 Payments

    28/35

    COLLABORATE 13 – OAUG Forum  Page 28 of 35 

    Copyright ©2013 Bechtel Corporation 

      Create Payment Systems

      Navigation Path: Setups/Payments/Payment Administrator

      Enter the following details

    Field Name Field Value Comments

    Code BAP_EDI

    Name Bechtel EDI Payment Systems

    Processing Model Processor

    Bank Account

    Transfer Yes This is under "Funds Capture"

    Name Bechtel EDI Format Code This is under " Formats"

    Type Disbursement Payment Instruction This is under " Formats"

    Name Local File System Delivery This is under " Formats"

    Add a new row under "Settings

    Required by Payment Systems"

    Code TEST

    Name TEST

    Data Type Date

  • 8/17/2019 R12 Payments

    29/35

    COLLABORATE 13 – OAUG Forum  Page 29 of 35 

    Copyright ©2013 Bechtel Corporation 

      Update the Payment Process Profile for “Payment System” Tab 

      Search for “BAP_EDI_PAYMENT_PROFILE 

      Click “Update” 

      Navigate to “Payment System” Tab and enter the details as shown below  

       Also update the following:

    Field Name Field Value

    Electronic Processing Channel Oracle Payments

    Payment Completion Point When the Payment Instruction is Transmitted

      Now run a Payment batch using this new Payment Process Profile. You can either create a newTemplate or enter the selection criteria for the batch manually. Make sure under the “Process Automation” tab, “Stop Process for Review After Scheduled Payment Selection” is checked. Thisprompts the payment batch to stop after the creation. 

      Select / De-select invoices for this payment batch. 

      Submit the Payment batch for completion.   Once the batch has been “Formatted” the XML tag can be found in the output of the Concurrent

    Program “Format Payment Instructions.” 

  • 8/17/2019 R12 Payments

    30/35

    COLLABORATE 13 – OAUG Forum  Page 30 of 35 

    Copyright ©2013 Bechtel Corporation 

    Output of “Format Payment Instructions” is the Standard Oracle XML Tag 

     

    -

    + Batch Information

    + Payment Process Profile Name

    + Payment Format Code

    + Document Name

    + Total Checks

    + Payer, Bank Accounts and Details

    + Organization Details

      For creating an extension or a custom hook to the standard Payment XML tag, Oracle hasprovided a package “IBY_FD_EXTRACT_PUB”. 

      This package can be used to create custom tags as needed: 

    XML File Level

    IBY_FD_EXTRACT_EXT

     _PUB Function To

    Modify

    Example of Parameter Usage

    OutboundPaymentInstr 

    uction

    Get_Ins_Ext_Agg(p_pay

    ment_instruction_id IN

    NUMBER)

    SELECT * FROM

    iby_pay_instructions_all WHERE

    payment_instruction_id =

    p_payment_instruction_id;

    OutboundPaymentGet_Pmt_Ext_Agg(p_pa

    yment_id IN NUMBER)

    SELECT * FROM iby_payments_all

    ipa WHERE ipa.payment_id =

    p_payment_id;

    DocumentPayable

    Get_Doc_Ext_Agg(p_do

    cument_payable_id IN

    NUMBER)

    SELECT * FROM

    iby_docs_payable_all dp WHERE

    dp.document_payable_id =

    P_document_payable_id;

    DocumentPayableLine

    Get_Docline_Ext_Agg(p

     _document_payable_id

    IN NUMBER,

    p_line_number IN

    NUMBER)

  • 8/17/2019 R12 Payments

    31/35

    COLLABORATE 13 – OAUG Forum  Page 31 of 35 

    Copyright ©2013 Bechtel Corporation 

    PaymentProcessProfile

    Get_Ppr_Ext_Agg(p_pa

    yment_service_request_ 

    id IN NUMBER)

    SELECT * FROM

    iby_pay_service_requests WHERE

    payment_service_request_id =

    p_payment_service_request_id;

    Top Level: Outbound Payment Instruction:

    This is the top level of the XML File and there is one Outbound Payment Instruction per

    Payment process request.

    Level 2: Outbound Payment: 

    This is the Payment Level, i.e. an individual check or BACS payment amount to a

    supplier. There can be multiple Outbound Payments per Outbound Payment Instruction.

    Level 3: Document Payable: Details the documents (i.e. invoices) being paid. There can be multiple Document

    Payable tags per Outbound Payment.

    Level 4: Document Payable Line:

    This level details the invoice line. There can be multiple Document Payable Line tags per

    Document Payable.

    Third-Party Payments

    Every organization has sometimes a very unique requirement when making payments. This is due to

    legacy system or the third-party company which is being used for making payments. The file format forthese kinds of payments is very specific and unique which cannot be easily customized using RTF

    Template or eText. The R12 Payment configuration and Customization for these kinds of file formats is

    not recommended by Oracle, but still can be done. The assumption is that a Concurrent Program already

    exists which is either a SQL or a PL/SQL package which creates this file format.

    Follow the steps to accomplish exactly the same file format:

      Create a new Custom Payment Method – “Third-Party Payment Method” 

      Create a new Custom Format – “Third-Party Format;”  use the Oracle Standard XML Template

    used for Clearing Payments or Check Payment

      Create a new Custom Payment Process Profile using the “Third-Party Payment Method” and

    specify any currency if applicable

       Add the “Organization Names” to the Custom Payment Process Profile to make it very specific to

    the Third-party payment

  • 8/17/2019 R12 Payments

    32/35

    COLLABORATE 13 – OAUG Forum  Page 32 of 35 

    Copyright ©2013 Bechtel Corporation 

      Create a Custom Payment Document (Check Stock) for the Internal Bank Account using the

    Custom Third Party Format

      Create a Payment Template with all the required Payment Attributes; Disbursement Bank

     Account, Payment Document Name, Payment Process Profile, and Payment Exchange Rate

      Make sure under “Process Automation” Tab, the check box labeled “Stop Process for Review

     After Scheduled Payment Selection” is checked  

      Create a Payment Batch using this new Template

      Select/De-Select invoices and “Submit” the Payment batch  

      The Payment Batch completes normally and stops at the status “Formatting” 

      Change the Custom 11i SQL or PL/SQL Package code to reflect the R12 Payment tables

    11i Tables Comments R12 Tables AP_INV_SELECTION_CRITERIA_ALL No Change AP_INV_SELECTION_CRITERIA_ALL

    PO_VENDORS Changed AP_SUPPLIERS

    PO_VENDOR_SITES Changed AP_SUPPLIER_SITES_ALL

     AP_SELECTED_INVOICE_CHECKS Obsolete IBY_DOCS_PAYABLE_ALL

     AP_SELECTED_INVOICES_ALL No Change AP_SELECTED_INVOICES_ALL

    IBY_PAY_SERVICE_REQUESTS

    IBY_PAYMENTS_ALL

      Change the program to pick up all the selected invoices with Payment Batch Status =

    “Formatting” 

      Run the Custom program to format the file as required

  • 8/17/2019 R12 Payments

    33/35

    COLLABORATE 13 – OAUG Forum  Page 33 of 35 

    Copyright ©2013 Bechtel Corporation 

      If the formatted file needs to be FTP to the Third-Party software, create a small shell script to FTP

    the file

      Update the status of the Payment batch to “Formatted” after the file has been successfully FTP to

    the Third-Party system

      Confirm the Payment Batch

    Note: This is a Non-Standard way of creating a Payment File.

    Lessons Learned

    During the R12 upgrade process, and in particular for the Payments, the following points could speed up

    configuration and save an organization lost productivity caused by rework, while limiting the need for

    additional patches.

      First and foremost, make sure to cancel all payment batches in 11i before upgrading to R12. The

    Payment batch status of all the batches should be e ither “Confirmed” or “Canceled.” 

      Cleanup Bank, Branches, and Bank Accounts in 11i prior to the upgrade. Make sure the NULL

    country codes for Banks are updated with a Country code. If this step is not done, during the R12

    upgrade the Banks country code will default to “United States.” 

      The Location Code used in 11i for Legal Entity MUST have a valid Location Address, in particular

    “Country.” The R12 Upgrade is dependent on this. The Bank Accounts and other default

    configuration will be incomplete if this step is missed. The only way to repair this is to apply

    additional patches.

      In R12, because the Banks, Branches and Bank Accounts are now Parties, the upgrade process

    makes some of the banks redundant if it is setup by currency in 11i.

      It is advised to unmask the Bank Account Numbers for initial configuration and setups.  When a Payment Batch is created in R12 using the XML tag, the “Check Number” tag does not

    contain the “Check Number.” It contains a unique sequence “Payment Instruction ID.” Thus, care

    must be taken to find the “Check Number“  from the “Payment Instruction ID” and update the

    corresponding table when the EDI acknowledgement file is received from the bank.

      The Oracle Standard XML Tag is very detailed and exhaustive. Oracle has incorporated almost

    every minute detail of Payer, Payee, Bank, and other invoice information. Do not try to over-write

    the Standard tag information using the Extension. Instead, try to configure correctly so that the

    tag’s information gets populated during Payment Batch creation.

      In 11i, “Pay Group” plays a very important role in Payment Batch process. In R12, the role of “Pay

    Group” is very limited; it is only used to select invoices. The “Pay Group” is NOT saved in any

    R12 payment table. Therefore, any customization in terms of reporting using the Pay Group is

    difficult to achieve.

      Do not underestimate EDI Payments using XML tags. Since this is relatively new in R12, end-to-

    end testing is essential.

      Make sure to print the XML RTF template for Check Stocks.

  • 8/17/2019 R12 Payments

    34/35

    COLLABORATE 13 – OAUG Forum  Page 34 of 35 

    Copyright ©2013 Bechtel Corporation 

    11i vs. R12 Payments: Table Level Comparison

    We have also noted that many of the 11i Payment tables have changed in R12. Below is a summary of

    some of the key configuration tables for 11i and R12.

    S.No Process/Setup Oracle 11i TablesChange(Yes/No) R12 Tables

    1 Supplier Workbench   PO_VENDORS Yes AP_SUPPLIERS, HZ_PARTIES

    2 Supplier Sites   PO_VENOR_SITES_ALL Yes

     AP_SUPPLIER_SITES_ALL,

    HZ_RELATIONSHIPS,

    HZ_RELATIONSHIP_TYPES,

    HZ_ORG_CONTACTS,

    HZ_ORG_CONTACT_ROLES,

    HZ_CONTACT_POINTS, HZ_PARTY_SITES,

    HZ_ORGANIZATION_PROFILES,

    HZ_LOCATIONS

    3 Banks and Branches   AP_BANK_BRANCHES Yes

    HZ_PARTIES,

    HZ_ORGANIZATION_PROFILES,

    HZ_RELATIONSHIPS,

    4 Internal Bank Accounts   AP_BANK_ACCOUNTS_ALL Yes

    CE_BANK_ACCOUNTS,

    CE_GL_ACCOUNTS_CCID,

    CE_BANKS_V,CE_BANK_BRANCHES_V

    7 Supplier Bank Accounts

     AP_BANK_ACCOUNTS_ALL,

     AP_BANK_ACCOUNT_USES_ALL Yes

    IBY_EXTERNAL_PAYEES_ALL,

    IBY_EXT_BANK_ACCOUNTS,

    IBY_PMT_INSTR_USES_ALL,

    CE_BANK_ACCOUNT_USES_ALL

    8 Check Stocks   AP_CHECK_STOCKS_ALL Yes

    CE_PAYMENT_DOCUMENTS,

    IBY_DOCUMENTS_B

    9 Check Formats   AP_CHECK_FORMATS Yes IBY_FORMATS_B, IBY_FORMATS_TL

    10   Payment Methods   LOOKUP TABLE Yes IBY_PAYMENT_METHODS_TL

    S.No Process/Setup Oracle 11i

    Change

    (Yes/No)

    Oracle R12 (What is the

    change)

    1 Quick /Manual Check

     AP_INV_SELECTION_CRITERIA_ALL,

     AP_CHECKS_ALL,

     AP_PAYMENT_SCHEDULES_ALL Yes IBY_DOCS_PAYABLE_ALL

    2 Payment Batch

     AP_INV_SELECTION_CRITERIA_ALL,

     AP_CHECKS_ALL,

     AP_PAYMENT_SCHEDULES_ALL,

     AP_SELECTED_INVOICES_ALL,

     AP_SELECTED_CHECKS_ALL Yes

    IBY_DOCS_PAYABLE_ALL,IBY_PAYMENTS_ 

     ALL, IBY_PAY_SERVICE_REQUESTS,

    IBY_PAY_INSTRUCTIONS_ALL

    Payments

    Setups

  • 8/17/2019 R12 Payments

    35/35

    Conclusion

    We have observed that Oracle Release 12 Payments has many benefits in terms of consolidation and

    integration. The configuration has changed drastically, with added features for better control and

    efficiency. That being said, it is not easy to navigate customization changes, even though Oracle has

    standardized the XML Tags and RTF templates. The use of Extensions to achieve further customization

    has enriched the development experience altogether. It would be in the best interest of any organization

    to spend once some quality time in the development of these customizations/templates and protect them

    against future patch applications, migrations, and upgrades.

    Overall, the experience of Oracle Payments in Release 12 with regards to configuration and Payment

    processing is very promising and is in the right direction of growth.