Skip to Content
Administration desk with printed documents and a pen
  1. Home
  2. Assessments
  3. ERP readiness

Your ERP assessed as an investment before you sign

For general managers and CFOs of companies leaving Excel, a local system or an old version. Check whether your data will hold up on cut-over day and calculate how many months the investment takes to pay back, using the indicators the change has to move: days sales outstanding, days of inventory, month-end close and SUNAT risks.

Today you record your operations in

Immediate result, free of charge. The selector adjusts the examples across the page.

Six records of a sale, from order to journal entry

Mark how each step is recorded in your company today. The diagram shows how many times the same transaction is typed again and which value case it points to first. It is the same table as on the second page of the self-assessment.

OrderQuotation and order
DispatchDelivery guide (guía de remisión)
InvoiceElectronic invoice or receipt
CollectionBank credit and SPOT deposit certificate
Purchase and receiptPurchase order, supplier guide and bill
Journal entryEntry and sales and purchase registers
  1. Not markedRetypedSpreadsheetExport and importSingle record
  2. Not markedRetypedSpreadsheetExport and importSingle record
  3. Not markedRetypedSpreadsheetExport and importSingle record
  4. Not markedRetypedSpreadsheetExport and importSingle record
  5. Not markedRetypedSpreadsheetExport and importSingle record
  6. Not markedRetypedSpreadsheetExport and importSingle record

0 of the marked rows are typed again by hand. Rows marked: 0/6

Single record: — Sum of the six rows’ values ÷ 18, from 0 (retyped) to 3 (single record).

The case your map points to first: —

Order

What usually happens today
The quotation comes from a Word or Excel template and the order arrives by WhatsApp or email. The price is copied from the last quotation and the customer’s credit is checked in another sheet.
The order is entered in the sales module, but the credit limit and the current price list are checked in a sheet kept by credit and collections.
The order is in the ERP and the per-customer discount rule lives in custom code only the vendor knows.
Indicator it feeds
Credit notes for price or quantity errors (KPI); duplicate customers (KRI).
In Odoo 20
Sales › Orders. The confirmed quotation takes the price from the customer’s price list and warns when the order exceeds the credit limit.
Coverage
Standard.
Confirmed sales order with price list, delivered and invoiced quantities per line.
Confirmed sales order with price list, delivered and invoiced quantities per line. Lab Odoo 20, demo company with fictitious data.

Dispatch

What usually happens today
The delivery guide is issued on the SUNAT portal or in the invoicing app, and stock is deducted by hand in the sheet at the end of the day.
The warehouse ships with the local system’s guide; partial shipments are not always matched to the order.
The delivery is validated in the ERP and the electronic guide is issued in another tool, with the carrier’s data copied over.
Indicator it feeds
Perfect order and inventory accuracy (KPI); unapproved inventory adjustments (KRI).
In Odoo 20
Inventory › Deliveries. The delivery is created from the confirmed order, reserves stock and deducts what is validated.
Coverage
Standard for the delivery. Electronic delivery guide with carrier and vehicle: Verify in Odoo 20.
Stock by location: what each validated delivery deducts in each warehouse.
Stock by location: what each validated delivery deducts in each warehouse. Lab Odoo 20, demo company with fictitious data.

Invoice

What usually happens today
The invoice is typed into the invoicing app, copying customer, products and prices from the order. If the sale is subject to SPOT withholding, the amount is calculated separately.
The invoice comes out of the local system and is sent through the OSE; a rejection is fixed with a credit note and a new invoice.
The invoice comes out of the ERP through an e-invoicing connector maintained separately.
Indicator it feeds
Days from order to invoice, rejected or flagged documents (KPI); documents sent late (KRI).
In Odoo 20
Accounting › Customers › Invoices. The invoice is created from the delivery or the order, with the Peruvian localisation and the e-invoice sending status on the same screen.
Coverage
Standard. Perception (percepciones) as a collecting agent: Verify in Odoo 20.
Customer invoice with its SUNAT document type and, in the log, the entry created from the source order.
Customer invoice with its SUNAT document type and, in the log, the entry created from the source order. Lab Odoo 20, demo company with fictitious data.

Collection

What usually happens today
Treasury checks online banking and marks in the sheet which invoice was paid. SPOT withholdings appear in the Banco de la Nación statement, in another file.
Payments are applied in the accounting system at month end; during the month, receivables are asked of the person who keeps them.
Statements are loaded with a custom template per bank that breaks when the bank changes its format.
Indicator it feeds
Days sales outstanding (KPI); receivables over 90 days overdue and undeposited SPOT withholdings (KRI).
In Odoo 20
Accounting › Bank reconciliation and payment follow-up. Each payment is matched to its invoice and the aged receivables report shows what is overdue per customer.
Coverage
Standard. Importing Peruvian bank statements: configured per bank. Banco de la Nación SPOT account: own journal with manual reconciliation or a custom import.
Items to reconcile: the statement payment is matched to the invoice it pays.
Items to reconcile: the statement payment is matched to the invoice it pays. Lab Odoo 20, demo company with fictitious data.

