Introduction
Callback in Oracle Integration Cloud (OIC) is a critical concept when dealing with asynchronous integrations, especially in real-world enterprise scenarios where systems don’t respond immediately. In modern cloud architectures using Oracle Integration Cloud (OIC Gen 3), callback mechanisms help manage long-running processes, external approvals, third-party system responses, and delayed transactions.
From a consultant’s perspective, callback integrations are heavily used in projects involving Fusion HCM approvals, ERP invoice processing, SCM order orchestration, and external payment gateways. If you don’t design callbacks properly, integrations either fail silently or lead to data inconsistencies.
In this blog, we will break down callback patterns in OIC with practical implementation guidance, not just theory.
What is Callback in Oracle Integration Cloud?
A callback in OIC is a mechanism where:
- An integration sends a request to an external system
- The external system processes it asynchronously
- Instead of waiting, OIC pauses execution
- Once processing is complete, the external system sends a callback response
- OIC resumes the integration flow
Key Concept
👉 Callback = Wait + Resume pattern
Unlike synchronous APIs (request-response), callbacks are designed for:
- Long-running transactions
- External system dependencies
- Human approvals
- Event-driven architectures
Key Features of Callback in OIC Gen 3
1. Asynchronous Processing Support
- Allows integrations to run without blocking threads
- Improves performance in high-volume environments
2. Wait Activity
- OIC provides a Wait action to pause integration until callback is received
3. Callback Endpoint Generation
- OIC automatically generates a callback URL
- External systems use this URL to send response
4. Correlation Mechanism
- Uses tracking identifiers to match callback with original request
5. Fault Handling Support
- Timeout handling if callback is not received
- Retry logic can be implemented
Real-World Integration Use Cases
Use Case 1 – Fusion HCM Approval Workflow
Scenario:
- Employee submits a promotion request
- OIC sends data to external approval system
- Manager approves after 2 days
- External system sends callback
Why Callback?
- Approval is not immediate
- OIC must wait without timing out
Use Case 2 – ERP Invoice Processing with External Tax Engine
Scenario:
- Invoice sent to external tax calculation system
- System processes large batch (10–15 mins)
- Sends calculated tax via callback
Use Case 3 – Payment Gateway Integration
Scenario:
- OIC sends payment request
- Bank processes asynchronously
- Sends success/failure callback
Architecture / Technical Flow
Below is the typical callback flow in OIC:
- Trigger Integration (REST/SOAP)
- Send request to external system
- Store correlation ID
- Wait activity initiated
- External system processes request
- External system calls OIC callback endpoint
- OIC resumes integration
- Process response and complete flow
Key Components
| Component | Purpose |
|---|---|
| Trigger | Starts integration |
| Invoke | Sends request to external system |
| Wait Action | Pauses flow |
| Callback Endpoint | Receives response |
| Tracking ID | Matches request and response |
Prerequisites
Before implementing callback in OIC, ensure:
- Access to OIC Gen 3 instance
- REST/SOAP connection configured
- External system capable of sending callback
- Understanding of:
- JSON/XML payloads
- REST APIs
- OIC orchestration patterns
Step-by-Step Build Process
Let’s implement a callback integration using REST adapter.
Step 1 – Create Integration
Navigate:
👉 Home → Integrations → Create
- Select App Driven Orchestration
- Name:
Invoice_Callback_Integration
Step 2 – Configure Trigger (REST Adapter)
- Drag REST adapter as trigger
- Configure:
- Method: POST
- Request payload: Invoice details
Example JSON:
Step 3 – Invoke External System
- Add Invoke activity
- Configure REST connection to external system
- Pass invoice data
Step 4 – Add Wait Action (Callback Pattern)
This is the most important step.
- Drag Wait action
- Choose:
- Wait for callback
OIC generates:
- Callback URL
- Correlation identifier
Step 5 – Configure Correlation
Define correlation field:
Example:
- invoiceId
This ensures: 👉 Callback response maps to correct instance
Step 6 – Design Callback Payload
Expected response from external system:
Step 7 – Process Callback Response
- Map callback data
- Add business logic:
- If APPROVED → proceed
- If REJECTED → handle error
Step 8 – Save and Activate
- Click Save
- Click Activate
Testing the Technical Component
Step 1 – Trigger Integration
Use Postman:
Step 2 – Verify Wait State
- Go to Monitoring → Tracking
- Status should be: 👉 Waiting
Step 3 – Send Callback Request
Call generated callback URL:
Step 4 – Validate Completion
- Integration resumes
- Status changes to: 👉 Completed
Common Errors and Troubleshooting
1. Callback Not Received
Reason:
- Incorrect callback URL
Solution:
- Verify endpoint from OIC
2. Correlation Failure
Error:
- Instance not found
Reason:
- Mismatch in correlation ID
Fix:
- Ensure same ID used in request and callback
3. Timeout Issues
Problem:
- Wait expires
Solution:
- Increase timeout duration
- Implement retry mechanism
4. Payload Mismatch
Error:
- Mapping failure
Fix:
- Validate JSON structure
Best Practices from Real Projects
1. Always Use Unique Correlation IDs
- Avoid duplicate processing
2. Log Every Callback Request
- Helps in debugging production issues
3. Design Idempotent Integrations
- Callback may be triggered multiple times
4. Implement Timeout Handling
Example:
- If no callback in 24 hours → mark failed
5. Secure Callback Endpoint
- Use OAuth or API Gateway
- Avoid exposing public endpoints without security
6. Use Tracking Fields Effectively
- Enable business identifiers for monitoring
Real Consultant Insight
In one ERP implementation, a client used a third-party logistics provider. Shipment confirmation came after 6–8 hours.
Initially, they designed synchronous integration → result:
❌ Timeouts
❌ Failed transactions
After implementing callback:
✅ Stable processing
✅ No timeouts
✅ Better monitoring
Summary
Callback in Oracle Integration Cloud is a must-know pattern for any serious OIC consultant.
It enables:
- Asynchronous processing
- Reliable integrations
- Handling long-running workflows
- Better scalability
If you’re working on Fusion HCM, ERP, or SCM integrations, callbacks are not optional—they are essential.
FAQs
1. What is the difference between callback and synchronous integration in OIC?
Answer: Synchronous integration waits for immediate response, while callback allows delayed response and resumes later.
2. Can we use callback with REST adapter in OIC?
Answer: Yes, REST adapter fully supports callback pattern with Wait activity in OIC Gen 3.
3. How does OIC identify the correct integration instance during callback?
Answer: Using correlation identifiers like invoiceId or requestId.
Additional Reference
For deeper understanding, refer to Oracle official documentation:
https://docs.oracle.com/en/cloud/paas/application-integration/index.html