Paiement Stripe : prélèvement SEPA

Bonjour,
J’ai tenté d’utiliser le prélèvement SEPA dans Stripe mais j’ai le message d’erreur ci-dessous.
Pourriez-vous me dire s’il est possible d’utiliser cette fonction ?
Je vous remercie

Yann Burlot


Traceback (most recent call last):
File « apps/payments/payments/payment_gateways/doctype/stripe_settings/webhook_events/stripe_setup.py », line 61, in handle_webhook
response = reference_document.run_method(« on_payment_authorized », status=status, reference_no=None) or response
File « apps/frappe/frappe/model/document.py », line 979, in run_method
out = Document.hook(fn)(self, *args, **kwargs)
File « apps/frappe/frappe/model/document.py », line 1348, in composer
return composed(self, method, *args, **kwargs)
File « apps/frappe/frappe/model/document.py », line 1330, in runner
add_to_return_value(self, fn(self, *args, **kwargs))
File « apps/frappe/frappe/model/document.py », line 976, in fn
return method_object(*args, **kwargs)
File « apps/erpnext/erpnext/accounts/doctype/payment_request/payment_request.py », line 511, in on_payment_authorized
self.run_method(« set_payment_method_registered »)
File « apps/frappe/frappe/model/document.py », line 979, in run_method
out = Document.hook(fn)(self, *args, **kwargs)
File « apps/frappe/frappe/model/document.py », line 1348, in composer
return composed(self, method, *args, **kwargs)
File « apps/frappe/frappe/model/document.py », line 1330, in runner
add_to_return_value(self, fn(self, *args, **kwargs))
File « apps/frappe/frappe/model/document.py », line 976, in fn
return method_object(*args, **kwargs)
File « apps/erpnext/erpnext/accounts/doctype/payment_request/payment_request.py », line 519, in set_payment_method_registered
self.process_payment_immediately()
File « apps/erpnext/erpnext/accounts/doctype/payment_request/payment_request.py », line 189, in process_payment_immediately
return self.get_immediate_payment_for_gateway(self.payment_gateway)
File « apps/erpnext/erpnext/accounts/doctype/payment_request/payment_request.py », line 210, in get_immediate_payment_for_gateway
frappe.throw(_(« Payment cannot be processed immediately for this payment request. »))
File « apps/frappe/frappe/init.py », line 516, in throw
msgprint(
File « apps/frappe/frappe/init.py », line 484, in msgprint
_raise_exception()
File « apps/frappe/frappe/init.py », line 431, in _raise_exception
raise raise_exception(msg)
frappe.exceptions.ValidationError: Le paiement ne peut pas être récolté automatiquement pour cette demande de paiement.

{
« id »: « evt_1MuD8yGsHfepjQDgjtvYxfgl »,
« object »: « event »,
« api_version »: « 2022-11-15 »,
« created »: 1680865668,
« data »: {
« object »: {
« id »: « seti_1MuD7KGsHfepjQDg9vgOrxCE »,
« object »: « setup_intent »,
« application »: null,
« automatic_payment_methods »: null,
« cancellation_reason »: null,
« client_secret »: « *** Redacted per Stripe’s guidelines *** »,
« created »: 1680865566,
« customer »: « cus_NfYDVKR6yiTOZ1 »,
« description »: null,
« flow_directions »: null,
« last_setup_error »: null,
« latest_attempt »: « setatt_1MuD8yGsHfepjQDgnwtFgV5b »,
« livemode »: false,
« mandate »: « mandate_1MuD8yGsHfepjQDgpFm3kFZs »,
« metadata »: {
« reference_name »: « ACC-PRQ-2023-04-07-00004 »,
« reference_doctype »: « Payment Request »
},
« next_action »: null,
« on_behalf_of »: null,
« payment_method »: « pm_1MuD8xGsHfepjQDg7imzxqwS »,
« payment_method_options »: {
« card »: {
« mandate_options »: null,
« network »: null,
« request_three_d_secure »: « automatic »
}
},
« payment_method_types »: [
« card »,
« sepa_debit »
],
« single_use_mandate »: null,
« status »: « succeeded »,
« usage »: « off_session »
}
},
« livemode »: false,
« pending_webhooks »: 1,
« request »: {
« id »: « req_HMl8OJY7jhhGVt »,
« idempotency_key »: « b3d865fc-99a8-4acd-9195-c6c0540fb6a0 »
},
« type »: « setup_intent.succeeded »
}

Bonjour Yann,

On a refondu l’intégration Stripe il y a un peu moins de deux mois, et nous avons uniquement testé les prélèvements automatiques par carte, pas SEPA. Ces derniers n’étaient tout simplement pas disponibles avec l’API Stripe utilisée avant.

Merci beaucoup encore une fois d’avoir pris le temps de rapporter ce bug.
Il est corrigé dans la dernière version de l’application Payments.

Corentin