Accept Pre-authorized debit in Canada (ACSS) with Stripe.js

In this episode, you'll learn how to confirm PaymentIntents on the front end with HTML and JavaScript to accept payment with Pre-authorized debit (PAD), also known as ACSS. This is a popular local payment method type in Canada.

Watch one of these episodes to learn the server side steps required to create a PaymentIntent using the Stripe API with one of the officially supported client libraries:

Ruby - https://youtu.be/079khYtqWPo
Python - https://youtu.be/Tgjwx-38Dic
Node.js - https://youtu.be/WG4ehXSEpz4
Go - https://youtu.be/cbsCxLDL4EY
Java - https://youtu.be/-uyXCnPXegE
.NET - https://youtu.be/mqEjRgoZWdo
PHP - https://youtu.be/BPfpPGl85tk

### Resources

ACSS PaymentIntent creation: https://gist.github.com/cjavilla-stripe/20c7d9ccd31cd3f39a4f7d0cb066b2b8
Official documentation: https://stripe.com/docs/payments/acss-debit/accept-a-payment
Code: https://github.com/stripe-samples/accept-a-payment/blob/main/custom-payment-flow/client/html/acss.js

### Table of contents

00:00 Introduction
02:12 Verify the server endpoints
02:44 Create acss.html with a form
04:03 Initialize an instance of Stripe
04:14 Add a submit handler for the form
04:26 Create the PaymentIntent on the server
05:00 Confirm the PaymentIntent on the client
05:52 Test ACSS payments
08:18 Recap

### Presenter

CJ Avilla - Developer Advocate at Stripe - https://twitter.com/cjav_dev

### Support
If you have a question, please feel free to reach out to our support team on Discord at https://stripe.com/go/developer-chat.

### Updates
Sign up to stay updated with developer news: https://go.stripe.global/dev-digest

### Feedback
If you have any feedback about this or other episodes, let us know: https://forms.gle/VjNqzRhotM2snYo88.
#Stripe #Payments