ml-connector
Oracle PeopleSoftShipBob

Oracle PeopleSoft and ShipBob integration

Oracle PeopleSoft stores employee roles, inventory items, and supplier purchase orders on your own servers. ShipBob runs your fulfillment center operations and tracks orders, inventory, returns, and shipments. Connecting the two keeps your fulfillment supply chain synchronized with your ERP source of truth. Inventory quantities and receiving operations from Oracle PeopleSoft feed into ShipBob's picking and packing operations, and shipment and return events post back into PeopleSoft for cost reconciliation and inventory adjustments.

How Oracle PeopleSoft works

Oracle PeopleSoft is a self-hosted ERP platform deployed on the customer's own servers or Oracle Cloud Infrastructure. It exposes employee, inventory, purchase order, and journal entry records through REST JSON endpoints via RESTListeningConnector and SOAP Component Interface services. Authentication uses HTTP Basic Auth with an OPRID and password, or OAuth2 Bearer token for PeopleTools 8.58 and later. Each customer operates a unique hostname and port; Oracle publishes no shared base URL. PeopleSoft has no webhooks, so records are read by polling date-range filtered endpoints. Large result sets require pagination through date filters or explicit parameter bounds. Write operations use SOAP Component Interface calls, which require natural object keys or custom deduplication by the integrating application.

How ShipBob works

ShipBob is a fulfillment platform where merchants send inventory to warehouse locations for picking, packing, and shipping. It exposes orders, shipments, products, inventory, receiving operations (warehouse receiving orders), returns, and billing through REST JSON APIs at https://api.shipbob.com with version-specific path prefixes. Authentication requires OAuth2 Authorization Code flow or Personal Access Token, with access tokens valid for one hour and refresh tokens for thirty days. All calls must include Authorization Bearer header and shipbob_channel_id header to identify the writing application channel. ShipBob publishes webhooks for order, shipment, return, and warehouse receiving events, signed with HMAC-SHA256.

What moves between them

Oracle PeopleSoft inventory items and quantities flow into ShipBob as products and variant inventory on each warehouse location. Supplier purchase orders from Oracle PeopleSoft map to ShipBob warehouse receiving orders (WRO), allowing fulfillment staff to receive, scan, and stow inventory. Shipment tracking events and return completions flow back from ShipBob into Oracle PeopleSoft via polling or webhook-triggered queries, updating inventory balances and posting freight and damage reconciliation to cost centers. The flow is primarily pull-driven from Oracle PeopleSoft side (polling REST endpoints) and event-driven from ShipBob side (webhook consumption).

How ml-connector handles it

ml-connector polls Oracle PeopleSoft REST endpoints on a configurable schedule, using date-range filters to fetch new and modified inventory, products, and purchase orders since the last run. It translates each Oracle PeopleSoft inventory item into a ShipBob product with variants for each storage location and unit of measure, mapping quantities to ShipBob warehouse location inventory levels. Purchase orders become warehouse receiving orders (WRO) in ShipBob, tagged with the Oracle PeopleSoft requisition or PO number for traceability. ml-connector handles Oracle PeopleSoft's requirement for HTTP Basic Auth on each customer's unique hostname, refreshes OAuth2 tokens for ShipBob access when they approach expiry, and verifies ShipBob webhook signatures on incoming shipment and return events. When a shipment ships or a return completes, ml-connector reads the event details from ShipBob and posts inventory adjustments and freight cost journals back into Oracle PeopleSoft general ledger. Retries use exponential backoff on rate limits and connection failures, and every record carries a full audit trail for reconciliation if a shipment or return event fails to post.

A real-world example

A mid-size distributor of office supplies runs Oracle PeopleSoft on-premise for inventory, purchasing, and general ledger. They contract ShipBob to run two regional fulfillment centers. Before integration, the inventory team manually exported supplier purchase orders from Oracle PeopleSoft to a spreadsheet, sent them to ShipBob via email, and then manually updated Oracle PeopleSoft stock balances after ShipBob scanned receipt into the warehouse. After every shipment, ShipBob sent a summary report via CSV and the finance team manually posted freight costs and inventory adjustments to the GL. With Oracle PeopleSoft and ShipBob connected, each new PO automatically creates a warehouse receiving order in ShipBob the next morning, fulfillment staff scan and receive without re-keying, inventory balances in Oracle PeopleSoft update immediately, and shipment events post freight allocations to cost centers by warehouse location automatically. The monthly reconciliation of inventory between the ERP and fulfillment center is now complete before month-end close starts.

What you can do

  • Push inventory items and quantities from Oracle PeopleSoft to ShipBob as products and variant stock levels across warehouse locations.
  • Convert Oracle PeopleSoft purchase orders into ShipBob warehouse receiving orders, tagged for traceability with the original PO number.
  • Receive ShipBob shipment and return webhooks, update Oracle PeopleSoft inventory balances, and post freight and damage reconciliation to the general ledger.
  • Handle Oracle PeopleSoft HTTP Basic Auth on each customer's unique hostname and ShipBob OAuth2 token refresh with automatic expiry tracking.
  • Poll Oracle PeopleSoft on a configurable schedule with date-range filters, retry on failures, and maintain a full audit trail of every inventory and order movement.

Questions

Which direction does data move between Oracle PeopleSoft and ShipBob?
Inventory and purchase orders move from Oracle PeopleSoft into ShipBob for fulfillment. Shipment and return events move from ShipBob back into Oracle PeopleSoft to update inventory balances and post freight costs to the general ledger. Reference data such as warehouse locations and product hierarchies can be aligned in both directions.
Does ml-connector handle Oracle PeopleSoft's requirement for a unique hostname per customer?
Yes. Oracle PeopleSoft is self-hosted, so each customer has their own server hostname and port. ml-connector accepts the full base URL per customer, authenticates with HTTP Basic Auth (OPRID and password), and can route to either REST or SOAP endpoints depending on the PeopleTools version and operation type.
How does ml-connector handle the difference between Oracle PeopleSoft polling and ShipBob webhooks?
ml-connector polls Oracle PeopleSoft REST endpoints on a schedule configured to your receiving and inventory cycles, using date-range filters to fetch only new and modified records since the last run. It consumes ShipBob webhooks for shipment and return events in real time, verifying HMAC-SHA256 signatures, and then queries back to Oracle PeopleSoft to post cost entries and inventory adjustments within the same transaction flow.

Related integrations

Connect Oracle PeopleSoft and ShipBob

Free to use. Add your credentials, ping your real systems, and see if we fit.

Get started