You are on page 1of 50

4/20/2019 Document 1067402.

1
Copyright (c) 2019, Oracle. All rights reserved. Oracle Confidential.

AutoInvoice Setup for Release 12: A Case Study Using a Simple Script (Doc ID 1067402.1)

In this Document

Abstract
History
Details
1. Define Common Accounts Receivable Configuration
2. Manage Receivables Descriptive Flexfields
3. Manage Receivables Profile Options
4. Manage Transaction Types
5. Manage AutoAccounting Rules
6. Manage AutoInvoice Line Ordering Rules
7. Manage AutoInvoice Grouping Rules
8. Manage Receivables Payment Terms
9. Manage Transaction Sources
10. Manage Receipt Classes and Methods
11. Manage Receivables Customer Profile Classes
12. Create Customer
13. Manage Receivables System Options
14. Manage Receivables Accounting Periods
15. Manage Remit-To Address
16. Populate Interface table
a. Insert statement for an INVOICE
b. Insert statement for an APPLIED CREDIT MEMO
c. Insert statement for an ON-ACCOUNT CREDIT MEMO
d. Insert statement for an INVOICE and CREDIT MEMO WITH MANUAL TAX LINES
e. Insert statement for an INVOICE WITH RULES
f. Insert statement for an INVOICE WITH GL DISTRIBUTIONS
g. Insert statement for an INVOICE WITH SALESCREDITS
h. Insert statement for an INVOICE WITH HEADER LEVEL FREIGHT
i. Insert statement for an INVOICE WITH FREIGHT AS AN INVENTORY ITEM
17. Testing AutoInvoice: AutoInvoice Import Process
18. Purging the Interface Table After Import
19. Scheduling AutoInvoice
20. Review Invoice Created by AutoInvoice
21. Troubleshooting & Tips
22. Still Have Questions?
Summary
References

APPLIES TO:

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 1/50
4/20/2019 Document 1067402.1

Oracle Receivables - Version 12.0.0 and later


Information in this document applies to any platform.
Executable:RAXMTR - Autoinvoice Master Program
Executable:RAXTRX - Autoinvoice Import Program

ABSTRACT

Oracle Receivables (AR): AutoInvoice Information Center > Note 1067402.1

The objective of this document is to provide step by step instructions on the setups required in Receivables (AR) in order for
you to create simple transactions. Using a SQL script to insert data into the interface table, AutoInvoice is then run to create
the invoice in the core AR tables. Review the section Populate Interface Table below for the various example scripts provided.

This document lists the required setups in proper sequence, provides a sample script, details on how to run and test your
script, and how to verify the transactions were created in Receivables.

Please provide your input, ideas, gaps and suggestions so we can further enhance this note by posting to the community
thread for Learn What Setups Are Required To Setup Receivables To Use A Simple Script To Import Transactions Via
AutoInvoice Release 12.

HISTORY

Authors: Victoria Crisostomo, Kiran Kunderu & Frank Halvey


Creation Date: 22-Mar-2010
Update Date: 16-Mar-2017
Checked for relevance 16-Mar-2017

DETAILS

1. Define Common Accounts Receivable Configuration

Common Accounts configuration pertains to the Accounting Flexfield setup. This is done in the General Ledger (GL)
application. The assumption of this case study is that you have already defined your accounting flexfield segments, and can
create and complete manual transactions using the Transaction Workbench.

If you need more information on how to set up your Accounting Flexfield, refer to the Oracle General Ledger Implementation
Guide, page 1-33.

2. Manage Receivables Descriptive Flexfields

Oracle Receivables uses the transaction flexfields to uniquely identify each transaction line that is imported though
AutoInvoice.

AutoInvoice is capable of using information from four types of transaction flexfields:

Line Transaction Flexfield


Link-to Transaction Flexfield
Reference Transaction Flexfield
Invoice Transaction Flexfield

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 2/50
4/20/2019 Document 1067402.1

More details on each of these types is available in Note 1068344.1, Setting Up Receivables Descriptive Flexfields.

For this case study, you need to setup a Line Transaction Flexfield as shown below.

Click on the segments button to create the following rows. The values in the field Column are not shown completely, they are
INTERFACE_LINE_ATTRIBUTE1 and INTERFACE_LINE_ATTRIBUTE2 respectively.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 3/50
4/20/2019 Document 1067402.1

3. Manage Receivables Profile Options

Several Profile options impact the behavior of AutoInvoice. Please refer to Note 1069294.1, Setting Up System Profile Options
For AutoInvoice for details.

4. Manage Transaction Types

The data you insert into the interface table will be associated to a particular transaction type.
Create an invoice transaction type which will be used when we insert data into the Interface table.

Responsibility: Receivables Manager


Navigation: Setup > Transactions > Transaction Types

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 4/50
4/20/2019 Document 1067402.1

Note: If you also want to run a test case to import a Credit memo, create a Credit Memo transaction type as shown below,
otherwise you don't need to create a Credit Memo transaction type.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 5/50
4/20/2019 Document 1067402.1

To see more details on how to create new transaction types, please refer to Note 1067797.1, Setting Up Transaction Types In
Receivables.

Please note that if you want to use the AutoAccounting functionality (next task), and some of the segments of the Account are
sourced from the transaction type, then you must define GL accounts in the Accounts tab.

5. Manage AutoAccounting Rules

AutoAccounting enables you to create default accounts for revenue, receivable, freight, tax, unearned revenue, unbilled
receivable, late charges, bills receivables accounts, and AutoInvoice clearing (suspense) accounts.

In the following screen, the source for the third segment is 'Transaction Types'. When the default accounting is generated for
the Receivable account, the accounting flexfield will pull the third segment from the Receivables account defined for the
transaction type. If we cross-reference this to the screenshot from the previous task, the value for the third segment is 1210,
coming from 01-000- 1210
-0000-000 defined for Receivables account.

Responsibility: Receivables Manager


Navigation: Setup > Transactions > AutoAccounting

During AutoInvoice, you are interfacing data with the intention of creating complete transactions automatically. Hence, you are

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 6/50
4/20/2019 Document 1067402.1

advised to complete the setup for AutoAccounting so that AutoInvoice can determine the GL accounts to use for your
interfaced transactions, and process them completely without errors and without the need for manual intervention.

To see how to manage and setup AutoAccounting, please refer to Note 1069052.1, Setting Up AutoAccounting Rules In
Receivables.

6. Manage AutoInvoice Line Ordering Rules

If you want the data in your interface table to be created in a particular sort order, define Line Ordering Rules.

The following screenshot shows a Line Ordering Rule, that references the same fields we used in the Line transaction flexfield
defined in Task 2 above.

Responsibility: Receivables Manager


Navigation: Setup > Transactions > AutoInvoice > Line Ordering Rules

To see how to manage and setup AutoInvoice Line Ordering Rules, please refer to Note 1067965.1, How to Manage Line
Ordering When Using Autoinvoice To Import.

7. Manage AutoInvoice Grouping Rules

Grouping rules specify attributes that must be identical for lines to be created as one transaction. Grouping rules always
include the mandatory attributes, and to this is added optional attributes that you define in your grouping rule.

The following screenshot shows a Grouping Rule that uses the Line Ordering Rule defined in Task 6 above.

Responsibility: Receivables Manager


Navigation: Setup > Transactions > AutoInvoice > Grouping Rules

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 7/50
4/20/2019 Document 1067402.1

