gobl 0.23.0 → 0.24.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/data/regimes/ae.json +49 -83
  3. data/data/regimes/at.json +58 -69
  4. data/data/regimes/be.json +65 -76
  5. data/data/regimes/br.json +83 -54
  6. data/data/regimes/ca.json +3 -3
  7. data/data/regimes/ch.json +62 -62
  8. data/data/regimes/co.json +65 -70
  9. data/data/regimes/de.json +56 -83
  10. data/data/regimes/el.json +74 -73
  11. data/data/regimes/es.json +127 -88
  12. data/data/regimes/fr.json +64 -72
  13. data/data/regimes/gb.json +54 -68
  14. data/data/regimes/ie.json +172 -0
  15. data/data/regimes/it.json +77 -79
  16. data/data/regimes/mx.json +58 -81
  17. data/data/regimes/nl.json +55 -70
  18. data/data/regimes/pl.json +40 -364
  19. data/data/regimes/pt.json +66 -64
  20. data/data/regimes/se.json +215 -0
  21. data/data/regimes/sg.json +119 -0
  22. data/data/regimes/us.json +0 -58
  23. data/lib/generated/gobl/bill/delivery.rb +4 -1
  24. data/lib/generated/gobl/bill/invoice.rb +4 -1
  25. data/lib/generated/gobl/bill/line.rb +5 -0
  26. data/lib/generated/gobl/bill/order.rb +4 -1
  27. data/lib/generated/gobl/bill/ordering.rb +5 -0
  28. data/lib/generated/gobl/bill/payment.rb +4 -1
  29. data/lib/generated/gobl/org/attachment.rb +0 -5
  30. data/lib/generated/gobl/org/document_ref.rb +6 -1
  31. data/lib/generated/gobl/org/item.rb +5 -0
  32. data/lib/generated/gobl/org/person.rb +17 -2
  33. data/lib/generated/gobl/org/unit.rb +9 -0
  34. data/lib/generated/gobl/tax/category_def.rb +11 -1
  35. data/lib/generated/gobl/tax/category_total.rb +4 -0
  36. data/lib/generated/gobl/tax/combo.rb +8 -3
  37. data/lib/generated/gobl/tax/key_def.rb +36 -0
  38. data/lib/generated/gobl/tax/rate_def.rb +9 -14
  39. data/lib/generated/gobl/tax/rate_total.rb +5 -5
  40. data/lib/generated/gobl/tax/rate_value_def.rb +1 -6
  41. data/lib/generated/gobl/tax/scenario.rb +5 -0
  42. data/lib/gobl/version.rb +1 -1
  43. metadata +6 -2
data/data/regimes/el.json CHANGED
@@ -12,64 +12,6 @@
12
12
  "currency": "EUR",
13
13
  "tax_scheme": "VAT",
14
14
  "calculator_rounding_rule": "currency",
