Sage 300 and Orderful integration
Sage 300 runs purchasing and finance for mid-market businesses. Orderful moves EDI documents to and from trading partners. Connecting the two keeps your procurement and your partner communications in sync. Purchase orders generated in Sage 300 flow to Orderful for delivery to suppliers, invoices from Orderful map back into Sage 300 AP, and receipts in inventory automatically trigger shipment notices back to partners. ml-connector handles the different APIs on each side and moves the data on a schedule you control.
What moves between them
The main flow runs in both directions. Purchase orders and planned schedules move from Orderful into Sage 300 PO and order entry modules on a scheduled poll, creating or updating POs and orders for suppliers. When those POs are invoiced and posted in Sage 300 AP, the invoices flow back into Orderful and are translated into EDI 810 invoices for delivery to trading partners. Receipts in Sage 300 inventory trigger EDI 856 shipment notices sent back to Orderful for partner communication. Reference data such as items and vendors are synced periodically to keep both systems aligned. All transactions are immutable once posted, so invoices and receipts move in one direction only.
How ml-connector handles it
ml-connector stores Sage 300 Basic Auth credentials (username and password, both uppercase) and Orderful API Key encrypted. It polls Sage 300 using OData date-range filters on the PO and invoice transaction tables, and polls Orderful via polling buckets or receives webhooks for incoming EDI transactions. ISA identifiers in Orderful transactions are mapped to Sage 300 vendor IDs so incoming POs route to the correct supplier master record. GL-posted invoices from Sage 300 AP are read via date filtering and transformed into Orderful EDI format with the correct sender and receiver ISA identifiers. Orderful 429 responses trigger exponential backoff and retry. Sage 300 IIS AppPool timeouts are mitigated by tuning batch sizes and poll frequency to account for the customer's IIS configuration. Every record is tracked with its source timestamp and order of operations so a downstream call failure can be replayed without duplication.
A real-world example
A mid-sized wholesale distributor runs Sage 300 for purchasing, inventory, and accounting, and maintains EDI connections to three major suppliers through Orderful. Before the integration, the procurement team manually exported POs from Sage 300, imported them into Orderful as X12 850 documents, and received invoices from Orderful back via email, then manually entered them into Sage 300 AP. This process took two days per week and created invoice matching errors and late payments. With Sage 300 and Orderful connected, POs move automatically from Sage 300 into Orderful for supplier delivery, invoices arrive from Orderful and flow directly into Sage 300 AP matching PO and receipt, and the procurement team tracks supplier performance in real time. Manual re-entry is gone, invoices match automatically, and payments process on time.
What you can do
- Move purchase orders and planned schedules from Orderful into Sage 300 PO and order entry, routed by supplier EDI identifier.
- Post Sage 300 invoices and receipts back to Orderful for translation into EDI 810 and 856 documents and delivery to suppliers.
- Align items, vendors, and GL accounts across both systems so orders and invoices land on the correct master records.
- Authenticate Sage 300 via HTTP Basic Auth with uppercase credentials and Orderful via static API Key, polling both systems on your schedule.
- Track every transaction end-to-end with timestamp and order of operations, and replay failed records without duplication.
Questions
- Which direction does data move between Sage 300 and Orderful?
- Data flows in both directions. Purchase orders and planning schedules move from Orderful into Sage 300 to create or update POs. GL-posted invoices and receipts from Sage 300 flow back into Orderful for translation into EDI format and delivery to trading partners. Invoices and receipts are immutable once posted, so they move in one direction only.
- How does ml-connector handle Sage 300's HTTP Basic Auth and uppercase credential requirement?
- ml-connector stores Sage 300 username and password encrypted and converts them to uppercase before each API call. The Authorization header is constructed with base64-encoded uppercase credentials on every request. An API user must be created in Sage 300 Administrative Services with Web API security group permissions, and that user's credentials are configured in ml-connector.
- What happens if Sage 300 IIS timeouts or Orderful rate limits the connection?
- ml-connector tunes poll batch sizes and frequency to account for Sage 300 IIS configuration and avoid AppPool timeouts. Orderful 429 rate-limit responses trigger exponential backoff and retry. Both systems maintain a complete transaction history with timestamp and order of operations, so any failed call can be replayed without creating duplicates.
Related integrations
More Sage 300 integrations
Other systems that connect to Orderful
Connect Sage 300 and Orderful
Free to use. Add your credentials, ping your real systems, and see if we fit.
Get started