I would start by agreeing to a plain-English term sheet, just listing all the points of the agreement. Once you've agreed on that, pass it off to a lawyer to create a real contract.
In more detail:
First sit down with the partner, and agree to as many terms of the agreement as you can think of, then write them down in plain English. Who pays whom? When? Under what conditions? What happens if one of you wants to terminate the agreement? After the termination, who owns the customers? Will one party indemnify the other? Who services the customers and in what way? What about returns? What are all the things that might go wrong and what rights do the parties have after that? How long does the agreement last?
Once you get this written up (it's called a "term sheet"), send it to your lawyer and ask him or her to draft a contract that covers those points. Find a lawyer with experience in your business so that they know the common pitfalls and can bake them into the contract.