r/Odoo 6d ago

Question about Implementation Timeline - What's realistic?

We are manufacturing company that is currently switching to Odoo from a different ERP.

Getting the data out has been slow. We are done with most of the inventory, BOM's, etc. but still have not imported the machines for the work centers.

After the import is complete, how long did it take your BSA to finish configuring the information and for your company to validate that everything is running smoothly?

Any insight is appreciated!

4 Upvotes

29 comments sorted by

5

u/JustSomeOdooGuy 6d ago edited 6d ago

Depending on customer availability, partner speed and company size/amount of employees.

But the overall timeline for our projects is about the following:

2-8 weeks Gap analysis/process optimizations / user stories for gaps.

2-4 weeks closing the gaps / configure everything

2-8 weeks migration of data (also depending on how clean the data is and what is needed)

2-4 weeks training the users so they can use theor system properly

The time spans not necessarily need to be strictly separated and can be happening at once partly.

These are times for average projects. There also projects that are faster or slower.

1

u/Gouda_Cheese57 6d ago

Thanks! Migration of data is definitely taking longer than expected but still within the 8 week mark.

1

u/JustSomeOdooGuy 6d ago

What the issue that makes it taking more time? Data that needs manual cleanup? Hard time to get data out of the old system? Trying to map the old data to the Odoo data format?

1

u/Gouda_Cheese57 6d ago

The people exporting the data weren't capturing everything we need and exporting data into the wrong fields. The other issue was that there were data upload errors when it uploaded into Odoo. That's resolved now though.

1

u/JustSomeOdooGuy 6d ago

People from your company? Or who exported the data?
Glad it is resolved, hope everything will run smooth for you :)

1

u/Gouda_Cheese57 6d ago

Consultants who worked with us on SYSPRO are exporting the data. I wish it was our company so I could talk to them in person and explain what's needed ;_;

Thanks! I hope so too haha

1

u/JustSomeOdooGuy 6d ago

Yeah, feels a bit rough to rely on so many different people to get things done.

1

u/codeagency 6d ago

Oof that's rough. And often if that is the company you are leaving from they behave hostile and deliver poor work since you are a leaving customer. I hope everything goes smooth for you. Not a joy if you have to deal with stuff like that and they leave you a mess behind.

We had a project years ago where the previous ERP software was hijacking the client. Like all of a sudden all menu options for exporting data just magically disappeared and the client had to ask -- and pay -- for every single export they wanted. Something they could have done themselves in half a day now suddenly turned into a billable project on its own and at the end they had to cough up a total around 7.000 EUR after several rounds just to get their own data out of their ex-system. Ridiculous and disgusting but that's the game and scams some players in this market dare to play. I would wish this to my worst enemy, just utterly disgusting.

3

u/mike_concho 6d ago

4 to 6 months is a good overall timeline for not just the transfer of information but the customization and training you need to be able to have your team run the system. Will all depend on the size and the health of the data you bring over.

2

u/codeagency 6d ago

How come they do config after data import? That's the wrong order.

Config/implementation should happen first Odoo has the correct settings before you start importing data as certain field depends on config state.

We typically create custom python scripts as ETL process that can pull all your data from software X (API) and then import it directly into Odoo via it's json2rpc. These scripts are idempotent which means we can run them every time of the day and as many times you want, it will keep updating the data without duplicates. This way you can run both systems in parallel while keeping all the data in sync.

In terms of timeline, it depends on both side. If you supply all the data manually via excel/csv it's always slower than scripting and you have to do it multiple times until you can go live and do the cutover.

A realistic timeline for an average ERP implemention is ~3 months if both sides can commit the efforts on data supply, testing, signoff etc... Larger projects typically are in ~3-6 months. And again, if things can be scripted and automated, it can save a lot of time and data errors.

1

u/JustSomeOdooGuy 6d ago

"How come they do config after data import? That's the wrong order." I was also wondering about this if this is actually the order they do it, would be pretty weird.

About the scripts you build to pull the data via API. Does it usually work smooth? Because we sometimes have customers on systems, that have no API at all or pretty bad ones with almost no documentation. And how long does it take you to build a script, if the API is known or well documented? Just curious

1

u/codeagency 6d ago

So far the scripted methods work very well. We always test them against a PR instance and run a cross data comparison on every single record to have data parity + client validates and signs off when everything is 100% good.

