Build one onboarding path, then let exceptions be exceptions
It's tempting to build a slightly different onboarding process for every type of client, trying to cover every possible situation right from the start. This makes the whole system harder to maintain and easier to break, because you're juggling several versions instead of one solid one. I've learned to resist this urge in my own systems, since one solid path beats several half finished ones every time.
Build a single clear path that covers the common case well. When an unusual situation comes up, handle it by hand as an exception, rather than adding another branch to your main process for something rare. Most client relationships will never need the exception at all.
Over time you'll notice which exceptions come up often enough to deserve their own step. That's the right moment to expand the process — after you've actually seen the pattern, not before you have.
Try this today: look at how many separate onboarding paths you're currently running, and see if any could collapse back into your main one with a small manual step for the rare case.