Ecommerce ERP Integration in Australia, With GST Right on Every Order and Refund
Your store sells on Shopify, WooCommerce or BigCommerce, and maybe Amazon.com.au and Kogan too. Your books sit in Xero or MYOB, and stock lives in Cin7, Unleashed, NetSuite or Odoo. Somewhere in between, a person is retyping orders and fixing GST before every BAS. FactoryJet designs, builds and supports the link that ends that, and you own every line of it.
What does ecommerce ERP integration do for an Australian business?
Ecommerce ERP integration joins your online store to the system that runs your stock and accounts. For an Australian business that usually means Shopify, WooCommerce or BigCommerce on one side and Xero, MYOB, NetSuite, Cin7, Unleashed or Odoo on the other. Stock and prices go out to the store and marketplaces. Orders, payouts, refunds and GST come back, coded so your BAS reconciles without a spreadsheet in the middle.
An owner map is a table saying which system is the source of truth for each record. A clearing account stands in for one payment provider, such as Afterpay or Shopify Payments. When the provider’s deposit lands in your bank, that account should read $0. A tax code is the label that tells your ledger whether a line carries GST. A SKU (stock keeping unit) is the unique code for one product variant. A 3PL (third-party logistics provider) is an outside warehouse that packs and ships orders for you. An API call is one request one system sends another, such as “give me today’s orders”.
If you take hundreds of orders a week across a store and two or three marketplaces, the strain shows in two places. A bookkeeper spends days each quarter matching deposits, and stock is wrong often enough that customers notice. The software exists. What is missing is someone who agrees the rules first, builds the link, and stays accountable for it after launch.
- Orders retyped into Xero or MYOBEvery day
- Bank deposits that never match a day of salesEvery payout
- Overselling on Kogan or AmazonEvery sale
- GST fixed by hand before lodgingEvery BAS
- Trade buyers asking for tax invoicesEvery week
The systems we connect, and what each one should own
These are the eight groups of systems we connect for Australian stores. The pairing decides the route: Shopify to Xero through a payout app is a different job from Shopify to NetSuite with trade price lists and three warehouses.
Xero
A ledger many Australian bookkeepers work in. It gets payout summaries or trade invoices, tax codes and clearing accounts. Xero suggests a limit of 4,000 tracked items, so bigger catalogues keep stock elsewhere.
MYOB Business and MYOB Acumatica
MYOB Business links to Shopify through Amaka on a daily sync. MYOB Acumatica, the mid-market ERP, needs a connector or a custom link that respects its own item and tax setup.
NetSuite
For groups with several entities, warehouses or trade price lists. NetSuite owns products, prices, customers and stock, and the store becomes a sales channel feeding it.
Cin7 Core (formerly DEAR) and Cin7 Omni
Inventory and order management between the store and Xero or QuickBooks. Cin7 Core pushes stock to Shopify on every change, so Cin7 is the master and Shopify keeps a copy.
Unleashed
Inventory for makers and wholesalers with assemblies and batch tracking. Stock syncs to Shopify at intervals you set, and every variant must carry a SKU matching its product code.
Odoo and QuickBooks Online
Odoo’s Shopify Connector pulls orders every 10 minutes by default and pushes stock back after each pull. QuickBooks Online works for smaller back offices that already use it.
Marketplaces
Amazon.com.au, eBay, Kogan, Bunnings Marketplace and THE ICONIC, drawing on one stock count and settling into their own clearing accounts so marketplace fees show up in margin.
Payments and couriers
Shopify Payments, Stripe, Afterpay, Zip and PayPal payouts matched to the bank feed. Australia Post, StarTrack and Sendle tracking written back to the order and the customer.
Where GST goes wrong between a store and the books
Mixed carts. The ATO says a tax invoice covering taxable and non-taxable items must clearly show which items are taxable. A store selling basic food, some medical aids or anything else GST-free next to taxable lines needs every product carrying the right tax setting, and each setting mapped to a ledger tax code. Get one wrong and it repeats on every order until someone notices at BAS time.
Refunds and returns. A refund should reverse the exact GST that was charged, on the same tax code and at the original amount. The ATO says you need a valid adjustment note before claiming a decreasing adjustment unless the GST involved is $75 or less, so trade credits above that should come out of the ERP with the note attached. We post an exchange as a refund plus a new sale, so each keeps its own GST.
Trade invoices and rounding. Sales of $1,000 or more need the buyer’s identity or ABN on the tax invoice, so trade accounts carry their ABN from the ERP into each order. The ATO’s tax invoice guidance also allows two rounding rules, and when the store and Xero pick different ones the GST drifts by cents. We choose one, match both systems, and route any leftover cent to a rounding account.
eInvoicing. The ATO says Australia has adopted Peppol as its common eInvoicing standard. If your larger trade customers ask for eInvoices, the order has to reach the ERP complete, with ABN, purchase order number and tax per line, so the ERP can send it.
Sources: ATO, Tax invoices and ATO, Adjustment notes, both read 29 October 2026. We are not tax agents. Your accountant signs off the tax code map before we build.
- Taxable and GST-free lines in one cartCoded
- Discount code across mixed linesSplit
- Shipping on a mixed cartCoded
- Partial refundSame code
- Trade order over $1,000ABN shown
- Payout with fees and a refundClears to $0
Which system owns each record
The usual fault in a broken integration is two systems that both think they own stock, or prices, or customers. This is the starting map we put on the table at a scoping call. Your version will differ, and it gets written down and signed before anything is built.
Swipe sideways to see every column.
| Record | Owner | Direction | Australian detail |
|---|---|---|---|
| Products and SKUs | ERP or inventory system | Out to store and marketplaces | One unique SKU per variant before anything syncs |
| Retail and trade prices | ERP | Out to store | GST-inclusive retail, GST-exclusive trade price lists |
| Stock on hand | ERP or inventory system | Out to every channel | Staff never edit stock in Shopify directly |
| Orders | Store or marketplace | In to ERP | Tagged by channel so margin reports work |
| Customers | Shared | Shoppers in, trade accounts out | Trade accounts carry ABN and payment terms |
| Payouts and fees | Payment provider | In to accounting | One clearing account per provider |
| Refunds and returns | Store | In to ERP and accounting | Same tax code as the original sale |
| Tax codes | Accounting system | Mapped once, both ways | Taxable, GST-free and shipping lines |
| Shipments and tracking | ERP, 3PL or courier app | In to store | Australia Post, StarTrack or Sendle numbers |
This is a starting point for discussion. Stores without an inventory system keep products and stock in Shopify and post to Xero or MYOB only.
Next step
Still retyping orders or fixing GST before each BAS?
Tell us your store, your marketplaces and whether you run Xero, MYOB, Cin7, Unleashed, NetSuite or Odoo. On a short call the founder will tell you whether a ready-made connector covers it, or what a custom link would add.
Read the connector’s direction before you buy it
Every ready-made connector makes a choice about which way data flows and how often. Cin7 Core’s help centre says stock is always pushed from Cin7 Core to Shopify and never back. Unleashed syncs stock at intervals you set. MYOB’s Shopify route through Amaka runs once a day. Odoo pulls orders every ten minutes. None of those is wrong. Each one fits some stores and fails others.
A connector is the right call when it moves each record the way your owner map says, often enough for your stock, with your tax codes and at your volume. We set it up properly and stop there. A custom link earns its cost when a check fails: trade price lists per customer, bundles that split into components, allocation across several warehouses, or a marketplace the connector does not cover.
Volume matters too. Xero’s developer guide lists 60 API calls a minute and 5,000 a day per organisation on its higher tiers, and says Xero is designed for up to 5,000 sales invoices a month. A store posting each order as its own invoice reaches those limits long before a store posting one summary per payout, the way A2X does. We size the design to your order count before choosing.
- Direction for each recordMatches map
- Sync schedule vs stock speedFresh enough
- Tax code mappingEvery code
- Refunds and partial refundsReversed
- Order volume vs plan and API limitsHeadroom
- Marketplaces and 3PLCovered
Ready-made connectors compared
Swipe sideways to see every column.
| Connector | Systems | Direction | How often | Source |
|---|---|---|---|---|
| Cin7 Core Shopify integration | Cin7 Core and Shopify | Stock from Cin7 Core to Shopify, never back | On every stock change | Cin7 Core Help |
| Unleashed Shopify integration | Unleashed and Shopify | Stock from Unleashed to Shopify | At intervals you set | Unleashed Support |
| Amaka (MYOB’s Shopify route) | Shopify and MYOB Business | Sales into MYOB, with bills for third-party fees | Once a day | MYOB support |
| Odoo Shopify Connector | Odoo and Shopify | Orders into Odoo, stock back to Shopify | Orders every 10 minutes by default | Odoo 19 documentation |
| NetSuite ERP Connector | Oracle NetSuite and Shopify | Products, prices, stock, sales orders and fulfilment synced | Real-time options on some plans | Shopify App Store |
| A2X for Xero | Shopify and Xero | One summary entry per payout into Xero | Per payout period | A2X |
Each row restates the maker’s own page, read 29 October 2026. Check the page again before you buy, because connector settings change.
Seven steps from first call to a link your bookkeeper trusts
Open each step to see what happens and what we need from you.
01Scoping call or written brief
Thirty minutes with the founder, or your brief, RFP or field list by email. We learn which store, marketplaces, payment providers and back-office systems you run, where the retyping happens today and what your bookkeeper fixes before each BAS.
02Owner map and tax code map
A written table of every record, the system that owns it and the direction it moves, plus a map from each store tax setting to a ledger tax code. You and your bookkeeper sign it off. Nothing is built until this is agreed.
03Demo on your data
The link runs on your own products against test copies of your store and books. You choose the cases, and the FAQ below lists the ones we suggest. Nothing is signed until your bookkeeper is happy with what it posts.
04Fixed price per phase
Each phase is scoped, priced and signed on its own, in writing. A typical split is the core order and stock link first, then payouts and refunds, then marketplaces or trade price lists.
05Build, data clean-up and testing
We configure the connector or write the custom link, clean duplicate SKUs and old tax settings, then replay real orders from past weeks through test copies of both systems and compare the totals to your actual BAS figures.
06Go-live at a period start
We switch on at the start of a BAS period where we can, so each quarter sits in one setup. For the first weeks we check clearing accounts and stock counts daily and fix anything that drifts.
07Handover and optional support
Written documentation of every field, rule and account, code in a repository in your name, and defect cover agreed before work started. Ongoing support is optional, with each change quoted first.
What terms apply to an integration project?
The code, the accounts and the data stay yours. These terms apply to every integration we build, whichever systems sit on each side.
Demo before you sign
Working software on your own data, with your bookkeeper checking the records it creates, before any contract.
Fixed price per phase
Each phase is scoped, priced and signed on its own, in writing. You can stop after any phase.
Your code, your accounts
The code and repository are yours from day one. Hosting, and any AI usage, can run in your own accounts at cost, with no markup from us.
Defect cover in the build price
Defects found after launch are fixed for a cover period agreed before work starts.
No monthly minimum
Support after launch is optional. Each change is quoted and approved before we do it.
Send us a brief or an RFP
Already written a brief, an RFP or a field list? Send it through the form. The reply is a fixed price per phase in writing, or a note that a ready-made connector covers it.
- Sow Easya WooCommerce trade store reading stock, pricing and SKUs from Odoo, with trade ordering, being tested on stagingOdoo
A store to ERP link from our wider client work, shown for the platform match. Read the Sow Easy case study for the full scope.
What ecommerce ERP integration costs in Australia
We do not publish our own prices, because two stores on the same pair of systems can differ several times over in effort. Here is what named Australian firms publish, and what moves the number.
- Typical integration, eachExodigitalAUD $5,000 to $40,000
- Shopify or WooCommerce linkExodigitalAUD $4,000 to $15,000
- Custom Shopify and ERP buildInsitefulAUD $25,000 to $80,000
- Cin7 Omni implementationInsitefulAUD $15,000 to $40,000
- NetSuite implementation consultingInsitefulAUD $50,000 to $250,000
Sources: Exodigital, ERP implementation cost in Australia (May 2026) and Insiteful, ERP to Shopify integration compared (2026), read 29 October 2026. Neither says whether GST is included. They are market estimates. FactoryJet quotes its own price per project.
What moves the number
- Route. Configuring a proven connector costs less than writing a custom link.
- Channels. Each marketplace and payment provider adds mapping and testing.
- Pricing rules. Trade price lists, bundles and kits take the most design time.
- Data state. Duplicate SKUs and old tax settings must be cleaned before go-live.
- Warehouses. Several locations or a 3PL add allocation rules.
FactoryJet quotes a fixed price per phase in writing after a short scoping call or a written brief.
What happens after the integration goes live?
The integration nobody owns is the one that breaks. Connectors change their settings, and a store that grows past Xero’s 5,000 sales invoices a month needs a different posting design.
The engineers who build your link support it. Support is optional and quoted per change.
Watch
Clearing accounts and stock counts checked daily in the first weeks after go-live, with failed records flagged to a person.
Fix
Defects fixed inside the build price for the agreed cover period, by the engineers who built the link.
Extend
A new marketplace, a second warehouse, Peppol eInvoices or an AI agent on top, each scoped and quoted on its own.
Hand over
Written documentation of every field and rule, with the code in a repository in your name, so another team can take over.
Which other services connect to your store and ERP?
- Shopify Xero integration AustraliaThe Shopify and Xero pairing on its own: payout summaries, tax codes and clearing accounts for each provider.Explore Shopify and Xero →
- WooCommerce development AustraliaWooCommerce stores and trade portals, built to read stock and prices from the ERP behind them.Explore WooCommerce →
- Shopify Plus agency in AustraliaShopify Plus stores with trade pricing and checkout rules, linked to the ERP that holds stock and prices.Explore Shopify Plus →
- B2B ecommerce AustraliaTrade ordering with customer price lists, ABNs and payment terms pulled from your ERP.Explore B2B ecommerce →
- ERP AI agentsAgents that read and update records in your ERP once the store link is in place.Explore ERP agents →
- Shopify development AustraliaNew stores, Shopify Plus, B2B and migrations, with Xero, MYOB and courier links built in from day one.Explore Shopify →
- Ecommerce development AustraliaChoosing between Shopify, WooCommerce, BigCommerce and Maropost for a catalogue with an ERP behind it.Explore ecommerce →
- Accounts payable automationThe other side of the ledger: supplier invoices read, matched to purchase orders and routed for approval in Xero or MYOB.Explore AP automation →
- AI agents for Australian businessesOnce the records flow, agents that draft quotes, answer order questions and key purchase orders into your ERP.Explore AI agents →
- Store and website careUpdates, fixes and monitoring for the store the integration feeds, quoted per change.Explore care plans →
- Ecommerce ERP integration (US guide)Our wider guide to store and ERP links, including SAP Business One, ERPNext, EDI and Shopify API limits.Read the US guide →
Ecommerce ERP integration questions Australian businesses ask
Replies within 24 hours.
Q01What is ecommerce ERP integration?
It is the link that lets your online store and your back office share records without anyone retyping them. Products, prices and stock levels go out to the store and to marketplaces. Orders, customers, payouts, refunds and the GST on each of them come back into Xero, MYOB, NetSuite, Cin7, Unleashed or Odoo. ERP stands for enterprise resource planning, the software that runs stock, purchasing and accounts in one place.
Q02Can you give me an example of ERP integration?
A Brisbane shopper buys two items on your Shopify store, one taxable and one GST-free. The order lands in Cin7 as a sale, Cin7 drops stock by two and pushes the new count back to Shopify. Overnight, the day’s Shopify payout posts to Xero as one summary with sales, card fees and GST split by tax code. When the shopper returns one item, the refund carries the same tax code back.
Q03Is Xero an ERP, or do we need one?
Xero is accounting software. It keeps your ledger, invoices, bank feeds and BAS, and it tracks simple inventory. Xero’s developer guide recommends a maximum of 4,000 tracked inventory items per organisation. Once you run several warehouses, assemblies, purchase orders or more SKUs than that, most stores add an inventory system such as Cin7 or Unleashed beside Xero, or move to a full ERP such as NetSuite or Odoo.
Q04Is an ERP the same as a CRM?
No. A CRM (customer relationship management system) tracks leads, contacts and sales conversations. An ERP tracks what you buy, make, hold and sell, plus the money behind it. For a store the ERP is usually the system that owns stock and trade prices, while a CRM such as HubSpot holds the marketing history. The two often share customer records through a link of their own.
Q05How should Shopify GST flow into Xero or MYOB?
The same rules apply to Shopify GST and WooCommerce GST. Every product needs a tax code that matches the one in your books: GST on income for taxable lines, GST-free for exempt lines, and a clear rule for shipping charges that your accountant approves. We map each store tax setting to a ledger tax code before the first sync, then test carts that mix taxable, GST-free and discounted lines.
Q06How are refunds and returns handled for GST in the sync?
A refund should reverse the exact GST charged on the original line, at the rate and code used that day. We post refunds against the same tax code as the sale, and a partial refund reverses only the GST on the items sent back. The ATO says you need a valid adjustment note before you can make a decreasing adjustment, unless the adjustment is for GST of $75 or less. For trade customers, the ERP should issue that note automatically when a credit is raised.
Q07Do our online orders need to be tax invoices?
Only when the customer asks, and then fast. The ATO says that if a customer asks for a tax invoice you must provide one within 28 days, unless the sale is $82.50 or less including GST. Sales of $1,000 or more must also show the buyer’s identity or ABN. We make the order email or the ERP invoice carry every required detail, so a trade buyer’s request never needs manual work.
Q08Why is the GST in Xero a few cents different from the store?
Rounding. The ATO allows two rounding rules on an invoice with several taxable lines: round once on the invoice total, or round each line and then the total. Stores and accounting tools do not always pick the same one, so a cart of ten lines can differ by a few cents. We choose one rule, set both systems to match where they allow it, and post any leftover cent to a rounding account.
Q09Do we need Peppol eInvoicing for our trade customers?
Only if your trade buyers ask for it. The ATO says Australia has adopted the Peppol framework as its common eInvoicing standard and network. If they do, the job on our side is making sure wholesale orders reach your ERP complete, with ABN, purchase order number and tax per line.
Q10Should every order be its own invoice in Xero, or a daily summary?
For most retail stores, a summary per payout. Xero’s developer guide says Xero is designed for volumes of up to 5,000 sales invoices a month. A store taking 300 orders a day passes that in under three weeks (300 × 17 = 5,100). Summary apps such as A2X post one entry per payout, split by taxed and GST-free sales. Trade orders, where the buyer needs a tax invoice, still go in one by one.
Q11Does Shopify integrate with Xero in Australia?
Yes, through apps or a custom link, and the setup matters more than the app. The common routes are a payout summary app such as A2X, an inventory system such as Cin7 or Unleashed that posts to Xero for you, or a custom link when your rules do not fit either. Before anything syncs, decide whether orders go in one by one or as summaries, and agree tax codes and clearing accounts with your bookkeeper.
Q12Is there a Shopify app for MYOB?
Yes. MYOB’s own support page connects Shopify to MYOB Business through Amaka. It says sales can sync as one summarised invoice or separate invoices, and that bills are created automatically for third-party fees. Syncs run once a day, and MYOB Business Lite users need to upgrade to see the sales orders. For MYOB Acumatica or AccountRight files, or rules Amaka cannot express, we build or configure a different route.
Q13Should Cin7 or Shopify be the master for stock?
Cin7, if you run it. Cin7 Core’s help centre says stock levels are always pushed from Cin7 Core to Shopify, never the other way, and that a push happens on every stock change, from a sale fulfilment to a purchase order receipt or a return. That makes Shopify a copy. Anyone who edits stock in Shopify directly will be overwritten, so we lock that down for staff during setup.
Q14How does Unleashed connect to Shopify?
Through Unleashed’s own Shopify integration. Unleashed’s support guide says stock syncs from Unleashed to Shopify at intervals you configure, and that each Shopify variant needs a unique SKU matching the Unleashed product code. So the first job is a SKU audit: duplicates and blank SKUs in Shopify are the usual reason a sync fails. Unleashed then passes stock movements for sales on to your accounting system.
Q15Can you connect our store to NetSuite or Odoo?
Yes. Oracle NetSuite publishes a NetSuite ERP Connector on the Shopify App Store, and Odoo has its own Shopify Connector. We work with either or build a custom link. Odoo’s documentation says its Shopify Connector pulls orders every 10 minutes by default and pushes stock to Shopify after each pull. That suits most catalogues, but a flash sale on fast stock may need a shorter cycle. For NetSuite we choose between Oracle’s connector, an integration platform or custom code based on your order volume and pricing rules.
Q16Can marketplace orders go into the same ERP as our store?
Yes, and they should. Orders from Amazon.com.au, eBay, Kogan and Bunnings Marketplace draw from the same stock count as your store, or you oversell. Each marketplace order comes into the ERP tagged by channel, so margin reports show what Amazon or Bunnings Marketplace sales cost you after fees. Each marketplace pays out separately, so each one gets its own clearing account in Xero or MYOB. An Amazon Xero integration or an eBay Xero integration works the same way: each settlement posts to that marketplace’s clearing account, with fees split out. We set the channel rules in your ERP or inventory system rather than in each marketplace.
Q17How do Afterpay, Zip and Stripe payouts reconcile?
Payment providers usually deposit sales net of their fees and refunds, often covering several days of orders, so a deposit rarely equals one day of sales. We give Shopify Payments, Stripe, Afterpay, Zip and PayPal a clearing account each. Sales post into the clearing account gross, fees and refunds come out of it, and the deposit clears it to zero. If a clearing account is not zero at month end, something is missing.
Q18How much does Shopify ERP integration cost in Australia?
Published Australian ranges are wide. Exodigital puts typical integrations at AUD $5,000 to $40,000 each, and AUD $4,000 to $15,000 for a Shopify or WooCommerce link. Insiteful puts a custom Shopify and ERP build at AUD $25,000 to $80,000 and NetSuite implementation consulting at AUD $50,000 to $250,000. Neither says whether GST is included. FactoryJet quotes a fixed price per phase in writing after a scoping call.
Q19When is a ready-made connector enough, and when is custom better?
A connector is enough when it moves each record in the direction your owner map says, syncs often enough for your stock, handles your tax codes and fits your order volume. Custom wins when one of those fails: trade price lists the connector cannot read, bundles that must split into components, several warehouses with allocation rules, or marketplaces the connector does not support. Often the answer is a connector plus one small custom piece.
Q20Who builds ecommerce ERP integrations in Australia?
Four kinds of team, and many projects mix them. The system makers publish their own connectors: Cin7, Unleashed and Odoo each document a Shopify integration, and Oracle NetSuite lists one on the Shopify App Store. App makers such as A2X and Amaka sell ready-made links to Xero or MYOB. Firms such as Exodigital and Insiteful publish Australian price ranges for this work. Development teams like ours set up a connector or write a custom link when the rules do not fit.
Q21How long does an ERP integration take?
Plan backwards from a BAS quarter. Going live on the first day of a quarter keeps each BAS inside one setup, so the build and testing need to finish before then. Clean-up sets most of the pace: duplicate SKUs, products with no GST setting and tax codes nobody uses any more. Before go-live we replay past weeks of real orders and check the GST totals against the BAS you already lodged. The written timeline follows the signed owner map.
Q22Can we watch it post a GST-free sale and a refund to a test Xero file first?
Yes, and that is the test we suggest. Pick the awkward cases from your own catalogue: a cart with a GST-free item next to a taxable one, a discount code, an Afterpay order, a partial refund. We run them through a test copy of your books and your bookkeeper reads the tax code on every line it posts. No contract is signed until those lines look right to them.
Q23Can we send a brief, field list or RFP instead of booking a call?
Yes, through the form on this page. The most useful Australian brief names the tax codes you use today, whether you lodge BAS monthly or quarterly, every marketplace you sell on, and each payment provider, including Afterpay and Zip. Add a recent payout statement and one month of exported orders if you can. Those let us spot the GST and clearing account problems before a call.
Q24Can our store keep selling while we change accounting or ERP systems?
Yes, whether you are moving from Xero to NetSuite or from MYOB to Cin7. The store keeps posting to the old system while the new one is set up, so sales and GST keep reaching the books. We rewrite the owner map for the new system, build the link against a sandbox, replay real orders through it, and switch over on a quiet day at the start of a BAS period so each quarter sits in one system.
Q25Who looks after the integration after launch?
We do, if you want us to. Defects found after launch are fixed inside the build price for a cover period agreed before work starts. After that, support is optional, with no monthly minimum: each change is quoted and approved first. The code, the documentation and every account stay in your name, so another team or your own staff can take over at any point.
Get a store and a set of books that agree with each other
Send your name and work email, or your brief. The founder replies within 24 hours to book a short call about your store, your systems and the right route for the link. No spam, no obligation.