To see how to manage and setup AutoInvoice Grouping Rules, please refer to Note 1067993.1, How To Use Grouping Rules
With AutoInvoice.

8. Manage Receivables Payment Terms

Payment terms let you define the due date to be calculated for transactions. When you interface data, it is mandatory to
provide either a TERM_ID or a TERM_NAME in the RA_INTERFACE_LINES_ALL table (depending on how you have set up your
transaction batch source). Although there is a defaulting mechanism for payment term when entering transactions manually in
the form, this is defaulting is not available during AutoInvoice, because it would significantly slow down the performance of
the process.

The following screenshot shows a Payment term we will use in our interface data.

Responsibility: Receivables Manager


Navigation: Setup > Transactions > Payment Terms

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 8/50
4/20/2019 Document 1067402.1

To see how to manage and setup Payment Terms, please refer to Note 1069049.1, How To Define Transaction Payment
Terms In Receivables.

9. Manage Transaction Sources

Batch sources define default information such as transaction type and automatic numbering. There are two types available:
Manual and Imported. AutoInvoice requires a batch of type Imported.

The following screenshot shows a Transaction source we will use to interface data via AutoInvoice. Highlighted below is the
transaction type we created earlier, here we are associating it to this Imported Batch Source.

Responsibility: Receivables Manager


Navigation: Setup > Transactions > Sources

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 9/50
4/20/2019 Document 1067402.1

Following screenshots show the sub-tab for the Transaction Sources form:

The AutoInvoice Options tab highlights the Grouping rule created earlier. The setup indicates this batch will group data as
specified in this grouping rule.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 10/50
4/20/2019 Document 1067402.1

The following screenshots show the rest of the sub-tabs of this form, including Customer, Accounting, Salescredit and other
information. You need to define whether the data you will interface provides the Value or the ID so that AutoInvoice can
validate the data.

Customer Information tab:

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 11/50
4/20/2019 Document 1067402.1

Accounting Information tab:

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 12/50
4/20/2019 Document 1067402.1

Other Information tab:

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 13/50
4/20/2019 Document 1067402.1

Sales Credit Validation tab:

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 14/50
4/20/2019 Document 1067402.1

To see how to manage and setup Transaction Sources, please refer to Note 1068008.1, Creating Transaction Sources Used For
AutoInvoice.

10. Manage Receipt Classes and Methods

To default a payment method to the transactions you interface via AutoInvoice, you need to define a Receipt Class and
Method for your transaction to use.

Responsibility: Receivables Manager


Navigation: Setup > Receipts > Receipt Classes

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 15/50
4/20/2019 Document 1067402.1

To see how to manage and setup Receipt Classes and Methods, please refer to Note 1071284.1, Setting Up Receipt Class And
Method For AutoInvoice.

11. Manage Receivables Customer Profile Classes

Oracle Receivables provides a profile class DEFAULT.

If necessary, you can define different customer profile classes to categorize your customers. You can associate Customer
Profile classes to customer records you create later. By using a profile class you default certain attributes/fields into the
customer records to make customer maintenance more efficient.

The following screenshot defines a new customer profile class, to which we associate the Payment Term from Task 8 and the
grouping rule from Task 7.

Responsibility: Receivables Manager


Navigation: Customers > Profile Classes

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 16/50
4/20/2019 Document 1067402.1

To see how to manage and setup Customer Profile Classes, please refer to Note 1071218.1, How To Define Customer Profile
Classes For AutoInvoice.

12. Create Customer

Create customer record to use for interface data, at this point we reference various setup data we created earlier.

The following screenshot shows the various sub-tabs at the ACCOUNT profile level.

On the Account Profile tab, we associate to this customer record the customer profile created in Task 11, the payment term
from Task 8 and the Grouping Rule from Task 7 created earlier.

Responsibility: Receivables Manager


Navigation: Customers > Customers

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 17/50
4/20/2019 Document 1067402.1

Payment Details tab: here we associate to this customer record the Receipt method created in Task 10.
We have defined the Receipt method at the ACCOUNT level profile. If this customer has only one site, or all the Sites of this

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 18/50
4/20/2019 Document 1067402.1

customer will use the same Receipt method, there is no need to set up Payment Details at the Site Level.

However, if there will be multiple sites for this account, and each site that uses a Receipt method different from that set at the
ACCOUNT level, then you will need to set up the Payment Details at the SITE level as shown below.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 19/50
4/20/2019 Document 1067402.1

To see how to Create Customer Records, please refer to Note 1069338.1 How To Define Customers For AutoInvoice.

13. Manage Receivables System Options


https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 20/50
4/20/2019 Document 1067402.1

The settings in System Options that impact AutoInvoice are in the Trans and Customers tab. The following screenshot shows
recommended settings for fields in the 'AutoInvoice' Section. Also highlighted is the Grouping rule we defined earlier.

Log file message level = 10 provides the most detailed debug messages, and is useful when you are debugging or
troubleshooting.

Responsibility: Receivables Manager


Navigation: Setup > System > System Options

To see how to Manage Receivable System Options, please refer to Note 1068052.1, How To Manage Receivables System
Options For AutoInvoice.

Additional information on the Tuning Segments, refer to the Oracle Receivables User's Guide, page 2-210.

14. Manage Receivables Accounting Periods

Open or close periods in your accounting calendar to control the recording of accounting information for these periods. Since
the objective of AutoInvoice is to create new transactions, the goal is to have these transactions impact open GL periods.

Ensure that the GL_DATE value you provide in the next task is within an open period.

Responsibility: Receivables Manager


Navigation: Control > Accounting > Open/Close periods

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 21/50
4/20/2019 Document 1067402.1

To see how to Manage Receivable Accounting Periods, please refer to Note 1069057.1, How To Manage Receivables
Accounting Periods.

15. Manage Remit-To Address

Define a Remit-To Address so that customers know where to send payment for their invoices.

Responsibility: Receivables Manager


Navigation: Setup > Print > Remit To Address > Create Remit-To Address

To see how to create Remit-to addresses, please refer to Note 1101666.1, How to Setup a Remit-To Address in Release 12
Oracle Receivables

16. Populate Interface table

At this point we have completed the bare minimum setup required to enable us to insert data into the interface table and have
it processed by AutoInvoice to create a transaction in the core AR tables.
The following section gives you sample scripts to populate the table for various scenarios.

Note:
For a detailed discussion of the fields in RA_INTERFACE_LINES_ALL, please review Note 1195997.1, Description and Usage
of Fields in RA_INTERFACE_LINES Table.

a. Insert statement for an INVOICE

The following script will create a simple invoice.

INSERT INTO ra_interface_lines_all(interface_line_context, interface_line_attribute1,


interface_line_attribute2,
amount, batch_source_name, conversion_rate,
conversion_type, currency_code, cust_trx_type_id,
description, gl_date, line_type,
orig_system_bill_address_id, orig_system_bill_customer_id,
quantity, unit_selling_price,

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 22/50
4/20/2019 Document 1067402.1
term_id, taxable_flag, amount_includes_tax_flag,
set_of_books_id, org_id)
VALUES
('TIP', 'TIP SAMPLE INVOICE 1', 'TIP SAMPLE INVOICE 1',
1000.00, 'TIP BATCH SOURCE', 1,
'User', 'USD', 3627,
'TIP SAMPLE INVOICE 1 - ITEM #1', '31-JAN-2010', 'LINE',
11145, 117751,
10, 100.00,
1514, 'Y', 'N',
1, 204);