Purchase and receipt

What usually happens today
The supplier order goes out by email or WhatsApp. The supplier bill is entered in the accounting software without comparing it with what was received.
The purchase order exists, but the receipt is recorded days later and the bill is paid without matching quantities.
Purchase approval is a custom flow that forces approval outside the system when the approver is away.
Indicator it feeds
Supplier bills linked to an order and a receipt (KPI); purchases without an approved order (KRI).
In Odoo 20
Purchase › Orders. The receipt is created from the order and the supplier bill shows ordered, received and billed quantities per line.
Coverage
Standard. Electronic withholding certificate as a withholding agent: Verify in Odoo 20. Importing supplier documents from SIRE: Development.
Purchase order with received and billed columns per line.
Purchase order with received and billed columns per line. Lab Odoo 20, demo company with fictitious data.

Journal entry

What usually happens today
The accounting firm receives a file with sales and purchases early in the month and posts the entries weeks later.
Sales and purchases reach the accounting module by export; differences are reconciled by hand before the books are generated.
The entry is generated, but the electronic books come from a separate program that reads the ERP database.
Indicator it feeds
Days to month-end close and manual entries (KPI); reopened periods and late books (KRI).
In Odoo 20
Every invoice, payment and valued stock move generates its entry. The lock date closes the period.
Coverage
Standard. PLE formats 5.1, 6.1, 8.1, 12.1, 13.1 and the SIRE adjustment file: Verify in Odoo 20.
Journal entry with its debit and credit items, generated by the transaction.
Journal entry with its debit and credit items, generated by the transaction. Lab Odoo 20, demo company with fictitious data.

Your ERP business case sheet

Enter last year’s figures. The sheet calculates how much cash the change releases, in which month the investment pays back and the net present value at 24 and 36 months, with the conservative scenario as the basis for the decision. The data never leaves your browser.

Assumptions of this page: the new operation is fully running in month 6 (conservative) or 4 (base) and the previous system overlaps for 3 months or 1 month at double cost. Your plan sets them in the design.

Sales and collection
From last year’s sales register. Editable example.
Receivables ÷ credit sales × 365.
The target you would defend before your board.
Guide date against invoice date.
Inventory
From the income statement. Editable example.
Average inventory ÷ cost of sales × 365.
System being retired
Licences, support, server and IT hours of the system being retired.
Hours
Only hours with a reassignment, overtime removed or a hire avoided.
Salary plus social charges ÷ hours worked.
Investment
Diagnosis, data preparation, implementation, training and exit from the previous system.
Licences, support and hosting.
Finance
The one your finance team uses. If you have none, the lending rate for your segment published by the SBS. Editable example.
Cash released once
S/ 789,041
Annual financial effect of that cash
S/ 118,356

Enter the initial investment to see in which month it pays back. This page suggests no amounts: the investment comes from a proposal with a defined scope.

Payback of the investment
—
Discounted payback
—
Net present value at 36 months
—
Net present value at 24 months
—
Annual internal rate of return
—
Monthly discount rate
—
Recurring benefits only
—
Chosen scenarioThe other scenarioCumulative flow, months 0 to 36

The cash released comes from the days of collection, invoicing and inventory you entered. The payback appears once you enter the investment.

See the formulas
  • Cash released = (DSO today − target) × credit sales ÷ 365 + (invoice days today − target) × credit sales ÷ 365 + (inventory days today − target) × cost of sales ÷ 365.
  • Cash flow of month t = − recurring cost ÷ 12 + hours × cost per hour × min(t ÷ full month, 1) + current system cost ÷ 12 once the overlap ends + cash released in the full month + cash released × monthly rate afterwards.
  • Monthly rate = (1 + annual cost of capital)^(1/12) − 1. NPV = − investment + Σ cash flow ÷ (1 + monthly rate)^t.
  • Payback: first month in which the cumulative flow minus the investment is ≥ 0; the discounted version divides each flow by (1 + monthly rate)^t. Annual IRR = (1 + monthly IRR)^12 − 1, only if the flow changes sign once.
  • Recurring benefits only: the same calculation without the cash released or its financial effect.
Take these figures to the self-assessment

Formulas from the DMG-RT method impact model. The initial values are an editable example, not data from any company. Amounts are entered excluding VAT. The reference cost of capital is the lending rate for your segment published by the SBS, with the date consulted; the reference rate of the BCRP serves only as a comparison floor.

Criteria for setting the cut-over date

