What Stripe owns
Our side and Zoho hold copies. The engine’s plan table, kept in the backend code, maps each Stripe product to a plan name (All-Season, Heating Only, Cooling Only, Tankless) and whether it includes protection. An event naming a product missing from that table is refused: nothing is written, it is not retried, and the failure is left for a person. A new Stripe product is therefore a code change before it is sold.