Automate Sage 300 A/R Receipt Batches from Shopify Orders
Finance teams need a controlled way to turn a busy Shopify order day into receipt data that is easier to review in Sage 300. APPSeCONNECT retrieves Shopify orders, validates the related sales order in Sage 300, calculates the configured net receipt amount, and groups valid receipts into one A/R Receipt Batch for each Shopify creation date. It reduces repetitive batch creation while keeping each order-level receipt visible inside the day’s batch. A well-planned Shopify and Sage 300 integration helps businesses automate order, payment, inventory, and financial data movement between the two systems.
What the Workflow Automates
An A/R Receipt Batch is the Sage 300 container that holds related receipt entries. APPSeCONNECT consolidates Shopify payment receipts by the business date derived from order creation instead of opening a new Sage 300 batch for every order. The result is a daily batch structure that gives finance users one place to inspect the day’s receipts while retaining the supporting order-level entries.
The automation begins at the payment-receipt stage. It does not replace sales-order creation, payment-gateway settlement, bank-deposit confirmation, or Sage 300 posting controls. Those activities remain distinct from business and accounting processes. The configured handoff carries validated Shopify order data into Sage 300 receipt-batch construction.
Use the Shopify Creation Date as the Grouping Key
The grouping rule is deliberately based on when Shopify created the order. A qualifying order created on 22 June 2026 belongs in the Shopify20260622 group. Five qualifying orders created on that same date contribute five receipt entries to that one batch. Orders created on 20 June and 23 June belong to separate keys, even if the integration processes all three dates in one run.

The Shopify GraphQL `orders` query supports filtering by created_at, sorting, and cursor-based pagination. The integration retrieves every page for the requested date range before it forms the group. A partial page cannot be treated as the date’s final receipt set.
Creation date is not a proxy for a gateway payout date, bank settlement date, or the date cash becomes available. It is only the configured grouping basis for the receipt batch. The project team must define the business time zone used to turn Shopify’s timestamp into the YYYYMMDD portion of the integration key. That decision matters around midnight, daylight-saving transitions, and stores that operate in a time zone different from the finance team.
Follow the Configured Process Flow
The visual flow has one clear path: Shopify provides the qualifying order data, a Mapper transforms the configured fields and applies the grouping logic, and Sage 300 receives the batch and receipt-entry payloads. The ProcessFlow connects these application and mapper nodes so the integration team can see the business handoff.

APPSeCONNECT should preserve one traceable record path for each Shopify order. The source order reference, calculated receipt amount, date-group key, related Sage 300 sales order, and integration result need to remain associated while the batch is built. This lets a user trace a receipt entry back to the Shopify order that supplied it without treating the daily batch itself as a replacement for order-level evidence.
Retrieve Shopify Orders for a Controlled Date Window
The retrieval node queries Shopify orders for the selected creation-date range through GraphQL. The payload needs the identifier used to match the Sage 300 sales order, the order creation time, the order total, and the transaction-fee information required by the configured amount formula. The exact GraphQL selection set and the authorization scopes belong to the implementation because Shopify store configuration and payment arrangements can differ.
Cursor pagination is part of the control, not an optional optimization. Shopify returns orders through a connection, and the integration continues while the page information indicates more results. A run that stops after its first page may create a batch that looks complete but excludes later records from the same business date. A reliable Shopify integration should retrieve complete order data, handle pagination correctly, and maintain traceable records throughout the workflow.
The order window should also be explicit. For example, a reprocessing run for 22 June should identify the same business-date interval used by the original configuration. Changing the time-zone conversion or date boundary midway through a run can move an order into a different batch key and weaken reconciliation.
Validate the Existing Sage 300 Sales Order
Before a receipt is calculated or inserted, APPSeCONNECT verifies that the corresponding Sage 300 Sales Order already exists. This is a receipt-processing gate. APPSeCONNECT does not create the sales order as part of this stage, and a Shopify order reference alone is not proof that the related receivable document is ready for a receipt entry.
The validation uses the approved project mapping between the Shopify order reference and the Sage 300 sales-order reference. That mapping may use an order number, document number, or another agreed key, but the deployment configuration must document the chosen field, account-set treatment, customer rules, and unmatched-record path before the flow runs in production.
This gate improves the quality of the daily batch because only receipts tied to an existing sales order continue through the configured flow. It also keeps a source-order issue distinct from a batch-construction issue. Teams can investigate an unmatched record without assuming that the right response is to create an accounting document automatically.
Calculate the Configured Net Receipt Amount
For every validated order, the Mapper applies this configured calculation:
Final Receipt Amount = Order Total − Transaction Fees
The formula is specific to the configured integration mapping. It is not a universal definition of revenue, cash received, settled funds, merchant fees, or the amount that every Shopify and Sage 300 implementation should post. It must use the order-total and transaction-fee values approved for this integration, with compatible currency and rounding treatment.
The current Shopify OrderTransaction object provides payment details, transaction status, gateway information, and transaction fees for Shopify Payments transactions. APPSeCONNECT should select only the approved transaction records, retain compatible currency values, apply the project’s rounding rule, and reject records whose configured fee basis is unavailable.
For payout reconciliation, define a separate approved source, matching rule, and control. Keep that process separate from the order-creation-date grouping used by this receipt workflow.
Build the Daily A/R Receipt Batch
After validation and calculation, the Mapper groups qualifying records by the compact creation-date key. A record dated 2026-06-20 uses Shopify20260620; a record dated 2026-06-23 uses Shopify20260623. The Sage 300 batch description may present the same date with separators, such as Shopify2026-06-22, while preserving the one-batch-per-business-date rule.
The Sage 300 batch carries the configured batch information, deposit information, payment-method information, and the receipt entries for that group. The Sage 300 A/R Receipt Entry workflow can use a batch date as the default document date for new documents added to that batch. Configure the bank, currency, deposit number, payment code, and receipt type against the company’s live Sage 300 setup before the flow is released.