COMMIT;

For some fields, we pass constant values and for other fields we need to provide values that tie in with the setup
we created in Tasks 1 - 14 above. The following section explains how to determine the ID values created during
the setup.

INTERFACE_LINE_CONTEXT - identifies the Transaction Flexfield used by the interface data; this helps AutoInvoice
understand what data is being passed in the interface table's fields. The value here ties in with the setup created in
Task 2, where we created the Line Transaction Flexfield 'TIP'.

Use the value = 'TIP'

INTERFACE_LINE_ATTRIBUTE1 and INTERFACE_LINE_ATTRIBUTE2 - the combination of values in these two


fields uniquely identify the transaction you are creating.

Use the values = 'TIP SAMPLE INVOICE 1' and 'TIP SAMPLE INVOICE 1'

AMOUNT - this field contains the value of your transaction; pass in a constant. This value should be the product of the
numbers you pass in for QUANTITY * UNIT_SELLING_PRICE.

Use the value = 1000.00

BATCH_SOURCE_NAME - the value you specify here identifies the transaction batch source to be used by
AutoInvoice when interfacing this transaction. In Task 9, we created the Batch Source 'TIP BATCH SOURCE'.

Use the value = 'TIP BATCH SOURCE'

CONVERSION_RATE - For non-functional currency transactions, this field would contain the exchange rate value. For
our test case, we are creating a transaction in the functional currency = USD, so the rate is 1.

Use the value = 1

CONVERSION_TYPE - Specify the conversion rate type, for our test case we will use 'User'.

Use the value = 'User'

CURRENCY_CODE - Indicate the currency code of the transaction, for our test case we will use 'USD'.

Use the value = 'USD'

CUST_TRX_TYPE_ID - identifies the ID associated to the transaction type we created in Task 4 where we defined
'TIP INVOICE'.

To determine the ID associated to this transaction type, run the following:


Please note that the ID may be different in your instance.
select cust_trx_type_id
from ra_cust_trx_types_all
where name = 'TIP INVOICE';

Use the value = 3627

DESCRIPTION - enter a line item description.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 23/50
4/20/2019 Document 1067402.1

Use the value = 'TIP SAMPLE INVOICE 1 - ITEM #1'

GL_DATE - the value you specify here will be used by AutoInvoice as the GL_DATE of your transaction. Typically the
period in which this GL_DATE value falls should be an open period.

Use the value = '31-JAN-2010'

LINE_TYPE - indicates the type of line this interface data defines.

Use the value = 'LINE'

ORIG_SYSTEM_BILL_ADDRESS_ID and ORIG_SYSTEM_BILL_CUSTOMER_ID - identifies the Address ID and


Customer ID associated to the invoice.

To determine the ID values to use, run the following:

Please note that the ID may be different in your instance.


select c.cust_acct_site_id orig_system_bill_address_id, b.cust_account_id
orig_system_bill_customer_id
from hz_parties a,
hz_cust_accounts b,
hz_cust_acct_sites_all c,
hz_cust_site_uses_all d
where a.party_name = 'TIP CUSTOMER 1'
and a.party_id = b.party_id
and c.cust_account_id = b.cust_account_id
and c.cust_acct_site_id = d.cust_acct_site_id
and d.site_use_code = 'BILL_TO';

Use the values = 11145 and 117751

QUANTITY - specify the number of items.

Use the value = 10

UNIT_SELLING_PRICE - specify the price of each item.

Use the value = 100.00

TERM_ID - identifies the term ID associated with the setup created in Task 8.

To determine the ID value to use, run the following:

Please note that the ID may be different in your instance.


select term_id
from ra_terms
where name = 'TIP TERM';

Use the value = 1514

TAXABLE_FLAG - indicates whether or not the transaction is taxable.

Use the value = 'Y'

AMOUNT_INCLUDES_TAX_FLAG - indicates whether or not the amount is inclusive of taxes.

Use the value = 'N'

SET_OF_BOOKS_ID - identifies the Set of Books ID associated to the Operating Unit you are processing your
transaction in.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 24/50
4/20/2019 Document 1067402.1

The set of books id is associated to your Operating Unit. If you know your operating unit ID, you can run the
following:

Please note that the ORG_ID in your instance may be different.


select set_of_books_id
from ar_system_parameters_all
where org_id = &org_id;

Use the value = 1

To find your ORG_ID run the script below:

Select organization_id, name

From hr_organization_units;

ORG_ID - indicates the ID of the Operating Unit against which this transaction is created.

Use the value = 204

If you do not know your ORG_ID or SET_OF_BOOKS_ID value, you can use General Setup diagnostics (e.g. in R
12.0.6 this is Note 732193.1). This will show the value of ORG_ID beside the Operating Unit Name, and
SET_OF_BOOKS_ID beside the Ledger Name.

b. Insert statement for an APPLIED CREDIT MEMO

This following script will create a Credit Memo against the Invoice created above. The text highlighted in bold
are the changes from the insert script for the Invoice.

OPTION 1:
If the Invoice you are crediting was also created via AutoInvoice, then you can populate
REFERENCE_LINE_CONTEXT and REFERENCE_LINE_ATTRIBUTE* fields with values that would uniquely identify
the invoice. Otherwise, please review Option 2 below.

INSERT INTO ra_interface_lines_all


(interface_line_context, interface_line_attribute1, interface_line_attribute2,
reference_line_context, reference_line_attribute1, reference_line_attribute2,
amount, batch_source_name, conversion_rate,
conversion_type, currency_code, cust_trx_type_id,
description, gl_date, line_type,
orig_system_bill_address_id, orig_system_bill_customer_id,
quantity, unit_selling_price,
term_id, taxable_flag, amount_includes_tax_flag,
set_of_books_id, org_id)
VALUES
('TIP', 'TIP SAMPLE CM 1', 'TIP SAMPLE CM 1',
'TIP', 'TIP SAMPLE INVOICE 1', 'TIP SAMPLE INVOICE 1',
-10.00, 'TIP BATCH SOURCE', 1,
'User', 'USD', 3628,
'TIP SAMPLE CM 1 - ITEM #1', '31-JAN-2010', 'LINE',
11145, 117751,
-1, 10.00,
null, 'Y', 'N',
1, 204);

The following section explains how to determine the ID values created during the setup. Many of the fields are
the same as the insert statement used for the Invoice. We will focus on the things that changed.

INTERFACE_LINE_ATTRIBUTE1 and INTERFACE_LINE_ATTRIBUTE2 - the combination of values


in these two fields uniquely identify the transaction you are creating.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 25/50
4/20/2019 Document 1067402.1

Use the values = 'TIP SAMPLE CM 1' and 'TIP SAMPLE CM 1'

REFERENCE_LINE_CONTEXT
REFERENCE_LINE_ATTRIBUTE1
REFERENCE_LINE_ATTRIBUTE2

These fields associate this credit memo to an invoice, the values in these fields need to match the
INTERFACE_LINE* fields of the invoice, because this is how you are telling Autoinvoice which
Invoice you want to apply this Credit memo to.

AMOUNT - this field contains the value of your credit memo; pass in a constant. This value should be the
product of the numbers you pass in for QUANTITY * UNIT_SELLING_PRICE.

Use the value = -10.00

