Driftwatch

Stripe / Stripe API /

Breakingdirection flip: their tools call this safe

preferred_settlement_speed is no longer accepted

What changed

Usually ignored rather than rejected, so the call succeeds and does something subtly different.

Affects payment_method_options.us_bank_account.preferred_settlement_speed on POST /v1/payment_intents. Grep for it: nothing else will tell you.

Who is affected

Code that sends POST /v1/payment_intents (payment_method_options.us_bank_account.preferred_settlement_speed).

Before and after

WhereBeforeAfter
POST /v1/payment_intents · payment_method_options.us_bank_account.preferred_settlement_speedpresentabsent
POST /v1/payment_intents/{intent} · payment_method_options.us_bank_account.preferred_settlement_speedpresentabsent
POST /v1/payment_intents/{intent}/confirm · payment_method_options.us_bank_account.preferred_settlement_speedpresentabsent

Code that breaks

await client.post("/v1/payment_intents", {
  // preferred_settlement_speed is now ignored, not rejected
  preferred_settlement_speed: value,
});

Based on Stripe’s published API specification. How severity is decided.