Use the visible batch list as an operational review record for the configured grouping and Sage 300 batch. Reconciliation should compare its count, amount, and exceptions with the finance-approved source records for the relevant process.
Create an Order-Level Receipt Entry for Each Qualifying Order
The batch contains one configured receipt entry for every qualifying Shopify order. Each receipt entry carries these mapped fields:
- Customer Number: Map the Sage 300 customer identity selected by the approved mapping.
- Order Number: Retain the Shopify order reference used to connect the receipt with the related sales order.
- Receipt Amount: Calculate the configured result as Order Total − Transaction Fees.
- Payment Method: Map the configured Sage 300 payment-method detail for the receipt.
- Deposit Information: Supply the batch or receipt deposit detail required by the configured Sage 300 process.
- Associated Sales Order Reference: Retain the existing Sage 300 sales-order reference validated before the entry is created.

Sage 300 A/R Receipt Entry separates general receipt information from the details used to apply a receipt to documents. The deployment team should configure the precise receipt transaction type, application method, customer number, reference field, and deposit behavior for the live company, then validate those settings with finance before release.
Submit the Batch Without Confusing Submission with Posting
The submission node sends the completed batch through the Sage Web API for Sage 300 processing and reconciliation. A successful create or submission response means the API request was handled at that integration boundary. It does not by itself prove that Accounts Receivable has posted the batch, updated customer accounts, or created General Ledger activity.
Sage 300 has a separate receipt-batch posting process. A batch must be ready to post before posting transfers its contents to customer accounts. Depending on Sage 300 options, General Ledger transactions can be created during posting or later. Treat an open receipt batch as an entered batch awaiting the finance-controlled review and posting process. A properly configured Sage 300 integration can automate data submission while still preserving finance-controlled review, posting, and reconciliation processes.
This distinction keeps responsibilities clear. APPSeCONNECT assembles and submits the configured data. Finance retains authority over review, readiness, posting, correction, and reconciliation under the company’s Sage 300 controls.
Controls to Confirm During Implementation
The configuration should define the following controls before production use:
- Date Boundary: Define the business time zone that converts Shopify createdAt into the YYYYMMDD group key.
- Order Match: Document the exact Shopify reference used to find the existing Sage 300 Sales Order and the controlled outcome for an unmatched record.
- Fee Source: Record the approved transaction-fee value, currency, and rounding precision used by the configured calculation.
- Duplicate Prevention: Use an approved run identifier or business key that prevents a retried run from inserting the same Shopify order twice.
- Batch Reuse: Define whether an existing date-grouped batch accepts eligible entries, stops for review, or follows another controlled path.
- Posting Boundary: Assign the finance role that reviews the batch, marks it ready to post, and performs the Sage 300 posting action.
Document these implementation and finance controls in the project configuration, then test them with representative orders, fees, unmatched sales orders, reruns, and date-boundary cases.
Operational Result for Finance Teams
APPSeCONNECT changes the unit of batch management from one batch per Shopify order to one batch per Shopify creation date. Finance teams can review the day’s receipt entries together while each entry still carries the customer, sales-order reference, payment detail, deposit information, and calculated amount needed for follow-up.
That organization supports a focused daily review: finance can compare the batch count and configured amount with its approved operational records, isolate unmatched sales orders or failed records, and determine whether the batch is ready for the company’s established review and posting process.
The ProcessFlow lets the integration team trace the Shopify, Mapper, and Sage 300 handoff. It shows where the order was retrieved, where the configured calculation and date grouping occur, and where Sage 300 receives the resulting receipt batch. Finance-approved mapping, settlement reconciliation, and Sage 300 posting controls still govern the accounting outcome.
Conclusion
Reliable daily receipt batching starts with a stable business-date boundary, an existing-order check, a documented fee formula, and an idempotent key for every receipt entry. Finance can then reconcile the open batch before posting it. APPSeCONNECT coordinates Shopify retrieval, mapping, Sage 300 submission, and exception tracking while keeping posting authority with finance.
Define the date, fee, duplicate, and posting controls before testing with representative orders and reruns.
Review your Shopify-to-Sage 300 receipt design with an integration specialist.



