Sage X3
View ERP order history on the storefront
Where to find it: Storefront → My Account → Orders (for logged-in customers)
When you'd use this: Your customers can view their full order history from Sage X3 directly on the webstore, including order status, delivery tracking, and line item details. This is particularly useful for B2B customers who need to reference past orders or check delivery status without contacting your team.
What you need first:
- A Sage X3 ERP system integrated with your CommerceBuild store
- Customer accounts on your storefront linked to Sage X3 customer records
- The Sage X3 GraphQL API accessible from your webstore
How it works:
When customers visit their account order pages, the storefront retrieves order data from Sage X3 using the GraphQL API. Orders are filtered by the customer's account and sorted by most recent first.
Customers can:
- Browse their order history with key details like order date, status, and total
- Click into individual orders to see line items, delivery status, and invoicing information
- Track orders through fulfillment stages (order status, delivery status, invoiced status)
- View order totals in the original currency
The integration uses the same order endpoints as Business Central and Sage 300 stores, so the customer experience is consistent across all ERP types.
Troubleshooting:
-
Orders don't appear on customer account pages — Verify the customer code in CommerceBuild matches the customer record in Sage X3. Check that the GraphQL API is accessible and authentication credentials are correct.
-
Order details are missing or incomplete — Ensure the Sage X3 sales order record includes all required fields (order date, status, line items). Some fields may be blank if the order hasn't progressed to certain stages (e.g. delivery or invoicing).
Send orders from the webstore to Sage X3
When you'd use this: When a customer completes checkout on your storefront, the order is automatically sent to Sage X3 for fulfillment. This keeps your ERP up to date with all web orders without manual data entry.
What you need first:
- A Sage X3 ERP system integrated with your CommerceBuild store
- SOAP API connection configured between CommerceBuild and Sage X3
- Customer accounts on your storefront linked to Sage X3 customer records
How it works:
When a customer places an order on the webstore, CommerceBuild sends the order details to Sage X3 via SOAP API. The order appears in "Processing" status while the system waits for confirmation from Sage X3.
Once Sage X3 confirms receipt, the order status updates to "Successful" and the order is ready for fulfillment in your ERP. If Sage X3 cannot accept the order or returns an error, the order status changes to "Failed" so your team can investigate and resolve the issue.
The integration includes automatic timeout handling: if Sage X3 doesn't respond within the configured timeout period (or within one hour if no timeout is set), the order moves to "Failed" status. This prevents orders from getting stuck in "Processing" indefinitely and allows your team to retry failed submissions after addressing any connectivity or ERP issues.
Order data sent to Sage X3 includes customer codes, ship-to addresses, payment terms, line items, and pricing. The integration normalizes field formats to match how Sage X3 returns order data through the GraphQL API, ensuring consistent formatting whether an order is created through the webstore or retrieved from the ERP.
Troubleshooting:
-
Orders stuck in "Processing" status — The order may have timed out waiting for Sage X3 to respond. Check the integration logs to confirm whether the request was sent and whether a response was received. Verify that the SOAP API connection to Sage X3 is active and that firewall or network issues aren't blocking responses. Orders that remain in "Processing" after the timeout period should automatically move to "Failed" status so they can be retried.
-
Empty integration records with no response data — If the integration log shows an outbound request but no response body, check network connectivity between CommerceBuild and Sage X3. Verify that Sage X3 is online and responding to SOAP requests. The system will mark these orders as "Failed" after the timeout period.
-
Duplicate orders in Sage X3 — If an order is retried after already being created in Sage X3, check the purchase order number or Sage X3 sales order number to identify duplicates. Cross-reference the CommerceBuild order number with Sage X3 records before manually resubmitting failed orders.
-
Order submission fails with validation errors — Verify the customer code in CommerceBuild matches the customer record in Sage X3. Check that all required order fields (ship-to address, line items, pricing) are present and valid. Review the integration logs for specific error messages from Sage X3.
View invoices and credit memos on the storefront
Where to find it: Storefront → My Account → Transactions (for logged-in customers)
When you'd use this: Your customers can view their billing history directly on the webstore, including invoices and credit memos from Sage X3. This is particularly useful for B2B customers who need to track payments, reference invoice details, or download documents without contacting your team.
What you need first:
- A Sage X3 ERP system integrated with your CommerceBuild store
- Customer accounts on your storefront linked to Sage X3 customer records
- The Sage X3 GraphQL API accessible from your webstore
How it works:
When customers visit their account transaction pages, the storefront retrieves invoice and credit memo data from Sage X3 using the GraphQL API. Transactions are filtered by the customer's account and sorted by most recent first.
Customers can:
- Browse their transaction history with key details like invoice date, document number, status, and total
- Click into individual transactions to see line items, payment terms, and billing information
- View due dates for invoices to track payment obligations
- See totals in the original currency for each transaction
The integration uses the same transaction endpoints as Business Central and Sage 300 stores, so the customer experience is consistent across all ERP types.
Troubleshooting:
-
Transactions don't appear on customer account pages — Verify the customer code in CommerceBuild matches the customer record in Sage X3. Check that the GraphQL API is accessible and authentication credentials are correct.
-
Transaction details are missing or incomplete — Ensure the Sage X3 sales invoice record includes all required fields (invoice date, status, line items). Some fields may be blank depending on the invoice configuration.
-
Due date is missing for an invoice — The due date is retrieved from the payment deadlines in Sage X3. Ensure payment terms are configured and the invoice has a payment deadline set.
Send invoice payments to Sage X3
When you'd use this: When a customer pays an invoice through your storefront, the payment details are automatically sent to Sage X3. This keeps your ERP payment records up to date with all web payments without manual data entry.
What you need first:
- A Sage X3 ERP system integrated with your CommerceBuild store
- Customer accounts on your storefront linked to Sage X3 customer records
- Payment processor configured on your webstore
How it works:
When a customer pays an invoice on the webstore, CommerceBuild sends the payment details to Sage X3, including the payment amount, transaction reference, and credit card information. For credit card payments, Sage X3 receives the card type and the last four digits of the card number for record-keeping and reconciliation purposes.
The payment data is mapped to the format Sage X3 expects, ensuring payment records in your ERP match the transaction details from your payment processor.
Troubleshooting:
-
Payment doesn't appear in Sage X3 — Verify the customer code in CommerceBuild matches the customer record in Sage X3. Check that the integration connection is active and authentication credentials are correct. Review the integration logs for error messages from Sage X3.
-
Credit card details are incorrect in Sage X3 — Check the payment gateway logs to confirm the correct card information was received from the payment processor. The last four digits of the card number should match what appears in Sage X3. If there's a mismatch, contact support with the receipt number from the integration logs.