Schema ID
https://gobl.org/draft-0/tax/regime-def
Properties
| Title | Property | Type | Description |
|---|---|---|---|
| Name | name | i18n.String | Name of the tax regime. |
| Description | description | i18n.String | Introductory details about the regime. |
| Sources | sources | array of cbc.Source | References to tax authority or other relevant documentation that can be used to validate the regime’s data and to check for updates and changes in the future. |
| Time Zone | time_zone | string | Location name for the country’s central time zone. Accepted values from IANA Time Zone Database (https://iana.org/time-zones). If a country has multiple time zones, the most common or central one should be used. |
| Code | country | l10n.TaxCountryCode | Country code for tax purposes which usually coincides with the ISO 3166-1 alpha-2 code, but not always. |
| Alternative Country Codes | alt_country_codes | array of l10n.Code | Alternative localization codes that may be used to identify the tax regime in specific circumstances. |
| Zone | zone | l10n.Code | Specific Locality, region, city, province, county, or similar code inside the country, if needed. |
| Currency | currency | currency.Code | Currency used by the country. |
| Tax Scheme | tax_scheme | cbc.Code | Principal scheme of consumption tax that applies to the regime and is associated with tax IDs in some export formats such as UBL or CII. Some regimes, like the US, may not have a tax scheme and as a consequence will not use tax identities. |
| Calculator Rounding Rule | calculator_rounding_rule | cbc.Key | Rounding rule to use when calculating the tax totals. See the RoundingRule constants for more details. If not provided, the default is RoundingRulePrecise. |
| Tags | tags | array of tax.TagSet | Tags that can be applied at the document level to identify additional considerations. |
| Extensions | extensions | array of cbc.Definition | Keys that can be used for extended or extra data specific to the regime that cannot be easily determined from other GOBL structures. Typically used to define local codes for suppliers, customers, products, or tax rates. |
| Identities | identities | array of cbc.Definition | Identities used in addition to regular tax identities and specific for the regime that may be validated against. |
| Payment Means Keys | payment_means_keys | array of cbc.Definition | Payment means keys specific to the regime that extend the base set. |
| Inbox Keys | inbox_keys | array of cbc.Definition | Inbox keys specific to the regime that identify where a document should be forwarded to. |
| Scenarios | scenarios | array of tax.ScenarioSet | Sets of conditions and rules that apply to a specific document schema. These provide a more generic solution for normalization and validation of documents in regimes with specific requirements. |
| Corrections | corrections | tax.CorrectionSet | Configuration details for corrections to be used with correction options. |
| Categories | categories | array of tax.CategoryDef | List of tax categories. |
Validation Rules
| Field | Test | Validation Code / Message |
|---|---|---|
country |
| GOBL-TAX-REGIMEDEF-01Country code is required |
name |
| GOBL-TAX-REGIMEDEF-02Name is required |
time_zone |
| GOBL-TAX-REGIMEDEF-03Time zone is required |
time_zone |
| GOBL-TAX-REGIMEDEF-04Time zone must be valid |
categories |
| GOBL-TAX-REGIMEDEF-05At least one category is required |