D365ConsultantDivision of Sataware
D365ConsultantDivision of Sataware
Leaving Sage 300

Sage 300 to Business Central migration, from account segments to dimensions.

A Sage 300 to Business Central migration involves more design decisions than most mid-market moves, because Sage 300, still called Accpac by many finance teams, spreads meaning across segmented account numbers, optional fields, account sets and source-currency ledgers. Each of those has a home in Business Central, but rarely a one-to-one home. Below, we show how we translate them. We also show what we bring across and what stays in a read-only Sage 300 archive.

Optional fields
become dimensions, attributes or extension fields
Account sets
become customer and vendor posting groups
Source currency
kept on every open receivable and payable
Laptop, reading glasses and a calculator on a desk

Where Sage 300 keeps its meaning

In most Sage 300 companies the general ledger account number is doing several jobs at once. A code such as 4000-20-310 might carry the natural account, a department and a region. Account structure codes then decide which segments each account may use. Business Central separates those jobs. The G/L account keeps only the natural account, and department, region or division become dimension values posted alongside it. The result is a far shorter chart of accounts. Reports can also slice by any dimension without a new account for every combination.

Optional fields are the second place meaning hides. Over the years, Sage 300 administrators attach them to customers, vendors, items, transaction headers and G/L accounts. Some quietly drive reporting, while others were a one-off idea nobody uses. Each needs its own verdict before we map it. So we export a list of every optional field with a count of how often people fill it in.

The third is multicurrency. A Sage 300 multicurrency ledger records each transaction in its source currency and in the functional currency. Rate types and revaluation codes control how it books unrealized gains and losses. Business Central does the same job with currencies, exchange rate tables and the Adjust Exchange Rates batch job. It can also keep an additional reporting currency on the ledger if head office reports in a different currency. The mapping is sound, but you have to simplify the rate types. That is because Business Central holds one rate table per currency rather than several named rate types.

Sage 300 to Business Central field and entity map

Sage 300
Business Central
What to decide
Segmented G/L account
G/L account plus dimension values
Which segment stays the account number and which segments become dimensions
Account structure codes
Dimension combinations and default dimension rules
Which combinations to block or require at posting
AR and AP account sets
Customer and vendor posting groups
Whether several account sets collapse into fewer posting groups
Distribution codes
Standard sales and purchase codes, or recurring journals
Which codes are still in real use
Optional fields
Dimensions, item attributes or table extension fields
One verdict per field, based on how people use it
National accounts
Bill-to customer on each ship-to customer
Whether credit limits sit on the parent or on each branch
Item segments and item structures
Item numbers with item categories and attributes
Whether to keep the segmented item number or shorten it
Inventory locations
Locations, with bins where the warehouse needs them
Whether bin tracking starts at go-live or later
Tax authorities, classes and groups
Tax jurisdictions, tax groups and tax areas
How customer and item tax classes translate for US sales tax
Currencies, rate types and revaluation codes
Currencies, exchange rates and realized and unrealized gain and loss accounts
Which single rate source replaces multiple rate types
Fiscal calendar and periods
Accounting periods and fiscal years
Where the first Business Central period starts

Four verdicts for an optional field

Make it a dimension

If finance filters or totals by the field, it becomes a dimension, so it lands on every ledger entry. A sales territory on invoices or a cost center on vendor bills are typical cases.

Make it an attribute

Descriptive item data such as color, material or pack size becomes an item attribute. Sales staff can filter on it without cluttering the ledger.

Make it a field

Operational data such as a carrier account or a delivery instruction becomes a table extension field. We add it to the customer, vendor or document in a small extension.

Leave it behind

Some fields hold data on only a handful of records, or nobody has touched them in a long time. Those stay in the Sage 300 archive. Carrying them forward only adds screens people ignore.

Balances, open documents and history in a multicurrency company

Balances

Trial balance at cutover

G/L balances post as an opening journal on the cutover date. They post by natural account and dimension, in the functional currency.

  • โœ“Balance sheet accounts at their closing balance
  • โœ“Income statement brought in as monthly net change if the cutover is mid-year
  • โœ“Bank accounts reconciled to the last statement before loading
Open items

Unpaid receivables and payables

Every open invoice, credit note and prepayment comes across as its own document. Each keeps its source currency and original exchange rate, so payments apply and realized gains or losses post correctly.

  • โœ“Customer and vendor aging matched to Sage 300 on the cutover date
  • โœ“Open sales and purchase orders re-entered or loaded as new documents
  • โœ“Unrealized revaluation run in Business Central after the load
History

Old transactions

