> No failed API calls (as far as I could tell).
I can't help but wonder whether that "as far as I could tell" is carrying a lot more weight than it might first appear.
Stripe's documentation under "Collect taxes for recurring payments" explains,
Creating or updating a subscription that causes an immediate invoice and payment attempt errors with an HTTP status 400 response. Updating a subscription that does not cause an immediate invoice or payment attempt returns an HTTP status 200 response. However, the customer location validation happens later asynchronously when the invoice is finalized. If the customer location is invalid during invoice finalization, Stripe sends a invoice.finalization_failed webhook. If you don’t take any action, the invoice remains in a draft state.
Which at least suggests that Stripe's API will, in fact, inform you of invoices that fail for precisely this condition.
So is it at least possible that the author "built out [their] Stripe Tax integration" either without implementing what would seem offhand to be an extremely important webhook, or implementing it but not surfacing its results in a timely, actionable way?