15 ms·
New version of Stripe Checkout
- wallawe 8y agoI'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.
- WillPostForFood 8y agoDepends on whether your customers are buying on desktop or mobile. It is a big advantage for mobile conversions to support payment solutions like Apple and Google pay. https://www.commerce7.com/blog/how-digital-wallets-increase-mobile-conversion https://www.commerce7.com/blog/how-digital-wallets-increase-...
- jil 8y agoI also highly doubt that the Apple Pay button shows up on places where it isn't supported.
- xenospn 8y agoThe Apple Pay button is a browser feature and unless you mimic it using CSS, it will only show up if you're in a supported region with a supported device that has apple pay enabled and cards added.
- penagwin 8y agoI'll personally support this claim, on my iPhone Apple Pay is so seamless (finger over home button and done) that I'll consciously want to purchase it more. Similar story for one-click solutions such as paypal and amazon. If I don't have to get my card out then I'm far more likely to make a purchase.
- northerdome 8y ago> Finger over home button One of the best use cases for touch id. Apple pay with FaceID is so much more of a pain in the rear. I have to double click the power button, position the phone so it can see my face, then put it back over the reader. Not at all seamless.
- reaperducer 8y agoMy anecdata is from this past weekend when I had a choice of ordering from two different pizza apps. I went with the one that offers Apple Pay because the checkout process is so frictionless. When it comes to buying things online, for me I prefer Apple Pay > Stored credit card number (Amazon) > Punching in a credit card number > PayPal. For me, this is 90% about trust. Again, just one data point, but it's the only one I have.
- lucasverra 8y agoon term of UX i would go Paypal > Punching in a credit card number. Punching a cc is the worst horror UX ever in the history of life
- dilap 8y agoIf you're on a mac or a phone and not using apple pay, you're just a glutton for punishment. (Presumably the apple pay button doesn't show up if you're not on one of those.)
- intertextuality 8y agoThat's a commonly used design though. Putting integrations above the standard form itself. Many forms do this with Paypal integration instead of Apple Pay.
- jenanwise 8y agoThe 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)
- dfabulich 8y agoCan you say a word or two about why the new Checkout experience is a full-page redirect instead of a modal dialog? (I preferred the dialog.)
- jenanwise 8y agoI wrote some notes below (https://news.ycombinator.com/item?id=19740475 https://news.ycombinator.com/item?id=19740475) but TL;DR is that this lets us support a lot of features that that the legacy version never could. If you’re looking for an embedded form, Elements work great (https://stripe.com/docs/stripe-js/elements/quickstart https://stripe.com/docs/stripe-js/elements/quickstart) — you can of course pair Elements with a lightbox/modal library to get a similar experience to the legacy version of Checkout.
- tex5 8y agoSo we can build a modal version with Elements that supports all features? But Stripe removed the modal option from Checkout because features?
- zrail 8y agoA modal with Elements could support all the features that old modal Checkout supports. It would not be able to do all the things that new non-modal Checkout will be able to do in the near future.
- tex5 8y agoYou mean SCA-3DS or? The Stripe 3DS and SCA page says a modal in combination with Elements is fully supported: Pre-built modal: The Payment Intents API integrates tightly with Stripe.js and Elements to simplify the authentication process. If your Stripe integration uses handleCardPayment or handleCardAction, Stripe.js automatically handles the authentication process—displaying a modal dialog where the customer can provide the requisite information. This makes it look like we can build a modal version via Elements which fully supports SCA and 3DS through another modal. All on one page. Also, the Paymentintent docs say we have to set the viewport to mobile on our page so that the UI of Elements can handle 3DS, this makes it also look like it works on our page through a model without redirects. Otherwise Stripe would set the viewport. Does Elements fully support 3DS and SCA all on our page through modals or not?
- heavymark 8y agoNot sure I agree with that. I assume Apple Pay button will only show for customers who have Apple Pay setup/available to use, and for those customers using Apple Pay (1 click secure payment vs manually entering in card info would seem a no brainer).
- trevor-e 8y agoOthers have already mentioned that it only shows up for compatible devices, but why would you want it to show below the payment form? That means a user would start filling in the form before realizing there's an alternate payment method. That seems like bad UX to me. The only thing that's jarring to me is how the button takes the full width of the screen. This is just me nitpicking though, the design otherwise looks great!
- deleted 8y ago[deleted]
- throwayEngineer 8y agoOH! Stripe is the company that keeps bothering me about Apple Pay? I've been getting this WordPress "error" about not having Apple Pay working. I would never use an Apple product so I was wondering how I got that on my WordPress install. Now I'm curious if Stripe had better competitors?
- aeontech 8y agoThat doesn’t sound right... what does Stripe have to do with Wordpress? And if Apple Pay is not configured, it’s not going to throw an error, it just won’t show the button.
- throwayEngineer 8y agoYes, this is the condition I'm experiencing.
- askafriend 8y agoAny time Apple Pay is available, I use it. As a user, I wouldn't want it to be hidden far below the other fields since I might not notice the button and start to fill out the fields unnecessarily.
- fireatwill 8y agoDoes anyone know how easy this is to integrate into React? I'm not seeing React support for this new version in their docs.
- philip1209 8y agoStripe hosts the whole checkout page with this. So, you generate a link in the js client library and then redirect to it.
- azmenak 8y agoI've been neglecting the maintenance of the package "react-stripe-checkout" for a while and though this would be a good time to finally bring it up to date, but it appears the new version of checkout was created with a very different use case in mind. Single page, JS rendered apps don't really fit the model, and should probably use legacy Checkout or Stripe Elements.
- ianhawes 8y agoThis 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.
- danpalmer 8y ago> 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 expect this is not Stripe's decision. PayPal own Braintree, a Stripe competitor, whos unique selling point is that they also support PayPal through one API. I suspect PayPal want to keep this distinction. Without support from PayPal, I'd expect the most that Stripe could do is implement a way for you to provide extra non-Stripe payment option buttons, which would just redirect to some URL provided up front. Not a great developer experience, and not much of a UX improvement.
- stickfigure 8y agoBefore PayPal bought Braintree, they were a separate company that provided the same service (cards & paypal as an option). Presumably they did this using PayPal's APIs - I'm familiar enough with them to think it should be possible for anyone. However, those APIs are horrible and PayPal's technology platform is a trainwreck, so I can understand why they might not be rushing it out.
- manuelhuez 8y agoYou're 100% right, what Braintree does can be done using PayPal's API directly, even what Braintree calls their "in-context" PayPal payments. This is pretty much exactly what we've done at https://processout.com https://processout.com (shameless plug!)
- twodayslate 8y agoHave they figured out how to support Apple Pay and subscriptions?
- velcrovan 8y agoThey already do support both of those.
- CamelCaseName 8y agoYes. >...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-subscriptions https://stripe.com/docs/payments/checkout/migration#client-s... https://stripe.com/docs/payments/checkout/migration#api-subscriptions https://stripe.com/docs/payments/checkout/migration#api-subs...
- ricardobeat 8y agoFunny 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 8y agoThey 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
- dfabulich 8y agoElements isn't "embedded Checkout." Elements is "roll your own Checkout using Stripe's UI components."
- bpicolo 8y agoIt's more than that. The loaded JS library renders your inputs into iFrame elements (for PCI compliance). So it takes that HTML and embeds it down. Recent PCI changes added different-domain hosting for the form itself as a requirement for compliance, which is why you see providers moving to different sorts of embedding. https://stripe.com/docs/security#validating-pci-compliance https://stripe.com/docs/security#validating-pci-compliance
- nailer 8y agoAnyone got any thoughts on when to use Elements vs the new Checkout?
- jenanwise 8y agoWe've got a page for that! https://stripe.com/docs/payments https://stripe.com/docs/payments
- stickfigure 8y agoUnless 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.
- mwerty 8y agoI wonder if/when they will launch a consumer product like paypal/venmo.
- pupppet 8y agoWasn't the advantage of the original checkout the customer didn't have to leave your site?
- jenanwise 8y agoWe 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 8y agoPlenty 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 8y agoI 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
- deleted 8y ago[deleted]
- gideonatstripe 8y agoHey GordonS, Gideon from Stripe Product Ops here. I definitely hear you RE: wanting to keep an modal version. If it's not too much trouble, could you email me at gideon+hn@stripe.com so I can get some more feedback from you?
- gbanfalvi 8y agoGreat ad
- solarkraft 8y agoDisclaimer: 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 8y agoWeird…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
- kristianc 8y agoInterested 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 8y agoYou’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-authentication https://stripe.com/en-US/payments/strong-customer-authentica...
- tschellenbach 8y agothe old version seems better for my use case of just accepting credit cards...
- plantain 8y agoGlad 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 8y agoWe are in Europe (France) and are using Stripe with SEPA Direct Debit.
- lucasverra 8y agohow 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 8y agoAt 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.
- nspady 8y agoBe careful when integrating SEPA payments. The asynchronous payment confirmation and no questions asked chargeback policy for 8 weeks after the payment has cleared can be disastrous.
- mahesh_rm 8y agoPlease, DO NOT force users to update to this new version. I like the old, and I want to keep using the old.
- tnolet 8y agoMy 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 8y agoIt does! We support plans and trials, with some limitations that we're working on removing soon.
- philjackson 8y agoDoes it support tiers?
- chrispadfield 8y agoAny 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.
- jimnotgym 8y agoThis would be a big deal. Even Shopify haven't got this to work
- chrispadfield 8y agoIt's not clear to me why it's so hard. We've built it ourselves, but it's annoying having to redo the logic for smaller projects.
- jwr 8y agoThe 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 8y ago(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
- w4 8y agoAfter 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.
- bamorgan 8y agoI could see Apple buying Stripe.
- PatrolX 8y agoThe embeddable snippets don't work in an iframe, pops out and exposes the stripe domain which totally sucks.
- brlewis 8y agoI 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 8y agoYep, 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.
- cromulent 8y agoFor people impacted by SCA in a few months time (EU) this is really nice. SCA: https://stripe.com/en-US/guides/strong-customer-authentication https://stripe.com/en-US/guides/strong-customer-authenticati... 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-factbox/factbox-european-banks-hit-by-russian-money-laundering-scandal-idUSKCN1QP1P2 https://www.reuters.com/article/us-europe-moneylaundering-fa...
- chatmasta 8y agoThe first time I saw this flow I thought I was getting phished. It really is ridiculous how you get sent to a strange domain name which may or may not have the name of your card issuer in it.
- brianpgordon 8y agoExactly the point I made about Plaid's login flow- https://github.com/plaid/link/issues/68#issuecomment-440894224 https://github.com/plaid/link/issues/68#issuecomment-4408942... For the average Web user, if you don't see a name you trust with an EV cert in friendly green in your address bar, you shouldn't be giving up the keys to your bank account. Plaid and (soon formerly?) Stripe embedding their widgets into the parent page are just training users to get scammed. I'm still beating this drum because it's still a serious problem and nobody seems to care.
- iancarroll 8y agoEV is not a solution to any problem, much less this. This is a bigger problem with how the web communicates identity, I wouldn't really blame Plaid/Stripe/etc, their alternatives suck. I think Stripe is a great example for this because in many cases, it's not actually clear where your credit card/etc is going, webpages just silently pass the form fields to Stripe.js.
- stevoski 8y agoLooking 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.
- impostervt 8y agoI 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...
- punnerud 8y ago3 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..
- gstar_bonus 8y agoIf 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 8y agoOne 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!
- tomschwiha 8y agoI 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.
- Aeolun 8y agoWhenever 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.
- hendry 8y agoI 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
- somada141 8y agoI'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 :).