|
1
|
|
|
<?php |
|
2
|
|
|
|
|
3
|
|
|
declare(strict_types=1); |
|
4
|
|
|
|
|
5
|
|
|
namespace Squareetlabs\VeriFactu\Enums; |
|
6
|
|
|
|
|
7
|
|
|
enum RegimeType: string |
|
8
|
|
|
{ |
|
9
|
|
|
case GENERAL = '01'; |
|
10
|
|
|
case EXPORT = '02'; |
|
11
|
|
|
case USED_GOODS = '03'; |
|
12
|
|
|
case GOLD_INVESTMENT = '04'; |
|
13
|
|
|
case TRAVEL_AGENCIES = '05'; |
|
14
|
|
|
case ENTITY_GROUP = '06'; |
|
15
|
|
|
case CASH_CRITERION = '07'; |
|
16
|
|
|
case IPSI_IGIC = '08'; |
|
17
|
|
|
case TRAVEL_AGENCY_MEDIATION = '09'; |
|
18
|
|
|
case THIRD_PARTY_COLLECTIONS = '10'; |
|
19
|
|
|
case BUSINESS_LEASE = '11'; |
|
20
|
|
|
case IVA_CERTIFICATIONS = '14'; |
|
21
|
|
|
case IVA_SUCCESSIVE = '15'; |
|
22
|
|
|
case CHAPTER_XI = '17'; |
|
23
|
|
|
case EQUIVALENCE_SURCHARGE = '18'; |
|
24
|
|
|
case REAGYP = '19'; |
|
25
|
|
|
case SIMPLIFIED = '20'; |
|
26
|
|
|
|
|
27
|
|
|
public function description(): string |
|
28
|
|
|
{ |
|
29
|
|
|
return match($this) { |
|
30
|
|
|
self::GENERAL => 'General regime operation.', |
|
31
|
|
|
self::EXPORT => 'Export operation.', |
|
32
|
|
|
self::USED_GOODS => 'Special regime for used goods, art, antiques, and collectibles.', |
|
33
|
|
|
self::GOLD_INVESTMENT => 'Special regime for gold investment.', |
|
34
|
|
|
self::TRAVEL_AGENCIES => 'Special regime for travel agencies.', |
|
35
|
|
|
self::ENTITY_GROUP => 'Special regime for VAT group of entities (Advanced Level).', |
|
36
|
|
|
self::CASH_CRITERION => 'Special regime for cash criterion.', |
|
37
|
|
|
self::IPSI_IGIC => 'Operations subject to IPSI/IGIC.', |
|
38
|
|
|
self::TRAVEL_AGENCY_MEDIATION => 'Travel agency mediation services.', |
|
39
|
|
|
self::THIRD_PARTY_COLLECTIONS => 'Third-party collections.', |
|
40
|
|
|
self::BUSINESS_LEASE => 'Business premises lease.', |
|
41
|
|
|
self::IVA_CERTIFICATIONS => 'VAT pending for certifications.', |
|
42
|
|
|
self::IVA_SUCCESSIVE => 'VAT pending for successive operations.', |
|
43
|
|
|
self::CHAPTER_XI => 'Regime under Chapter XI Title IX (OSS/IOSS).', |
|
44
|
|
|
self::EQUIVALENCE_SURCHARGE => 'Equivalence surcharge.', |
|
45
|
|
|
self::REAGYP => 'Special regime for agriculture, livestock, and fishing.', |
|
46
|
|
|
self::SIMPLIFIED => 'Simplified regime.', |
|
47
|
|
|
}; |
|
48
|
|
|
} |
|
49
|
|
|
} |