Oracle JD Edwards and Fishbowl integration
Oracle JD Edwards EnterpriseOne runs your finance and procurement; Fishbowl Advanced runs your inventory. Connecting the two keeps your bill of materials, parts, and vendor purchase orders in step across both systems. When a new purchase order is created in JD Edwards, it flows into Fishbowl so warehouse staff see the inbound item before it arrives. Item master changes in JD Edwards propagate to Fishbowl so part numbers and descriptions stay aligned. ml-connector handles the two different APIs and the session token exchange on each side.
What moves between them
The main flow runs from Oracle JD Edwards into Fishbowl. Purchase orders from JD Edwards F4301/F4311 are polled on a schedule and synced into Fishbowl as new purchase orders or matched to existing orders by vendor ID and PO number. Item master records from JD Edwards F4101 and F4102 are pulled and create or update Fishbowl Part records, mapping item codes, descriptions, unit of measure, and cost. Vendor master data from JD Edwards F0101 is synced into Fishbowl Vendor records so purchase orders reference the correct supplier. The sync runs on a configurable schedule, typically once per hour or more frequently during peak procurement windows.
How ml-connector handles it
ml-connector stores both credential sets encrypted and manages session tokens for each system independently. It queries JD Edwards data service with date filters on UPMJ to detect changes since the last poll, handles pagination with the maxPageSize parameter and moreRecords flag, and stores the last-polled timestamp to avoid re-reading unchanged records. On the Fishbowl side it polls the API with date filters and handles token refresh when needed. Item codes are normalized across both systems so a JD Edwards item F4101.ITEMNMBR matches the correct Fishbowl Part external ID. Vendor references use the JD Edwards supplier ID from F0401 to avoid mismatches on name variations. Because both systems run on customer infrastructure with no fixed public hostname, ml-connector accepts the full AIS Server URL and Fishbowl server URL as credentials per deployment. Session tokens have finite lifetime (JD Edwards tokens typically 30-60 minutes) so ml-connector re-authenticates on 401 responses. Every record carries a full audit trail and can be replayed if a downstream write to Fishbowl fails.
A real-world example
A mid-sized discrete manufacturer runs Oracle JD Edwards EnterpriseOne for procurement and GL accounting, and Fishbowl Advanced for inventory and shop floor management. Before the integration, purchase orders created in JD Edwards were manually re-entered into Fishbowl by inventory staff, and item master changes in JD Edwards were not always reflected in Fishbowl part records, leading to confusion on part numbers and cost data during physical counts. After the integration, new POs from JD Edwards automatically appear in Fishbowl within one poll cycle, item changes flow through within minutes, and inventory counts are reconciled against current part and cost data.
What you can do
- Sync Oracle JD Edwards purchase orders into Fishbowl with automatic vendor and item cross-reference mapping.
- Pull item master records from JD Edwards F4101 and F4102 and create or update Fishbowl Part records with part numbers, descriptions, and unit costs.
- Map vendor master data from JD Edwards F0401 (Supplier Master) to Fishbowl Vendor records so suppliers are consistent across both systems.
- Manage session tokens for both the JD Edwards AIS Server and Fishbowl server, re-authenticating on expiry and handling both on-premise deployments with customer-supplied URLs.
- Poll on a configurable schedule with full audit logging and error replay on every record moved between the two systems.
Questions
- Which direction does data move between Oracle JD Edwards and Fishbowl?
- The main flow is from Oracle JD Edwards into Fishbowl. Purchase orders, item master records, and vendor data flow from JD Edwards into Fishbowl to keep inventory and procurement in sync. Fishbowl does not write back to JD Edwards; the connection is primarily inbound to align Fishbowl with the ERP source of truth.
- How does ml-connector handle JD Edwards session tokens and authentication?
- ml-connector obtains a JD Edwards session token by POST to the tokenrequest endpoint with the service account username and password, and stores the token encrypted. Each token has a finite lifetime (typically 30-60 minutes configurable per customer), so ml-connector handles 401 Unauthorized responses by re-authenticating. The AIS Server URL is customer-provided since JD Edwards runs on-premise with no fixed shared hostname.
- What happens if an item code or vendor ID changes in JD Edwards?
- ml-connector uses item codes and vendor IDs as the primary match keys when syncing into Fishbowl. If an item code or vendor ID is updated in JD Edwards, the next poll detects the change via the UPMJ date filter, and ml-connector updates the matching Fishbowl Part or Vendor record. If the key itself changes (a renumbering), treat it as a new part or vendor in Fishbowl and retire the old record.
Related integrations
More Oracle JD Edwards integrations
Other systems that connect to Fishbowl
Connect Oracle JD Edwards and Fishbowl
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started