Posted Sage 300 history normally stays in a read-only copy of the database. If comparative reports need it, we load prior periods as net change per account and dimension, not every document.

  • โœ“Read-only Sage 300 or a SQL backup kept for audits
  • โœ“Summarized comparatives for the financial reports
  • โœ“Detailed invoice history only when a real process needs it

Rebuild these instead of carrying them over

In a Sage 300 to Business Central migration, some parts never make the trip. You rebuild them instead. Macros and VBA written against the Sage 300 screens do not run anywhere else. Third-party modules built on the Sage 300 SDK need a replacement. That can be a Business Central app from AppSource, a standard feature that already covers the need, or a small extension. Business Central intercompany partners and transactions replace the Sage 300 intercompany module. They work between companies in the same environment.

Reporting is the other rebuild. Statements written in Sage 300 Financial Reporter become Business Central financial reports, the feature long known as account schedules. These read dimensions directly, so one layout can replace a stack of department variants. We redesign Crystal Reports forms such as invoices, statements and checks as Word or RDLC layouts. For analysis, Power BI connects to Business Central through Microsoft's standard apps. The Edit in Excel action also covers most of the ad hoc work people did with Sage 300 exports.

How the Sage 300 cutover runs

  1. 1

    Close the last Sage 300 period

    Post every open batch in G/L, AR, AP and inventory. Then finish the bank reconciliation and run period-end, so no batch sits half posted.

  2. 2

    Extract

    Pull masters, open documents and balances with Sage 300 import and export, or straight from the SQL database. Keep the extract files as evidence.

  3. 3

    Transform and load

    Split segmented accounts into accounts and dimensions, apply the optional field verdicts, and load through Business Central configuration packages.

  4. 4

    Post opening entries

    Post the trial balance, then open receivables and payables in source currency against clearing accounts that must net to zero.

  5. 5

    Reconcile and sign off

    Compare trial balance, aging and inventory value to Sage 300 figures on the cutover date, in functional and source currency. Do this before the first live transaction.

Sage 300 buyers ask us

Does Microsoft provide a tool that migrates Sage 300 data into Business Central?

Not one we rely on for Sage 300; we move the data with Business Central configuration packages and scripts. That is not a weakness, because the real work is redesigning segments, optional fields and account sets, not copying. Configuration packages load Excel files into Business Central tables with validation, so errors show up before anything posts. We keep the extract and transformation scripts, so we can repeat every load for a test run.

Can we keep our Sage 300 account numbers?

You can keep the natural account part, and we usually recommend it so finance staff recognize their accounts. The department, region or division segments move into dimensions instead. That shrinks the chart of accounts considerably and lets reports combine dimensions freely. We keep a mapping table from old account codes to new account and dimension pairs. Auditors can then trace any balance.

How are foreign currency receivables handled at go-live?

We load each open foreign currency document in its source currency at its original rate, not in dollars. When the customer pays, Business Central posts the realized gain or loss exactly as Sage 300 would have. After the load we run the exchange rate adjustment so the unrealized position matches Sage 300 on the cutover date. The functional currency total of the open items must tie to the receivables control account.

More on a Sage 300 to Business Central migration

What happens to our Sage 300 Financial Reporter statements?

We rebuild them as Business Central financial reports rather than converting them. Financial Reporter formulas refer to Sage 300 account codes and segments that no longer exist in the new chart. Business Central financial reports use row definitions, column definitions and dimension filters. As a result, one income statement layout can often replace several department versions. We rebuild the statements your board and lenders actually receive first and agree the rest with finance.

Do we need Business Central Premium after Sage 300?

Only if you need production orders or service management; most Sage 300 companies run on Essentials. Sage 300 is mainly a financial, order entry and inventory system, and Essentials covers those areas. Companies that ran manufacturing in a separate add-on or spreadsheet should look at Premium. Check current licence details on Microsoft's pricing page or in a partner quote, since they change.

Talk to us about your project.

Tell us what you run today and what has to change. A senior consultant replies with a written next step.

Get started

Start with a scoping conversation.

Thirty minutes with a senior consultant - not a sales call. We look at how you run today, tell you plainly whether Business Central is the right fit, and give you an honest sense of scope, cost and timeline before you commit to anything.

What happens next
1
We review your enquiry
A consultant reads it before the call - no discovery questionnaire to fill in.
2
30-minute scoping call
Your processes, your current systems, and the gaps that matter most.
3
Written summary & estimate
Indicative phases, licence counts and a cost range, in writing within three days.
Reply within one business day
NDA signed before discovery on request
No obligation, no cost for the scoping call
Microsoft-certified consultants only
Request your scoping call
Four fields. A consultant replies within one business day.
No cost
Your details stay with our consulting team - never shared, never added to a mailing list.