# Set the billing country and VAT number `PUT /v1/billing/tax` **In this build:** Uses a stand-in for an external service. The rules and rates are real. A VAT number is checked for its shape only: confirming it is live is a VIES lookup, which isn't connected. **Scope:** `billing.write` **CLI:** `harebox billing tax set` ## Request: `TaxDetailsInput` | Field | Type | Notes | |---|---|---| | `country` | `string or null` | Where the account is established, as an ISO 3166 code such as FR, DE or US. Empty clears it. | | `vat_id` | `string or null` | An EU business's VAT number, with its country prefix (EL for Greece). Setting one marks the account a business. | | `business` | `boolean` | The account buys as a business. Outside France, an EU business with a VAT number pays no VAT: it accounts for it itself (reverse charge). | ## Response: 200 `TaxDetails` | Field | Type | Notes | |---|---|---| | `country` | `string or null` | | | `vat_id` | `string or null` | | | `business` (required) | `boolean` | | | `treatment` (required) | `string` | fr_vat: in France, French VAT. eu_consumer_vat: a consumer elsewhere in the EU, at their country's rate. reverse_charge: an EU business outside France with a VAT number, no VAT. outside_eu: no EU VAT. fr_vat_default: no country given yet, so French VAT applies. One of: `fr_vat`, `fr_vat_default`, `eu_consumer_vat`, `reverse_charge`, `outside_eu` | | `rate_pct` (required) | `number` | The VAT rate added to each charge. | | `prices_include_vat` (required) | `boolean` | Always false: prices exclude VAT, which is added to each charge. | | `vat_id_check` | `string` | format: the VAT number has a valid shape. It isn't checked against VIES yet. One of: `none`, `format` | Errors follow [one format](../errors.html).