CUST_TRX_TYPE_ID - identifies the ID associated to the transaction type we created in Task 4 where
we defined TIP CM
To determine the ID associated to this transaction type, run the following:

Please note that the ID may be different in your instance.


select cust_trx_type_id
from ra_cust_trx_types_all
where name = 'TIP CM';

Use the value = 3628

QUANTITY - specify the number of items.

Use the value = -1

UNIT_SELLING_PRICE - specify the price of each item.

Use the value = 10.00

TERM_ID

It is important to understand that a Credit Memo does not have a payment term, and this field
should be left NULL

OPTION 2:
If the Invoice you are crediting was not created via AutoInvoice, then it would not have values in
INTERFACE_LINE_CONTEXT + INTERFACE_LINE_ATTRIBUTE* fields, in this case you cannot use these values
to identify the invoice you want this credit memo to credit. Instead you can use REFERENCE_LINE_ID.

INSERT INTO ra_interface_lines_all


(interface_line_context, interface_line_attribute1, interface_line_attribute2,
reference_line_id,
amount, batch_source_name, conversion_rate,
conversion_type, currency_code, cust_trx_type_id,
description, gl_date, line_type,
orig_system_bill_address_id, orig_system_bill_customer_id,
quantity, unit_selling_price,
term_id, taxable_flag, amount_includes_tax_flag,
set_of_books_id, org_id)
VALUES
('TIP', 'TIP SAMPLE CM 2', 'TIP SAMPLE CM 2',
82141,
-10.00, 'TIP BATCH SOURCE', 1,
'User', 'USD', 3628,
'TIP SAMPLE CM 1 - ITEM #1', '31-JAN-2010', 'LINE',
11145, 117751,
-1, 10.00,

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 26/50
4/20/2019 Document 1067402.1
null, 'Y', 'N',
1, 204);

The following section explains how to determine the ID values created during the setup. Many of the fields are
the same as the insert statement for Option 1 above, we will focus on the difference.

REFERENCE_LINE_ID - is the CUSTOMER_TRX_LINE_ID of the Invoice line that you wish to apply the
credit memo to. To find the right value, you can use the values in the Line Transaction Flexfield. As
mentioned earlier the combination of values in the Context and Attributes fields is unique, hence you can
find the exact line you wish to credit by using these values in the where condition.

Please note that the Id may be different in your instance.


select customer_trx_line_id
from ra_customer_trx_lines_all
where interface_line_context = 'TIP',
and interface_line_attribute1 = 'TIP SAMPLE INVOICE 1'
and interface_line_attribute2 = 'TIP SAMPLE INVOICE 1';

Use the value = 821481

c. Insert statement for an ON-ACCOUNT CREDIT MEMO

The following script will create an On-Account credit memo.

INSERT INTO ra_interface_lines_all


(interface_line_context, interface_line_attribute1, interface_line_attribute2,
amount, batch_source_name, conversion_rate,
conversion_type, currency_code, cust_trx_type_id,
description, gl_date, line_type,
orig_system_bill_address_id, orig_system_bill_customer_id,
quantity, unit_selling_price,
term_id, taxable_flag, amount_includes_tax_flag,
set_of_books_id, org_id)
VALUES
('TIP', 'TIP SAMPLE ON-ACCT CM 1', 'TIP SAMPLE ON-ACCT CM 1',
-1000.00, 'TIP BATCH SOURCE', 1,
'User', 'USD', 3628,
'TIP SAMPLE ON-ACCT CM 1 - ITEM #1', '31-JAN-2010', 'LINE',
11145, 117751,
-10, 100.00,
null, 'Y', 'N',
1, 204);

The following section explains how to determine the ID values created during the setup. Many of the fields are
the same as for the insert for Invoice above, we will focus on the differences:

INTERFACE_LINE_ATTRIBUTE1 and INTERFACE_LINE_ATTRIBUTE2 - the combination of values


in these two fields uniquely identify the transaction you are creating.

Use the values = 'TIP SAMPLE ON-ACCT CM 1' and 'TIP SAMPLE ON-ACCT CM 1'

AMOUNT - this field contains the value of your credit memo; pass in a constant. This value should be the
product of the numbers you pass in for QUANTITY * UNIT_SELLING_PRICE.

Use the value = -1000.00

CUST_TRX_TYPE_ID - identifies the ID associated to the transaction type we created in Task 4 where
defined TIP CM
To determine the ID associated to this transaction type, run the following:

Please note that the ID may be different in your instance.


https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 27/50
4/20/2019 Document 1067402.1

select cust_trx_type_id
from ra_cust_trx_types_all
where name = 'TIP CM';

Use the value = 3628

QUANTITY - specify the number of items.

Use the value = -10

UNIT_SELLING_PRICE - specify the price of each item.

Use the value = 100.00

TERM_ID

It is important to understand that a Credit Memo does not have a payment term, and this field
should be left NULL

d. Insert statement for an INVOICE and CREDIT MEMO WITH MANUAL TAX LINES

For a sample script on how to pass interface data for an Invoice including manual tax Lines with the intention of
bypassing the E-Business Tax engine, please review Note 731149.1, R12 How To Bring In (and Troubleshoot)
Manual Tax Lines Through Autoinvoice and E-Business Tax (EBTax).

e. Insert statement for an INVOICE WITH RULES

To create invoices with rules, aside from the setup steps detailed above, an additional setup step is required to
define the Accounting Rule.

Responsibility: Receivables Manager


Navigation: Setup > Transactions > Accounting Rules

For additional information on setting up and troubleshooting Accounting Rules, please review Note 1116934.1,
How To Setup And Troubleshoot Invoicing Rules and Accounting Rules.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 28/50
4/20/2019 Document 1067402.1

The following script will create an invoice using the TIP RULE defined above.

INSERT INTO ra_interface_lines_all


(interface_line_context, interface_line_attribute1, interface_line_attribute2,
amount, batch_source_name, conversion_rate,
conversion_type, currency_code, cust_trx_type_id,
description, gl_date, line_type,
orig_system_bill_address_id, orig_system_bill_customer_id,
quantity, unit_selling_price,
term_id, taxable_flag, amount_includes_tax_flag,
set_of_books_id, org_id,
invoicing_rule_id, accounting_rule_id, accounting_rule_duration)
VALUES
('TIP', 'TIP RULE INVOICE 1', 'TIP RULE INVOICE SAMPLE',
1000.00, 'TIP BATCH SOURCE', 1,
'User', 'USD', 3627,
'TIP DESCRIPTION 1 - ITEM #1', '10-AUG-2010', 'LINE',
11145, 117751,
10, 100.00,
1514, 'Y', 'N',
1, 204,
-2, 12086, null);

For some fields, we pass constant values and for other fields we need to provide values that tie in with the setup
we created in Tasks 1 - 14 above. The following section explains how to determine the ID values created during
the setup.

INTERFACE_LINE_CONTEXT - identifies the Transaction Flexfield used by the interface data; this
helps AutoInvoice understand what data is being passed in the interface table's fields. The value here ties
in with the setup created in Task 2, where we created the Line Transaction Flexfield 'TIP'.

Use the value = 'TIP'

INTERFACE_LINE_ATTRIBUTE1 and INTERFACE_LINE_ATTRIBUTE2 - the combination of values


in these two fields uniquely identify the transaction you are creating.

Use the values = 'TIP RULE INVOICE 1' and 'TIP RULE INVOICE SAMPLE'

