
New version of Stripe Checkout - dfabulich
https://stripe.com/docs/payments/checkout
======
ianhawes
This is a beautiful user interface, but in my business, ~40% of our payments
are through PayPal. To integrate Stripe Checkout, we would have to ask the
customer whether they're paying with a card or using PayPal prior to
displaying the Stripe UI.

While that is not the worst option, our current UX is similar to Shopify,
where there is an accordion component with multiple options: PayPal, Credit
Card, Apple Pay, etc..

Stripe wants to fetch a premium with this feature. As such, they should bite
the bullet and allow merchants to integrate PayPal as a secondary option
(similar to how Apple Pay is displayed).

I will say that this is a pretty nice improvement from the modal Stripe
Checkout that has been around for several years.

~~~
quotha
I think it's just a matter of time before people switch from using PayPal.

~~~
foobarbazetc
We thought this and killed our PayPal integration (went Stripe only) and lost
double digits in sales (and received constant emails asking for PayPal).

Unfortunately people want PayPal for whatever reason. Everything about PayPal
from the merchant side sucks (bad API, bad recurring billing features, slow,
no refund of fees for refunds from May, 6 months for someone to do a
chargeback!, etc etc)

~~~
cstejerean
I use PayPal for random sites that I don’t know because I don’t like handing
my credit card info to random websites. Now I would personally trust Stripe
Checkout (especially on a stripe.con domain rather than in a modal) but that’s
because I know Stripe. The dislike of PayPal among techies is not common the
population at large in my experience.

Another thing I use PayPal for is any kind of subscription, because I know I
can cancel it from the PayPal side without having to worry about jumping
through hoops.

~~~
CodeWriter23
As devs, we know in theory Stripe and PayPal are roughly equivalent in terms
of protecting a card number. But the streamlined Stripe UI with the subtle
branding doesn't drive home to the customer that Stripe is keeping your card
number safe vs. random merchant storing all 16 digits in a hackable database
somewhere.

The friction in the PayPal UI of making you log in to PayPal to make the
payment is a pretty big trust signal IMO.

~~~
TazeTSchnitzel
Stripe isn't as safe. PayPal collects my details only on paypal.com, Stripe
collects my details on all sorts of domains, where who-knows-what JS might be
present.

~~~
CodeWriter23
Are you speaking about real threats that cannot be mitigated by best
practices, or theoretical threats of the future? I guess in other words, I’m
under the impression using Stripe and following OWASP and script signing that
my customers are safe. If I’m incorrect please pass me a clue.

~~~
kalleboo
As a customer, how do I verify that the merchant is following best practices
and hasn't by mistake forgotten some ad script enabled on the payment page?

With PayPal as long as I only enter my password on paypal dot com I know I'm
safe.

~~~
CodeWriter23
If you’re very careful and copy/paste the PayPal URL into an editor and verify
you didn’t get sent to PayPal.com.evil.domain, then you’re very likely to be
safe.

~~~
TazeTSchnitzel
I don't need to do that, browsers carefully show the actual domain in ways to
avoid that problem since a few years now.

------
cromulent
For people impacted by SCA in a few months time (EU) this is really nice.

SCA: [https://stripe.com/en-US/guides/strong-customer-
authenticati...](https://stripe.com/en-US/guides/strong-customer-
authentication)

EU e-commerce credit card transactions currently often redirect to the bank
providing your card to authenticate before accepting the payment. The UX is
very poor. The beneficiary of the check is the bank, but they tell you it is
done for your own security.

For some reason, financial institutions are well trusted in Europe, regardless
of recent behaviour.

[https://www.reuters.com/article/us-europe-moneylaundering-
fa...](https://www.reuters.com/article/us-europe-moneylaundering-
factbox/factbox-european-banks-hit-by-russian-money-laundering-scandal-
idUSKCN1QP1P2)

~~~
regecks
Just to be sure, if your business is domiciled outside of the EU (e.g.
Australia), there is nothing to be done regarding SCA, right?

In other words, there's no risk with sticking to Stripe Checkout Legacy, even
for European cards?

I have read some contradicting documentation.

