Indeed, escrow is highly regulated in some states, including CA. There are a few third party services that provide an API for escrow among other things: http://www.armorpayments.com/ and http://promisepay.com/.
Stripe and Braintree can also support some versions of escrow, depending on how long you want to hold the money for and the amount.
Stripe and Braintree can also support some versions of escrow, depending on how long you want to hold the money for and the amount.