Migration playbook · Accounting

How to move from MYOB to Xero

A practical plan for switching your accounts from MYOB to Xero, from picking a conversion date to getting payroll and GST right in the first BAS period. Tax and payroll steps follow Australian rules.

Updated 7 phases29 detailed steps12 official sources
Start here

How do you move from MYOB to Xero?

Short answer

This moves your accounts and payroll from MYOB to Xero. Xero cannot read an MYOB company file itself, so a conversion service (a specialist firm listed in the Xero App Store, such as Jet Convert) copies the chart of accounts, contacts, unpaid invoices and bills, and the amount of past history you order.

  • Recommended route: Conversion service from the Xero App Store, such as Jet Convert
  • Order: Agree the conversion date and scope with your accountant first, clean up MYOB, then convert.
  • 7 phases: Plan with your accountant, Clean up MYOB, Convert to Xero, Check GST, Move payroll, Connect banks and apps and Check and archive.
  • You're done when: The trial balance, aged receivables and aged payables in Xero match MYOB at the conversion date.

You then set up GST, payroll and bank feeds in Xero and check everything against MYOB. The conversion date (the day your Xero books start from) drives the timing: the start of a BAS period (the period your business activity statement covers), ideally 1 July. Tax and payroll steps follow Australian rules, so involve your accountant or BAS agent from the start.

Recommended routeConversion service from the Xero App Store, such as Jet Convert

Xero points small businesses to Jet Convert. The service reads the MYOB file, so balances, open items and agreed history arrive without re-keying.

Other options and when to use them
  • Conversion service, balances and open items only: You are happy to keep past transactions in the MYOB archive and start clean in Xero.
  • Enter conversion balances yourself: A very small business with few accounts, contacts and open items, working with your accountant.
Order to migrate in, and why

Agree the conversion date and scope with your accountant first, clean up MYOB, then convert. After that, check GST, payroll and banks in that order, and switch connected apps over last. Each step checks against the one before: you can only compare Xero with MYOB if MYOB was reconciled and its reports were saved at the same date.

  1. Conversion date, history period and roles, agreed with your accountantThe date decides how GST and payroll are split between the systems, and the history period decides which package you order.
  2. Reconcile and tidy MYOB, then save reports at the conversion dateA conversion copies what is in the file, errors included. The saved reports are what you check Xero against.
  3. Xero organisation settings: year end, GST basis and periodThey must match your ATO settings before data arrives, because converted tax figures report through them.
  4. Conversion, then the opening balance checkEverything later builds on the opening balances, so nobody enters transactions in Xero until they match MYOB.
  5. GST tax rate mappingA wrong mapping only shows up on a BAS, so it must be checked before the first BAS from Xero.
  6. Payroll year-to-date amounts and STPThe first Xero pay run reports year-to-date figures to the ATO. Wrong or duplicated figures give employees wrong income statements.
  7. Bank feeds and connected apps, switched on the same dayFeeds started too early duplicate converted transactions, and apps switched on different days double up or lose sales.
  8. Archive MYOB and keep accessMYOB is still needed to finalise STP and send update events, and the ATO says most records must be kept for 5 years.
Settings checklist: decide these before you copy

Built-in and third-party tools treat these differently. Tick each one off once you have decided.