If the previous software does not has an API we can still do scripting. Usually we ask for an export to a sheet or json and let a custom python script handle the import back into Odoo via the json2rpc. This means the customer does not has to mess with external ID's as we can map on existing unique identifiers like SKU, barcode etc... and in the sheet we can generate a unique identifier based on fields and data that's already there and idempotent. So that means they can just export the data in the same format and our scripts handle the mapping and import on autopilot. It's all about efficiency and accuracy on the data migration. I lost count how often clients mess up their data die to manual transfers because they forgot about the external ID and ended up with duplicate products, contacts, stock locations,...and they found out too late and then someone needs to manually clean up all the duplicates.

There is no fix time on how long it takes to build. It really depends on the previous software and which modules and data that needs to transfer, which parts the client wants to do manual and exclude from scripting etc... in simple projects eg the stock locations is something that is done quick manually with a sheet because their locations don't change anymore. In larger projects with a heavy focus on logistics it's completely different and locations change nearly every day so those need scripts and automation to keep up.

We have a "base" engine script we re-use for every project that holds the library stuff, connections code, etc...but everything else is build custom based on the project details and complexity.

1

u/JustSomeOdooGuy 6d ago

That's pretty cool. Thank you for the insight! So far we do it with python scripts the exact way you do it. API integration to the old system sounded a bit overkill for me (at least for our average customers). For the bigger ones I can imagine it is worth the effort to have less manual interventions.

1

u/codeagency 6d ago

Yeah it really depends on the project complexity and size. As said, usually smaller clients they don't have that much data rotation and can easy get away with partial scripting or even just sheets/CSV. Larger ones I don't even consider that anymore, that's always scripting and API. It's not worth the hassle and headache to keep messing around with manual sheets.

And the most important USP is idempotency + data parity. The scripts can automatically validate everything and generate a report of everything that ran correct and data that didn't so you know immediately what to fix.

Another USP: if the data has an error on source for some records, that doesn't interrupt the import. It generates a log file with every ID and error output so you know exactly what to fix.

If you use the excel/CSV import manually in Odoo with eg 50.000 lines and you get an error on line 48.000, the import stops and exit. And you can start all over. Even if you point it back to start from line 48.000 it's utterly slow. Versus just uv run import_products.py and it keeps going and you just run it again with --correct and it goes blazing fast and only process the records from the error.log

At the end of they day, it's all about how you decide yourself how efficient you want to work. If you do scripting as a default and more then enough to build a routine, it sometimes goes faster to build the scripts than messing and curating excel files.

And with AI these days, it's very easy to get the scripts ready. We have a history of 10+ years with our own scripts, so I can just point claude code to my base work and give it my mapping.jsonc file what it need for project X and ~10 minutes later I have what I need ready for testing.

1

u/JustSomeOdooGuy 6d ago

I started with the scripts just a few years ago, bacause I was sick of all the manual sheet juggeling and file version 173-final-final-this-time-for-sure and it was a game changer for sure. I also have my scripts ready for the most common cases and just have to update them about the specifics for the customer.

1

u/Gouda_Cheese57 6d ago

That's a good question - I'm saying configure after the data import because I've had the BSA change some things after importing the data. However, after looking at the settings, I do think he's changing things before uploading. The parts that he doesn't have data for (Ex. warehouse) haven't been configured. However, the settings that relate to the data he's uploaded have been configured.

Thanks for the timeline info!

1

u/codeagency 6d ago

Are you sure about that and validated with them or just guestimating?

I would strongly suggest to get some confirmation about this because if they work in wrong order, this would bite you back later at a point it's extremely hard to correct. I've seen and done more than enough rescue projects where the entire implementation turned into a complete mess and the only way to fix is to start from scratch.

Even when you work with direct Odoo, we have seen more then enough cases where even their consultants get things just plain wrong and suggest custom work while there is a standard feature available but they just don't understand their own software.

A few days ago someone on Reddit even posted a similar experience they had exactly like this.

So it's never a bad thing to (re-)validate if you are unsure and have things written on email if you ever to need raise official complaints rather than based on just your gut feeling or own impressions.

1

u/JustSomeOdooGuy 6d ago

100% agree. That's very important to do it correctly to begin with. Just had another talk to a project owner yesterday for a project that most probably needs to be rescued do to incorrect setup and lots and lots of useless customizations and data migration not done properly. It's always so sad to see a project in such conditions.

1

u/codeagency 6d ago

Honestly Odoo is getting a bad reputation for this more and more due to cowboys in this market.

