22nd April 2021



The supply chain is a global network used to deliver products and services from raw materials to end customers through an engineered flow of information, physical distribution, and cash “as per APICS/ASCM definition”.


The Basic Supply chain has a minimum of three entities producer/service provider, supplier, and customer. Information between these three entities flows in both directions upstream and downstream. Most of the organizations that deal with suppliers that provide services use the concept of service procurement or complex purchase order to manage milestones, work confirmation, payment plan, recoupment, and retentions. 


Retainage is a practice of withholding funds from payment until the contractor completes an agreed-upon portion of the work or fulfills contractual obligations. The practice of retentions has its origins in the British Railway Mania of the 1840s, Retentions are widely used in the British construction industry; featuring in the majority of all contracts awarded. It is a sum of money that is withheld as security against poor quality products (defects) or works left incomplete.


Most ERP consultants, Implementors, Presales and Sales who interacted with Oracle E-Business suite ERP then shifted to Oracle Cloud ERP noticed that there is no complex purchase order feature exist till update 20D, we also noticed that most of our customers who migrated or are planning to migrate from on-premise to oracle cloud ERP found this point an obstacle. 


Therefore, some customers, especially those who use service procurement as a core in their business decided not to shift to Oracle Cloud until this feature existed or they decided to develop a full custom solution on PaaS to cover this part. Recently, Oracle released a new update 21A which has one of the complex work procurement features namely, the “Retainage”. 


In the 21A update, the Complex Work Procurement solution is comprised of 3 features as below: 


  • Create Purchase Orders with Retainage Terms (Oracle Procurement Cloud)
  • Negotiate Retainage for Services (Oracle Procurement Cloud)
  • Creation and Management of Supplier Invoices with Retainage (Oracle Financials Cloud)


Value Proposition

From a business point of viewthe use of retentions is intended to encourage efficiency and productivity. The contractor has a financial incentive to achieve completion as early as possible (to release the first moiety payment) and to minimize defects in the works (to achieve the second payment).


From a system point of view, Complex Work Procurement is an end-to-end integrated solution across Oracle Procurement Cloud, Oracle Financials Cloud, and Oracle Supply Chain Management Cloud applications. This solution is designed to model the procurement of complex contracts in industries such as construction, consulting, and professional services. Complex work contracts tend to have high dollar values and long lead times and are governed by complex payment terms.


You can use Complex Work Procurement to manage various aspects of the acquisition processes involved in procuring complex work.


How to Enable the Retainage

  1. Login to Oracle Cloud instance which has the update 21A.





  1. You need to have a role that contains the “Manage Purchasing Document Style “privilege such as the Procurement Application Administrator Role.



  1. From the Navigator choose “Setup and Maintenance”.




  1. Search for the “Manage Document Styles “task.



  1. Create a new document style or update an existing user-defined document style then save and close.

Note you can’t update seeded document styles: Standard style, Consignment style, Configure-to-Order style, and Outside Processing style.




  1. Now you can navigate to the home page Procurement  Purchase Orders  Tasks  Create Order.



  1. Choose the new purchase order style which has the retainage option enable and press create.




  1. Fill the purchase order header details then navigate to the line level and add new line Fill Line details then you have to show the retainage columns from the view section as below:



  1. Navigate to the right side till you find the Retainage Rate (%) and Maximum Retainage Amount, Fill in the required percentage and maximum amount.

Note: You can change the Retainage Rate on the schedule level.



  1. Submit the purchase order for approval, then after approval search for the purchase order and open the view lifecycle option as below:


  1. Now you can see the total retainage amount and the total retainage release on that purchase order.


  1. You can do the same but search by schedule level so you can see the retainage and retainage release per schedule as below:



To Be Continued …. Demonstrating the sourcing and invoice retainage features



  • You can Enter the Maximum Retainage Amount and Retainage Rate on FBDI Purchase Order Import Template.
  •  You can Analyze retainage-enabled purchase orders using the OTBI Purchasing Real-time subject area.





Author: Ahmed Eldemerdash, Oracle Supply Chain Consultant