Three things: someone on your side who owns the project and has real time for it, access to the people who actually run the processes being changed, and your existing data in whatever state it is currently in. You do not need clean data or a written requirements document before you start. Those are things we produce with you, not conditions for beginning.
One named person who can make decisions, answer questions, and unblock things without escalating every time. This is not a full-time role, but it does need to be real time in their week rather than time they hope to find. In our experience this single factor affects a project more than technical complexity does.
Discovery works when we speak to the person who runs a process daily, not only the person sponsoring the system. The gap between how a process is described and how it is actually performed is where most implementations go wrong, and it only closes if the people doing the work are in the room.
Exports from your current system, spreadsheets, contact lists, whatever exists. Please do not clean it first. Seeing the real state of the data tells us what migration will involve, and tidying it in advance can hide problems we would rather find early.
The most common cause of a project running long is availability, not complexity. If you can name your internal owner and confirm they have room in their week before work begins, you have removed the largest risk to your own timeline.
Tell us what you are trying to fix and we will tell you what your side of the work looks like. Book a scoping call.