Download this checklist (Excel)
  • How each tool handles it
    Built-in methodAny method: the start of a BAS period keeps each BAS in one system. 1 July also keeps the payroll year in one system, so no year-to-date payroll moves. You finalise the old year's STP in MYOB by 14 July.

    Tip: Pick the date with your accountant before you order a conversion, and put it in writing to the provider.

    ATO: Finalise your STP data by 14 July
  • How each tool handles it
    Built-in methodEntering balances yourself: no past transactions move. You enter balances at the conversion date, plus each unpaid invoice and bill. Xero's own imports cannot read an MYOB company file.
    Jet ConvertLists historical transactions, depending on source and package. Extended transaction history and comparative balances are optional extras.
    MMC-ConvertStandard plans cover one year plus the year to date, with monthly comparatives for 12 months. Several years of history are possible.

    Tip: Bring the current and prior year if your accountant wants comparatives in Xero, and keep the rest in the archive.

    Xero App Store: Jet Convert
  • How each tool handles it
    Built-in methodEntering balances yourself: you set up the chart of accounts in Xero before entering any balance.
    Jet ConvertConverts the chart of accounts. Custom chart of accounts mapping is an optional extra.
    MMC-ConvertConverts the chart of accounts. A customised chart is a paid add-on.

    Tip: Decide this with your accountant before you book, because changing the chart after conversion means re-mapping history.

    Xero App Store: Jet Convert
  • How each tool handles it
    Built-in methodEntering balances yourself: you enter each unpaid invoice and bill in Xero so it can be paid or chased, and the totals must match the MYOB aged receivables and aged payables reports.
    Jet ConvertLists customer invoices and supplier bills.
    MMC-ConvertConverts opening balances, aged receivables and aged payables, and all invoices and bills with credit notes. Deleted and void transactions and lines with nil values are not converted.

    Tip: Compare the aged receivables and payables totals, and each contact's balance, before anyone enters a new transaction.

    MYOB Support: Exporting data
  • How each tool handles it
    Built-in methodAny method: Xero uses its own tax rates, so every MYOB code needs a matching Xero rate. GST-free, input taxed, capital and export codes feed different BAS labels under full reporting.
    Jet ConvertHow tax codes are mapped: not stated in Jet Convert's documentation: confirm it with Jet Convert in writing before you book, and check it in the converted file.
    MMC-ConvertHow tax codes are mapped: not stated in MMC-Convert's documentation: confirm it with MMC-Convert in writing before you book, and check it in the converted file.

    Tip: Have your BAS agent sign a mapping table, then compare the last completed GST period in MYOB and Xero.

    MYOB Support: Tax codes
  • How each tool handles it
    Built-in methodEntering balances yourself: you create each inventory item in Xero yourself.
    Jet ConvertLists inventory items, depending on source and package.
    MMC-ConvertIncludes the inventory item list, but not the Track Inventory setting (tracked stock).

    Tip: Check stock on hand and item costs in Xero against MYOB at the conversion date.

    Xero App Store: MMC-Convert
  • How each tool handles it
    Built-in methodEntering balances yourself: past job reports stay in the MYOB archive. You set up tracking categories in Xero for new transactions.
    Jet ConvertLists jobs, categories and classes, depending on source and package.
    MMC-ConvertIncludes tracking categories, but excludes customer jobs and projects.

    Tip: Ask the provider in writing what each job becomes, and check one job report in Xero after conversion.

    Xero App Store: Jet Convert
  • How each tool handles it
    Built-in methodAny method: changing payroll software usually changes the BMS ID (the software ID the ATO sees). Mid-year, you either zero out MYOB's year-to-date amounts with an update event and report full amounts from Xero, or transfer them and quote the previous BMS ID or Payroll ID.
    Jet ConvertLists payroll setup for Australia and New Zealand. Year-to-date pay history: not stated in Jet Convert's documentation: confirm it with Jet Convert in writing before you book, and check it in the converted file.
    MMC-ConvertPayroll and employee setup are paid add-ons. Individual pay runs for the conversion period are not converted.

    Tip: Run the first Xero pay run as a draft and compare it line by line with MYOB before filing.

    ATO: Changing your payroll solution or employees' Payroll IDs
  • How each tool handles it
    Built-in methodXero bank feeds: Xero can import up to 12 months of history when a feed first connects (up to 2 years for some institutions). Converted transactions plus that history give duplicates, so start each feed from the day after the conversion date.
    Jet ConvertWhether bank lines arrive reconciled: not stated in Jet Convert's documentation: confirm it with Jet Convert in writing before you book, and check it in the converted file.
    MMC-ConvertConverts all bank transactions, credit card and PayPal accounts. Whether they arrive reconciled: not stated in MMC-Convert's documentation: confirm it with MMC-Convert in writing before you book, and check it in the converted file.

    Tip: Reconcile every bank, card and clearing account in MYOB up to the conversion date first.

    Xero: Bank feeds Australia
  • How each tool handles it
    Built-in methodEntering balances yourself: nothing attached in MYOB moves.
    Jet ConvertNot stated in Jet Convert's documentation: confirm it with Jet Convert in writing before you book, and check it in the converted file.
    MMC-ConvertMentions attachments, but not what is moved. Not stated in MMC-Convert's documentation: confirm it with MMC-Convert in writing before you book, and check it in the converted file.

    Tip: Keep the MYOB file and exports as your archive whatever the provider moves.

  • How each tool handles it
    Built-in methodAny method: each app connects to Xero separately. A conversion does not move app connections.

    Tip: Change each app on the conversion day, disconnect it from MYOB the same day, and check the first day's sales in Xero.

  • How each tool handles it
    Built-in methodAny method: the ATO says most records must be kept for 5 years, and you must be able to reconstruct your original data after changing systems. You also need MYOB to finalise STP and send update events.

    Tip: Test-open the archive before you cancel, and note where it is stored.

    ATO: Overview of record-keeping rules for business
