PluginProbe
SureForms – Contact Form Builder, AI Forms, Payment Form, Survey & Quiz / 2.12.8
SureForms – Contact Form Builder, AI Forms, Payment Form, Survey & Quiz v2.12.8
2.12.8 2.12.7 2.12.6 2.12.5 2.12.4 2.12.3 2.12.2 2.12.1 2.12.0 2.11.1 2.11.0 2.10.1 2.10.0 2.9.1 2.9.0 2.8.2 2.8.1 2.7.0 2.7.1 2.8.0 trunk 0.0.10 0.0.11 0.0.12 0.0.13 All 98 releases
← All changes | assets/js/stripe-payment.js +9 -0 2.11.1 → 2.12.8 View file →
@@ -282,8 +282,17 @@
282 282
283 283 // Add type-specific configuration
284 284 if ( paymentType === 'one-time' ) {
285 285 elementsConfig.captureMethod = 'manual';
286 + // Manual capture is incompatible with some account-enabled payment methods
287 + // (e.g. Bacs Direct Debit, Link, Cash App, BNPL). When any of those are enabled,
288 + // Stripe rejects the deferred elements/sessions request with HTTP 400 and the
289 + // Payment Element fails to render — which is why the card field does not load in
290 + // live mode while test mode (card-only) works. Scope the element to card so only
291 + // capture-compatible methods are offered. Apple Pay / Google Pay still appear
292 + // (they are surfaced through `card`); the methods dropped here could never be used
293 + // with manual capture anyway, so no working checkout is lost.
294 + elementsConfig.paymentMethodTypes = [ 'card' ];
286 295 }
287 296
288 297 // Create and mount payment element
289 298 const elements = stripe.elements( elementsConfig );