The cut-over date is the day the previous system stops receiving transactions and the ERP starts with opening balances. Migrating with duplicate masters or unordered permissions carries the problem into the new system. These eight risk indicators are measured with extracts from the current system before setting the date; your company agrees each threshold during design.

Risk indicatorFormulaExtracted fromIf it exceeds the threshold
Your starting pointDuplicate customers, suppliers or productsFormulaDuplicate records ÷ master recordsExtracted fromCustomer, supplier and product lists from every file and systemIf it exceeds the thresholdClean up and name an owner per master before loading
Contacts with an invalid RUC or DNIFormulaContacts with an invalid ID against the SUNAT register ÷ contacts with an IDExtracted fromCustomer and supplier master, matched against the SUNAT RUC registerIf it exceeds the thresholdFix before issuing the first invoice from the ERP
Products without cost or unit of measureFormulaActive products without cost or SUNAT unit ÷ active productsExtracted fromProduct master and kardex (stock ledger)If it exceeds the thresholdComplete before loading opening stock; otherwise margin and valuation come out wrong (IAS 2)
Your starting pointProcesses known by a single personFormulaProcesses whose rule or execution depends on one person ÷ processes in the mapExtracted fromDiagnosis interviewsIf it exceeds the thresholdDocument the rule and assign a second owner before cut-over (ISO 31000)
Users who can create a supplier, post a bill and payFormulaUsers with all three functions ÷ users with finance accessExtracted fromProfiles in the current system and in online bankingIf it exceeds the thresholdSegregate duties in the permission design (COSO, COBIT DSS06)
Days since the last tested backup restoreFormulaToday’s date − date of the last successful restoreExtracted fromIT or vendor logIf it exceeds the thresholdTest a restore before extracting migration data (COBIT DSS04)
Reopened periodsFormulaPeriods with entries posted after closing ÷ closed periodsExtracted fromAccounting system or external accounting firmIf it exceeds the thresholdClose and reconcile the last period before taking opening balances
Your starting pointCustomisations that modify the base systemFormulaCustom objects on base modules ÷ custom objectsExtracted fromInventory of the current vendor’s developmentsIf it exceeds the thresholdClassify each one as already standard in Odoo 20, configuration or a gap requiring development (COBIT BAI03, BAI10)

Frameworks cited: ISO 8000 · ISO 31000:2018 · COSO 2013 · COBIT 2019. The self-assessment measures these risks on its page about masters, access and the system being retired.

Three value cases and the order to start

An ERP is not implemented in full in the first month. Each value case groups the processes that move the same indicators and is measured separately. The order is decided by the conservative payback against your baseline.

AOrder to cash in a single flowBSingle, valued inventoryCMonth-end close and SUNAT from the system
ProcessesProcessesOrder, dispatch, invoice, collection, SPOT withholdingsProcessesPurchase, receipt, warehouse, count, replenishmentProcessesRecord to report, close, books and registers, assets, retiring the previous system
Indicators it movesIndicators it movesDays from order to invoice, DSO, credit notes from errors, rejected invoicesIndicators it movesInventory accuracy, days of inventory, idle stock, stock-outs, three-way matched billsIndicators it movesDays to close, unreconciled items, manual entries, differences with the SIRE proposal
Risks it reducesRisks it reducesOverdue receivables, invalid IDs, undeposited SPOT withholdingsRisks it reducesUnapproved adjustments, products without cost, purchases without an orderRisks it reducesReopened periods, late books, input VAT at risk, processes known by a single person
Main leverMain leverWorking capital and costMain leverWorking capital and revenueMain leverCost and risk
Hardest data to obtainHardest data to obtainActual invoicing and collection hours, by samplingHardest data to obtainActual inventory differences, by countingHardest data to obtainFines over the last 24 months and the full cost of the previous system
Core developmentCore developmentNoneCore developmentNone; inventory PLE subject to verificationCore developmentDepends on PLE and SIRE coverage; payroll integrated by journal entry
First measurable indicatorFirst measurable indicatorDays from order to invoice, day 30First measurable indicatorInventory accuracy, day 60First measurable indicatorDays to close, third close (day 90)
In Odoo 20In Odoo 20Sales, Inventory, Accounting, Portal, Peruvian e-invoicingIn Odoo 20Inventory with cycle counts and replenishment, Purchase, Barcode, perpetual valuationIn Odoo 20Accounting, Assets, Peruvian reports, Documents

Sequencing rule: the case with the shortest conservative payback goes first. If two tie, the one that releases cash (A or B) goes first, because that cash funds the following workstreams. In companies starting from a local or legacy ERP, case C often moves ahead because switching off the previous system has a contract date; with that starting point, the table shows it first.

From diagnosis to day 180, with dates