AMOUNT - this field contains the value of your transaction; pass in a constant. This value should be the
product of the numbers you pass in for QUANTITY * UNIT_SELLING_PRICE.

Use the value = 1000.00

BATCH_SOURCE_NAME - the value you specify here identifies the transaction batch source to be used
by AutoInvoice when interfacing this transaction. In Task 9, we created the Batch Source 'TIP BATCH
SOURCE'.

Use the value = 'TIP BATCH SOURCE'

CONVERSION_RATE - For non-functional currency transactions, this field would contain the exchange
rate value. For our test case, we are creating a transaction in the functional currency = USD, so the rate
is 1.

Use the value = 1

CONVERSION_TYPE - Specify the conversion rate type, for our test case we will use 'User'.

Use the value = 'User'

CURRENCY_CODE - Indicate the currency code of the transaction, for our test case we will use 'USD'.

Use the value = 'USD'

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 29/50
4/20/2019 Document 1067402.1

CUST_TRX_TYPE_ID - identifies the ID associated to the transaction type we created in Task 4 where
we defined 'TIP INVOICE'.

To determine the ID associated to this transaction type, run the following:


Please note that the ID may be different in your instance.
select cust_trx_type_id
from ra_cust_trx_types_all
where name = 'TIP INVOICE';

Use the value = 3627

DESCRIPTION - enter a line item description.

Use the value = 'TIP DESCRIPTION 1 - ITEM #1'

GL_DATE - the value you specify here will be used by AutoInvoice as the GL_DATE of your transaction.
Typically the period in which this GL_DATE value falls should be an open period.

Use the value = '10_AUG-2010'

LINE_TYPE - indicates the type of line this interface data defines.

Use the value = 'LINE'

ORIG_SYSTEM_BILL_ADDRESS_ID and ORIG_SYSTEM_BILL_CUSTOMER_ID - identifies the


Address ID and Customer ID associated to the invoice.

To determine the ID values to use, run the following:

Please note that the ID may be different in your instance.


select c.cust_acct_site_id orig_system_bill_address_id, b.cust_account_id
orig_system_bill_customer_id
from hz_parties a,
hz_cust_accounts b,
hz_cust_acct_sites_all c,
hz_cust_site_uses_all d
where a.party_name = 'TIP CUSTOMER 1'
and a.party_id = b.party_id
and c.cust_account_id = b.cust_account_id
and c.cust_acct_site_id = d.cust_acct_site_id
and d.site_use_code = 'BILL_TO';

Use the values = 11145 and 117751

QUANTITY - specify the number of items.

Use the value = 10

UNIT_SELLING_PRICE - specify the price of each item.

Use the value = 100.00

TERM_ID - identifies the term ID associated with the setup created in Task 8.

To determine the ID value to use, run the following:

Please note that the ID may be different in your instance.


select term_id
from ra_terms
where name = 'TIP TERM';

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 30/50
4/20/2019 Document 1067402.1

Use the value = 1514

TAXABLE_FLAG - indicates whether or not the transaction is taxable.

Use the value = 'Y'

AMOUNT_INCLUDES_TAX_FLAG - indicates whether or not the amount is inclusive of taxes.

Use the value = 'N'

SET_OF_BOOKS_ID - identifies the Set of Books ID associated to the Operating Unit you are
processing your transaction in.

The set of books id is associated to your Operating Unit. If you know your operating unit ID, you
can run the following:

Please note that the ORG_ID in your instance may be different.


select set_of_books_id
from ar_system_parameters_all
where org_id = &org_id;

Use the value = 1

ORG_ID - indicates the ID of the Operating Unit against which this transaction is created.

Use the value = 204

If you do not know your ORG_ID or SET_OF_BOOKS_ID value, you can use General Setup
diagnostics (e.g. in R 12.0.6 this is Note 732193.1). This will show the value of ORG_ID beside the
Operating Unit Name, and SET_OF_BOOKS_ID beside the Ledger Name.

INVOICING_RULE_ID - indicates manner in which you want the Receivable recognized. There are only
2 values available: -2 (In Advance) and -3 (In Arrears). For more information please review Note
1116934.1

Use the value = -2


ACCOUNTING_RULE_ID - indicates the manner in which you want the Revenue to be recognized. This
ties in with the setup we created above for 'TIP RULE'. For more information please review Note
1116934.1

To determine the ID value to use, run the following:

Please note that the ID may be different in your instance.


select rule_id
from ra_rules
where name = 'TIP RULE';

ACCOUNTING_RULE_DURATION - when the rule you use has variable duration, you need to provide
a value in this field. However, in our case, the rule has a fixed duration of 3 periods, so we leave this null.

Use the value = null

f. Insert statement for an INVOICE WITH GL DISTRIBUTIONS

Notes:

If you have setup AutoAccounting and would like to use the GL accounts derived by your setup, you
do not have to pass in data in RA_INTERFACE_DISTRIBUTIONS_ALL. The GL distributions and GL
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 31/50
4/20/2019 Document 1067402.1

accounts will be automatically created for your transactions.


When passing GL distributions, AutoAccounting will be used to derive the GL accounts of all
accounting distributions that are not explicitly provided in RA_INTERFACE_DISTRIBUTIONS_ALL.

Users have the ability to bypass AutoAccounting by providing GL distributions in


RA_INTERFACE_DISTRIBUTIONS_ALL.

In the following script, we interface an Invoice and pass in distributions for the Revenue and Receivable account.
The setup in this instance will create Rounding rows, and since we do not explicitly pass in that distribution, it
will be created using the AutoAccounting setup.

For more on this refer to Note 1228525.1 How to Import and Troubleshoot Distributions in AutoInvoice Using
RA_INTERFACE_DISTRIBUTIONS_ALL

-- create the "parent" record in RA_INTERFACE_LINES_ALL


INSERT INTO ra_interface_lines_all
(interface_line_context, interface_line_attribute1, interface_line_attribute2,
amount, batch_source_name, conversion_rate,
conversion_type, currency_code, cust_trx_type_id,
description, gl_date, line_type,
orig_system_bill_address_id, orig_system_bill_customer_id,
quantity, unit_selling_price,
term_id, taxable_flag, amount_includes_tax_flag,
set_of_books_id, org_id)
VALUES
('TIP', 'TIP DIST INVOICE 1', 'TIP DIST INVOICE SAMPLE',
1000.00, 'TIP BATCH SOURCE', 1,
'User', 'USD', 3627,
'TIP DESCRIPTION 1 - ITEM #1', '10-AUG-2010', 'LINE',
11145, 117751,
10, 100.00,
1514, 'Y', 'N',
1, 204);

-- create distribution records for only REV and REC rows


INSERT INTO ra_interface_distributions_all (
account_class, amount, code_combination_id, percent,
interface_line_context, interface_line_attribute1,interface_line_attribute2, org_id)
VALUES ('REC', 1000.00, 12833, 100,
'TIP', 'TIP DIST INVOICE 1', 'TIP DIST INVOICE SAMPLE', 204);

INSERT INTO ra_interface_distributions_all (


account_class, amount, code_combination_id, percent,
interface_line_context, interface_line_attribute1,interface_line_attribute2, org_id)
VALUES ('REV', 1000.00, 107410, 100,
'TIP', 'TIP DIST INVOICE 1', 'TIP DIST INVOICE SAMPLE', 204);

For an explanation of the fields/values used for the insert statement, please review the first example script
above, the values used are similar.

