What changed
Usually ignored rather than rejected, so the call succeeds and does something subtly different.
Affects amount on POST /v1/terminal/refunds. Grep for it: nothing else will tell you.
Who is affected
Code that sends POST /v1/terminal/refunds (amount).
Before and after
| Where | Before | After |
|---|---|---|
| POST /v1/terminal/refunds · amount | present | absent |
| POST /v1/terminal/refunds · charge | present | absent |
| POST /v1/terminal/refunds · metadata | present | absent |
| POST /v1/terminal/refunds · payment_intent | present | absent |
| POST /v1/terminal/refunds · reason | present | absent |
| POST /v1/terminal/refunds · refund_application_fee | present | absent |
| POST /v1/terminal/refunds · reverse_transfer | present | absent |
Code that breaks
await client.post("/v1/terminal/refunds", {
// amount is now ignored, not rejected
amount: value,
});Based on Stripe’s published API specification. How severity is decided.