Business closings
Multi-Party Escrow for Business Closings
A business closing often needs more than two wallets. Here is how to split a payout, add an acknowledger, and keep deposits equal to payouts.
· 4 min read · DeFiEscrow
A multi-party escrow for a business closing locks the price, and any other amounts that have to move at the same moment, until every required person approves. Company sales, asset purchases, and partner buyouts rarely have only a buyer and a seller. A second owner may have to consent. A broker may be paid from the price. Counsel may need to sign off before funds move. DeFiEscrow can represent those people as parties. It will not discover them for you.
The asset is still one token: ETH, USDC, or USDT. The amounts still have to balance. The approvals are still unanimous, except for the protocol fee address, which cannot veto the deal. If that is the rule you want, the work is to turn the closing statement into a party list. If you need a closer who can adjust numbers on the day, adjust them before you create the escrow. After creation they are fixed.
Turn the closing statement into parties
Start from the cash that must move, not from the org chart.
The buyer, or the buyer's acquisition company, is usually the depositor for the price. If more than one person is wiring value in, each of them is a depositor for their share. The contract does not accept "the company will pay" unless the company's wallet is the party and that wallet can sign.
Each person who receives tokens is a withdrawer with a specific amount. Seller proceeds, a broker commission, an advisor fee, and a debt payoff only belong in the escrow if they are supposed to be paid in the same asset, at release, to a wallet. A payoff to a bank that cannot receive USDC is not an escrow line. It is a wire you still have to send, and the seller's payout should be the net that remains after you have accounted for it off-chain.
Each person who must consent but is not paid from this escrow is an acknowledger. They deposit nothing and receive nothing. Their approval is still required. That is the right slot for counsel who should be able to hold up release until a document is signed, and the wrong slot for someone you added "just in case" and who will be on a flight when the approval deadline hits.
Unanimous approval is the consequence of this list. Read it before you add a fifth wallet.
A numerical sketch
Suppose an asset purchase is 250,000 USDC, the buyer pays the 1% protocol fee, a broker is paid 10,000 USDC from the price, and the seller takes the rest.
- Buyer deposits 252,500 USDC. That is 250,000 plus a 2,500 fee, because 1% of the 250,000 deal amount in the app's gross calculation is 2,500.
- Broker receives 10,000 USDC.
- Seller receives 240,000 USDC.
- Fee address receives 2,500 USDC.
- Total out: 252,500 USDC.
Check that this matches the purchase agreement. If the agreement says the seller receives 250,000 and the buyer pays the broker on the side, do not silently pull the broker out of the seller's line. Write the structure you actually want, then make the escrow match it. The contract will happily pay whoever you named.
If counsel must approve and is not paid, add them as an acknowledger. Deposits and payouts do not change. The approval set does.
What the business sale still requires
Share certificates, a bill of sale, assignments of contracts, landlord consents, employee matters, and regulatory approvals are not fields in createEscrow. They belong in the purchase agreement, with a sentence that says the parties will approve this escrow, identified by id, only after those conditions are met. The limits of the contract are the list of jobs you should not imply the transaction will do.
Holdbacks and earnouts should be their own escrows. Release pays every line at once. You cannot lock 250,000 and later instruct the contract to keep 25,000 for a year. Create a 225,000 closing escrow and a 25,000 holdback escrow with its own approval deadline, or create the holdback later when you know whether it is owed. A deadline six months out on the whole price forces the entire price to wait, or forces you to approve early and trust someone.
If the deal dies before approval, deposits refund to the wallets that paid them. A buyer who deposited the whole price is refunded the whole deposit, including the fee portion. A seller who deposited nothing is not paid a breakup fee unless you created an escrow whose payout is that breakup fee. Do not assume the dispute process will invent one. Dispute timeouts refund deposits only.
Coordination on the day
Each depositor and each approver sends their own transaction. Share the escrow id, the network, and the exact address each person must use. Ask every payee to prove they control the withdraw address with a small signed message or a test you trust, before the price is created. A business seller who "uses their accountant's wallet" has made the accountant the party. The contract will not pay the company wallet instead.
Leave the approval deadline long enough for a document problem and short enough that a vanished signer does not park six figures indefinitely. After everyone has approved, remember that the deal no longer expires. Someone still has to release, and each payee still has to withdraw. Put those last transactions on the closing checklist next to the bill of sale, not in a follow-up email the next month.
Used this way, a multi-party escrow is the cash mechanics of a business closing: several wallets, one balanced equation, no payout until the required people say so.