ERP Integration
Why Integrate Siebel with ERP?
CRM handles customer-facing processes (sales, service). ERP manages back-office operations (finance, inventory, fulfillment). Integrating them creates seamless order-to-cash and quote-to-invoice workflows.
Common ERP Systems
- Oracle E-Business Suite (EBS): Native integration with Siebel (same vendor)
- SAP ERP: Pre-built adapters available
- Oracle NetSuite: Cloud-based, REST API integration
- Microsoft Dynamics: Middleware-based integration
- JD Edwards: Oracle stack, similar to EBS integration
Integration Scenarios
1. Quote-to-Order
- Siebel: Sales rep creates quote (5× iPhones, $4,000)
- Customer accepts quote
- Siebel → ERP: "Create Sales Order SO-12345"
- ERP: Checks inventory (5× iPhones available ✓), creates order
- ERP → Siebel: Returns order number, estimated ship date
- Siebel: Updates quote status "Order Created"
2. Product Catalog Sync
- ERP: Product master (10,000 SKUs, pricing, inventory levels)
- Nightly Batch: ERP exports active products to Siebel (CSV/XML)
- Siebel: Imports products via EIM, updates prices
- Result: Sales reps see up-to-date pricing and availability
3. Customer Master Sync
- Siebel: New account "Acme Corp" created by sales rep
- Siebel → ERP: Real-time API call "Create Customer"
- ERP: Creates customer record, assigns customer ID "C-98765"
- ERP → Siebel: Returns customer ID
- Siebel: Stores "C-98765" in Account Integration ID field
4. Invoice Sync
- ERP: Generates invoice INV-555 for shipped order
- ERP → Siebel: Sends invoice details (amount, due date, line items)
- Siebel: Creates Invoice record, attaches to Account
- Customer Service: Agents can view invoice in Siebel when customer calls with billing question
5. Returns & Refunds
- Siebel: Customer requests return via Service Request
- Agent approves return in Siebel
- Siebel → ERP: "Create Return Authorization RA-222"
- ERP: Processes return, issues refund, updates inventory
- ERP → Siebel: Confirms refund processed
- Siebel: Closes SR, notifies customer
Integration Methods
Real-Time (Synchronous)
When to use: Inventory checks, order creation, payment processing
- Tech: Web Services (SOAP/REST), EAI adapters
- Pros: Immediate data consistency
- Cons: Dependent on ERP availability, slower user experience if ERP is slow
Batch (Asynchronous)
When to use: Bulk product updates, nightly customer sync, invoice imports
- Tech: EIM, flat file exchange (CSV, XML), scheduled jobs
- Pros: Handles large volumes, no user impact
- Cons: Data latency (e.g., product prices updated next day)
Middleware (Event-Driven)
Tools: Oracle Integration Cloud (OIC), MuleSoft, Dell Boomi
- Flow: Siebel publishes "Order Created" event → Middleware transforms data → Pushes to ERP
- Pros: Decoupled, scalable, handles complex transformations
- Cons: Additional infrastructure cost
Data Mapping Example
Siebel Account → SAP Customer:
- Siebel: Account Name → SAP: Customer Name (KUNNR)
- Siebel: Account Location → SAP: City (ORT01)
- Siebel: Phone Number → SAP: Telephone (TELF1)
- Siebel: Account Status → SAP: Customer Status (SPERR)
- Siebel: ROW_ID → SAP: External Reference (EXTVG)
Error Handling
- Scenario: Siebel tries to create order in ERP, but product SKU invalid
- ERP Response: Error "Product XYZ not found"
- Siebel Action:
- Log error to integration table
- Set order status "Pending - ERP Error"
- Alert sales manager via workflow
- Retry logic: Retry 3 times with 5-min intervals, then escalate
End-to-End Example: Order Fulfillment
- Day 1, 10 AM: Sales rep creates quote in Siebel ($10K deal)
- Day 2, 2 PM: Customer accepts quote
- Day 2, 2:05 PM: Rep converts quote → Order in Siebel
- Day 2, 2:06 PM: Siebel calls ERP API: "Create Sales Order" (real-time)
- Day 2, 2:07 PM: ERP validates inventory, creates SO-9999, reserves stock
- Day 2, 2:08 PM: ERP responds to Siebel: "Order created, ship by Day 5"
- Day 2, 2:09 PM: Siebel updates order: "ERP Order ID: SO-9999, Ship Date: Day 5"
- Day 5, 9 AM: ERP ships order, updates status "Shipped"
- Day 5, 6 PM: Nightly batch: ERP sends shipment confirmation to Siebel (CSV)
- Day 5, 11 PM: Siebel imports CSV, updates order status "Shipped", sends tracking email to customer