The plan, phase by phase
  1. 1

    Plan with your accountant

    Before you choose a date

    Watch out: With a conversion service, the years of history you order mainly decide the size of the job and the provider's quote. Xero's own imports cannot read an MYOB data file, so history only arrives through a conversion service.

    Ways around it

    • Bring the current and prior year for comparatives, and keep the rest in the MYOB archive.
    • Ask each provider to quote the same scope: the same conversion date, years of history and extras such as payroll, inventory and jobs.

    Tools that can do it

    • Jet ConvertConverts MYOB chart of accounts, contacts, invoices, bills and historical transactions, with extended history as an extra option.
    • MMC-ConvertConverts several years of history; standard plans cover one year plus year to date with monthly comparatives.

    Watch out: With any method, a mid-year switch means moving payroll year-to-date amounts under the ATO's STP (Single Touch Payroll, how pay is reported to the ATO) rules.

    Ways around it

    • Switch on 1 July if you can. If not, agree the ATO method for year-to-date amounts before you start.
    Show the detailed steps (4) →
  2. 2

    Clean up MYOB

    Watch out: Unreconciled accounts, duplicates and stale open items convert as they are, and are harder to fix in Xero.

    Ways around it

    • Fix them in MYOB before you send the file to the conversion provider.
    Show the detailed steps (5) →
  3. 3

    Convert to Xero

    Watch out: Not every conversion package includes inventory and jobs, and anything excluded has to be rebuilt by hand in Xero.

    Ways around it

    • Check the package covers what you use before you book, then check stock on hand and job reports after conversion.

    Tools that can do it

    • Jet ConvertLists inventory items and jobs, categories and classes in its conversion, and payroll setup for Australia and New Zealand.
    • MMC-ConvertIncludes inventory items and tracking categories, but excludes tracked inventory, customer jobs and projects. Payroll is a paid add-on.
    Show the detailed steps (3) →
  4. 4

    Check GST

    Watch out: A wrong tax code mapping only shows up as an incorrect BAS (business activity statement).

    Ways around it

    • Have your BAS agent review the first BAS from Xero before lodging, especially if the period straddles the conversion date.
    Show the detailed steps (4) →
  5. 5

    Move payroll

    Watch out: Changing software usually changes the BMS ID (the payroll software ID the ATO sees), so employees can get two income statements.

    Ways around it

    • Zero out year-to-date amounts in MYOB with an update event (a correction report sent to the ATO through STP), then report full amounts from Xero.
    • Or transfer them to Xero and send an update event quoting the previous BMS ID or Payroll ID. If no method fits, phone the ATO.

    Watch out: You need MYOB to finalise STP and send update events, and cancelling early can leave old records unfinished.

    Ways around it

    • Keep an MYOB subscription or read-only access until STP is finalised and the year-end accounts are lodged.
    Show the detailed steps (5) →
  6. 6

    Connect banks and apps

    On conversion day

    Watch out: Xero can import up to 12 months of history on first connection, which duplicates converted transactions.

    Ways around it

    • Set the feed start date to the day after conversion, and delete any duplicate statement lines.

    Watch out: Apps that post to both systems, or to neither, double up or lose sales around the switch.

    Ways around it

    • Change each app on the same day, and check the first day's sales in Xero.
    Show the detailed steps (4) →
  7. 7

    Check and archive

    Before the first BAS from Xero

    Watch out: The ATO says most records must be kept for 5 years and stay readable after a system change.

    Ways around it

    • Keep full exports and reports, plus read-only MYOB access if you can, and note where they are stored.

    Watch out: Once a pay event or BAS is lodged from Xero, you cannot roll back just by carrying on in MYOB.

    Ways around it

    • Before the first lodgement, roll back by stopping Xero use and entering its transactions in MYOB.
    • After a lodgement, agree corrections with your BAS or tax agent.
    Show the detailed steps (4) →
You are finished when
  • The trial balance, aged receivables and aged payables in Xero match MYOB at the conversion date.
  • GST report figures agree, and your BAS agent has signed the tax mapping table.
  • Payroll year-to-date figures match, and the first pay run agrees with MYOB for every employee.
  • Bank feeds and apps post to Xero only, with no duplicates, and the MYOB archive opens.

Tools named in this plan are independent third-party products, not endorsed by the platform vendor and not paid placements. Check the tool's own documentation and run a pilot first.

Click by click

What does each step involve?

Open a part when you reach it in the plan. Each step says where to go, what to do and what you should see.

About this migrationWhat it covers, limits at a glance

Moving from MYOB to Xero is a data conversion plus a payroll changeover. The accounting side (chart of accounts, contacts, open invoices and bills, history) is usually done by a conversion service. The payroll side has its own rules: the ATO receives Single Touch Payroll (STP) data from both systems, so you must handle year-to-date amounts the way the ATO describes.

MYOB is sold in Australia and New Zealand. The conversion, bank feed and validation steps apply in both. The GST, BAS, Single Touch Payroll and record-keeping steps describe the Australian rules set by the ATO; if you are in New Zealand, follow your local tax rules for those steps and ask your accountant which ones change.

This guide is general information, not financial or tax advice. Involve your accountant or registered BAS agent before you choose a conversion date, and have them review the first BAS and pay runs in Xero.