The following provides an explanation of the fields/values used for the 2nd and 3rd insert statements:

ACCOUNT_CLASS - there are 7 valid values: REV, FREIGHT, TAX, REC, UNBILL (for Arrears), UNEARN
(for Advance), CHARGES
You may pass values for any of these account classes.

For any required GL distribution that you do not provide in RA_INTERFACE_DISTRIBUTIONS_ALL, the
code will invoke AutoAccounting.

Use the value = 'REC' and 'REV'

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 32/50
4/20/2019 Document 1067402.1

AMOUNT - this field contains the value associated to the GL distribution you are creating; pass in a
constant. For the REC account, this should be the sum of all the LINE, TAX and FREIGHT amounts in
RA_INTERFACE_LINES_ALL for this particular transaction.

Use the value = 1000.00 (for both REC and REV)


CODE_COMBINATION_ID - this indicates the GL account's code_combination_id, the value specified
here should exist in GL_CODE_COMBINATIONS. It uniquely identifies the GL account to use.

Use the value = 12833 (for REC) and 107410 (for REV)

Typically, the purpose of passing in rows in RA_INTERFACE_DISTRIBUTIONS_ALL is to bypass


AutoAccounting. In our current setup, AutoAccounting would have used the code combination id
values: 12835 and 158423 respectively. By using different code_combination_id values we are able to
verify that the distributions we passed in are what actually got used when the Invoice was created.

PERCENT - indicates the percentage associated to the distributions.

Use the value = 100


INTERFACE_LINE_CONTEXT - identifies the Transaction Flexfield used by the interface data; this
helps AutoInvoice understand what data is being passed in the interface table's fields. The value here ties
in with the setup created in Task 2, where we created the Line Transaction Flexfield 'TIP'.
INTERFACE_LINE_ATTRIBUTE1 and INTERFACE_LINE_ATTRIBUTE2 - the combination of values
in these two fields uniquely identify the transaction you are creating.

Use the values = 'TIP DIST INVOICE 1' and 'TIP DIST INVOICE SAMPLE'
ORG_ID - indicates the ID of the Operating Unit against which this transaction is created.

Use the value = 204

If you do not know your ORG_ID or SET_OF_BOOKS_ID value, you can use General Setup diagnostics
(e.g. in R 12.0.6 this is Note 732193.1). This will show the value of ORG_ID beside the Operating Unit
Name, and SET_OF_BOOKS_ID beside the Ledger Name.

g. Insert statement for an INVOICE WITH SALESCREDITS

The following script will create a simple invoice and assign sales credits to 2 Sales persons.

INSERT INTO ra_interface_lines_all


(interface_line_context, interface_line_attribute1, interface_line_attribute2,
amount, batch_source_name, conversion_rate,
conversion_type, currency_code, cust_trx_type_id,
description, gl_date, line_type,
orig_system_bill_address_id, orig_system_bill_customer_id,
quantity, unit_selling_price,
term_id, taxable_flag, amount_includes_tax_flag,
set_of_books_id, org_id)
VALUES
('TIP', 'TIP SC INVOICE 1', 'TIP SC INVOICE SAMPLE',
1000.00, 'TIP BATCH SOURCE', 1,
'User', 'USD', 3627,
'TIP DESCRIPTION 1 - ITEM #1', '10-AUG-2010', 'LINE',
11145, 117751,
10, 100.00,
1514, 'Y', 'N',
1, 204);

INSERT INTO ra_interface_salescredits_all (


salesrep_id, sales_credit_type_id, sales_credit_percent_split,
interface_line_context, interface_line_attribute1,interface_line_attribute2, org_id)
VALUES (100000013, 1, 50,
'TIP','TIP SC INVOICE 1', 'TIP SC INVOICE SAMPLE', 204);

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 33/50
4/20/2019 Document 1067402.1
INSERT INTO ra_interface_salescredits_all (
salesrep_id, sales_credit_type_id, sales_credit_percent_split,
interface_line_context, interface_line_attribute1,interface_line_attribute2, org_id)
VALUES (100000015, 1, 50,
'TIP','TIP SC INVOICE 1', 'TIP SC INVOICE SAMPLE', 204);

For an explanation of the fields/values used for the insert statement, please review the first example script
above, the values used are similar.

The following provides an explanation of the fields/values used for the 2nd and 3rd insert statements:

SALESREP_ID - identifies the Salesperson to be associated to the sales credit. You need to determine
the ID associated to the Sales person names to whom you want to assign credit for this sale.

Please note that the ID values in your instance may be different.


select * from JTF_RS_SALESREPS
where name = '&salesrep_name';

or

select * from JTF_RS_SALESREPS


where salesrep_number = '&salesrep_num';

Use the value = 100000013 and 100000015


SALES_CREDIT_TYPE_ID - indicates where the Sales credit is to fulfill a Sales Quota (1) or Non-Quota
(2)

Use the value = 1


SALES_CREDIT_PERCENT_SPLIT - this identifies the percent of the credit you want to associate to a
particular salesperson. The total of all salescredits for a transaction should be 100.

Use the value = 50 (since we are splitting the credits across 2 people)
INTERFACE_LINE_CONTEXT - identifies the Transaction Flexfield used by the interface data; this
helps AutoInvoice understand what data is being passed in the interface table's fields. The value here ties
in with the setup created in Task 2, where we created the Line Transaction Flexfield 'TIP'.
INTERFACE_LINE_ATTRIBUTE1 and INTERFACE_LINE_ATTRIBUTE2 - the combination of values
in these two fields uniquely identify the transaction you are creating.

Use the values = 'TIP SC INVOICE 1' and 'TIP SC INVOICE SAMPLE'

ORG_ID - indicates the ID of the Operating Unit against which this transaction is created.

Use the value = 204

If you do not know your ORG_ID or SET_OF_BOOKS_ID value, you can use General Setup
diagnostics (e.g. in R 12.0.6 this is Note 732193.1). This will show the value of ORG_ID beside the
Operating Unit Name, and SET_OF_BOOKS_ID beside the Ledger Name.

h. Insert statement for an INVOICE WITH HEADER LEVEL FREIGHT

The following script will create a simple invoice with header level Freight.

-- Insert record for LINE


INSERT INTO ra_interface_lines_all
(interface_line_context, interface_line_attribute1, interface_line_attribute2,
amount, batch_source_name, conversion_rate,

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 34/50
4/20/2019 Document 1067402.1
conversion_type, currency_code, cust_trx_type_id,
description, gl_date, line_type,
orig_system_bill_address_id, orig_system_bill_customer_id,
quantity, unit_selling_price,
term_id, taxable_flag, amount_includes_tax_flag,
set_of_books_id, org_id,
ship_via, warehouse_id, ship_date_actual)
VALUES
('TIP', 'TIP TAX-FRT INV 1', 'INVOICE LINE',
1000.00, 'TIP BATCH SOURCE', 1,
'User', 'USD', 3627,
'TIP TAX-FRT INVOICE - ITEM #1', '10-AUG-2010', 'LINE',
11145, 117751,
10, 100.00,
1514, 'Y', 'N',
1, 204,
'Federal Express', 204,'10-AUG-10');

-- Insert Record for Freight


