Driftwatch

Stripe / Stripe API /

Breakingdirection flip: their tools call this safe

tax_type can now return "mass_transit_parking_tax", "parking_tax"

What changed

Producer-side tools call this additive. It breaks exhaustive switches, strict parsers and generated client enums.

Affects tax_type on tax_rate reachable from 520 operations.

New values: mass_transit_parking_tax, parking_tax.

can now return "mass_transit_parking_tax", "parking_tax"

Who is affected

Code that reads Stripe's tax_rate objects, used by 520 Stripe operations.

Before and after

WhereBeforeAfter
tax_rate.tax_type"amusement_tax", "communications_tax", "gst", "hst", "igst", "jct", "lease_tax", "pst", "qst", "retail_delivery_fee", "rst", "sales_tax", "service_tax", "vat""amusement_tax", "communications_tax", "gst", "hst", "igst", "jct", "lease_tax", "mass_transit_parking_tax", "parking_tax", "pst", "qst", "retail_delivery_fee", "rst", "sales_tax", "service_tax", "vat"
tax_product_registrations_resource_country_options_united_states.type"local_amusement_tax", "local_lease_tax", "state_communications_tax", "state_retail_delivery_fee", "state_sales_tax""local_amusement_tax", "local_lease_tax", "mass_transit_parking_tax", "parking_tax", "state_communications_tax", "state_retail_delivery_fee", "state_sales_tax"
tax_product_resource_line_item_tax_rate_details.tax_type"amusement_tax", "communications_tax", "gst", "hst", "igst", "jct", "lease_tax", "pst", "qst", "retail_delivery_fee", "rst", "sales_tax", "service_tax", "vat""amusement_tax", "communications_tax", "gst", "hst", "igst", "jct", "lease_tax", "mass_transit_parking_tax", "parking_tax", "pst", "qst", "retail_delivery_fee", "rst", "sales_tax", "service_tax", "vat"
tax_product_resource_tax_rate_details.tax_type"amusement_tax", "communications_tax", "gst", "hst", "igst", "jct", "lease_tax", "pst", "qst", "retail_delivery_fee", "rst", "sales_tax", "service_tax", "vat""amusement_tax", "communications_tax", "gst", "hst", "igst", "jct", "lease_tax", "mass_transit_parking_tax", "parking_tax", "pst", "qst", "retail_delivery_fee", "rst", "sales_tax", "service_tax", "vat"

Code that breaks

switch (response.tax_type) {
  // existing branches …
  // no branch for "mass_transit_parking_tax"
  // no branch for "parking_tax"
  default:
    throw new Error("unexpected tax_type");
}

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