# Subscriptions: Support for iDEAL

**URL:** https://meta.discourse.org/t/subscriptions-support-for-ideal/169009
**Category:** Feature
**Tags:** subscriptions
**Created:** [September 10, 2020, 10:12am UTC](https://meta.discourse.org/t/subscriptions-support-for-ideal/169009 "2020-09-10T10:12:24Z")
**Posts on this page:** 10
**Page:** 1

<div class="post-metadata">

### Author: ![PatrickH](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/patrickh/32/116296_2.png) [@PatrickH](https://meta.discourse.org/u/PatrickH)
#### Post date: [September 10, 2020, 10:12am UTC](https://meta.discourse.org/t/subscriptions-support-for-ideal/169009/1 "2020-09-10T10:12:24Z")

</div>

ow can i add Ideal payment to the subscriptions page ?  
And are the prices incl. or excl. vat that we enter in the plugin ?

---

<div class="post-metadata">

### Author: ![justin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/justin/32/157614_2.png) [@justin](https://meta.discourse.org/u/justin)
#### Post date: [September 10, 2020, 2:18pm UTC](https://meta.discourse.org/t/subscriptions-support-for-ideal/169009/2 "2020-09-10T14:18:13Z")

</div>

> [@PatrickH](#):
>
> ow can i add Ideal payment to the subscriptions page

Can you clarify what this means?

> [@PatrickH](#):
>
> And are the prices incl. or excl. vat that we enter in the plugin ?

This will be up to you as this plugin serves only as an interface with Stripe, not a full on product billing service.

---

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [September 10, 2020, 2:21pm UTC](https://meta.discourse.org/t/subscriptions-support-for-ideal/169009/3 "2020-09-10T14:21:08Z")

</div>

> [@justin](#):
>
> Can you clarify what this means

iDeal is a common Dutch payment method.

> **[iDEAL | Wero payments](https://docs.stripe.com/payments/ideal)**
>
> Learn about iDEAL | Wero, a common payment method in the Netherlands.

---

<div class="post-metadata">

### Author: ![justin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/justin/32/157614_2.png) [@justin](https://meta.discourse.org/u/justin)
#### Post date: [September 10, 2020, 4:06pm UTC](https://meta.discourse.org/t/subscriptions-support-for-ideal/169009/4 "2020-09-10T16:06:12Z")

</div>

Thanks for clarifying @RGJ.

@PatrickH unfortunately this plugin only supports Stripe and it’s not on the roadmap to support any other payment processor in the future.

---

<div class="post-metadata">

### Author: ![PatrickH](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/patrickh/32/116296_2.png) [@PatrickH](https://meta.discourse.org/u/PatrickH)
#### Post date: [September 10, 2020, 4:19pm UTC](https://meta.discourse.org/t/subscriptions-support-for-ideal/169009/5 "2020-09-10T16:19:01Z")

</div>

Ok, but Stripe supports Ideal.  
So how can i make this work ?

---

<div class="post-metadata">

### Author: ![justin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/justin/32/157614_2.png) [@justin](https://meta.discourse.org/u/justin)
#### Post date: [September 10, 2020, 4:19pm UTC](https://meta.discourse.org/t/subscriptions-support-for-ideal/169009/6 "2020-09-10T16:19:55Z")

</div>

Sheesh - my apologies. I didn’t look carefully enough. Let me take a look.

EDIT: It looks like we’d have to add some extra handling for this in the plugin. Adding this is not currently on the roadmap, but if there was enough support (or a PR for it), I’d be happy to add it.

---

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [September 10, 2020, 4:26pm UTC](https://meta.discourse.org/t/subscriptions-support-for-ideal/169009/7 "2020-09-10T16:26:03Z")

</div>

@justin if you give me some basic pointers where to look then I can take a shot at a PR.

---

<div class="post-metadata">

### Author: ![justin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/justin/32/157614_2.png) [@justin](https://meta.discourse.org/u/justin)
#### Post date: [September 10, 2020, 4:31pm UTC](https://meta.discourse.org/t/subscriptions-support-for-ideal/169009/8 "2020-09-10T16:31:49Z")

</div>

On initial look at iDEAL, it looks similar to how 3DS is set up. Have a look at this commit on where those changes were made.

[https://github.com/discourse/discourse-subscriptions/commit/9491f558eadb1fcfd2ed71f58bbc2046912cd8fc?branch=9491f558eadb1fcfd2ed71f58bbc2046912cd8fc&diff=unified](https://github.com/discourse/discourse-subscriptions/commit/9491f558eadb1fcfd2ed71f58bbc2046912cd8fc?branch=9491f558eadb1fcfd2ed71f58bbc2046912cd8fc&diff=unified)

The trick is going to be handling both one-time payments and subscriptions. Both do things a little differently with PaymentIntents so there may be some special handling needed.

---

<div class="post-metadata">

### Author: ![Paracelsus](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/paracelsus/32/164912_2.png) [@Paracelsus](https://meta.discourse.org/u/Paracelsus)
#### Post date: [September 10, 2020, 6:14pm UTC](https://meta.discourse.org/t/subscriptions-support-for-ideal/169009/9 "2020-09-10T18:14:21Z")

</div>

@RGJ Since you’re hands on, check if it would be possible to add Multibanco and Klarna. 😉 (I think they support single-payments only but still)

 ![image](https://global.discourse-cdn.com/meta/original/3X/8/2/82d61ac5ee2195fae3a5d4b9e8cf6e0aca28763d.png)

---

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [September 10, 2020, 11:30pm UTC](https://meta.discourse.org/t/subscriptions-support-for-ideal/169009/10 "2020-09-10T23:30:04Z")

</div>

So I have spent some time on figuring out how to add iDeal payments. In fact, this is not about iDeal but about [SEPA Direct Debit](https://stripe.com/docs/billing/subscriptions/sepa-debit). This is an European-wide standard that can automatically and periodically charge from a debit account.

The SEPA Direct Debit flow requires a mandate, which basically is the IBAN (bank account number).

So the flow goes like this ([Set up a subscription with SEPA Direct Debit | Stripe Documentation](https://stripe.com/docs/billing/subscriptions/sepa-debit))

- client chooses “SEPA Direct Debit” as payment method

- an IBAN Stripe Element is shown and the client enters their bank account number

- In order to validate this, the customer must make a successful payment with this bank account.  
This is typically the charge for the first period in the subscription, or € 0.01.  
In the Netherlands, iDeal is used for this step. ([Accept a SEPA Direct Debit payment | Stripe Documentation](https://stripe.com/docs/sources/ideal/recurring)). If iDeal is being used, the client chooses their bank from a drop down list and is redirected to the website of that bank. They use a 2FA mechanism (mostly a QR code with an app on their smart phone, or a hardware token) to authorize the payment. Then, they are optionally redirected back to the originating website while the payment is confirmed by a direct webhook (not via the browser but directly between the payment processor and the website).  
_It looks like this is in beta and the current method of accepting SEPA payments with Stripe does not require this validation step anyway (?)_

- the client accepts the standard authorization text

- a SetupIntent object is created.

From here on, the process proceeds similar to the credit card flow.

Given the complexity of the plugin and the complexity of this process, I am unable (as in: not skillful enough) to create a PR for this. I am willing to help and provide test capacity.

Having SEPA would be a big step for the European market, where credit cards are still pretty uncommon for a large part of the consumer market (I think only 15% of the online payments is done by credit card).