INSERT INTO ra_interface_lines_all
(interface_line_context, interface_line_attribute1, interface_line_attribute2,
LINK_TO_LINE_CONTEXT, LINK_TO_LINE_ATTRIBUTE1, LINK_TO_LINE_ATTRIBUTE2,
amount, batch_source_name, conversion_rate,
conversion_type, currency_code, cust_trx_type_id,
description, gl_date, line_type,
orig_system_bill_address_id, orig_system_bill_customer_id,
quantity, unit_selling_price,
term_id, taxable_flag, amount_includes_tax_flag,
set_of_books_id, org_id)
VALUES
('TIP', 'TIP TAX-FRT INV 1', 'FREIGHT',
'TIP', 'TIP TAX-FRT INV 1', 'INVOICE LINE',
49.95, 'TIP BATCH SOURCE', 1,
'User', 'USD', 3627,
'Freight', '10-AUG-2010', 'FREIGHT',
11145, 117751,
null, null,
1514, null, null,
1, 204);

For an explanation of the fields/values not listed below, please review the first example script above, the values
used are similar.

The following provides an explanation of the additional fields/values used which are highlighted in bold in the
first Insert statement.

Note: All the freight related information is actually provided in the record where LINE_TYPE = LINE and not
the record where LINE_TYPE = FREIGHT.

SHIP_VIA - identifies the Freight Carrier, this value should exist as FREIGHT_CODE in ORG_FREIGHT
table.

Please note that the Freight Code values in your instance may be different, the following will
list the values of Freight Codes that you can use.
select FREIGHT_CODE from ORG_FREIGHT
where ORGANIZATION_ID = &ORG_ID;

Use the value = 'Federal Express'


WAREHOUSE_ID - indicates the Organization of the warehouse from which you will be shipping the
items

In our case, the ORG_ID and WAREHOUSE_ID are the same.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 35/50
4/20/2019 Document 1067402.1

Use the value = 204


SHIP_DATE_ACTUAL - this identifies the date the shipment was actually made

Use the value = '10-AUG-10'


INTERFACE_LINE_CONTEXT - identifies the Transaction Flexfield used by the interface data; this
helps AutoInvoice understand what data is being passed in the interface table's fields. The value here ties
in with the setup created in Task 2, where we created the Line Transaction Flexfield 'TIP'.

Use the value = 'TIP'


INTERFACE_LINE_ATTRIBUTE1 and INTERFACE_LINE_ATTRIBUTE2 - the combination of values
in these two fields uniquely identify the transaction you are creating.

Use the values = 'TIP TAX-FRT INV 1' and 'INVOICE LINE' (for the first insert statement) |

Use the values = 'TIP TAX-FRT INV 1' and 'FREIGHT' (for the second insert statement)

For the second insert statement, which is the FREIGHT line, following is an explanation of the fields used:

LINK_TO_LINE_CONTEXT - identifies the Transaction Flexfield of the Invoice line to which you want to
link this Freight record to

Use the value = 'TIP'


LINK_TO_LINE_ATTRIBUTE1 and LINK_TO_LINE_ATTRIBUTE2 - the combination of values in
these two files uniquely identifiy the transaction line to which this Freight row is associated to, it should
be identical to the values in INTERFACE_LINE_ATTRIBUTE1 and 2 for the LINE_TYPE = LINE

Use the value = 'TIP TAX-FRT INV 1' and 'INVOICE LINE'
AMOUNT - enter the amount associated to Freight

Use the value = 49.95


LINE_TYPE - identifies what type of data is in this record

Use the value = 'FREIGHT'

i. Insert statement for an INVOICE WITH FREIGHT AS AN INVENTORY ITEM

The following script will create a simple invoice with Freight as an inventory item, this enables you to calculate
taxes on the Freight amount. For details on the prerequisite steps required, please review Note 1096942.1, How
To Setup And Troubleshoot Freight In AutoInvoice And The Transactions Form

-- Insert record for LINE


INSERT INTO ra_interface_lines_all
(interface_line_context, interface_line_attribute1, interface_line_attribute2,
amount, batch_source_name, conversion_rate,
conversion_type, currency_code, cust_trx_type_id,
description, gl_date, line_type,
orig_system_bill_address_id, orig_system_bill_customer_id,
quantity, unit_selling_price,
term_id, taxable_flag, amount_includes_tax_flag,
set_of_books_id, org_id, inventory_item_id, uom_code)
VALUES
('TIP', 'TIP FRT AS INV 3', 'INVOICE LINE',
1000.00, 'TIP BATCH SOURCE', 1,
'User', 'USD', 3627,
'Sentinel Deluxe Desktop', '10-AUG-2010', 'LINE',
11145, 117751,
10, 100.00,
1514, 'Y', 'N',
1, 204, 155,'Ea');

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 36/50
4/20/2019 Document 1067402.1

-- Insert Record for Freight


INSERT INTO ra_interface_lines_all
(interface_line_context, interface_line_attribute1, interface_line_attribute2,
amount, batch_source_name, conversion_rate,
conversion_type, currency_code, cust_trx_type_id,
description, gl_date, line_type,
orig_system_bill_address_id, orig_system_bill_customer_id,
quantity, unit_selling_price,
term_id, taxable_flag, amount_includes_tax_flag,
set_of_books_id, org_id, inventory_item_id, uom_code)
VALUES
('TIP', 'TIP FRT AS INV 3', 'FREIGHT LINE',
49.95, 'TIP BATCH SOURCE', 1,
'User', 'USD', 3627,
'Freight Charges', '10-AUG-2010', 'LINE',
11145, 117751,
1, 49.95,
1514, 'Y', 'N',
1, 204, 1747,'Ea');

For an explanation of the fields/values not listed below, please review the first example script above, the values
used are similar.

The following provides an explanation of the additional fields/values used which are highlighted in bold.

INVENTORY_ITEM_ID - identifies the Inventory item to be shipped.

Use the value = 155 (for the regular Inventory Item = Sentinel Deluxe Desktop )
Use the value = 1747 (for the Freight Inventory Item = Freight Charges, see details in Note 1096942.1
on how to define Freight as an Inventory Item )
UOM_CODE - indicates the Unit of Measure associated to the Inventory Item, this value must be
identical to the value in MTL_ITEM_UOMS_VIEW.UOM_CODE for the INVENTORY_ITEM_ID

Use the value = 'Ea'

INTERFACE_LINE_CONTEXT - identifies the Transaction Flexfield used by the interface data; this
helps AutoInvoice understand what data is being passed in the interface table's fields. The value here ties
in with the setup created in Task 2, where we created the Line Transaction Flexfield 'TIP'.

Use the value = 'TIP'

INTERFACE_LINE_ATTRIBUTE1 and INTERFACE_LINE_ATTRIBUTE2 - the combination of values


in these two fields uniquely identify the transaction you are creating.

Use the values = 'TIP FRT AS INV 3' and 'INVOICE LINE' (for the first insert statement, which is for the
regular Line item)

Use the values = 'TIP FRT AS INV 3' and 'FREIGHT LINE' (for the second insert statement, which is for the
Freight Inventory Item)

LINE_TYPE - identifies what type of data is in this record

Use the value = 'LINE' (for both records)

Note: Even if the second line being interfaced is for FREIGHT, the LINE_TYPE remains = LINE
because we are treating the Freight as a regular inventory item and are passing it as an
invoice line to enable the calculation of taxes.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 37/50
4/20/2019 Document 1067402.1

17. Testing AutoInvoice: AutoInvoice Import Process

Once the data is inserted into the Interface table, we are ready to submit the AutoInvoice Import Process