Choose the month you want to go live in Odoo. The page places each phase of the DMG-RT method on your calendar and marks when the result is measured against the baseline.

  1. F1 Diagnosis

    M − 5

    Fifteen working days of interviews and extracts. Output: the findings letter and the preliminary baseline using the business case sheet data.

  2. F2 Design

    M − 4

    Target process, gaps against the standard and a signed baseline. Each cut-over criterion gets its threshold.

  3. Data preparation

    M − 4 a M − 2

    Cleaning masters, the chart of accounts and deciding which history is migrated and which is archived for consultation.

  4. F3 Implementation

    M − 3 a M − 1

    Configuration, Peruvian localisation, integrations and tests with real data.

  5. Training and freeze

    M − 1

    Process owners trained; masters are frozen in the last week.

  6. Cut-over date

    M

    First day of the month. Opening balances as of the last day of the previous month. The previous system stays read-only during the overlap.

  7. Day 90

    M + 3

    Leading indicator report: system usage, days from order to invoice, three-way matched bills, rejected invoices and three measured closes.

  8. Day 180

    M + 6

    Results report: DSO, days of inventory, savings from the retired system and benefit in soles against the signed baseline, with the return recalculated on actual flows.

Reference timings on this page for a first phase, taken from the method’s investment structure. Your plan sets them in the design.

Day-180 indicators use the same definition as the baseline and are normalised for the base period’s volume and price. The measured return uses realised benefit; the projected one, the average of the last eight weeks. Both are reported separately.

See the DMG-RT method, from F0 to F5

ERP readiness self-assessment with a financial baseline

It follows a sale, a purchase and a month-end close in your company, and measures whether the data is ready to move to an ERP without carrying over today’s problems. Depending on your answers, questions appear that refine your case.

Dimensions it measures

  • From order to payment
  • Purchasing and stock
  • Month closed and filed
  • Masters ready for cut-over
  • Access and the system being retired
  • Baseline to measure the return

When you finish you receive

  • Your level in each readiness dimension.
  • The value case measured first and its comparison with the other two.
  • The benefit formulas with the data you declared, and the list of data left for the diagnosis.
  • A conversation with the analyst agent, which asks for missing data and offers the baseline template as a spreadsheet.

Diego reviews and edits every report before sending it or before the meeting. Staff cost per hour, payables, fines, the cost of the current system and the cost of capital are not asked here: they are covered in the 30-min diagnosis or in F1, under a confidentiality agreement.

Take the self-assessment (6 min)

ERP self-assessment result screen with level and dimension chart
Result from the previous version of the self-assessment; it is replaced when the new one is published.

Limits of Odoo 20 in a Peruvian company

  • Payroll: bonuses (gratificaciones), CTS, AFP or ONP, EsSalud, PLAME and T-Registro are not part of the standard localisation reviewed. The payroll software is kept and its entry imported, or it is budgeted as development.
  • Electronic delivery guide with carrier and vehicle, perceptions as a collecting agent and withholdings as a withholding agent: verified in the Odoo 20 showcase before including them in a proposal.
  • Perpetual inventory PLE (formats 12.1 and 13.1) and the SIRE adjustment file: verified in Odoo 20; if missing, they are a budgeted gap.
  • Bulk payment files in each bank’s format: development per bank.
  • Seasonal demand forecasting: outside the standard; the standard provides minimums, maximums and suggested replenishment.

Terms of the ERP self-assessment

Low result

A “Not yet: prepare first” result shows which tasks to solve before asking for proposals. Many are internal: naming master data owners, closing the last period, cleaning up customers. The report orders them and does not commit you to hire anything.

Companies that do not use Odoo

The self-assessment and the business case sheet work for any ERP. Screen references are from Odoo 20 because it is the system Diego implements; if you chose another, the baseline and the cut-over criteria apply just the same.

Figures in the business case sheet

The sheet applies formulas to the data you enter. It contains no market averages or other companies’ results. The day targets are yours; the F1 diagnosis checks them against your sales register, your kardex and your balance sheet.

Accountant or external firm

The accounting firm stays on the project. It receives the entries generated by each transaction instead of a month-end file, and takes part in defining the chart of accounts and opening balances.

Use of your data

Diego Muñoz uses your answers to prepare the 30-min diagnosis. They are not shared with third parties or software vendors, and are not used for bulk mailings. The business case sheet data never leaves your browser.

Cost

The self-assessment and the 30-min diagnosis are free. If you then decide to implement, the proposal breaks down diagnosis, data preparation, implementation, licences, training and exit from the previous system, with the payback calculated on your baseline. Each phase is paid by milestone.

Review your ERP business case with Diego before asking for proposals

Bring the business case sheet with your figures and your self-assessment result. In 30 minutes you review the collection and inventory day targets, the cut-over criteria your company does not yet meet and the value case to start with. Diego Muñoz answers in person, on Lima time.

WhatsApp +51 919 488 260 · damunoz@dmunozgroup.com

Diego Muñoz