* inflexible subscription system
* unreliable web component for gathering credit card information
* unreliable 3DSecure implementation
* incompetent support (these four are the main reasons why I switched from Braintree to Stripe)
* complex and untestable flows for non-mainstream payment types (e.g. SEPA direct debit, IDEAL, etc — Stripe makes you think they will just work, while you need to implement complex logic in your system to make them work)
* PCI compliance (Braintree hires SecureMetrics, they audit everyone even if you are below PCI thresholds, and the audits are idiotic; they complain about ssh version numbers on Ubuntu LTS systems which have all current security patches, etc)
* US-centric thinking about invoicing, which makes invoicing unusable (I issue invoices only after a successful payment, because I owe tax on all invoices including unpaid)
* lack of B2B subscription billing using proforma invoices
Things that would worry me looking towards the future if I were to switch a payment processor now:
* pricing (this matters in spite of what HN often says)
* lock-in (Stripe Billing was free, then 0.5% of revenue, then 1% of revenue, what's next?)
* reliability of 3DSecure, as problems here are extremely difficult to debug and easy to blame on "customer's bank"
You might note that this list contains mostly non-technical items.
But overall I'm very happy to see competition in this field. Payment processing is in a sad state and there are not nearly enough companies doing this.