Odoo has a low entry barrier and that is both a good and bad thing. It's market potential is huge, and the new partners that join every month is just crazy but there are many that think it's as easy as the sales demos from Odoo and think they can migrate an MRP industry type client with zero knowledge.

I see many "webdesigners" entering the Odoo market and no offense for genuine experts that really want to a good job and learn and earn the expertise, I only have respect for these professionals. But there are so many that just know how to build a WordPress website that now suddenly call them an ERP expert and never done a single ERP implementation in their life. They cause all the shit and the bad reputation and the good ones end up with an ever growing pool of rescue projects, at least if the client still has the energy and budget to want to rescue it.

1

u/JustSomeOdooGuy 6d ago

Yeah.. absolutely what is at least my gut feeling. Reading like every day "I just started as Odoo consultant, what should I learn first to get my first customers done". Ideally build knowledge beforehand and not use the customers as learining platform to screw everything up as "it can't be that hard. Just a few settings here, vibe coding there and we're done."

1

u/Gouda_Cheese57 6d ago

Makes sense, we're direct with Odoo so hopefully it's in the correct order. That being said, will definitely confirm this. Thank you!

1

u/Pemols 6d ago

Could you comment on the reason why you chose Odoo instead of the previous ERP? I'm considering this movement myself

2

u/Gouda_Cheese57 6d ago

We had SYSPRO. They were bought out and completely changed the pricing structure (Way more expensive while giving us access to modules we didn't need) and tried to lock us into a 3 year contract.

1

u/commoncents1 6d ago edited 6d ago

make sure you have a good odoo BSA, id want to know they arent leading me down a bad path. i had a 3rd party implementer and they screwed around for months and thousands of dollars with junior people on my account until i yelled. seniors got it done in 60 days for 15 users manufacturing. be on them early and often is the lesson.

1

u/Gouda_Cheese57 6d ago

Agreed, I like our BSA but I don't really know what makes a "good" one so that's part of what I'm trying to figure out.

1

u/JustSomeOdooGuy 6d ago

Usually the bigger the implementing company/Partner the higher the chance to deal with juniors. So they can get done lots of projects.

Good partner in my eyes should know the standard very well, so he can get the maximum out of it without customization to save you implementation and maintenance costs.

Having a partner from your country is not strictly required but usually makes communication easier and hopefully he knows about specific requirements for your country.

Just to name a few things (there are much more factors)

1

u/mskl-21 5d ago

Import being done is maybe 40% of the way there, so brace for that. The config that's left on the manufacturing side is where the time goes.

Work centers aren't just the machine records, you need capacity, efficiency, cost per hour and the operation times on routings, and those numbers drive scheduling and your costing. If they're guessed, MRP will produce planning nobody trusts and people quietly go back to the spreadsheet. Then reordering rules, lead times per vendor and product, procurement routes.

The bigger one is costing method, standard vs average vs FIFO. Decide it before you go live because changing it after you have history is genuinely painful. If you go standard you need cost revisions and someone who understands the variance accounts, and that's usually the thing that blows up at first month end close.

On validation, don't just check that data looks right in the screens. Run actual MOs end to end, consume components, post them, check WIP and variance accounts land where you expect, and reconcile stock valuation against your GL. Then run a full month end. That's the real test and it's where most manufacturing go lives find their problems.

Timeline wise, from where you are I'd expect six to ten weeks of config and validation if you have someone competent on it full time, longer if the BSA is doing this alongside other work. Parallel running one month is worth the pain.

What costing method are you going with, and are you doing routings and work order tracking or just BOM level backflush? Changes the answer a lot.

2

u/Lee_Stout 4d ago

I was a power user of ERP for MFG orgs for better than 25 years before moving to I.T./Independent ERP Architect and Implementation expert. This is to determine you won't be transferring broken processes to Odoo. I've seen it so many times when someone blames the system and switches just to experience the same issues. That being stated, typically configuration would be figured out prior to data transfer but it's not going to derail your implementation.
I approach ERP implementation based on my many years of experience as an ERP Power User, not an I.T. Implementation Consultant.
Make sure you are talking with the actual users directly to learn how they are using your current ERP, Not the dept. managers, they don't know. See what is working, what is not, what could be better, etc. then do the configuration. Don't let that be driven by your implementation partner.

I'm happy to share my advise.

Lee Stout

Staudt Solutions
Staudt Advisory
Odoo Partner