We’re about to publish our app to the AppExchange, and noticed two different options for handling payments for our paid app:
Paid, using Checkout (CMA) – Using AppExchange Checkout via the Checkout Management App
Paid, without Checkout (COA) – Using Channel Order App to submit orders to Salesforce
TL;DR – The CMA / Checkout route seems to be the simplest, easiest way to manage orders and purchases for our package. It auto-syncs with LMA anytime there’s upgrades, payment subscription changes, and the like. It also links up directly with Stripe, which is what our company uses for its own payment processing.
COA seems to be an older solution and is mainly geared toward OEM partners for distributing their own Salesforce licenses directly with the customer, whereas for a regular ISV partner it seems to make most sense to use CMA.
If you’re an ISV Partner, is there any advantage to using COA over CMA? CMA seems to have a 15% revenue sharing model, whereas the COA documentation/trailhead didn’t mention the actual revenue share.
CMA seems to be the clear winner. What other considerations am I missing?
Having used CMA for over a year, and having explored using COA, these are my findings:
CMA is the way to go for most listings. It’s self-served, the revenue sharing happens automatically at the Stripe account level, and you don’t have to do anything else on the side – it just works
It is very time consuming to use COA to send service orders to Salesforce. It has to be done manually for every seat and every change that happens – when they buy more seats, decrease seats, no longer use the product, etc. A separate service order is needed for each of those situations, so it takes a lot of time to just report it back to Salesforce.
The only use-case I can think of for using COA is for bigger customer contract deals, where you wrap your SF offering into the overall deal that you have with a particular customer, who wants everything wrapped into one.
Take my word for it – unless this last bullet point is the majority of your deals, use CMA, and direct all customers to use the AppExchange Checkout to manage their seats and subscriptions.