gobl 0.19.0 → 0.20.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/data/regimes/co.json +11 -14575
- data/data/regimes/es.json +28 -499
- data/data/regimes/it.json +9 -644
- data/data/regimes/mx.json +14 -2
- data/data/regimes/pt.json +34 -194
- data/lib/generated/gobl/bill/charge.rb +1 -1
- data/lib/generated/gobl/bill/correction_options.rb +3 -3
- data/lib/generated/gobl/bill/delivery.rb +1 -1
- data/lib/generated/gobl/bill/discount.rb +1 -1
- data/lib/generated/gobl/bill/document_reference.rb +1 -1
- data/lib/generated/gobl/bill/invoice.rb +4 -3
- data/lib/generated/gobl/bill/line.rb +1 -1
- data/lib/generated/gobl/bill/line_charge.rb +1 -1
- data/lib/generated/gobl/bill/line_discount.rb +1 -1
- data/lib/generated/gobl/bill/ordering.rb +1 -1
- data/lib/generated/gobl/bill/outlay.rb +1 -1
- data/lib/generated/gobl/bill/payment.rb +1 -1
- data/lib/generated/gobl/bill/preceding.rb +14 -3
- data/lib/generated/gobl/bill/tax.rb +1 -1
- data/lib/generated/gobl/bill/totals.rb +1 -1
- data/lib/generated/gobl/cal/date.rb +1 -1
- data/lib/generated/gobl/cal/date_time.rb +1 -1
- data/lib/generated/gobl/cal/period.rb +1 -1
- data/lib/generated/gobl/cbc/code.rb +1 -1
- data/lib/generated/gobl/{tax → cbc}/code_definition.rb +8 -3
- data/lib/generated/gobl/cbc/code_map.rb +1 -1
- data/lib/generated/gobl/cbc/key.rb +1 -1
- data/lib/generated/gobl/{tax → cbc}/key_definition.rb +17 -7
- data/lib/generated/gobl/cbc/meta.rb +1 -1
- data/lib/generated/gobl/cbc/note.rb +1 -1
- data/lib/generated/gobl/currency/code.rb +1 -1
- data/lib/generated/gobl/currency/exchange_rate.rb +1 -1
- data/lib/generated/gobl/dsig/digest.rb +1 -1
- data/lib/generated/gobl/dsig/signature.rb +1 -1
- data/lib/generated/gobl/envelope.rb +1 -1
- data/lib/generated/gobl/head/header.rb +1 -1
- data/lib/generated/gobl/head/stamp.rb +1 -1
- data/lib/generated/gobl/i18n/string.rb +1 -1
- data/lib/generated/gobl/l10n/code.rb +1 -1
- data/lib/generated/gobl/l10n/country_code.rb +1 -1
- data/lib/generated/gobl/note/message.rb +1 -1
- data/lib/generated/gobl/org/address.rb +1 -1
- data/lib/generated/gobl/org/coordinates.rb +1 -1
- data/lib/generated/gobl/org/email.rb +1 -1
- data/lib/generated/gobl/org/identity.rb +1 -1
- data/lib/generated/gobl/org/image.rb +1 -1
- data/lib/generated/gobl/org/inbox.rb +1 -1
- data/lib/generated/gobl/org/item.rb +3 -3
- data/lib/generated/gobl/org/name.rb +1 -1
- data/lib/generated/gobl/org/party.rb +3 -3
- data/lib/generated/gobl/org/person.rb +1 -1
- data/lib/generated/gobl/org/registration.rb +1 -1
- data/lib/generated/gobl/org/telephone.rb +1 -1
- data/lib/generated/gobl/org/unit.rb +1 -1
- data/lib/generated/gobl/org/website.rb +1 -1
- data/lib/generated/gobl/pay/advance.rb +1 -1
- data/lib/generated/gobl/pay/card.rb +1 -1
- data/lib/generated/gobl/pay/credit_transfer.rb +1 -1
- data/lib/generated/gobl/pay/direct_debit.rb +1 -1
- data/lib/generated/gobl/pay/due_date.rb +1 -1
- data/lib/generated/gobl/pay/instructions.rb +1 -1
- data/lib/generated/gobl/pay/online.rb +1 -1
- data/lib/generated/gobl/pay/terms.rb +1 -1
- data/lib/generated/gobl/regimes/mx/food_vouchers.rb +1 -1
- data/lib/generated/gobl/regimes/mx/food_vouchers_employee.rb +1 -1
- data/lib/generated/gobl/regimes/mx/food_vouchers_line.rb +1 -1
- data/lib/generated/gobl/regimes/mx/fuel_account_balance.rb +1 -1
- data/lib/generated/gobl/regimes/mx/fuel_account_item.rb +1 -1
- data/lib/generated/gobl/regimes/mx/fuel_account_line.rb +1 -1
- data/lib/generated/gobl/regimes/mx/fuel_account_tax.rb +1 -1
- data/lib/generated/gobl/schema/object.rb +1 -1
- data/lib/generated/gobl/tax/category.rb +1 -1
- data/lib/generated/gobl/tax/category_total.rb +1 -1
- data/lib/generated/gobl/tax/combo.rb +3 -3
- data/lib/generated/gobl/tax/correction_definition.rb +1 -1
- data/lib/generated/gobl/tax/{ext_map.rb → extensions.rb} +3 -3
- data/lib/generated/gobl/tax/identity.rb +1 -6
- data/lib/generated/gobl/tax/rate.rb +1 -1
- data/lib/generated/gobl/tax/rate_total.rb +3 -3
- data/lib/generated/gobl/tax/rate_total_surcharge.rb +1 -1
- data/lib/generated/gobl/tax/rate_value.rb +5 -5
- data/lib/generated/gobl/tax/regime.rb +13 -18
- data/lib/generated/gobl/tax/scenario.rb +1 -1
- data/lib/generated/gobl/tax/scenario_set.rb +1 -1
- data/lib/generated/gobl/tax/set.rb +1 -1
- data/lib/generated/gobl/tax/source.rb +1 -1
- data/lib/generated/gobl/tax/total.rb +1 -1
- data/lib/generated/gobl/uuid/uuid.rb +1 -1
- data/lib/gobl/operations/validation_result.rb +1 -3
- data/lib/gobl/version.rb +1 -1
- metadata +5 -6
- data/lib/generated/gobl/tax/zone.rb +0 -48
data/data/regimes/pt.json
CHANGED
@@ -65,6 +65,28 @@
|
|
65
65
|
"en": "Invoice-receipt",
|
66
66
|
"pt": "Fatura-recibo"
|
67
67
|
}
|
68
|
+
},
|
69
|
+
{
|
70
|
+
"key": "azores",
|
71
|
+
"name": {
|
72
|
+
"en": "Azores",
|
73
|
+
"pt": "Açores"
|
74
|
+
},
|
75
|
+
"desc": {
|
76
|
+
"en": "Tag for use when the invoice is issued in the Azores region with special local rates.",
|
77
|
+
"pt": "Tag para uso quando a fatura é emitida na região dos Açores com taxas locais especiais."
|
78
|
+
}
|
79
|
+
},
|
80
|
+
{
|
81
|
+
"key": "madeira",
|
82
|
+
"name": {
|
83
|
+
"en": "Madeira",
|
84
|
+
"pt": "Madeira"
|
85
|
+
},
|
86
|
+
"desc": {
|
87
|
+
"en": "Tag for use when the invoice is issued in the Madeira region with special local rates.",
|
88
|
+
"pt": "Tag para uso quando a fatura é emitida na região da Madeira com taxas locais especiais."
|
89
|
+
}
|
68
90
|
}
|
69
91
|
],
|
70
92
|
"extensions": [
|
@@ -359,15 +381,15 @@
|
|
359
381
|
},
|
360
382
|
"values": [
|
361
383
|
{
|
362
|
-
"
|
363
|
-
"
|
384
|
+
"tags": [
|
385
|
+
"azores"
|
364
386
|
],
|
365
387
|
"since": "2011-01-01",
|
366
388
|
"percent": "16.0%"
|
367
389
|
},
|
368
390
|
{
|
369
|
-
"
|
370
|
-
"
|
391
|
+
"tags": [
|
392
|
+
"madeira"
|
371
393
|
],
|
372
394
|
"since": "2011-01-01",
|
373
395
|
"percent": "22.0%"
|
@@ -389,15 +411,15 @@
|
|
389
411
|
},
|
390
412
|
"values": [
|
391
413
|
{
|
392
|
-
"
|
393
|
-
"
|
414
|
+
"tags": [
|
415
|
+
"azores"
|
394
416
|
],
|
395
417
|
"since": "2011-01-01",
|
396
418
|
"percent": "9.0%"
|
397
419
|
},
|
398
420
|
{
|
399
|
-
"
|
400
|
-
"
|
421
|
+
"tags": [
|
422
|
+
"madeira"
|
401
423
|
],
|
402
424
|
"since": "2011-01-01",
|
403
425
|
"percent": "12.0%"
|
@@ -419,15 +441,15 @@
|
|
419
441
|
},
|
420
442
|
"values": [
|
421
443
|
{
|
422
|
-
"
|
423
|
-
"
|
444
|
+
"tags": [
|
445
|
+
"azores"
|
424
446
|
],
|
425
447
|
"since": "2011-01-01",
|
426
448
|
"percent": "4.0%"
|
427
449
|
},
|
428
450
|
{
|
429
|
-
"
|
430
|
-
"
|
451
|
+
"tags": [
|
452
|
+
"madeira"
|
431
453
|
],
|
432
454
|
"since": "2011-01-01",
|
433
455
|
"percent": "5.0%"
|
@@ -457,187 +479,5 @@
|
|
457
479
|
}
|
458
480
|
]
|
459
481
|
}
|
460
|
-
],
|
461
|
-
"zones": [
|
462
|
-
{
|
463
|
-
"code": "01",
|
464
|
-
"region": {
|
465
|
-
"pt": "Aveiro"
|
466
|
-
},
|
467
|
-
"codes": {
|
468
|
-
"at-tax-country-region": "PT"
|
469
|
-
}
|
470
|
-
},
|
471
|
-
{
|
472
|
-
"code": "02",
|
473
|
-
"region": {
|
474
|
-
"pt": "Beja"
|
475
|
-
},
|
476
|
-
"codes": {
|
477
|
-
"at-tax-country-region": "PT"
|
478
|
-
}
|
479
|
-
},
|
480
|
-
{
|
481
|
-
"code": "03",
|
482
|
-
"region": {
|
483
|
-
"pt": "Braga"
|
484
|
-
},
|
485
|
-
"codes": {
|
486
|
-
"at-tax-country-region": "PT"
|
487
|
-
}
|
488
|
-
},
|
489
|
-
{
|
490
|
-
"code": "04",
|
491
|
-
"region": {
|
492
|
-
"pt": "Bragança"
|
493
|
-
},
|
494
|
-
"codes": {
|
495
|
-
"at-tax-country-region": "PT"
|
496
|
-
}
|
497
|
-
},
|
498
|
-
{
|
499
|
-
"code": "05",
|
500
|
-
"region": {
|
501
|
-
"pt": "Castelo Branco"
|
502
|
-
},
|
503
|
-
"codes": {
|
504
|
-
"at-tax-country-region": "PT"
|
505
|
-
}
|
506
|
-
},
|
507
|
-
{
|
508
|
-
"code": "06",
|
509
|
-
"region": {
|
510
|
-
"pt": "Coimbra"
|
511
|
-
},
|
512
|
-
"codes": {
|
513
|
-
"at-tax-country-region": "PT"
|
514
|
-
}
|
515
|
-
},
|
516
|
-
{
|
517
|
-
"code": "07",
|
518
|
-
"region": {
|
519
|
-
"pt": "Évora"
|
520
|
-
},
|
521
|
-
"codes": {
|
522
|
-
"at-tax-country-region": "PT"
|
523
|
-
}
|
524
|
-
},
|
525
|
-
{
|
526
|
-
"code": "08",
|
527
|
-
"region": {
|
528
|
-
"pt": "Faro"
|
529
|
-
},
|
530
|
-
"codes": {
|
531
|
-
"at-tax-country-region": "PT"
|
532
|
-
}
|
533
|
-
},
|
534
|
-
{
|
535
|
-
"code": "09",
|
536
|
-
"region": {
|
537
|
-
"pt": "Guarda"
|
538
|
-
},
|
539
|
-
"codes": {
|
540
|
-
"at-tax-country-region": "PT"
|
541
|
-
}
|
542
|
-
},
|
543
|
-
{
|
544
|
-
"code": "10",
|
545
|
-
"region": {
|
546
|
-
"pt": "Leiria"
|
547
|
-
},
|
548
|
-
"codes": {
|
549
|
-
"at-tax-country-region": "PT"
|
550
|
-
}
|
551
|
-
},
|
552
|
-
{
|
553
|
-
"code": "11",
|
554
|
-
"region": {
|
555
|
-
"pt": "Lisboa"
|
556
|
-
},
|
557
|
-
"codes": {
|
558
|
-
"at-tax-country-region": "PT"
|
559
|
-
}
|
560
|
-
},
|
561
|
-
{
|
562
|
-
"code": "12",
|
563
|
-
"region": {
|
564
|
-
"pt": "Portalegre"
|
565
|
-
},
|
566
|
-
"codes": {
|
567
|
-
"at-tax-country-region": "PT"
|
568
|
-
}
|
569
|
-
},
|
570
|
-
{
|
571
|
-
"code": "13",
|
572
|
-
"region": {
|
573
|
-
"pt": "Porto"
|
574
|
-
},
|
575
|
-
"codes": {
|
576
|
-
"at-tax-country-region": "PT"
|
577
|
-
}
|
578
|
-
},
|
579
|
-
{
|
580
|
-
"code": "14",
|
581
|
-
"region": {
|
582
|
-
"pt": "Santarém"
|
583
|
-
},
|
584
|
-
"codes": {
|
585
|
-
"at-tax-country-region": "PT"
|
586
|
-
}
|
587
|
-
},
|
588
|
-
{
|
589
|
-
"code": "15",
|
590
|
-
"region": {
|
591
|
-
"pt": "Setúbal"
|
592
|
-
},
|
593
|
-
"codes": {
|
594
|
-
"at-tax-country-region": "PT"
|
595
|
-
}
|
596
|
-
},
|
597
|
-
{
|
598
|
-
"code": "16",
|
599
|
-
"region": {
|
600
|
-
"pt": "Viana do Castelo"
|
601
|
-
},
|
602
|
-
"codes": {
|
603
|
-
"at-tax-country-region": "PT"
|
604
|
-
}
|
605
|
-
},
|
606
|
-
{
|
607
|
-
"code": "17",
|
608
|
-
"region": {
|
609
|
-
"pt": "Vila Real"
|
610
|
-
},
|
611
|
-
"codes": {
|
612
|
-
"at-tax-country-region": "PT"
|
613
|
-
}
|
614
|
-
},
|
615
|
-
{
|
616
|
-
"code": "18",
|
617
|
-
"region": {
|
618
|
-
"pt": "Viseu"
|
619
|
-
},
|
620
|
-
"codes": {
|
621
|
-
"at-tax-country-region": "PT"
|
622
|
-
}
|
623
|
-
},
|
624
|
-
{
|
625
|
-
"code": "20",
|
626
|
-
"region": {
|
627
|
-
"pt": "Região Autónoma dos Açores"
|
628
|
-
},
|
629
|
-
"codes": {
|
630
|
-
"at-tax-country-region": "PT-AC"
|
631
|
-
}
|
632
|
-
},
|
633
|
-
{
|
634
|
-
"code": "30",
|
635
|
-
"region": {
|
636
|
-
"pt": "Região Autónoma da Madeira"
|
637
|
-
},
|
638
|
-
"codes": {
|
639
|
-
"at-tax-country-region": "PT-MA"
|
640
|
-
}
|
641
|
-
}
|
642
482
|
]
|
643
483
|
}
|
@@ -3,7 +3,7 @@
|
|
3
3
|
##
|
4
4
|
## DO NOT EDIT - This file was generated automatically.
|
5
5
|
##
|
6
|
-
## Generated with GOBL v0.
|
6
|
+
## Generated with GOBL v0.69.0
|
7
7
|
##
|
8
8
|
|
9
9
|
module GOBL
|
@@ -36,8 +36,8 @@ module GOBL
|
|
36
36
|
|
37
37
|
# @!attribute [r] ext
|
38
38
|
# Extensions for region specific requirements.
|
39
|
-
# @return [GOBL::Tax::
|
40
|
-
property :ext, GOBL::Tax::
|
39
|
+
# @return [GOBL::Tax::Extensions]
|
40
|
+
property :ext, GOBL::Tax::Extensions
|
41
41
|
end
|
42
42
|
end
|
43
43
|
end
|
@@ -3,7 +3,7 @@
|
|
3
3
|
##
|
4
4
|
## DO NOT EDIT - This file was generated automatically.
|
5
5
|
##
|
6
|
-
## Generated with GOBL v0.
|
6
|
+
## Generated with GOBL v0.69.0
|
7
7
|
##
|
8
8
|
|
9
9
|
module GOBL
|
@@ -22,8 +22,9 @@ module GOBL
|
|
22
22
|
TYPE_ENUM = {
|
23
23
|
'standard' => 'A regular commercial invoice document between a supplier and customer.',
|
24
24
|
'proforma' => 'For a clients validation before sending a final invoice.',
|
25
|
-
'corrective' => 'Corrected invoice that completely replaces the preceding document.',
|
26
|
-
'credit-note' => 'Reflects a refund either partial or complete of the preceding document.
|
25
|
+
'corrective' => 'Corrected invoice that completely *replaces* the preceding document.',
|
26
|
+
'credit-note' => 'Reflects a refund either partial or complete of the preceding document. A
|
27
|
+
credit note effectively *extends* the previous document.',
|
27
28
|
'debit-note' => 'An additional set of charges to be added to the preceding document.'
|
28
29
|
}.freeze
|
29
30
|
|
@@ -3,7 +3,7 @@
|
|
3
3
|
##
|
4
4
|
## DO NOT EDIT - This file was generated automatically.
|
5
5
|
##
|
6
|
-
## Generated with GOBL v0.
|
6
|
+
## Generated with GOBL v0.69.0
|
7
7
|
##
|
8
8
|
|
9
9
|
module GOBL
|
@@ -18,10 +18,21 @@ module GOBL
|
|
18
18
|
# @return [GOBL::UUID::UUID]
|
19
19
|
property :uuid, GOBL::UUID::UUID
|
20
20
|
|
21
|
+
# Enumeration of possible values for {#type} with their corresponding descriptions
|
22
|
+
TYPE_ENUM = {
|
23
|
+
'standard' => 'A regular commercial invoice document between a supplier and customer.',
|
24
|
+
'proforma' => 'For a clients validation before sending a final invoice.',
|
25
|
+
'corrective' => 'Corrected invoice that completely *replaces* the preceding document.',
|
26
|
+
'credit-note' => 'Reflects a refund either partial or complete of the preceding document. A
|
27
|
+
credit note effectively *extends* the previous document.',
|
28
|
+
'debit-note' => 'An additional set of charges to be added to the preceding document.'
|
29
|
+
}.freeze
|
30
|
+
|
21
31
|
# @!attribute [r] type
|
22
32
|
# Type of the preceding document
|
23
33
|
# @return [GOBL::CBC::Key]
|
24
34
|
property :type, GOBL::CBC::Key
|
35
|
+
validates_inclusion_of :type, in: TYPE_ENUM.keys, allow_blank: true
|
25
36
|
|
26
37
|
# @!attribute [r] series
|
27
38
|
# Series identification code
|
@@ -56,8 +67,8 @@ module GOBL
|
|
56
67
|
|
57
68
|
# @!attribute [r] ext
|
58
69
|
# Extensions for region specific requirements.
|
59
|
-
# @return [GOBL::Tax::
|
60
|
-
property :ext, GOBL::Tax::
|
70
|
+
# @return [GOBL::Tax::Extensions]
|
71
|
+
property :ext, GOBL::Tax::Extensions
|
61
72
|
|
62
73
|
# @!attribute [r] meta
|
63
74
|
# Additional semi-structured data that may be useful in specific regions
|
@@ -3,15 +3,15 @@
|
|
3
3
|
##
|
4
4
|
## DO NOT EDIT - This file was generated automatically.
|
5
5
|
##
|
6
|
-
## Generated with GOBL v0.
|
6
|
+
## Generated with GOBL v0.69.0
|
7
7
|
##
|
8
8
|
|
9
9
|
module GOBL
|
10
|
-
module
|
10
|
+
module CBC
|
11
11
|
# CodeDefinition describes a specific code and how it maps to a human name and description if appropriate.
|
12
12
|
class CodeDefinition < GOBL::Object
|
13
13
|
# The Schema ID of the GOBL CodeDefinition structure
|
14
|
-
SCHEMA_ID = 'https://gobl.org/draft-0/
|
14
|
+
SCHEMA_ID = 'https://gobl.org/draft-0/cbc/code-definition'
|
15
15
|
|
16
16
|
# @!attribute [r] code
|
17
17
|
# Code for which the definition is for.
|
@@ -28,6 +28,11 @@ module GOBL
|
|
28
28
|
# Description offering more details about when the code should be used.
|
29
29
|
# @return [GOBL::I18n::String]
|
30
30
|
property :desc, GOBL::I18n::String
|
31
|
+
|
32
|
+
# @!attribute [r] meta
|
33
|
+
# Meta defines any additional details that may be useful or associated with the code.
|
34
|
+
# @return [GOBL::CBC::Meta]
|
35
|
+
property :meta, GOBL::CBC::Meta
|
31
36
|
end
|
32
37
|
end
|
33
38
|
end
|
@@ -3,15 +3,15 @@
|
|
3
3
|
##
|
4
4
|
## DO NOT EDIT - This file was generated automatically.
|
5
5
|
##
|
6
|
-
## Generated with GOBL v0.
|
6
|
+
## Generated with GOBL v0.69.0
|
7
7
|
##
|
8
8
|
|
9
9
|
module GOBL
|
10
|
-
module
|
10
|
+
module CBC
|
11
11
|
# KeyDefinition defines properties of a key that is specific for a regime.
|
12
12
|
class KeyDefinition < GOBL::Object
|
13
13
|
# The Schema ID of the GOBL KeyDefinition structure
|
14
|
-
SCHEMA_ID = 'https://gobl.org/draft-0/
|
14
|
+
SCHEMA_ID = 'https://gobl.org/draft-0/cbc/key-definition'
|
15
15
|
|
16
16
|
# @!attribute [r] key
|
17
17
|
# Actual key value.
|
@@ -30,15 +30,25 @@ module GOBL
|
|
30
30
|
# @return [GOBL::I18n::String]
|
31
31
|
property :desc, GOBL::I18n::String
|
32
32
|
|
33
|
+
# @!attribute [r] meta
|
34
|
+
# Meta defines any additional details that may be useful or associated with the key.
|
35
|
+
# @return [GOBL::CBC::Meta]
|
36
|
+
property :meta, GOBL::CBC::Meta
|
37
|
+
|
33
38
|
# @!attribute [r] codes
|
34
39
|
# Codes describes the list of codes that can be used alongside the Key, for example with identities.
|
35
|
-
# @return [Array<CodeDefinition>]
|
36
|
-
property :codes, [CodeDefinition]
|
40
|
+
# @return [Array<GOBL::CBC::CodeDefinition>]
|
41
|
+
property :codes, [GOBL::CBC::CodeDefinition]
|
37
42
|
|
38
43
|
# @!attribute [r] keys
|
39
44
|
# Keys is used instead of codes to define a further sub-set of keys that can be used alongside this one.
|
40
|
-
# @return [Array<KeyDefinition>]
|
41
|
-
property :keys, [KeyDefinition]
|
45
|
+
# @return [Array<GOBL::CBC::KeyDefinition>]
|
46
|
+
property :keys, [GOBL::CBC::KeyDefinition]
|
47
|
+
|
48
|
+
# @!attribute [r] pattern
|
49
|
+
# Pattern is used to validate the key value instead of using a fixed value from the code or key definitions.
|
50
|
+
# @return [String]
|
51
|
+
property :pattern, String
|
42
52
|
|
43
53
|
# @!attribute [r] map
|
44
54
|
# Map helps map local keys to specific codes, useful for converting the described key into a local code.
|