← Back to list

Event-Driven Invoice Processing for Oracle Fusion ERP Using OCI Events, Streaming, OCI Document…

Part 2: Implementation & Execution

SumanthKoditala · 2026-06-17 04:25 · 0 claps · 4.9 min read
#oracle-integration-cloud #ai-oracle #oracle-fusion
Open on Medium ↗
Wiki topics: 🎬 · Film & Television

Event-Driven Invoice Processing for Oracle Fusion ERP Using OCI Events, Streaming, OCI Document Understanding, and OIC

Part 2: Implementation & Execution

In the previous part of this blog, I covered the architecture overview, prerequisites, and the configurations required across OCI services to enable this event-driven invoice processing solution.

In this part, I will focus on the Oracle Integration implementation, including the integration flow, OCI Document Understanding invocation, supplier master data enrichment using OIC lookups, and the creation of supplier invoices in Oracle Fusion ERP Cloud. Finally, I will demonstrate the end-to-end execution of the solution, from uploading an invoice to OCI Object Storage through to the automatic creation of an invoice in Fusion ERP.

OIC Integration implementation:

1. Configure OCI Steaming adapter connection

You can obtain the Username and generate the Password by following the Step2 of my previous blog part. Also, the steps to generate the keystore file can be found in the Prerequisites section of the previous blog part.

2. Configure REST Adapter connection for Fusion ERP Cloud

3. OIC Flows

For this solution, I have implemented two OIC integrations.

The first integration is responsible for consuming events from OCI Streaming whenever a new invoice document is uploaded to OCI Object Storage. Upon receiving the event, it extracts the file details and invokes the second integration.

The second integration receives the file name from the first integration, invokes OCI Document Understanding to extract the invoice details from the document, enriches the extracted data using OIC lookups, and finally creates the supplier invoice in Oracle Fusion ERP Cloud.

a. Object storage file event trigger flow

OCI Steaming Connection configuration in the flow

Sample payload:

{
    "eventType": "com.oraclecloud.objectstorage.createobject",
    "cloudEventsVersion": "0.1",
    "eventTypeVersion": "2.0",
    "source": "ObjectStorage",
    "eventTime": "2026-05-16T20:42:55Z",
    "contentType": "application/json",
    "data": {
        "compartmentId": "ocid1.compartment.oc1..aaaaaaaawXXXXXXXXXXq",
        "compartmentName": "iPaaS-Compartment-2026",
        "resourceName": "Screenshot6.png",
        "resourceId": "/n/xxxxxxx/b/bucket-oic-ailearn/o/Screenshot6.png",
        "availabilityDomain": "HYD-AD-1",
        "additionalDetails": {
            "bucketName": "bucket-oic-ailearn",
            "versionId": "c1bbf99e-14f3-41c5-XXX-f485728e1253",
            "archivalState": "Available",
            "namespace": "xxxxxxx",
            "bucketId": "ocid1.bucket.oc1.ap-hyderabad-1.aaaaaaaag5scjXXXXXhdcq",
            "eTag": "e9a162d9-2844-492a-9890-XXXd82caa3"
        }
    },
    "eventID": "e3a399d4-4d3f-3911-d036-5c957187a687",
    "extensions": {
        "compartmentId": "ocid1.compartment.oc1..aaaaaaaawXXXXXXXXXXq"
    }
}

b. Document understanding and invoice creation flow — This flow will receive the filename from the first flow.

Drag and drop the OCI Document Understanding action which is under OCI AI Services in Actions palette.

Configure as below:

Next, select the compartment, Input source as Object storage and input storage bucket as the bucket in which you are placing the invoice file.

Note: OCI Document Understanding supports both Inline and Object Storage as input sources. When using Inline, the document content must be provided in Base64 format within the request payload. When using Object Storage, OIC reads the document directly from the specified Object Storage bucket, and only the file name needs to be passed in the mapper.

Configure REST connection configuration invoice creation in ERP

Provided below sample payload for invoice creation, this is the minimal payload required to create an invoice.

{
  "BusinessUnit" : "US1 Business Unit",
  "InvoiceNumber" : "INV_SK_0206_2",
  "InvoiceAmount" : 1000,
  "InvoiceCurrency" : "USD",
  "InvoiceDate" : "2026-06-01",
  "Supplier" : "ABC Consulting",
  "SupplierSite" : "ABC US1"
}

Note: SupplierSite and Business Unit are stored in a lookup in OIC for this demo.

Execution:

Upload the file into the bucket that emits the object create event.

Invoice uploaded for this demo:

I have highlighted the values we are interested in.

OCI Stream Event has triggered the integrations

Key value pairs of Invoice are extracted as shown at runtime in the OIC by document understanding action.

Finally, invoice is created in Fusion ERP Cloud.

Conclusion:

In this blog series, we built an event-driven invoice processing solution using OCI services and Oracle Integration. By leveraging OCI Events and OCI Streaming, invoice processing is automatically initiated whenever a document is uploaded to OCI Object Storage, eliminating the need for polling-based integrations.

OCI Document Understanding further simplifies the process by extracting invoice information directly from the uploaded document, enabling the automatic creation of supplier invoices in Oracle Fusion ERP Cloud. Together, these services provide a scalable and efficient approach to automating invoice processing while reducing manual effort.

Possible Enhancements:

OCI Document Understanding provides confidence scores for extracted fields. As a future enhancement, these scores could be used to implement validation thresholds and exception handling, allowing low-confidence invoices to be reviewed before being created in Oracle Fusion ERP Cloud.

References:

[embed]Using Integrations in Oracle Integration 3 You can natively invoke Oracle Cloud Infrastructure Object Storage from an integration without the need to configure an…docs.oracle.com

[embed]Using the Oracle Cloud Infrastructure Streaming Service Adapter with Oracle Integration 3 Review the following conceptual topics to learn about the Oracle Cloud Infrastructure Streaming Service Adapter and how…docs.oracle.com

[embed]Managing Emitting Events for Object State Changes in an Object Storage Bucket Enable or disable whether events are emitted for object state changes in an Object Storage bucket.docs.oracle.com

[embed]Triggering an OIC Integration via OCI Events — the OCI Streaming Service Approach In this blog post, I would like to share the configuration steps to trigger an OIC integration as soon as a file is…lavanya-siliveri.medium.com

[embed]Overview of Events Create automation based on the state changes of resources throughout your tenancy.docs.oracle.com


메타데이터
post_id
cbe5c8e9f878
slug
event-driven-invoice-processing-for-oracle-fusion-erp-using-oci-events-streaming-oci-document-cbe5c8e9f878
url
https://medium.com/@sumanthkoditala/event-driven-invoice-processing-for-oracle-fusion-erp-using-oci-events-streaming-oci-document-cbe5c8e9f878
canonical_url
https://medium.com/@sumanthkoditala/event-driven-invoice-processing-for-oracle-fusion-erp-using-oci-events-streaming-oci-document-cbe5c8e9f878
author_url
https://medium.com/@sumanthkoditala
status
ok
fetched_at
2026-06-20 20:29:01