Sage200 and Virtualstock
Integration Agency & Consultants
Intelligent Consulting
Detailed Solution Design
Smooth Integration
Visibility
Training
BigCommerce
Common failures
Inventory latency and overselling
Operational impact: Delays in synchronising Sage200 stock levels to Virtualstock result in selling inventory that is not available, leading to cancelled orders and negative customer feedback. This creates exception handling for customer service teams who must issue refunds, and for finance teams who must process the associated transaction reversals. At scale, this directly impacts marketplace performance metrics and erodes customer trust.
Prevention / Action: The integration's design must treat Sage200 as the definitive source of truth for inventory. Inventory updates should be pushed to Virtualstock on a frequent, scheduled basis from Sage200, ideally focusing on delta changes rather than full catalogue syncs to reduce latency. Incorporating a stock buffer within the integration logic (e.g., publishing 95% of available stock) can provide a crucial safeguard against overselling during high-velocity periods.
Dispatch confirmation data mismatch
Operational impact: Sage200 processes a dispatch, but the automated confirmation fails to update Virtualstock because a mandatory field, like a specific 'Carrier Code', is missing or incorrectly formatted. This halts the flow of information to the end customer and can delay payout from the marketplace, impacting cash flow. Operations and customer service teams are then forced to manually investigate and resolve data gaps for each affected shipment.
Prevention / Action: A rigorous data mapping exercise is critical, ensuring every required Virtualstock field for a dispatch confirmation has a corresponding source in Sage200. The integration logic should validate that data like carrier codes and tracking numbers are present before attempting to send the confirmation. Implement an exception queue for any dispatch notices that fail validation, allowing an operations team to correct the data in Sage200 before a retry.
Mismatched product or supplier identifiers
Operational impact: An incoming order from Virtualstock is rejected by Sage200 because a SKU or supplier reference does not align with the master record in the ERP. This stops the Sales Order creation process, meaning fulfilment teams are never notified of the demand and stock is not allocated. The failure often remains undiscovered until a customer enquires about their delivery, causing significant delays and requiring urgent manual intervention.
Prevention / Action: Establish Sage200 as the absolute source of truth for all product master data, including SKUs, barcodes, and any supplier-specific identifiers required by Virtualstock. The integration should synchronise product catalogues from Sage200 to Virtualstock to maintain alignment. Order import logic should have robust error handling that immediately flags any order with an unrecognised identifier for review, preventing it from getting lost.
Incorrect financial postings and reconciliation gaps
Operational impact: Orders from Virtualstock are created as Sales Orders in Sage200 but use default nominal codes or incorrect VAT codes, and fail to map to the correct bank account. This forces the finance team into time-consuming manual journal corrections during bank reconciliation and month-end close. Persistent errors in VAT treatment create compliance risks and can lead to inaccurate VAT return submissions.
Prevention / Action: Define the financial posting rules at the start of the project, mapping Virtualstock data points (like product type or value) to the correct nominal and VAT codes in Sage200. The integration should map different payment outcomes to specific Sage200 bank accounts. This ensures each Sales Order and subsequent invoice is recorded correctly on creation, minimising the need for manual financial adjustments.
Frequently asked questions
What happens if Virtualstock tries to update an order that a user has open in Sage200?
This is a common failure scenario where a locked Sage200 record can block incoming updates. If a user has a Sales Order open, it can prevent the integration from writing back a shipment confirmation from Virtualstock. This leads to skewed stock levels and despatch delays, requiring a specific process to handle and retry these failed updates.
How does the integration handle order references between Sage200 and Virtualstock?
Virtualstock requires a unique 'Supplier Order Reference' to process any new order from a supplier. The integration must map a completely unique identifier from Sage200, typically the Sales Order Number, to this specific field. If the reference is not unique, Virtualstock will reject the order, causing it to fail and requiring manual intervention.
Our carriers have specific service codes. How are these mapped to Virtualstock?
Virtualstock enforces a strict, pre-defined list of 'Carrier Codes' for managing shipments and tracking. A key part of the integration involves creating a mapping table that translates your internal carrier descriptions in Sage200 to Virtualstock's required codes. Without this mapping, despatch advice notes will fail to sync, as any unrecognised carrier code causes an error.
How are delivery windows communicated between Sage200 and Virtualstock?
This requires careful data formatting, as Virtualstock has strict requirements for delivery window information. The integration must translate the delivery date from the Sage200 Sales Order into the specific ISO-8601 timestamp format that Virtualstock expects. Failure to format this correctly results in the order data being rejected by Virtualstock's API, halting the fulfilment process.