Responsibility: Receivables Manager


Navigation: Interfaces > AutoInvoice

To monitor the progress of the process,


Navigation: View > Requests
click on Find Button

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 38/50
4/20/2019 Document 1067402.1

Once the process is complete, review the output generated from the AutoInvoice Import Program and ensure there are no
errors.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 39/50
4/20/2019 Document 1067402.1

Following are examples of errors you may encounter:

Sample Error 1

The error shown below, would happen if you ran the insert statement above for a second time without modifying any of the
flexfield values.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 40/50
4/20/2019 Document 1067402.1

As pointed out by the error messsage, the combination of the flexfield values is not unique. To fix this issue, you should
update the data in the interface table so that the combined values in INTERFACE_LINE_ATTRIBUTE1 +
INTERFACE_LINE_ATTRIBUTE2 are unique.

You could run an update statement like:

update ra_interface_lines_all
set interface_line_attribute1 = 'TIP SAMPLE INVOICE 2',
interface_line_attribute2 = 'TIP LEGACY LINE 1'
where interface_line_attribute1 = 'TIP SAMPLE INVOICE 1'
and interface_line_attribute2 = 'TIP SAMPLE INVOICE 1'
and nvl(interface_status,'~') <> 'P';

-- the above should update one row

commit;

Now that you have made the interface line attribute values unique, you can re-run AutoInvoice and it should process
successfully.

Sample Error 2

The error shown below, would happen if you have a typographical error in the insert statement and you mistyped the value for
CUST_TRX_TYPE_ID.

As shown in the error, the CUST_TRX_TYPE_ID with value 36277 is invalid. If you review the details in the first insert
statement in Task 16, you will note that the correct CUST_TRX_TYPE_ID = 3627 and not 36277.

To fix this issue, you should update the data in the interface table to correct the CUST_TRX_TYPE_ID value.

Another way to make corrections is to use the Interface Lines form.

Responsibility: Receivables Manager


https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 41/50
4/20/2019 Document 1067402.1

Navigation: Control > AutoInvoice > Interface Lines

Run a query using either the INTERFACE_LINE_ID or the Batch Source name or just Check the Errors Exist checkbox to view
lines with errors. Position the cursor on the record you want to fix, then click on the Errors button to see details of the errors.

To correct the error, navigate back to the lines form and position your cursor on the Line type field, Click on the folder menu
and click on Show field. Doing this will allow you to expose more fields from the table in the form.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 42/50
4/20/2019 Document 1067402.1

To fix this particular error, we want to modify the Transaction Type Id, so locate that field name in the list of values and click
on it.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 43/50
4/20/2019 Document 1067402.1

The Transaction Type Id field will now be displayed to the right of Line type and you can enter the correct ID, and save your
changes.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 44/50
4/20/2019 Document 1067402.1

If there were multiple errors on a line, you would follow the same process to make corrections to other fields. Once all
corrections are complete you can run AutoInvoice again.

Other similar errors due to invalid ID values would be:

As shown in the examples, the error message provide helpful information about the problem encountered. Patient and careful
review of the error message and the details provided therein will help you resolve the error. Also, it is typically most difficult to
create the first invoice via a script, but once you have the right script it is very easy to adapt it to your needs.

18. Purging the Interface Table After Import

To automatically purge the AutoInvoice Interface tables after running AutoInvoice, check the Purge Interface Tables box in the
receivables system options. If you check this box, Receivables deletes the records that have successfully transferred into
permanent Receivables tables. Do not check this box if you want to submit the AutoInvoice Purge program manually after
running AutoInvoice.

Troubleshooting Tip: De-select this setting when troubleshooting records that seem to be importing incorrectly such as
when grouping rules are not being honored or line ordering appears incorrect. This will allow you to review the data as it
looked in the interface table and after it has imported.

For more on the purge process please see Note 1127413.1 Understanding and Troubleshooting AutoInvoice Purge

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 45/50
4/20/2019 Document 1067402.1

19. Scheduling AutoInvoice

In most cases AutoInvoice is used to load invoices from Oracle EBS modules such as Order Management or to build integration
from a legacy application system. In these cases AutoInvoice can be scheduled to run on a regular basis. The articles below
outline options that can be used to satisfy this requirement.

Note 279423.1 How to Schedule AutoInvoice to Run on a Periodic Basis


Note 1127399.1 Sample PLSQL Script to call Autoinvoice Import Program RAXTRX using fnd_request.submit_request in
Release 12

20. Review Invoice Created by AutoInvoice

To verify whether AutoInvoice created the invoice successfully, view the invoice in the Transaction workbench.

Responsibility: Receivables Manager


Navigation: Transactions > Transactions

Then run a Query using View > Query By Example


Enter the following filters:

Batch Source name = 'TIP BATCH SOURCE'


Reference field =

for the Invoice: enter the value you provided for interface_line_attribute1 = 'TIP SAMPLE INVOICE 1'
for the Credit memo (if you also ran this test): enter the value you provided for interface_line_attribute1
= 'TIP SAMPLE CM 1' or 'TIP SAMPLE CM 2'
for the Invoice with rules: enter the valud you provided for interface_line_attribute1 = 'TIP RULE
INVOICE 1'

Then execute the query.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 46/50
4/20/2019 Document 1067402.1

Click on Line Items button to see invoice lines.

This shows that a simple invoice was successfully created, using the data we passed in! Running a similar query for the value

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 47/50
4/20/2019 Document 1067402.1

in INTERFACE_LINE_ATTRIBUTE1 for the Applied Credit Memo and On-Account Credit memo and Invoice with Rules will
display the credit memos created.

21. Troubleshooting & Tips

The following notes contain details on various troubleshooting tips:

Note 1523525.1 AutoInvoice Analyzer


Note 733835.1, AutoInvoice FAQ for Release 12
Note 1075757.1, AutoInvoice Troubleshooting Guide

If you are on release 12, you can take advantage of the AutoInvoice Analyzer, which can provide a comprehensive diagnosis
of interface errors and recommended solutions for AutoInvoice Issues.
You can read more about the AutoInvoice Analyzer in Note 1523525.1.

If you are on release 11i, you can use the Diagnostic framework that includes Diagnostics that can help you review and
identify AutoInvoice issues. Please review the R11i Diagnostics catalog and locate the diagnostics under Oracle Receivables:
AutoInvoice Interface and AutoInvoice Setup.

To access diagnostics in the application in Release 11i the access path is as follows:

Please note that each diagnostic test includes this information in the Usage section.

Responsibility: Application Diagnostics


Navigation: Application Diagnostics > Diagnose

Click button Select Application and select Application "Receivables"


Scroll down to group "Transactions"
Select Test: AutoInvoice Setup or AutoInvoice Interface.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 48/50
4/20/2019 Document 1067402.1

22. Still Have Questions?

To discuss this information further with Oracle experts and industry peers, we encourage you to review, join or start a
discussion in the My Oracle Support Receivables Community.

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 49/50
4/20/2019 Document 1067402.1

To provide feedback on this note, click on the Rate this document link.

SUMMARY

REFERENCES

NOTE:1523525.1 - EBS Oracle Receivables AutoInvoice Analyzer


NOTE:1075757.1 - Troubleshooting AutoInvoice for Oracle Receivables Release 11.5 Through 12

Didn't find what you are looking for?

https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=571543qaz_84&id=1067402.1 50/50

You might also like