Conversion routeXero points small businesses to Jet Convert, a third-party conversion partner. Other conversion apps are listed in the Xero App Store
Best timingThe start of a BAS period, ideally 1 July. Mid-year works but needs payroll year-to-date handling
PayrollFollow the ATO STP guidance on changing payroll solution so employees do not get duplicate income statements
RecordsThe ATO requires most records to be kept for 5 years and readable after a system change
Who to involveYour accountant or BAS agent, before you pick the date
1What you need before step one
NeedDetailsWhere to get it
MYOB Administrator accessTo reconcile, run reports, export data and finalise Single Touch Payroll.Your MYOB file's Administrator user
A Xero subscription and organisationChoose a plan that includes payroll if you run payroll in Xero. Check Xero's current pricing.https://www.xero.com/au/
Your accountant or registered BAS agentTo confirm the conversion date, tax code mapping, payroll treatment and opening balances.Your practice
A conversion providerXero points small businesses to Jet Convert. Other providers are in the Xero App Store.https://apps.xero.com/au/function/conversions
Online banking loginsTo authorise bank feeds for each account.Your bank
Your ATO settingsGST registration, GST reporting method and period, and payroll (STP) details as the ATO has them.ATO Online services for business, or your tax agent
2Plan with your accountant4 steps
  1. 1

    Confirm your MYOB product and file

    Where: MYOB, signed in as the Administrator; record the answer in your Issue and decision log

    Note which MYOB product you use (for example MYOB Business in the browser or an AccountRight company file) and who has Administrator access. Conversion services need a clean, accessible file.

    You should see: The log names the product, the company file and the Administrator user.
  2. 2

    List what you need in Xero

    Where: Your Issue and decision log, agreed with your accountant

    Decide how much transaction history you need in Xero versus kept as an archive. Agree this with your accountant, who may also want comparative figures for the prior year.

    You should see: A written decision: history period in Xero, and what stays in the MYOB archive.
  3. 3

    Inventory connected apps

    Where: MYOB connected apps and your own list of payment, POS and ecommerce logins; check each in the Xero App Store (https://apps.xero.com/au/)

    List payment gateways, POS, ecommerce, inventory and expense apps connected to MYOB. Check each has a Xero connection.

    You should see: Every app has a Xero equivalent or a replacement decision.
  4. 4

    Agree roles

    Where: Your Issue and decision log

    Name who owns the conversion, who checks balances, and who signs off payroll. A registered BAS agent or tax agent should sign off GST and payroll settings.

    You should see: Each role has a named person and a date.
Not financial advice. This guide explains the process. Your accountant or BAS agent should confirm the conversion date, tax code mapping, payroll treatment and opening balances for your business.
3Choose the conversion date

The cleanest switch is at the start of a period, so one system holds the whole period.

Switch pointAdvantagesWatch out for
1 July (start of financial year)Payroll and the full year sit in one system. No year-to-date payroll transferFinish and finalise the prior year's STP in MYOB by 14 July, and keep MYOB available for year-end work
Start of a BAS quarter or monthEach BAS is prepared from one systemPayroll year-to-date amounts must be handled under the ATO STP rules
Mid-periodCan start immediatelyGST for the period is split across systems; reconcile carefully before lodging
Check your GST reporting method. The ATO sets your GST reporting method (Simpler BAS, GST instalments or full reporting). Make sure Xero is set to the same method and period as your ATO account.
4Prepare the MYOB file5 steps
  1. 1

    Reconcile every bank account

    Where: MYOB, the Banking menu (bank reconciliation)

    Reconcile all bank, credit card and clearing accounts in MYOB up to the conversion date.

    You should see: Each account shows as reconciled to the statement balance at the conversion date.
  2. 2

    Tidy receivables and payables

    Where: MYOB aged receivables and aged payables reports

    Clear duplicated or old open invoices and bills, so only genuine amounts convert.

    You should see: Aged reports list only amounts customers and suppliers really owe or are owed.
  3. 3

    Review tax codes

    Where: MYOB tax codes list (see MYOB's Tax codes support page), and a sample of transactions

    Check transactions use the right MYOB tax codes. MYOB's default Australian codes include GST, FRE (GST-free), EXP (export sales), CAP (capital purchase), INP (input taxed purchases), ITS (input taxed sales), N-T (no tax) and GNR (GST not registered).

    You should see: Your sample shows every transaction on the correct code, and you have a list of codes in use.
  4. 4

    Save reports at the conversion date

    Where: MYOB Reports, exported as PDF, Excel or CSV

    Run and save a trial balance, balance sheet, profit and loss, aged receivables, aged payables and GST reports at the conversion date. You will match Xero against these.

    You should see: A dated folder of reports saved somewhere backed up.
  5. 5

    Export lists and data

    Where: AccountRight company file: File menu > Import/Export Assistant > Export data

    MYOB's exporting page describes AccountRight company files. Choose the data type from the Export list (for example the accounts list, customers, journals, sales and purchases), select Next, choose tab or comma separation and whether the first row has headers, add the fields with Add All, then Export, name the file and Save. Select Close when it finishes.

    You should see: A tab- or comma-separated text file for each list, in the folder you chose.
5Convert the accounting data3 steps

Xero's conversion page for small businesses describes a hands-free conversion with Jet Convert, which it calls a third-party conversion specialist and Xero partner. Jet Convert lists MYOB, QuickBooks and Reckon as sources. The Xero App Store also lists MMC Convert. Check each provider's current terms.

DataUsually converted?Notes
Chart of accountsYesReview account mapping and Xero tax rates after conversion
ContactsYesCustomers and suppliers
Open invoices and billsYesCheck aged receivables and payables match
Historical transactionsDepends on packageJet Convert lists extended history as an additional option
Inventory itemsDepends on packageInventory adds complexity; check quantities and costs
Jobs and categoriesDepends on packageMay map to Xero tracking categories
PayrollSetup onlyJet Convert lists payroll setup for Australia; year-to-date figures follow the payroll steps below
Attachments and source documentsCheck with providerKeep the MYOB file and exports as your archive
  1. 1

    Create the Xero organisation

    Where: Xero (https://www.xero.com/au/), the new organisation's financial and GST settings

    Set the financial year end, GST registration, GST basis (cash or accrual) and reporting period to match your ATO settings. Xero's help article Change your GST registration status covers the GST settings.

    You should see: The organisation shows the same GST basis and period as your ATO account.
  2. 2

    Order the conversion

    Where: The provider's Xero App Store listing (for example https://apps.xero.com/au/app/jet-convert)

    Provide the MYOB file or exports requested by the provider, and state the conversion date and history period in writing.

    You should see: A written order confirming the conversion date, history period and what is included.
  3. 3

    Do not enter transactions yet

    Where: Xero, all users

    Wait until the converted data is loaded and checked before adding new transactions in Xero. Tell everyone with Xero access.

    You should see: No transactions exist in Xero apart from converted data when you start validation.
6Check GST and tax rates (Australia)4 steps
  1. 1

    Map MYOB codes to Xero tax rates

    Where: Your Issue and decision log (tax mapping table), checked against Xero's tax rates list

    Make a table of each MYOB tax code and the Xero tax rate it became. Xero lists its Australian defaults in Default tax rates. Pay attention to GST-free, input taxed, capital and export codes, because they feed different BAS labels under full reporting.

    You should see: Every MYOB code in use has a Xero rate, and your BAS agent has checked the table.
  2. 2

    Compare GST reports

    Where: The MYOB GST report you saved, and the GST report for the same period in Xero

    For the last completed period, compare the MYOB GST report with what Xero shows for converted history. Differences usually point to a mapping problem.

    You should see: The totals for each BAS label agree, or every difference is explained.
  3. 3

    Set defaults on accounts and contacts

    Where: Xero chart of accounts and contact records

    Set default tax rates on revenue and expense accounts and on suppliers who are not registered for GST. Xero explains how defaults apply in How your default tax rate and account settings work.

    You should see: New transactions pick up the right tax rate without manual changes.
  4. 4

    First BAS review

    Where: Xero, shared with your BAS agent before lodgement

    Have your BAS agent review the first BAS prepared in Xero before lodging, especially if the period straddles the conversion date.

    You should see: Your BAS agent signs off the first BAS.
7Move payroll and STP (Australia)5 steps

The ATO shows a separate income statement for each combination of ABN, branch, BMS ID and Payroll ID. Changing payroll software usually changes the BMS ID, so employees can see two income statements unless you follow the ATO's process.

  1. 1

    If you switch on 1 July

    Where: MYOB Business: Payroll > Single Touch Payroll reporting > EOFY finalisation tab

    Finalise STP for the previous year in MYOB by the 14 July deadline (later for closely held payees). Choose the Payroll year, select each employee, then Finalise and notify the ATO, enter your details and Send. Start payroll fresh in Xero for the new year, with no year-to-date transfer.

    You should see: An update event appears on the STP reports tab and each employee has the Final indicator ticked.
  2. 2

    If you switch mid-year: pick an ATO method

    Where: Your Issue and decision log, using the ATO page on changing your payroll solution

    The ATO describes these options: zero out year-to-date amounts in the old software with an update event, then report the full amounts from Xero; or transfer year-to-date amounts to Xero and send an update event quoting the previous BMS ID or previous Payroll ID; or finalise the old records and accept separate income statements. Your choice depends on what MYOB and Xero support and whether you still have MYOB access. Xero's article Report previous payroll information covers its side.

    You should see: A recorded method, approved by your BAS or tax agent.
  3. 3

    Enter employee year-to-date balances

    Where: Xero Payroll, each employee (see Xero's Enter opening balances for an employee)

    Enter each employee's year-to-date earnings, tax withheld, super and leave in Xero as at the switch date, following Enter opening balances for an employee and Transfer payroll balances to Xero. Check them against the last MYOB pay run.

    You should see: Each employee's Xero year-to-date totals match MYOB at the switch date.
  4. 4

    Recreate employee settings

    Where: Xero Payroll, each employee record

    Check tax file declaration details, pay templates, super funds and leave balances for every employee. Xero reports STP Phase 2 detail from the employee information you enter.

    You should see: Every employee record is complete with no missing STP fields.
  5. 5

    Run a parallel pay run

    Where: Xero Payroll (draft pay run) and the same pay run in MYOB

    Calculate the first Xero pay run and compare it line by line with the same run in MYOB before filing.

    You should see: Gross, tax, super and net pay match for every employee, or each difference is explained.
Duplicate income statements. The ATO says that if you transfer year-to-date amounts to a new BMS ID or Payroll ID and do not tell it, employees see duplicate income statements and you over-report PAYG withholding. If no method fits, the ATO asks you to phone it.
8Connect bank feeds and apps4 steps
  1. 1

    Add bank accounts

    Where: Xero > Accounting > Bank accounts > Add bank account

    Find your bank and follow its authorisation steps, as Xero's Connect your bank to Xero article describes. Australian feeds run under the Consumer Data Right.

    You should see: The account appears in Bank accounts with its feed connected.
  2. 2

    Set the feed start date

    Where: The bank feed setup in Xero

    Xero says you can import up to 12 months of history on first connection (up to 2 years for some institutions). Start the feed from the conversion date so you do not duplicate converted transactions.

    You should see: The first imported statement line is dated after the conversion date.
  3. 3

    Upload statements if needed

    Where: Your online banking (export a statement file), then the bank account in Xero

    If your bank has no feed, import exported statement files instead.

    You should see: Statement lines appear in Xero ready to reconcile.
  4. 4

    Reconnect apps

    Where: Each app's integration settings, and the Xero App Store

    Connect payment, POS and ecommerce apps to Xero and disconnect them from MYOB on the same day.

    You should see: New sales from each app appear in Xero and no longer in MYOB.
9Validate and archive MYOB4 steps
  1. 1

    Match the trial balance

    Where: Xero Trial Balance report (Xero help: Trial Balance report) and the MYOB trial balance you saved

    Compare Xero's trial balance at the conversion date with the MYOB report you saved. Every account should match. Record results in your Data validation report.

    You should see: Every account balance agrees.
  2. 2

    Match aged receivables and payables

    Where: Xero aged receivables and aged payables reports, and the MYOB reports you saved

    Totals and individual contacts should agree.

    You should see: Totals and each contact's balance agree.
  3. 3

    Archive the old records

    Where: Backed-up storage for your MYOB exports and reports, plus read-only MYOB access

    The ATO says most records must be kept for 5 years and you must be able to reconstruct your original data if your record-keeping system changes. Keep read-only MYOB access or full exports and reports for that period.

    You should see: An archive you have test-opened, with a note of where it lives and how long to keep it.
  4. 4

    Get sign-off

    Where: Your Issue and decision log

    Have your accountant sign off the opening balances and record it in your decision log.

    You should see: A dated sign-off from your accountant.
Worth knowing

What can go wrong, and how do you avoid it?

The detail behind the plan: options compared, and what experienced engineers check first. Tap any item.

Compare all the ways to do this3 options

Conversion service with extended history

Low effort

Best for: Businesses that want past transactions searchable in Xero and comparative reports from day one

  • Hands-free conversion by a Xero partner such as Jet Convert, or another conversion app in the Xero App Store
  • History and comparatives live in Xero, so you open MYOB less often
  • History is the main cost lever: more years means a bigger order
  • Converted history still needs checking, especially GST and inventory
Read more →

Conversion service, balances and open items only

Low effort

Best for: Businesses happy to keep history in the MYOB archive and start clean in Xero

  • Smaller conversion and less history to validate
  • Chart of accounts, contacts and open invoices and bills still arrive ready to use
  • Past transactions stay in MYOB, which must stay readable for the ATO record-keeping period
  • Check with your accountant whether they need comparative figures in Xero
Read more →

Enter conversion balances yourself

High effort

Best for: Very small businesses with few accounts, contacts and open items, working with their accountant

  • No conversion service needed
  • You choose exactly what goes into the new file
  • Manual work: trial balance, unpaid invoices and bills, and lists as at the conversion date
  • Errors in opening balances flow into every later report, so your accountant must check them
Read more →
Our advice

Most small businesses use a conversion service. The deciding factor is history: agree with your accountant how many years you need inside Xero, and keep the rest in the MYOB archive. Enter balances yourself only for a very simple file. Whichever you choose, payroll and STP are handled separately and drive the switch date.

Pick the date for payroll, not just for the booksReduces risk

Switching on 1 July avoids transferring year-to-date payroll and the STP update events that go with it. A mid-year switch is where duplicate income statements come from.

What to do

If you can, convert at 1 July. If not, choose the start of a BAS period and agree the ATO method for year-to-date amounts before you start.

ATO: Changing your payroll solution or employees' Payroll IDs
History is the main cost lever in a conversionCost lever

Conversion packages differ in how much history, inventory and payroll setup they include, and Jet Convert lists extended history as an extra option.

What to do

Ask your accountant what history they really need in Xero (often the current and prior year for comparatives) and keep the rest as an MYOB archive. Compare provider packages on the same scope.

Tools that can get around this

Xero's own imports cover lists, opening balances and CSV files, not an MYOB data file. These conversion services read the MYOB file and load several years of transactions, with comparatives, so the history arrives without re-keying.

  • Jet ConvertConverts MYOB data to Xero, including chart of accounts, contacts, invoices, bills and historical transactions, with extended history as an extra option.
  • MMC-ConvertConverts the transactional history of multiple years from MYOB and other systems; standard plans cover one year plus year to date with monthly comparatives.
Third-party tools, not endorsed by the platform vendor. Confirm in the tool's documentation and run a pilot first.
Xero App Store: Jet Convert
Keep MYOB access until STP finalisation and year end are doneCompliance

You need MYOB to finalise STP, send update events and answer questions from your accountant or the ATO. Cancelling early can leave you unable to finalise old records.

What to do

Keep an MYOB subscription (or read-only access) until STP is finalised for every employee and the year-end accounts are lodged, then archive.

MYOB Support: End of year finalisation with Single Touch Payroll reporting
Clean up before you convert, not afterSaves time

Unreconciled bank accounts, duplicate invoices and old open bills convert as they are, and are harder to fix in Xero.

What to do

Reconcile every bank and clearing account and clear stale open items in MYOB to the conversion date before you send the file.

Check tax code mapping with your BAS agentCompliance

GST-free, input taxed, capital and export codes feed different BAS labels under full reporting. A wrong mapping shows up as an incorrect BAS.

What to do

Build the mapping table, have your BAS agent approve it, and compare a past period's GST report in both systems.

MYOB Support: Tax codes
Avoid duplicate bank transactionsSaves time

Xero can import up to 12 months of history on first connection. If that overlaps converted transactions, you get duplicates to delete.

What to do

Start each feed from the day after the conversion date.

Xero: Bank feeds Australia
Inventory and jobs need extra checkingReduces risk

Inventory quantities and costs, and jobs or categories that map to tracking categories, are where conversions most often need manual fixes.

What to do

If you use inventory or jobs, confirm the provider's package covers them, and check stock on hand and job reports after conversion.

Tools that can get around this

Conversion packages decide whether inventory and jobs arrive at all, so check the listing against what you use before you book. Anything a package excludes has to be rebuilt by hand in Xero.

  • Jet ConvertLists inventory items and jobs, categories and classes in its conversion, and payroll setup for Australia and New Zealand.
  • MMC-ConvertIncludes inventory items and tracking categories, but lists tracked inventory, customer jobs and projects as exclusions, and payroll as a paid add-on.
Third-party tools, not endorsed by the platform vendor. Confirm in the tool's documentation and run a pilot first.
Switch connected apps on the same dayUser impact

If POS or ecommerce apps post to both systems, or to neither, sales go missing or double up around the switch.

What to do

Schedule each app change for conversion day, disconnect from MYOB as you connect to Xero, and check the first day's sales in Xero.

Records must stay readable for 5 yearsCompliance

The ATO says most records must be kept for 5 years and you must be able to reconstruct original data after a system change.

What to do

Keep full exports and reports, plus read-only MYOB access if you can, and note where they are stored.

ATO: Overview of record-keeping rules for business
Finish safely

How do you check it worked, or roll back?

Full validation checklist9 checks

Run these before you declare the migration complete. Record the results in the data validation report.

CheckHow to checkWhat good looks like
Trial balance matches MYOB at the conversion date

Run the Xero Trial Balance report at the conversion date and compare it, account by account, with the MYOB trial balance you saved. Record the result in your Data validation report.

Every account balance agrees.
Aged receivables and payables match

Run the Xero aged receivables and aged payables reports at the conversion date and compare them with the saved MYOB reports.

Totals and each contact's balance agree.
GST mapping gives the same BAS figures

Compare the GST report for the last completed period in Xero with the MYOB GST report you saved, using your tax mapping table.

The totals for each BAS label agree, or every difference is explained and your BAS agent has signed the mapping table.
History and lists converted as ordered

Spot-check a sample of invoices, bills and journals across the agreed history period, and check contacts, inventory items and jobs if they were in the order.

Every sampled transaction matches MYOB on amount, date and tax, and lists match the scope in your written order.
Bank feeds start after the conversion date

In Xero open Accounting > Bank accounts and check the first imported statement line on each account.

Each feed is connected, the first line is dated after the conversion date, and there are no duplicate transactions.
Payroll year-to-date and the first pay run agree

Compare each employee's year-to-date totals in Xero Payroll with MYOB at the switch date, and compare the first draft Xero pay run with the same run in MYOB.

Year-to-date figures match, and gross, tax, super and net pay agree for every employee before you file the pay run.
STP reporting follows the method you chose

Check the STP reports tab in MYOB for the finalisation or update event, and confirm with your BAS or tax agent that the ATO method in your Issue and decision log was followed.

The ATO has the event your method requires, and no employee will see duplicate income statements.
Connected apps post to Xero, not MYOB

Check the first day's sales from each payment, POS and ecommerce app in Xero, and check MYOB for any new entries.

New sales from each app appear in Xero and nothing new arrives in MYOB.
The MYOB archive opens and staff can work in Xero

Test-open the saved exports and reports, and confirm read-only MYOB access. Have each staff member sign in to Xero and open the screens they use.

The archive opens, its location and retention period are recorded, and every user can sign in to Xero with the right access.
Rollback planIf it goes wrong

Roll back if

  • The trial balance or aged reports in Xero do not match MYOB and the conversion provider cannot correct them before your next deadline
  • The GST mapping produces BAS figures your BAS agent will not sign off
  • Payroll year-to-date figures or the parallel pay run do not match and payday is close
  • Bank feeds or connected apps duplicate or miss transactions and cannot be fixed quickly

Point of no return

Until you lodge anything from Xero, MYOB is still your system of record and rollback means carrying on in MYOB. The real points of no return are lodgements: once an STP pay event has been lodged from Xero, going back means following the ATO guidance on changing payroll solutions again with your BAS or tax agent; and once a BAS prepared in Xero has been lodged, corrections go through your BAS agent and the normal ATO correction process, not by switching software back. Cancelling MYOB before STP finalisation and the year-end accounts are done is also hard to reverse, and the ATO expects your original records to stay readable for 5 years.

  1. 1

    Stop using Xero for new transactions

    Where: Xero, all users, and your Issue and decision log

    Tell everyone with Xero access to stop entering transactions and record the time. Record the reason for the rollback in the decision log.

    You should see: No new transactions are entered in Xero after the recorded time.
  2. 2

    Reconnect apps and feeds to MYOB

    Where: Each app's integration settings, MYOB banking settings, and Xero > Accounting > Bank accounts

    Connect payment, POS and ecommerce apps back to MYOB and disconnect them from Xero on the same day. Make sure bank transactions keep flowing into MYOB.

    You should see: New sales from each app appear in MYOB and no longer in Xero.
  3. 3

    Enter in MYOB what was posted in Xero

    Where: Xero reports for the period since conversion, then MYOB

    List every invoice, bill, payment and journal entered in Xero since the conversion date and enter them in MYOB. Reconcile each bank account in MYOB again.

    You should see: MYOB bank accounts reconcile to the statement balance, and nothing entered in Xero is missing from MYOB.
  4. 4

    Run payroll from MYOB

    Where: MYOB payroll, with your BAS or tax agent

    If no pay event has been lodged from Xero, keep running pays in MYOB as before. If one has, agree with your BAS or tax agent which method on the ATO changing payroll solution page to use before the next pay run.

    You should see: The next pay run is processed in MYOB and your agent has confirmed the STP reporting is correct.
  5. 5

    Re-plan the conversion

    Where: Your Issue and decision log, with your accountant and the conversion provider

    Agree what failed and the fix with the provider, and choose a new conversion date, ideally the start of a BAS period or 1 July.

    You should see: A new conversion date and written scope agreed with your accountant and the provider.

Agree the triggers and who decides before the go / no-go meeting. Use the rollback plan template.

Common problems and fixes5 errors
Trial balance in Xero does not match MYOB

Cause: Transactions entered after the conversion date in MYOB, unreconciled items, or account mapping errors.

Fix: Compare account by account, post the missing transactions and fix mapping with your accountant.

Employees see two income statements in myGov

Cause: Year-to-date amounts were transferred to a new BMS ID or Payroll ID without notifying the ATO.

Fix: Follow the ATO method for changing payroll solution: zero out the old record or send an update event with the previous BMS ID or Payroll ID.

Duplicate bank transactions after connecting the feed

Cause: The feed imported history that was already converted.

Fix: Delete the duplicate statement lines and set the feed start date to the day after conversion.

BAS figures look wrong for the conversion period

Cause: Tax codes mapped to the wrong Xero tax rates, or the period is split across systems.

Fix: Check the tax code mapping table, and have your BAS agent reconcile both systems for that period.

Cannot finalise old STP records

Cause: MYOB access has ended, or the old ABN or branch is no longer active.

Fix: Keep MYOB access until finalisation is done. If you have lost access, use the ATO previous-ID method or contact the ATO.

Search the full error library →

FAQ

Frequently asked questions

When is the best time to move from MYOB to Xero?

The start of a financial year (1 July) is simplest because payroll and the full year sit in one system. The start of a BAS period also works. Agree the date with your accountant.

Does payroll history move from MYOB to Xero?

Conversion services list payroll setup. For the current year you enter year-to-date balances and follow the ATO STP process for changing payroll solution.

Who does the conversion?

Xero points small businesses to Jet Convert, a third-party conversion partner. The Xero App Store lists other conversion providers.

How long do I need to keep my MYOB data?

The ATO generally requires records to be kept for 5 years, and you must be able to reconstruct your original data after changing systems.

Do I need to tell the ATO I have changed software?

For payroll, the ATO only needs to be told if you transfer year-to-date amounts to a new BMS ID or Payroll ID, which you do through an STP update event.

Is this guide financial advice?

No. It is general information. Ask your accountant or registered BAS agent to confirm settings for your business.

Sources

Official sources

12 official pages this guide is based on