I dealt with this in a previous startup where we wanted to not only incentivize the development team (outsourced) but tie it's financial future to that of the company as well. The following is from your client's perspective, that being the company's management team you are working for.
So basically the sequence of events was:
a) they pitched a price to deliver the functions, and other things (art) shown in the RFP, which included a product requirements document as well
b) we negotiated off that starting point, dropping the price but adding equity earnouts structured in a milestone framework; minor milestones reached resulted in payment, major milestones reached resulting in additional equity allotments; milestones had dates attached as well so to get paid they had to deliver functionality on time
c) there was a process jointly agreed to as to what happened when the software deliveries did not meet spec, per se, so they had a clear path to resolving and getting paid without undue delays or unreasonable expectations on our side
d) at the end we also added a slight equity kicker for reaching a certain revenue milestone as well
Now, the issue with the above is you have to have a management team that is willing to enforce the contract and suffer some discomfort when deliveries don't meet spec and are rejected for rework and resubmission.
In the end, business is business - the developer is assured ongoing payments when they deliver what has been committed to be delivered, nothing more, nothing less. If less is delivered, then payment gets stretched out. It did happen more than once in our case. On the flip side we never ran into the case where the development company delivered more than what was required LOL.
So the question is..is there sufficient upside to make less than what you want now, i.e., are you willing to take some risk yourselves? If not then the term "partner" is probably a misnomer.