Posted on September 9th, 2007 by Sanjit Anand |
Print This Post
|
Email This Post
In Oracle supplier can be entered from three different place.These are the Setup required to perform for a suppliers.
- Supplier Accounts
- Taxes
- Payments
- Term Date Basis
- Due Date Basis
- Invoice Currency
- Holds
In Oracle these are the important features through the screen:
- Enter Suppliers
- Enter employees as Suppliers
- Merge duplicate Suppliers
Supplier Data Entry

Other Details
- Classification Information (Significant for type and employee name)
- Parent subsidiary relationship
- Supplier bank information
- Appropriate GL accounts information
- Record tax information
- Hold conditions to supplier site (rather than on individual invoices)
and these are the optional field
- Tax payer ID
- VAT registration number
- Inactive date (to prevent invoice/PO entry after a certain date)
Important Table that holds supplier
- PO_VENDORS : this hold a suppliers information
Some important columns:
-
- SEGMENT1 – SYSTEM GENERATED OR MANUALLY ENTERED NUMBER FOR SUPPLIER (PO_UNIQUE_IDENTIFIER_CONTROL)
- VENDOR_ID – SYSTEM GENERATED UNIQUE NUMBER
- CREDIT STATUS –GOOD/POOR
- ORGANIZATION_TYPE_LOOKUP_CODE
- VENDOR_TYPE_LOOKUP_CODE – VENDOR/EMPLOYEE (EMPLOYEE_ID)
- ONE_TIME_FLAG
- PO_VENDOR_SITES_ALL : This hold corresponding site information Contains Details of the site like Full Address/Work of site
and its link with vendor_id.Important columns includes:- PURCHASING_SITE_FLAG, VENDOR_SITE_CODE, RFQ_ONLY_SITE_FLAG, PAY_SITE_FLAG,HOLD_ALL_PAYMENTS_FLAG, HOLD_FUTURE_PAYMENTS_FLAG, HOLD_UNMATCHED_INVOICES_FLAG
- PO_VENDOR_CONTACTS : This hold supplier contact information for respective sites.
How they connected
These are typically connected as:

Take a note Segment1 is holding suppliers Number.
![]()
Quick query for new babies
select * from po_vendors
where segment1 = ’1001‘;select *
from po_vendor_sites pvs,
po_vendors pov
where pov.segment1 = ’1001′
and pov.vendor_id = pvs.vendor_id;
select *
from po_vendor_contacts pvc,
po_vendor_sites pvs,
po_vendors pov
where pov.segment1 = ’1001′
and pov.vendor_id = pvs.vendor_id
and pvs.VENDOR_SITE_ID = pvc.vendor_site_id;
Supplier Interface
Yes, that was one of the enhancement in oracle 11.5.10 release. Prior to that version, there was no interface or Public exist for supplliers, thus it was a tricky to handle supplier. As we have already seen AP availability of AP some time back.
If you are having 11.5.10+ version,and if you have requirement to create supplier from your legacy data than use Supplier Interface, life will be easier. Is n’t.
How we start
This consist in 2 steps process:
Step 1. Populate the new interface tables with data. This can be done via SQL*Loader or typically used to load data in a table.
- AP_SUPPLIERS_INT
- AP_SUPPLIER_SITES_INT
- AP_SUP_SITE_CONTACT_INT
Step 2. Run the Supplier Open Interface Request Set (FNDRSSUB1703)
Alternatively, run the individual import programs to load one table at a time
-
Supplier Open Interface Import (APXSUIMP)
-
Supplier Sites Open Interface Import (APXSSIMP)
-
Supplier Site Contacts Open Interface Import (APXSCIMP)
Some important notes for suppliers Interface
- When you load the data it should be ‘NEW’ initially. After the Supplier Sites Open Interface is run the status gets changed to PROCESSED’/'REJECTED’.
The entire flow can be shown as:

A Note with R12 for Suppliers
As we know in R12 Supplier is part of TCA , thus the link between PO_VENDORS and HZ_PARTIES is PO_VENDORS.party_id. The link between
PO_VENDOR_SITES_ALL and HZ_PARTY_SITES is PO_VENDOR_SITES_ALL.party_site_id.
When a Supplier is created Record will be Inserted in HZ_PARTIES. When the Supplier Site is created Record will be Inserted in HZ_PARTY_SITES. When Address is created it will be stored in HZ_LOCATIONS.





November 26th, 2007 at 4:00 pm
[...] Read this : http://www.oracleappshub.com/account-payable/quick-note-for-supplier-in-ebs/ [...]
July 3rd, 2008 at 8:12 am
Hi Anand,
Is it possible that I can deactivate an existing Supplier Site using an API or the interface table.
Thank you.
July 4th, 2008 at 2:16 am
API does not capability for inactive for site. Need to check with R12 API’s with latest one.
Disable a site simply means putting end date.
Why you not using direct update on this table for this column.
are you in 11i or r12
December 8th, 2008 at 10:08 am
Please let me know what are the mandatory columns that needs to be populated for the interface tables AP_SUPPLIERS_INT,
AP_SUPPLIER_SITES_INT,
AP_SUP_SITE_CONTACT_INT while doing supplier interface.
December 9th, 2008 at 4:20 pm
Satyaram , you can check out the trm or etrm for table details.
sanjit
December 18th, 2008 at 12:34 am
Hi,
We are moving to the supplier interface AP_SUPPLIERS_INT
instead of the po_vendors interface.
The strange thing is that in the newer interface no bankinformation can be imported!!!! (go figure). Oracle states that this will be solved in R12.
Any suggestions ideas how to get bank information through the new ap_suppliers interface. We need the new one to support alfa numeric payment terms. The old one only can handle numeric.
Best regards, marcel
February 25th, 2009 at 3:22 pm
In R12, can the open interface be used to update suppliers? Has anyone tried this?
July 8th, 2009 at 12:31 pm
I am trying to update the supplier site in R12 using ap_vendor_pub_pkg.update_vendor_site, this does not work. Even when you have an invactive_date on the supplier site, you can create invoices! oracle reported this as a bug and is currently working on it. Till such time the work around would be to disable the pay site manually, you cannot do it programatically since the above api/pkg does not work.
July 8th, 2009 at 12:34 pm
Or you can do a direct update on ap_supplier_sites