15
- "tags": [
16
- {
17
- "schema": "bill/invoice",
18
- "list": [
19
- {
20
- "key": "simplified",
21
- "name": {
22
- "de": "Vereinfachte Rechnung",
23
- "en": "Simplified Invoice",
24
- "es": "Factura Simplificada",
25
- "it": "Fattura Semplificata"
26
- },
27
- "desc": {
28
- "de": "Wird für B2C-Transaktionen verwendet, wenn die Kundendaten nicht verfügbar sind. Bitte wenden Sie sich an die örtlichen Behörden, um die Grenzwerte zu ermitteln.",
29
- "en": "Used for B2C transactions when the client details are not available, check with local authorities for limits.",
30
- "es": "Usado para transacciones B2C cuando los detalles del cliente no están disponibles, consulte con las autoridades locales para los límites.",
31
- "it": "Utilizzato per le transazioni B2C quando i dettagli del cliente non sono disponibili, controllare con le autorità locali per i limiti."
32
- }
33
- },
34
- {
35
- "key": "reverse-charge",
36
- "name": {
37
- "de": "Umkehr der Steuerschuld",
38
- "en": "Reverse Charge",
39
- "es": "Inversión del Sujeto Pasivo",
40
- "it": "Inversione del soggetto passivo"
41
- }
42
- },
43
- {
44
- "key": "self-billed",
45
- "name": {
46
- "de": "Rechnung durch den Leistungsempfänger",
47
- "en": "Self-billed",
48
- "es": "Facturación por el destinatario",
49
- "it": "Autofattura"
50
- }
51
- },
52
- {
53
- "key": "customer-rates",
54
- "name": {
55
- "de": "Kundensätze",
56
- "en": "Customer rates",
57
- "es": "Tarifas aplicables al destinatario",
58
- "it": "Aliquote applicabili al destinatario"
59
- }
60
- },
61
- {
62
- "key": "partial",
63
- "name": {
64
- "de": "Teilweise",
65
- "en": "Partial",
66
- "es": "Parcial",
67
- "it": "Parziale"
68
- }
69
- }
70
- ]
71
- }
72
- ],
73
15
  "scenarios": [
74
16
  {
75
17
  "schema": "bill/invoice",
@@ -109,12 +51,64 @@
109
51
  "el": "Φόρος προστιθέμενης αξίας",
110
52
  "en": "Value Added Tax"
111
53
  },
112
- "rates": [
54
+ "keys": [
113
55
  {
114
56
  "key": "standard",
57
+ "name": {
58
+ "en": "Standard"
59
+ }
60
+ },
61
+ {
62
+ "key": "zero",
63
+ "name": {
64
+ "en": "Zero"
65
+ }
66
+ },
67
+ {
68
+ "key": "reverse-charge",
69
+ "name": {
70
+ "en": "Reverse charge"
71
+ },
72
+ "no_percent": true
73
+ },
74
+ {
75
+ "key": "exempt",
76
+ "name": {
77
+ "en": "Exempt"
78
+ },
79
+ "no_percent": true
80
+ },
81
+ {
82
+ "key": "export",
83
+ "name": {
84
+ "en": "Export"
85
+ },
86
+ "no_percent": true
87
+ },
88
+ {
89
+ "key": "intra-community",
90
+ "name": {
91
+ "en": "Intra-community"
92
+ },
93
+ "no_percent": true
94
+ },
95
+ {
96
+ "key": "outside-scope",
97
+ "name": {
98
+ "en": "Outside scope"
99
+ },
100
+ "no_percent": true
101
+ }
102
+ ],
103
+ "rates": [
104
+ {
105
+ "rate": "general",
106
+ "keys": [
107
+ "standard"
108
+ ],
115
109
  "name": {
116
110
  "el": "Κανονικός συντελεστής",
117
- "en": "Standard rate"
111
+ "en": "General rate"
118
112
  },
119
113
  "values": [
120
114
  {
@@ -123,7 +117,10 @@
123
117
  ]
124
118
  },
125
119
  {
126
- "key": "reduced",
120
+ "rate": "reduced",
121
+ "keys": [
122
+ "standard"
123
+ ],
127
124
  "name": {
128
125
  "el": "Μειωμένος συντελεστής",
129
126
  "en": "Reduced rate"
@@ -135,7 +132,10 @@
135
132
  ]
136
133
  },
137
134
  {
138
- "key": "super-reduced",
135
+ "rate": "super-reduced",
136
+ "keys": [
137
+ "standard"
138
+ ],
139
139
  "name": {
140
140
  "el": "Υπερμειωμένος συντελεστής",
141
141
  "en": "Super-reduced rate"
@@ -147,7 +147,10 @@
147
147
  ]
148
148
  },
149
149
  {
150
- "key": "standard+island",
150
+ "rate": "general+island",
151
+ "keys": [
152
+ "standard"
153
+ ],
151
154
  "name": {
152
155
  "el": "Κανονικός συντελεστής (Νησί)",
153
156
  "en": "Standard rate (Island)"
@@ -159,7 +162,10 @@
159
162
  ]
160
163
  },
161
164
  {
162
- "key": "reduced+island",
165
+ "rate": "general+island",
166
+ "keys": [
167
+ "standard"
168
+ ],
163
169
  "name": {
164
170
  "el": "Μειωμένος συντελεστής (Νησί)",
165
171
  "en": "Reduced rate (Island)"
@@ -171,7 +177,10 @@
171
177
  ]
172
178
  },
173
179
  {
174
- "key": "super-reduced+island",
180
+ "rate": "super-reduced+island",
181
+ "keys": [
182
+ "standard"
183
+ ],
175
184
  "name": {
176
185
  "el": "Υπερμειωμένος συντελεστής (Νησί)",
177
186
  "en": "Super-reduced rate (Island)"
@@ -181,14 +190,6 @@
181
190
  "percent": "4%"
182
191
  }
183
192
  ]
184
- },
185
- {
186
- "key": "exempt",
187
- "name": {
188
- "el": "Απαλλαγή",
189
- "en": "Exempt"
190
- },
191
- "exempt": true
192
193
  }
193
194
  ],
194
195
  "sources": [
data/data/regimes/es.json CHANGED
@@ -12,57 +12,6 @@
12
12
  {
13
13
  "schema": "bill/invoice",
14
14
  "list": [
15
- {
16
- "key": "simplified",
17
- "name": {
18
- "de": "Vereinfachte Rechnung",
19
- "en": "Simplified Invoice",
20
- "es": "Factura Simplificada",
21
- "it": "Fattura Semplificata"
22
- },
23
- "desc": {
24
- "de": "Wird für B2C-Transaktionen verwendet, wenn die Kundendaten nicht verfügbar sind. Bitte wenden Sie sich an die örtlichen Behörden, um die Grenzwerte zu ermitteln.",
25
- "en": "Used for B2C transactions when the client details are not available, check with local authorities for limits.",
26
- "es": "Usado para transacciones B2C cuando los detalles del cliente no están disponibles, consulte con las autoridades locales para los límites.",
27
- "it": "Utilizzato per le transazioni B2C quando i dettagli del cliente non sono disponibili, controllare con le autorità locali per i limiti."
28
- }
29
- },
30
- {
31
- "key": "reverse-charge",
32
- "name": {
33
- "de": "Umkehr der Steuerschuld",
34
- "en": "Reverse Charge",
35
- "es": "Inversión del Sujeto Pasivo",
36
- "it": "Inversione del soggetto passivo"
37
- }
38
- },
39
- {
40
- "key": "self-billed",
41
- "name": {
42
- "de": "Rechnung durch den Leistungsempfänger",
43
- "en": "Self-billed",
44
- "es": "Facturación por el destinatario",
45
- "it": "Autofattura"
46
- }
47
- },
48
- {
49
- "key": "customer-rates",
50
- "name": {
51
- "de": "Kundensätze",
52
- "en": "Customer rates",
53
- "es": "Tarifas aplicables al destinatario",
54
- "it": "Aliquote applicabili al destinatario"
55
- }
56
- },
57
- {
58
- "key": "partial",
59
- "name": {
60
- "de": "Teilweise",
61
- "en": "Partial",
62
- "es": "Parcial",
63
- "it": "Parziale"
64
- }
65
- },
66
15
  {
67
16
  "key": "copy",
68
17
  "name": {
@@ -263,21 +212,61 @@
263
212
  "desc": {
264
213
  "en": "Known in Spanish as \"Impuesto sobre el Valor Añadido\" (IVA), is a consumption tax\napplied to the purchase of goods and services. It's a tax on the value added at\neach stage of production or distribution. Spain, as a member of the European Union,\nfollows the EU's VAT Directive, but with specific rates and exemptions tailored\nto its local needs."
265
214
  },
266
- "rates": [
215
+ "keys": [
216
+ {
217
+ "key": "standard",
218
+ "name": {
219
+ "en": "Standard"
220
+ }
221
+ },
267
222
  {
268
223
  "key": "zero",
269
224
  "name": {
270
- "en": "Zero Rate",
271
- "es": "Tipo Cero"
225
+ "en": "Zero"
226
+ }
227
+ },
228
+ {
229
+ "key": "reverse-charge",
230
+ "name": {
231
+ "en": "Reverse charge"
272
232
  },
273
- "values": [
274
- {
275
- "percent": "0.0%"
276
- }
277
- ]
233
+ "no_percent": true
278
234
  },
279
235
  {
280
- "key": "standard",
236
+ "key": "exempt",
237
+ "name": {
238
+ "en": "Exempt"
239
+ },
240
+ "no_percent": true
241
+ },
242
+ {
243
+ "key": "export",
244
+ "name": {
245
+ "en": "Export"
246
+ },
247
+ "no_percent": true
248
+ },
249
+ {
250
+ "key": "intra-community",
251
+ "name": {
252
+ "en": "Intra-community"
253
+ },
254
+ "no_percent": true
255
+ },
256
+ {
257
+ "key": "outside-scope",
258
+ "name": {
259
+ "en": "Outside scope"
260
+ },
261
+ "no_percent": true
262
+ }
263
+ ],
264
+ "rates": [
265
+ {
266
+ "rate": "general",
267
+ "keys": [
268
+ "standard"
269
+ ],
281
270
  "name": {
282
271
  "en": "Standard Rate",
283
272
  "es": "Tipo General"
@@ -302,7 +291,10 @@
302
291
  ]
303
292
  },
304
293
  {
305
- "key": "standard+eqs",
294
+ "rate": "general+eqs",
295
+ "keys": [
296
+ "standard"
297
+ ],
306
298
  "name": {
307
299
  "en": "Standard Rate + Equivalence Surcharge",
308
300
  "es": "Tipo General + Recargo de Equivalencia"
@@ -321,7 +313,10 @@
321
313
  ]
322
314
  },
323
315
  {
324
- "key": "reduced",
316
+ "rate": "reduced",
317
+ "keys": [
318
+ "standard"
319
+ ],
325
320
  "name": {
326
321
  "en": "Reduced Rate",
327
322
  "es": "Tipo Reducido"
@@ -346,7 +341,10 @@
346
341
  ]
347
342
  },
348
343
  {
349
- "key": "reduced+eqs",
344
+ "rate": "reduced+eqs",
345
+ "keys": [
346
+ "standard"
347
+ ],
350
348
  "name": {
351
349
  "en": "Reduced Rate + Equivalence Surcharge",
352
350
  "es": "Tipo Reducido + Recargo de Equivalencia"
@@ -365,7 +363,10 @@
365
363
  ]
366
364
  },
367
365
  {
368
- "key": "super-reduced",
366
+ "rate": "super-reduced",
367
+ "keys": [
368
+ "standard"
369
+ ],
369
370
  "name": {
370
371
  "en": "Super-Reduced Rate",
371
372
  "es": "Tipo Superreducido"
@@ -382,7 +383,10 @@
382
383
  ]
383
384
  },
384
385
  {
385
- "key": "super-reduced+eqs",
386
+ "rate": "super-reduced+eqs",
387
+ "keys": [
388
+ "standard"
389
+ ],
386
390
  "name": {
387
391
  "en": "Super-Reduced Rate + Equivalence Surcharge",
388
392
  "es": "Tipo Superreducido + Recargo de Equivalencia"
@@ -394,14 +398,6 @@
394
398
  "surcharge": "0.5%"
395
399
  }
396
400
  ]
397
- },
398
- {
399
- "key": "exempt",
400
- "name": {
401
- "en": "Exempt",
402
- "es": "Exenta"
403
- },
404
- "exempt": true
405
401
  }
406
402
  ]
407
403
  },
@@ -415,23 +411,63 @@
415
411
  "en": "Canary Island General Indirect Tax",
416
412
  "es": "Impuesto General Indirecto Canario"
417
413
  },
418
- "rates": [
414
+ "keys": [
415
+ {
416
+ "key": "standard",
417
+ "name": {
418
+ "en": "Standard"
419
+ }
420
+ },
419
421
  {
420
422
  "key": "zero",
421
423
  "name": {
422
- "en": "Zero Rate",
423
- "es": "Tipo Cero"
424
+ "en": "Zero"
425
+ }
426
+ },
427
+ {
428
+ "key": "reverse-charge",
429
+ "name": {
430
+ "en": "Reverse charge"
424
431
  },
425
- "values": [
426
- {
427
- "percent": "0.0%"
428
- }
429
- ]
432
+ "no_percent": true
430
433
  },
431
434
  {
432
- "key": "standard",
435
+ "key": "exempt",
433
436
  "name": {
434
- "en": "Standard Rate",
437
+ "en": "Exempt"
438
+ },
439
+ "no_percent": true
440
+ },
441
+ {
442
+ "key": "export",
443
+ "name": {
444
+ "en": "Export"
445
+ },
446
+ "no_percent": true
447
+ },
448
+ {
449
+ "key": "intra-community",
450
+ "name": {
451
+ "en": "Intra-community"
452
+ },
453
+ "no_percent": true
454
+ },
455
+ {
456
+ "key": "outside-scope",
457
+ "name": {
458
+ "en": "Outside scope"
459
+ },
460
+ "no_percent": true
461
+ }
462
+ ],
463
+ "rates": [
464
+ {
465
+ "rate": "general",
466
+ "keys": [
467
+ "standard"
468
+ ],
469
+ "name": {
470
+ "en": "General Rate",
435
471
  "es": "Tipo General"
436
472
  },
437
473
  "values": [
@@ -441,7 +477,10 @@
441
477
  ]
442
478
  },
443
479
  {
444
- "key": "reduced",
480
+ "rate": "reduced",
481
+ "keys": [
482
+ "standard"
483
+ ],
445
484
  "name": {
446
485
  "en": "Reduced Rate",
447
486
  "es": "Tipo Reducido"
@@ -478,7 +517,7 @@
478
517
  "retained": true,
479
518
  "rates": [
480
519
  {
481
- "key": "pro",
520
+ "rate": "pro",
482
521
  "name": {
483
522
  "en": "Professional Rate",
484
523
  "es": "Profesionales"
@@ -503,7 +542,7 @@
503
542
  ]
504
543
  },
505
544
  {
506
- "key": "pro-start",
545
+ "rate": "pro-start",
507
546
  "name": {
508
547
  "en": "Professional Starting Rate",
509
548
  "es": "Profesionales Inicio"
@@ -516,7 +555,7 @@
516
555
  ]
517
556
  },
518
557
  {
519
- "key": "capital",
558
+ "rate": "capital",
520
559
  "name": {
521
560
  "en": "Rental or Interest Capital",
522
561
  "es": "Alquileres o Intereses de Capital"
@@ -529,7 +568,7 @@
529
568
  ]
530
569
  },
531
570
  {
532
- "key": "modules",
571
+ "rate": "modules",
533
572
  "name": {
534
573
  "en": "Modules Rate",
535
574
  "es": "Tipo Modulos"
data/data/regimes/fr.json CHANGED
@@ -11,64 +11,6 @@
11
11
  "country": "FR",
12
12
  "currency": "EUR",
13
13
  "tax_scheme": "VAT",
14
- "tags": [
15
- {
16
- "schema": "bill/invoice",
17
- "list": [
18
- {
19
- "key": "simplified",
20
- "name": {
21
- "de": "Vereinfachte Rechnung",
22
- "en": "Simplified Invoice",
23
- "es": "Factura Simplificada",
24
- "it": "Fattura Semplificata"
25
- },
26
- "desc": {
27
- "de": "Wird für B2C-Transaktionen verwendet, wenn die Kundendaten nicht verfügbar sind. Bitte wenden Sie sich an die örtlichen Behörden, um die Grenzwerte zu ermitteln.",
28
- "en": "Used for B2C transactions when the client details are not available, check with local authorities for limits.",
29
- "es": "Usado para transacciones B2C cuando los detalles del cliente no están disponibles, consulte con las autoridades locales para los límites.",
30
- "it": "Utilizzato per le transazioni B2C quando i dettagli del cliente non sono disponibili, controllare con le autorità locali per i limiti."
31
- }
32
- },
33
- {
34
- "key": "reverse-charge",
35
- "name": {
36
- "de": "Umkehr der Steuerschuld",
37
- "en": "Reverse Charge",
38
- "es": "Inversión del Sujeto Pasivo",
39
- "it": "Inversione del soggetto passivo"
40
- }
41
- },
42
- {
43
- "key": "self-billed",
44
- "name": {
45
- "de": "Rechnung durch den Leistungsempfänger",
46
- "en": "Self-billed",
47
- "es": "Facturación por el destinatario",
48
- "it": "Autofattura"
49
- }
50
- },
51
- {
52
- "key": "customer-rates",
53
- "name": {
54
- "de": "Kundensätze",
55
- "en": "Customer rates",
56
- "es": "Tarifas aplicables al destinatario",
57
- "it": "Aliquote applicabili al destinatario"
58
- }
59
- },
60
- {
61
- "key": "partial",
62
- "name": {
63
- "de": "Teilweise",
64
- "en": "Partial",
65
- "es": "Parcial",
66
- "it": "Parziale"
67
- }
68
- }
69
- ]
70
- }
71
- ],
72
14
  "scenarios": [
73
15
  {
74
16
  "schema": "bill/invoice",
@@ -106,22 +48,63 @@
106
48
  "en": "Value Added Tax",
107
49
  "fr": "Taxe sur la Valeur Ajoutée"
108
50
  },
109
- "rates": [
51
+ "keys": [
52
+ {
53
+ "key": "standard",
54
+ "name": {
55
+ "en": "Standard"
56
+ }
57
+ },
110
58
  {
111
59
  "key": "zero",
112
60
  "name": {
113
- "en": "Zero Rate"
61
+ "en": "Zero"
62
+ }
63
+ },
64
+ {
65
+ "key": "reverse-charge",
66
+ "name": {
67
+ "en": "Reverse charge"
114
68
  },
115
- "values": [
116
- {
117
- "percent": "0.0%"
118
- }
119
- ]
69
+ "no_percent": true
120
70
  },
121
71
  {
122
- "key": "standard",
72
+ "key": "exempt",
73
+ "name": {
74
+ "en": "Exempt"
75
+ },
76
+ "no_percent": true
77
+ },
78
+ {
79
+ "key": "export",
123
80
  "name": {
124
- "en": "Standard rate",
81
+ "en": "Export"
82
+ },
83
+ "no_percent": true
84
+ },
85
+ {
86
+ "key": "intra-community",
87
+ "name": {
88
+ "en": "Intra-community"
89
+ },
90
+ "no_percent": true
91
+ },
92
+ {
93
+ "key": "outside-scope",
94
+ "name": {
95
+ "en": "Outside scope"
96
+ },
97
+ "no_percent": true
98
+ }
99
+ ],
100
+ "rates": [
101
+ {
102
+ "rate": "general",
103
+ "keys": [
104
+ "standard"
105
+ ],
106
+ "name": {
107
+ "en": "General rate",
125
108
  "fr": "Taux normal"
126
109
  },
127
110
  "desc": {
@@ -136,7 +119,10 @@
136
119
  ]
137
120
  },
138
121
  {
139
- "key": "intermediate",
122
+ "rate": "intermediate",
123
+ "keys": [
124
+ "standard"
125
+ ],
140
126
  "name": {
141
127
  "en": "Intermediate rate",
142
128
  "fr": "Taux intermédiaire"
@@ -153,7 +139,10 @@
153
139
  ]
154
140
  },
155
141
  {
156
- "key": "reduced",
142
+ "rate": "reduced",
143
+ "keys": [
144
+ "standard"
145
+ ],
157
146
  "name": {
158
147
  "en": "Reduced rate",
159
148
  "fr": "Taux réduit"
@@ -170,10 +159,13 @@
170
159
  ]
171
160
  },
172
161
  {
173
- "key": "special",
162
+ "rate": "super-reduced",
163
+ "keys": [
164
+ "standard"
165
+ ],
174
166
  "name": {
175
- "en": "Special rate",
176
- "fr": "Taux particulier"
167
+ "en": "Super reduced rate",
168
+ "fr": "Taux super réduit"
177
169
  },
178
170
  "desc": {
179
171
  "en": "Reserved for medicines reimbursable by social security, sales of live animals for slaughter and charcuterie to non-taxable persons, the television license fee, certain shows and press publications registered with the Joint Commission for Publications and Press Agencies.",