[1] states the business AND customer must be in EU ("if all of the following
apply"), [2] says "payments to European businesses or from European
customers". :\

1\. [https://stripe.com/docs/strong-customer-
authentication](https://stripe.com/docs/strong-customer-authentication)

2\. [https://stripe.com/docs/payments/payment-
intents](https://stripe.com/docs/payments/payment-intents)

~~~
kalleboo
The article linked in the previous comment says

> _While SCA is not legally required for businesses outside of Europe, we
> expect a small minority of European banks to require SCA for all payments
> regardless of where a business is located_

I can believe this since the debit card associated with one of my european
banks will only allow online transactions with 3DSecure.

------
wallawe
I'm sure they did tons of testing on the experience, but I'm not a huge fan of
the Apple Pay button being up top and appearing so prominent.

My guess is that the vast majority of people won't end up using Apple Pay, so
from a UX standpoint, I don't understand why it's above the credit card
content as opposed to below.

My guess is that they worked out some kind of lucrative partnership with
Apple.

~~~
jenanwise
The Apple Pay button will only show up to customers who have Apple Pay
onboarded and enabled. Customers who don't care about Apple Pay won't ever see
the button.

(I work on Checkout)

~~~
mtgx
In the future will the "Apple Pay" in this instance also be replaced by
PayPal, Google Pay, etc, depending on what the person uses?

~~~
ultrarunner
In Elements the payment request button utilises the PaymentRequest API, so
Apple Pay in Safari, a (default) purple browser button in Chrome, etc. So I
imagine so.

------
w4
After skimming the docs, I'm not sure why you'd want to choose Checkout over
Elements in a lot of situations, other than getting some great design work for
free with Checkout. The dev time to implement Elements doesn't look _that_
different from the new Checkout, and Elements doesn't require you to redirect
your customers away from your site or force a multi-page checkout experience,
which is generally associated with lower conversion rates. This also feels
really ecommerce oriented, and less friendly to SaaS MVPs, etc.

The old version of Checkout was so dead simple to implement that it had a
clear value prop over Elements, but at first blush this seems like a tossup.
Braintree's js embed also came to mind after seeing this, since it's a bit
less refined than the old version of Checkout, but it's simpler than this
solution, and keeps users on your site.

EDIT: After looking closer at the docs, it does indeed look like you'd want to
use Elements for SaaS or similar digital products. Unless I'm misunderstanding
something, after the user completes their payment on Checkout, Stripe sends
you the payment via a webhook, or you have to poll for the transaction. That's
a big step back from the old version of Checkout, where you would send a token
through to your server from the checkout form, and find out immediately if the
payment went through or not so that you could proceed accordingly. This looks
nice for ecommerce sites where delayed fulfillment is expected, but not for
user subscriptions or account upgrades.

------
plantain
Glad to see "Support for iDEAL, SEPA Debit, and other European payment
methods" is on the roadmap - the world is bigger than the US, and many
European's don't have cards. Hopefully they don't continue requiring you to
obtain your own SEPA creditor identifier, as that simply isn't available to
many non-EU companies wanting to trade in the EU. We are integrating Braintree
currently just to support SEPA for European customers...

~~~
ngrilly
We are in Europe (France) and are using Stripe with SEPA Direct Debit.

~~~
lucasverra
how much more steps does a final user need to make in order to complete a one
shot payment (vs CCard) ?

With instant (bank) payment coming in september, SEPA might be the option of
choice in EU (also Paris here ️)

~~~
AnssiH
At least here in Finland SEPA direct debit is usually disabled by default for
extra security* as domestic shops do not use it (we have redirect-based bank
buttons instead) and with foreign ones one usually uses card instead.

So not really an option of choice in entire EU unless something changes - you
don't want to tell your customers to enable something on their bank account
first before purchase.

But VISA/MC debit cards are extremely common here, so I guess card+SEPADD
might cover most people in EU. Though I think many people here are vary of
entering their card details online as they are not used to that (then again, I
guess the advent of Netflix and others must've made more people familiar with
that).

* IIRC you just need the user's IBAN and consent, and IBANs are not really private as people use them to make payments to each other.

------
pupppet
Wasn't the advantage of the original checkout the customer didn't have to
leave your site?

~~~
jenanwise
We found that legacy version of Checkout did not allow us to build a number of
features that users have been asking about for years—including instantly
turning on Apple Pay without needing you to register with Apple directly,
supporting a unified API that can work with redirect-based payment methods
such as iDEAL (coming soon), and a bunch more features that we're working on.
If you're looking for something embedded in your page, we have Elements:
[https://stripe.com/docs/stripe-
js/elements/quickstart](https://stripe.com/docs/stripe-js/elements/quickstart)

~~~
GordonS
Plenty Stripe users don't care a jot about Apple Pay, especially those in the
B2B space - I consider it a real loss to have customers be redirected vs just
showing a modal. As another commenter mentioned, it also means another step
for the end user.

I understand the desire for a converged Checkout API and UI, but I still kind
of wish there were _2_ options - modal or redirect.

~~~
ycombinateur
I so unbelievably strongly agree. There should also be a pop-up version of
checkout instead of a redirect.

The only two features I care about are (i) a simple popup to accept cc details
(ii) an aesthetically pleasing interface

------
chrispadfield
Any support for EU VAT handling coming to this? A lot of work seems to have
gone into European support here - odd that VAT handling not part of that.

~~~
jwr
The EU is not a priority for Stripe, which I think is very unfortunate. They
only support a subset of countries. I would have switched from Braintree a
long time ago if only Stripe were available in Poland.

Braintree works, but is a source of ongoing cost, as it is impossible to do
automatic reconciliation. There is no way to connect the (batched) payouts
that you get with transactions/invoices. A major problem in the EU.

Also, Braintree has a terrible risk-review approach, where if you trigger a
risk review (for example, by growing), they will freeze your accounts for an
indefinite amount of time (from weeks to months) and demand various documents
from you.

~~~
felixhuber
(I work at Stripe.)

We are actively working on Poland. I would love to learn more about your
business and potentially get you early access. Please contact me directly. My
email is felix at stripe com

------
mahesh_rm
Please, DO NOT force users to update to this new version. I like the old, and
I want to keep using the old.

------
ricardobeat
Funny that just as 3D Secure and other payment UIs are moving towards being
embedded, vs redirect, they decide to go in the opposite direction.

~~~
bpicolo
They have the embedded option as well: [https://stripe.com/docs/stripe-
js#stripejs-and-elements](https://stripe.com/docs/stripe-js#stripejs-and-
elements)

This change seems to solidify the distinction between Stripe-hosted vs self-
hosted

~~~
nailer
Anyone got any thoughts on when to use Elements vs the new Checkout?

~~~
stickfigure
Unless you're a Big Stodgy Corporation that must have exactly your own custom
flow, always prefer the Stripe Checkout flow (either new or old) over
Elements. Checkout is easier to implement, provides a polished UX, and users
are more likely to trust it over your custom flow.

------
punnerud
3 days after I launched a new site with Stripe-payment. I love that they
removed the “open in new tab for payment” on mobile phones. Maybe I have to do
some rewriting before the weekend..

------
impostervt
I have a form that users fill out for one of my side projects with normal
credit card info. A few users over the years have requested paypal, but not so
many that I felt compelled to dive into their API mess.

But now I probably need to make a change. Stripe Checkout integration looks
pretty similar to Paypal Checkout (though with better docs and a more up to
date NPM package), but I wonder if I shouldn't just bite the bullet if there
are so man y more customers that would use paypal...

------
Aeolun
Whenever I see these kinds of changes I wonder if the company has any idea of
why people use their product.

Given the comments here, either Stripe has no idea that people use Checkout
for the single page experience, or they do know it and are just happy to nuke
50% of their customer base for reasons.

It’s just a different product. But it’s being released as a new version of an
old one.

------
PatrolX
The embeddable snippets don't work in an iframe, pops out and exposes the
stripe domain which totally sucks.

~~~
brlewis
I bet the frame busting is deliberate. As a consumer I prefer seeing the
Stripe padlock on the current page...a reason this commenter gives for
preferring paypal:
[https://news.ycombinator.com/item?id=19741689](https://news.ycombinator.com/item?id=19741689)

~~~
PatrolX
Yep, you're right they have it locked down tight.

I tried some anti-frame-busting javascript and nginx return 204 trickery which
prevents the top redirect but it still returns a Stripe error within the
iframe complaining about not being able to redirect.

------
stevoski
Looking good, Stripe. I love how you are on to things like SCA well in
advance, making life easier for us merchants.

Now if you’d just finally add some VAT handling to Stripe Checkout, and to
Stripe overall...then us merchants in the EU will be able to use these nice
Checkout pages you create.

------
somada141
I've been looking a fair bit into these embedded checkout things recently and
I gotta say that braintree is far-far inferior to Stripe in terms of
offerings, usability, API, etc.

There's things one would consider no-brainers for this type of service like
discount codes with an expiry date and maximum number of uses that Braintree
doesn't offer but their saving grace is PayPal support that, for better or for
worse, is a must for most businesses.

The end result is that a dev needs to create a custom checkout UI integrating
both services and having their customers split among the two ecosystems which
is just gross :).

------
hendry
I made a video about it whilst in preview:
[https://www.youtube.com/watch?v=0zFcxszKHHw](https://www.youtube.com/watch?v=0zFcxszKHHw)

They now allow email to be prefilled. Very slick when using an Apple device.

Wish they did a slightly better job comparing the old and new on
[https://stripe.com/docs/payments/checkout](https://stripe.com/docs/payments/checkout)

------
gstar_bonus
If people are looking for a hosted cart, why not go with a more generic
provider instead, like 2Checkout or Fastspring? See:
[https://www.2checkout.com/digital-
commerce/](https://www.2checkout.com/digital-commerce/)

Benefits: 40+ payment methods (including PayPal), full tax management
(including filings), more customization options, etc.

Seems like Stripe is behind the 8 ball with this one. Or what am I missing?

------
Zaheer
One of the pain points of the last Checkout page was that it required server-
side code. This new version can be used with fully static websites out of the
box!

------
tnolet
My question, does it support Stripe Billing out of the box? Would be great to
have plans, billing etc. as a part of this sleek experience.

~~~
athyuttamre
It does! We support plans and trials, with some limitations that we're working
on removing soon.

~~~
philjackson
Does it support tiers?

------
tomschwiha
I switched today to the new Checkout and it worked flawless (took me ~1.5
hours).

Let's see how people react to the new checkout. However PayPal is still more
common for us (1. classic bankwire, 2. PayPal, 3. Credit card, 4.
Sofort/Klarna). Target audience for the ranking is a high order value
manifacturing German B2B shop.

------
tschellenbach
the old version seems better for my use case of just accepting credit cards...

------
kristianc
Interested to see what the PSD2/SCA implementation looks like. Stripe will go
out of their way to avoid adding friction, but the requirements are not
trivial.

~~~
jenanwise
You’re right, they are definitely not trivial :) We’ve done a lot of work to
make Checkout automatically support PSD2/SCA compliance out of the box — we’ll
trigger 3DS only when it’s required. More here: [https://stripe.com/en-
US/payments/strong-customer-authentica...](https://stripe.com/en-
US/payments/strong-customer-authentication)

------
fireatwill
Does anyone know how easy this is to integrate into React? I'm not seeing
React support for this new version in their docs.

~~~
philip1209
Stripe hosts the whole checkout page with this. So, you generate a link in the
js client library and then redirect to it.

------
mwerty
I wonder if/when they will launch a consumer product like paypal/venmo.

------
bamorgan
I could see Apple buying Stripe.

------
twodayslate
Have they figured out how to support Apple Pay and subscriptions?

~~~
CamelCaseName
Yes.

>...the new version of Checkout is a smart payment page hosted by Stripe that
creates payments or subscriptions. It supports Apple Pay...

Learn more at:

[https://stripe.com/docs/apple-pay](https://stripe.com/docs/apple-pay)

[https://stripe.com/docs/payments/checkout/migration#client-s...](https://stripe.com/docs/payments/checkout/migration#client-
subscriptions)

[https://stripe.com/docs/payments/checkout/migration#api-
subs...](https://stripe.com/docs/payments/checkout/migration#api-
subscriptions)

------
solarkraft
Disclaimer: Slightly off-topic rant about why I as a consumer will always
avoid Stripe:

Will they now not lie about wire transfer being US-Only and accept the debit
card they say they accept?

My one interaction with Stripe was absolutely horrible, lost my vendor which
is otherwise great a (subscription) sale and will take a lot of effort to
right.

Edit: Right, it wasn't just errors, but it just didn't work with any message.
One time the credit card number field just became red and shook.

Yes, I'm outside of the US. But was using a card from a provider that was
listed as supported. I found no qualifying statements anywhere (in fact I
found about no statements meant for end users digging through the Stripe
website) and help texts on the page were non existent or utterly useless.

Days of pain trying to pay a damn invoice. The folks at Notion were nice
enough to void it, but I ended up switching to dynalist.io for my notes anyway
because my trust was sustainably broken.

This experience gives me the impression that Stripe are utterly incompetent in
their core business, accepting money.

~~~
edwinwee
Weird…sorry about that. I'd like to look into why it was declined. Could you
email me the date you tried, card last 4, card brand, and expiration date? If
you can dig up that interaction and forward it to me as well, that would be
helpful. edwin@stripe.com

