vatsense 0.1.0

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 (245) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +14 -0
  4. data/README.md +235 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/vatsense/client.rb +129 -0
  7. data/lib/vatsense/errors.rb +228 -0
  8. data/lib/vatsense/file_part.rb +58 -0
  9. data/lib/vatsense/internal/transport/base_client.rb +595 -0
  10. data/lib/vatsense/internal/transport/pooled_net_requester.rb +210 -0
  11. data/lib/vatsense/internal/type/array_of.rb +168 -0
  12. data/lib/vatsense/internal/type/base_model.rb +531 -0
  13. data/lib/vatsense/internal/type/base_page.rb +55 -0
  14. data/lib/vatsense/internal/type/boolean.rb +77 -0
  15. data/lib/vatsense/internal/type/converter.rb +327 -0
  16. data/lib/vatsense/internal/type/enum.rb +131 -0
  17. data/lib/vatsense/internal/type/file_input.rb +111 -0
  18. data/lib/vatsense/internal/type/hash_of.rb +188 -0
  19. data/lib/vatsense/internal/type/request_parameters.rb +42 -0
  20. data/lib/vatsense/internal/type/union.rb +237 -0
  21. data/lib/vatsense/internal/type/unknown.rb +81 -0
  22. data/lib/vatsense/internal/util.rb +951 -0
  23. data/lib/vatsense/internal.rb +20 -0
  24. data/lib/vatsense/models/country.rb +70 -0
  25. data/lib/vatsense/models/country_list_params.rb +34 -0
  26. data/lib/vatsense/models/country_list_provinces_params.rb +22 -0
  27. data/lib/vatsense/models/country_list_provinces_response.rb +67 -0
  28. data/lib/vatsense/models/country_list_response.rb +28 -0
  29. data/lib/vatsense/models/create_invoice.rb +171 -0
  30. data/lib/vatsense/models/currency_calculate_vat_price_params.rb +53 -0
  31. data/lib/vatsense/models/currency_calculate_vat_price_response.rb +28 -0
  32. data/lib/vatsense/models/currency_convert_params.rb +53 -0
  33. data/lib/vatsense/models/currency_convert_response.rb +87 -0
  34. data/lib/vatsense/models/currency_list_params.rb +45 -0
  35. data/lib/vatsense/models/currency_list_response.rb +72 -0
  36. data/lib/vatsense/models/find_rate.rb +28 -0
  37. data/lib/vatsense/models/invoice/invoice_item.rb +71 -0
  38. data/lib/vatsense/models/invoice/invoice_item_input.rb +52 -0
  39. data/lib/vatsense/models/invoice/item_add_params.rb +28 -0
  40. data/lib/vatsense/models/invoice/item_delete_params.rb +28 -0
  41. data/lib/vatsense/models/invoice/item_retrieve_params.rb +28 -0
  42. data/lib/vatsense/models/invoice/item_retrieve_response.rb +30 -0
  43. data/lib/vatsense/models/invoice/item_update_params.rb +28 -0
  44. data/lib/vatsense/models/invoice.rb +301 -0
  45. data/lib/vatsense/models/invoice_business_input.rb +80 -0
  46. data/lib/vatsense/models/invoice_conversion_input.rb +24 -0
  47. data/lib/vatsense/models/invoice_create_params.rb +14 -0
  48. data/lib/vatsense/models/invoice_customer_input.rb +59 -0
  49. data/lib/vatsense/models/invoice_delete_params.rb +20 -0
  50. data/lib/vatsense/models/invoice_delete_response.rb +22 -0
  51. data/lib/vatsense/models/invoice_list_params.rb +38 -0
  52. data/lib/vatsense/models/invoice_list_response.rb +28 -0
  53. data/lib/vatsense/models/invoice_response.rb +28 -0
  54. data/lib/vatsense/models/invoice_retrieve_params.rb +20 -0
  55. data/lib/vatsense/models/invoice_update_params.rb +20 -0
  56. data/lib/vatsense/models/rate.rb +74 -0
  57. data/lib/vatsense/models/rate_calculate_price_params.rb +88 -0
  58. data/lib/vatsense/models/rate_calculate_price_response.rb +79 -0
  59. data/lib/vatsense/models/rate_details_params.rb +69 -0
  60. data/lib/vatsense/models/rate_find_params.rb +69 -0
  61. data/lib/vatsense/models/rate_list_params.rb +51 -0
  62. data/lib/vatsense/models/rate_list_response.rb +28 -0
  63. data/lib/vatsense/models/rate_list_types_params.rb +14 -0
  64. data/lib/vatsense/models/rate_list_types_response.rb +28 -0
  65. data/lib/vatsense/models/rate_with_tax_rate.rb +49 -0
  66. data/lib/vatsense/models/sandbox_generate_key_params.rb +14 -0
  67. data/lib/vatsense/models/sandbox_generate_key_response.rb +68 -0
  68. data/lib/vatsense/models/tax_rate.rb +76 -0
  69. data/lib/vatsense/models/usage_retrieve_params.rb +14 -0
  70. data/lib/vatsense/models/usage_retrieve_response.rb +67 -0
  71. data/lib/vatsense/models/validate_check_params.rb +48 -0
  72. data/lib/vatsense/models/validate_check_response.rb +135 -0
  73. data/lib/vatsense/models/vat_price.rb +86 -0
  74. data/lib/vatsense/models.rb +103 -0
  75. data/lib/vatsense/request_options.rb +77 -0
  76. data/lib/vatsense/resources/countries.rb +70 -0
  77. data/lib/vatsense/resources/currency.rb +111 -0
  78. data/lib/vatsense/resources/invoice/item.rb +133 -0
  79. data/lib/vatsense/resources/invoice.rb +206 -0
  80. data/lib/vatsense/resources/rates.rb +190 -0
  81. data/lib/vatsense/resources/sandbox.rb +36 -0
  82. data/lib/vatsense/resources/usage.rb +33 -0
  83. data/lib/vatsense/resources/validate.rb +56 -0
  84. data/lib/vatsense/version.rb +5 -0
  85. data/lib/vatsense.rb +113 -0
  86. data/manifest.yaml +17 -0
  87. data/rbi/vatsense/client.rbi +93 -0
  88. data/rbi/vatsense/errors.rbi +205 -0
  89. data/rbi/vatsense/file_part.rbi +37 -0
  90. data/rbi/vatsense/internal/transport/base_client.rbi +300 -0
  91. data/rbi/vatsense/internal/transport/pooled_net_requester.rbi +83 -0
  92. data/rbi/vatsense/internal/type/array_of.rbi +104 -0
  93. data/rbi/vatsense/internal/type/base_model.rbi +306 -0
  94. data/rbi/vatsense/internal/type/base_page.rbi +42 -0
  95. data/rbi/vatsense/internal/type/boolean.rbi +58 -0
  96. data/rbi/vatsense/internal/type/converter.rbi +216 -0
  97. data/rbi/vatsense/internal/type/enum.rbi +82 -0
  98. data/rbi/vatsense/internal/type/file_input.rbi +59 -0
  99. data/rbi/vatsense/internal/type/hash_of.rbi +104 -0
  100. data/rbi/vatsense/internal/type/request_parameters.rbi +29 -0
  101. data/rbi/vatsense/internal/type/union.rbi +128 -0
  102. data/rbi/vatsense/internal/type/unknown.rbi +58 -0
  103. data/rbi/vatsense/internal/util.rbi +507 -0
  104. data/rbi/vatsense/internal.rbi +16 -0
  105. data/rbi/vatsense/models/country.rbi +111 -0
  106. data/rbi/vatsense/models/country_list_params.rbi +59 -0
  107. data/rbi/vatsense/models/country_list_provinces_params.rbi +43 -0
  108. data/rbi/vatsense/models/country_list_provinces_response.rbi +177 -0
  109. data/rbi/vatsense/models/country_list_response.rbi +55 -0
  110. data/rbi/vatsense/models/create_invoice.rbi +240 -0
  111. data/rbi/vatsense/models/currency_calculate_vat_price_params.rbi +100 -0
  112. data/rbi/vatsense/models/currency_calculate_vat_price_response.rbi +51 -0
  113. data/rbi/vatsense/models/currency_convert_params.rbi +81 -0
  114. data/rbi/vatsense/models/currency_convert_response.rbi +190 -0
  115. data/rbi/vatsense/models/currency_list_params.rbi +79 -0
  116. data/rbi/vatsense/models/currency_list_response.rbi +174 -0
  117. data/rbi/vatsense/models/find_rate.rbi +50 -0
  118. data/rbi/vatsense/models/invoice/invoice_item.rbi +129 -0
  119. data/rbi/vatsense/models/invoice/invoice_item_input.rbi +79 -0
  120. data/rbi/vatsense/models/invoice/item_add_params.rbi +45 -0
  121. data/rbi/vatsense/models/invoice/item_delete_params.rbi +48 -0
  122. data/rbi/vatsense/models/invoice/item_retrieve_params.rbi +48 -0
  123. data/rbi/vatsense/models/invoice/item_retrieve_response.rbi +57 -0
  124. data/rbi/vatsense/models/invoice/item_update_params.rbi +48 -0
  125. data/rbi/vatsense/models/invoice.rbi +481 -0
  126. data/rbi/vatsense/models/invoice_business_input.rbi +113 -0
  127. data/rbi/vatsense/models/invoice_conversion_input.rbi +35 -0
  128. data/rbi/vatsense/models/invoice_create_params.rbi +27 -0
  129. data/rbi/vatsense/models/invoice_customer_input.rbi +93 -0
  130. data/rbi/vatsense/models/invoice_delete_params.rbi +35 -0
  131. data/rbi/vatsense/models/invoice_delete_response.rbi +31 -0
  132. data/rbi/vatsense/models/invoice_list_params.rbi +68 -0
  133. data/rbi/vatsense/models/invoice_list_response.rbi +55 -0
  134. data/rbi/vatsense/models/invoice_response.rbi +48 -0
  135. data/rbi/vatsense/models/invoice_retrieve_params.rbi +35 -0
  136. data/rbi/vatsense/models/invoice_update_params.rbi +35 -0
  137. data/rbi/vatsense/models/rate.rbi +119 -0
  138. data/rbi/vatsense/models/rate_calculate_price_params.rbi +144 -0
  139. data/rbi/vatsense/models/rate_calculate_price_response.rbi +184 -0
  140. data/rbi/vatsense/models/rate_details_params.rbi +109 -0
  141. data/rbi/vatsense/models/rate_find_params.rbi +109 -0
  142. data/rbi/vatsense/models/rate_list_params.rbi +83 -0
  143. data/rbi/vatsense/models/rate_list_response.rbi +48 -0
  144. data/rbi/vatsense/models/rate_list_types_params.rbi +27 -0
  145. data/rbi/vatsense/models/rate_list_types_response.rbi +51 -0
  146. data/rbi/vatsense/models/rate_with_tax_rate.rbi +94 -0
  147. data/rbi/vatsense/models/sandbox_generate_key_params.rbi +27 -0
  148. data/rbi/vatsense/models/sandbox_generate_key_response.rbi +135 -0
  149. data/rbi/vatsense/models/tax_rate.rbi +109 -0
  150. data/rbi/vatsense/models/usage_retrieve_params.rbi +27 -0
  151. data/rbi/vatsense/models/usage_retrieve_response.rbi +155 -0
  152. data/rbi/vatsense/models/validate_check_params.rbi +82 -0
  153. data/rbi/vatsense/models/validate_check_response.rbi +285 -0
  154. data/rbi/vatsense/models/vat_price.rbi +136 -0
  155. data/rbi/vatsense/models.rbi +66 -0
  156. data/rbi/vatsense/request_options.rbi +59 -0
  157. data/rbi/vatsense/resources/countries.rbi +49 -0
  158. data/rbi/vatsense/resources/currency.rbi +82 -0
  159. data/rbi/vatsense/resources/invoice/item.rbi +97 -0
  160. data/rbi/vatsense/resources/invoice.rbi +191 -0
  161. data/rbi/vatsense/resources/rates.rbi +164 -0
  162. data/rbi/vatsense/resources/sandbox.rbi +24 -0
  163. data/rbi/vatsense/resources/usage.rbi +22 -0
  164. data/rbi/vatsense/resources/validate.rbi +51 -0
  165. data/rbi/vatsense/version.rbi +5 -0
  166. data/sig/vatsense/client.rbs +45 -0
  167. data/sig/vatsense/errors.rbs +117 -0
  168. data/sig/vatsense/file_part.rbs +21 -0
  169. data/sig/vatsense/internal/transport/base_client.rbs +135 -0
  170. data/sig/vatsense/internal/transport/pooled_net_requester.rbs +48 -0
  171. data/sig/vatsense/internal/type/array_of.rbs +48 -0
  172. data/sig/vatsense/internal/type/base_model.rbs +102 -0
  173. data/sig/vatsense/internal/type/base_page.rbs +24 -0
  174. data/sig/vatsense/internal/type/boolean.rbs +26 -0
  175. data/sig/vatsense/internal/type/converter.rbs +79 -0
  176. data/sig/vatsense/internal/type/enum.rbs +32 -0
  177. data/sig/vatsense/internal/type/file_input.rbs +25 -0
  178. data/sig/vatsense/internal/type/hash_of.rbs +48 -0
  179. data/sig/vatsense/internal/type/request_parameters.rbs +17 -0
  180. data/sig/vatsense/internal/type/union.rbs +52 -0
  181. data/sig/vatsense/internal/type/unknown.rbs +26 -0
  182. data/sig/vatsense/internal/util.rbs +195 -0
  183. data/sig/vatsense/internal.rbs +9 -0
  184. data/sig/vatsense/models/country.rbs +76 -0
  185. data/sig/vatsense/models/country_list_params.rbs +32 -0
  186. data/sig/vatsense/models/country_list_provinces_params.rbs +23 -0
  187. data/sig/vatsense/models/country_list_provinces_response.rbs +90 -0
  188. data/sig/vatsense/models/country_list_response.rbs +32 -0
  189. data/sig/vatsense/models/create_invoice.rbs +154 -0
  190. data/sig/vatsense/models/currency_calculate_vat_price_params.rbs +47 -0
  191. data/sig/vatsense/models/currency_calculate_vat_price_response.rbs +28 -0
  192. data/sig/vatsense/models/currency_convert_params.rbs +47 -0
  193. data/sig/vatsense/models/currency_convert_response.rbs +104 -0
  194. data/sig/vatsense/models/currency_list_params.rbs +45 -0
  195. data/sig/vatsense/models/currency_list_response.rbs +90 -0
  196. data/sig/vatsense/models/find_rate.rbs +32 -0
  197. data/sig/vatsense/models/invoice/invoice_item.rbs +85 -0
  198. data/sig/vatsense/models/invoice/invoice_item_input.rbs +46 -0
  199. data/sig/vatsense/models/invoice/item_add_params.rbs +33 -0
  200. data/sig/vatsense/models/invoice/item_delete_params.rbs +30 -0
  201. data/sig/vatsense/models/invoice/item_retrieve_params.rbs +30 -0
  202. data/sig/vatsense/models/invoice/item_retrieve_response.rbs +36 -0
  203. data/sig/vatsense/models/invoice/item_update_params.rbs +34 -0
  204. data/sig/vatsense/models/invoice.rbs +332 -0
  205. data/sig/vatsense/models/invoice_business_input.rbs +72 -0
  206. data/sig/vatsense/models/invoice_conversion_input.rbs +15 -0
  207. data/sig/vatsense/models/invoice_create_params.rbs +15 -0
  208. data/sig/vatsense/models/invoice_customer_input.rbs +62 -0
  209. data/sig/vatsense/models/invoice_delete_params.rbs +23 -0
  210. data/sig/vatsense/models/invoice_delete_response.rbs +15 -0
  211. data/sig/vatsense/models/invoice_list_params.rbs +38 -0
  212. data/sig/vatsense/models/invoice_list_response.rbs +34 -0
  213. data/sig/vatsense/models/invoice_response.rbs +32 -0
  214. data/sig/vatsense/models/invoice_retrieve_params.rbs +23 -0
  215. data/sig/vatsense/models/invoice_update_params.rbs +25 -0
  216. data/sig/vatsense/models/rate.rbs +79 -0
  217. data/sig/vatsense/models/rate_calculate_price_params.rbs +77 -0
  218. data/sig/vatsense/models/rate_calculate_price_response.rbs +104 -0
  219. data/sig/vatsense/models/rate_details_params.rbs +63 -0
  220. data/sig/vatsense/models/rate_find_params.rbs +63 -0
  221. data/sig/vatsense/models/rate_list_params.rbs +44 -0
  222. data/sig/vatsense/models/rate_list_response.rbs +32 -0
  223. data/sig/vatsense/models/rate_list_types_params.rbs +15 -0
  224. data/sig/vatsense/models/rate_list_types_response.rbs +28 -0
  225. data/sig/vatsense/models/rate_with_tax_rate.rbs +62 -0
  226. data/sig/vatsense/models/sandbox_generate_key_params.rbs +15 -0
  227. data/sig/vatsense/models/sandbox_generate_key_response.rbs +85 -0
  228. data/sig/vatsense/models/tax_rate.rbs +72 -0
  229. data/sig/vatsense/models/usage_retrieve_params.rbs +15 -0
  230. data/sig/vatsense/models/usage_retrieve_response.rbs +81 -0
  231. data/sig/vatsense/models/validate_check_params.rbs +38 -0
  232. data/sig/vatsense/models/validate_check_response.rbs +161 -0
  233. data/sig/vatsense/models/vat_price.rbs +89 -0
  234. data/sig/vatsense/models.rbs +63 -0
  235. data/sig/vatsense/request_options.rbs +34 -0
  236. data/sig/vatsense/resources/countries.rbs +18 -0
  237. data/sig/vatsense/resources/currency.rbs +27 -0
  238. data/sig/vatsense/resources/invoice/item.rbs +38 -0
  239. data/sig/vatsense/resources/invoice.rbs +69 -0
  240. data/sig/vatsense/resources/rates.rbs +50 -0
  241. data/sig/vatsense/resources/sandbox.rbs +11 -0
  242. data/sig/vatsense/resources/usage.rbs +11 -0
  243. data/sig/vatsense/resources/validate.rbs +14 -0
  244. data/sig/vatsense/version.rbs +3 -0
  245. metadata +316 -0
@@ -0,0 +1,154 @@
1
+ module Vatsense
2
+ module Models
3
+ type create_invoice =
4
+ {
5
+ business: Vatsense::InvoiceBusinessInput,
6
+ currency_code: String,
7
+ date: String,
8
+ items: ::Array[Vatsense::Invoice::InvoiceItemInput],
9
+ tax_point: String,
10
+ conversion: Vatsense::InvoiceConversionInput,
11
+ customer: Vatsense::InvoiceCustomerInput,
12
+ has_vat: bool,
13
+ invoice_number: String,
14
+ is_copy: bool,
15
+ is_reverse_charge: bool,
16
+ notes: String,
17
+ pad_invoice_number: Integer,
18
+ serial: String,
19
+ tax_type: Vatsense::Models::CreateInvoice::tax_type,
20
+ type: Vatsense::Models::CreateInvoice::type_,
21
+ zero_rated: bool
22
+ }
23
+
24
+ class CreateInvoice < Vatsense::Internal::Type::BaseModel
25
+ attr_accessor business: Vatsense::InvoiceBusinessInput
26
+
27
+ attr_accessor currency_code: String
28
+
29
+ attr_accessor date: String
30
+
31
+ attr_accessor items: ::Array[Vatsense::Invoice::InvoiceItemInput]
32
+
33
+ attr_accessor tax_point: String
34
+
35
+ attr_reader conversion: Vatsense::InvoiceConversionInput?
36
+
37
+ def conversion=: (
38
+ Vatsense::InvoiceConversionInput
39
+ ) -> Vatsense::InvoiceConversionInput
40
+
41
+ attr_reader customer: Vatsense::InvoiceCustomerInput?
42
+
43
+ def customer=: (
44
+ Vatsense::InvoiceCustomerInput
45
+ ) -> Vatsense::InvoiceCustomerInput
46
+
47
+ attr_reader has_vat: bool?
48
+
49
+ def has_vat=: (bool) -> bool
50
+
51
+ attr_reader invoice_number: String?
52
+
53
+ def invoice_number=: (String) -> String
54
+
55
+ attr_reader is_copy: bool?
56
+
57
+ def is_copy=: (bool) -> bool
58
+
59
+ attr_reader is_reverse_charge: bool?
60
+
61
+ def is_reverse_charge=: (bool) -> bool
62
+
63
+ attr_reader notes: String?
64
+
65
+ def notes=: (String) -> String
66
+
67
+ attr_reader pad_invoice_number: Integer?
68
+
69
+ def pad_invoice_number=: (Integer) -> Integer
70
+
71
+ attr_reader serial: String?
72
+
73
+ def serial=: (String) -> String
74
+
75
+ attr_reader tax_type: Vatsense::Models::CreateInvoice::tax_type?
76
+
77
+ def tax_type=: (
78
+ Vatsense::Models::CreateInvoice::tax_type
79
+ ) -> Vatsense::Models::CreateInvoice::tax_type
80
+
81
+ attr_reader type: Vatsense::Models::CreateInvoice::type_?
82
+
83
+ def type=: (
84
+ Vatsense::Models::CreateInvoice::type_
85
+ ) -> Vatsense::Models::CreateInvoice::type_
86
+
87
+ attr_reader zero_rated: bool?
88
+
89
+ def zero_rated=: (bool) -> bool
90
+
91
+ def initialize: (
92
+ business: Vatsense::InvoiceBusinessInput,
93
+ currency_code: String,
94
+ date: String,
95
+ items: ::Array[Vatsense::Invoice::InvoiceItemInput],
96
+ tax_point: String,
97
+ ?conversion: Vatsense::InvoiceConversionInput,
98
+ ?customer: Vatsense::InvoiceCustomerInput,
99
+ ?has_vat: bool,
100
+ ?invoice_number: String,
101
+ ?is_copy: bool,
102
+ ?is_reverse_charge: bool,
103
+ ?notes: String,
104
+ ?pad_invoice_number: Integer,
105
+ ?serial: String,
106
+ ?tax_type: Vatsense::Models::CreateInvoice::tax_type,
107
+ ?type: Vatsense::Models::CreateInvoice::type_,
108
+ ?zero_rated: bool
109
+ ) -> void
110
+
111
+ def to_hash: -> {
112
+ business: Vatsense::InvoiceBusinessInput,
113
+ currency_code: String,
114
+ date: String,
115
+ items: ::Array[Vatsense::Invoice::InvoiceItemInput],
116
+ tax_point: String,
117
+ conversion: Vatsense::InvoiceConversionInput,
118
+ customer: Vatsense::InvoiceCustomerInput,
119
+ has_vat: bool,
120
+ invoice_number: String,
121
+ is_copy: bool,
122
+ is_reverse_charge: bool,
123
+ notes: String,
124
+ pad_invoice_number: Integer,
125
+ serial: String,
126
+ tax_type: Vatsense::Models::CreateInvoice::tax_type,
127
+ type: Vatsense::Models::CreateInvoice::type_,
128
+ zero_rated: bool
129
+ }
130
+
131
+ type tax_type = :incl | :excl
132
+
133
+ module TaxType
134
+ extend Vatsense::Internal::Type::Enum
135
+
136
+ INCL: :incl
137
+ EXCL: :excl
138
+
139
+ def self?.values: -> ::Array[Vatsense::Models::CreateInvoice::tax_type]
140
+ end
141
+
142
+ type type_ = :sale | :refund
143
+
144
+ module Type
145
+ extend Vatsense::Internal::Type::Enum
146
+
147
+ SALE: :sale
148
+ REFUND: :refund
149
+
150
+ def self?.values: -> ::Array[Vatsense::Models::CreateInvoice::type_]
151
+ end
152
+ end
153
+ end
154
+ end
@@ -0,0 +1,47 @@
1
+ module Vatsense
2
+ module Models
3
+ type currency_calculate_vat_price_params =
4
+ {
5
+ price: String,
6
+ tax_type: Vatsense::Models::CurrencyCalculateVatPriceParams::tax_type,
7
+ vat_rate: Float
8
+ }
9
+ & Vatsense::Internal::Type::request_parameters
10
+
11
+ class CurrencyCalculateVatPriceParams < Vatsense::Internal::Type::BaseModel
12
+ extend Vatsense::Internal::Type::RequestParameters::Converter
13
+ include Vatsense::Internal::Type::RequestParameters
14
+
15
+ attr_accessor price: String
16
+
17
+ attr_accessor tax_type: Vatsense::Models::CurrencyCalculateVatPriceParams::tax_type
18
+
19
+ attr_accessor vat_rate: Float
20
+
21
+ def initialize: (
22
+ price: String,
23
+ tax_type: Vatsense::Models::CurrencyCalculateVatPriceParams::tax_type,
24
+ vat_rate: Float,
25
+ ?request_options: Vatsense::request_opts
26
+ ) -> void
27
+
28
+ def to_hash: -> {
29
+ price: String,
30
+ tax_type: Vatsense::Models::CurrencyCalculateVatPriceParams::tax_type,
31
+ vat_rate: Float,
32
+ request_options: Vatsense::RequestOptions
33
+ }
34
+
35
+ type tax_type = :incl | :excl
36
+
37
+ module TaxType
38
+ extend Vatsense::Internal::Type::Enum
39
+
40
+ INCL: :incl
41
+ EXCL: :excl
42
+
43
+ def self?.values: -> ::Array[Vatsense::Models::CurrencyCalculateVatPriceParams::tax_type]
44
+ end
45
+ end
46
+ end
47
+ end
@@ -0,0 +1,28 @@
1
+ module Vatsense
2
+ module Models
3
+ type currency_calculate_vat_price_response =
4
+ { code: Integer, data: Vatsense::VatPrice, success: bool }
5
+
6
+ class CurrencyCalculateVatPriceResponse < Vatsense::Internal::Type::BaseModel
7
+ attr_reader code: Integer?
8
+
9
+ def code=: (Integer) -> Integer
10
+
11
+ attr_reader data: Vatsense::VatPrice?
12
+
13
+ def data=: (Vatsense::VatPrice) -> Vatsense::VatPrice
14
+
15
+ attr_reader success: bool?
16
+
17
+ def success=: (bool) -> bool
18
+
19
+ def initialize: (
20
+ ?code: Integer,
21
+ ?data: Vatsense::VatPrice,
22
+ ?success: bool
23
+ ) -> void
24
+
25
+ def to_hash: -> { code: Integer, data: Vatsense::VatPrice, success: bool }
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,47 @@
1
+ module Vatsense
2
+ module Models
3
+ type currency_convert_params =
4
+ {
5
+ amount: String,
6
+ from: String,
7
+ to: Vatsense::Models::CurrencyConvertParams::to
8
+ }
9
+ & Vatsense::Internal::Type::request_parameters
10
+
11
+ class CurrencyConvertParams < Vatsense::Internal::Type::BaseModel
12
+ extend Vatsense::Internal::Type::RequestParameters::Converter
13
+ include Vatsense::Internal::Type::RequestParameters
14
+
15
+ attr_accessor amount: String
16
+
17
+ attr_accessor from: String
18
+
19
+ attr_accessor to: Vatsense::Models::CurrencyConvertParams::to
20
+
21
+ def initialize: (
22
+ amount: String,
23
+ from: String,
24
+ to: Vatsense::Models::CurrencyConvertParams::to,
25
+ ?request_options: Vatsense::request_opts
26
+ ) -> void
27
+
28
+ def to_hash: -> {
29
+ amount: String,
30
+ from: String,
31
+ to: Vatsense::Models::CurrencyConvertParams::to,
32
+ request_options: Vatsense::RequestOptions
33
+ }
34
+
35
+ type to = :GBP | :EUR
36
+
37
+ module To
38
+ extend Vatsense::Internal::Type::Enum
39
+
40
+ GBP: :GBP
41
+ EUR: :EUR
42
+
43
+ def self?.values: -> ::Array[Vatsense::Models::CurrencyConvertParams::to]
44
+ end
45
+ end
46
+ end
47
+ end
@@ -0,0 +1,104 @@
1
+ module Vatsense
2
+ module Models
3
+ type currency_convert_response =
4
+ {
5
+ code: Integer,
6
+ data: Vatsense::Models::CurrencyConvertResponse::Data,
7
+ success: bool
8
+ }
9
+
10
+ class CurrencyConvertResponse < Vatsense::Internal::Type::BaseModel
11
+ attr_reader code: Integer?
12
+
13
+ def code=: (Integer) -> Integer
14
+
15
+ attr_reader data: Vatsense::Models::CurrencyConvertResponse::Data?
16
+
17
+ def data=: (
18
+ Vatsense::Models::CurrencyConvertResponse::Data
19
+ ) -> Vatsense::Models::CurrencyConvertResponse::Data
20
+
21
+ attr_reader success: bool?
22
+
23
+ def success=: (bool) -> bool
24
+
25
+ def initialize: (
26
+ ?code: Integer,
27
+ ?data: Vatsense::Models::CurrencyConvertResponse::Data,
28
+ ?success: bool
29
+ ) -> void
30
+
31
+ def to_hash: -> {
32
+ code: Integer,
33
+ data: Vatsense::Models::CurrencyConvertResponse::Data,
34
+ success: bool
35
+ }
36
+
37
+ type data =
38
+ {
39
+ amount: Float,
40
+ converted: Float,
41
+ from: String,
42
+ object: Vatsense::Models::CurrencyConvertResponse::Data::object,
43
+ rate: Float,
44
+ to: String
45
+ }
46
+
47
+ class Data < Vatsense::Internal::Type::BaseModel
48
+ attr_reader amount: Float?
49
+
50
+ def amount=: (Float) -> Float
51
+
52
+ attr_reader converted: Float?
53
+
54
+ def converted=: (Float) -> Float
55
+
56
+ attr_reader from: String?
57
+
58
+ def from=: (String) -> String
59
+
60
+ attr_reader object: Vatsense::Models::CurrencyConvertResponse::Data::object?
61
+
62
+ def object=: (
63
+ Vatsense::Models::CurrencyConvertResponse::Data::object
64
+ ) -> Vatsense::Models::CurrencyConvertResponse::Data::object
65
+
66
+ attr_reader rate: Float?
67
+
68
+ def rate=: (Float) -> Float
69
+
70
+ attr_reader to: String?
71
+
72
+ def to=: (String) -> String
73
+
74
+ def initialize: (
75
+ ?amount: Float,
76
+ ?converted: Float,
77
+ ?from: String,
78
+ ?object: Vatsense::Models::CurrencyConvertResponse::Data::object,
79
+ ?rate: Float,
80
+ ?to: String
81
+ ) -> void
82
+
83
+ def to_hash: -> {
84
+ amount: Float,
85
+ converted: Float,
86
+ from: String,
87
+ object: Vatsense::Models::CurrencyConvertResponse::Data::object,
88
+ rate: Float,
89
+ to: String
90
+ }
91
+
92
+ type object = :conversion
93
+
94
+ module Object
95
+ extend Vatsense::Internal::Type::Enum
96
+
97
+ CONVERSION: :conversion
98
+
99
+ def self?.values: -> ::Array[Vatsense::Models::CurrencyConvertResponse::Data::object]
100
+ end
101
+ end
102
+ end
103
+ end
104
+ end
@@ -0,0 +1,45 @@
1
+ module Vatsense
2
+ module Models
3
+ type currency_list_params =
4
+ { from: String, to: Vatsense::Models::CurrencyListParams::to }
5
+ & Vatsense::Internal::Type::request_parameters
6
+
7
+ class CurrencyListParams < Vatsense::Internal::Type::BaseModel
8
+ extend Vatsense::Internal::Type::RequestParameters::Converter
9
+ include Vatsense::Internal::Type::RequestParameters
10
+
11
+ attr_reader from: String?
12
+
13
+ def from=: (String) -> String
14
+
15
+ attr_reader to: Vatsense::Models::CurrencyListParams::to?
16
+
17
+ def to=: (
18
+ Vatsense::Models::CurrencyListParams::to
19
+ ) -> Vatsense::Models::CurrencyListParams::to
20
+
21
+ def initialize: (
22
+ ?from: String,
23
+ ?to: Vatsense::Models::CurrencyListParams::to,
24
+ ?request_options: Vatsense::request_opts
25
+ ) -> void
26
+
27
+ def to_hash: -> {
28
+ from: String,
29
+ to: Vatsense::Models::CurrencyListParams::to,
30
+ request_options: Vatsense::RequestOptions
31
+ }
32
+
33
+ type to = :GBP | :EUR
34
+
35
+ module To
36
+ extend Vatsense::Internal::Type::Enum
37
+
38
+ GBP: :GBP
39
+ EUR: :EUR
40
+
41
+ def self?.values: -> ::Array[Vatsense::Models::CurrencyListParams::to]
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,90 @@
1
+ module Vatsense
2
+ module Models
3
+ type currency_list_response =
4
+ {
5
+ code: Integer,
6
+ data: ::Array[Vatsense::Models::CurrencyListResponse::Data],
7
+ success: bool
8
+ }
9
+
10
+ class CurrencyListResponse < Vatsense::Internal::Type::BaseModel
11
+ attr_reader code: Integer?
12
+
13
+ def code=: (Integer) -> Integer
14
+
15
+ attr_reader data: ::Array[Vatsense::Models::CurrencyListResponse::Data]?
16
+
17
+ def data=: (
18
+ ::Array[Vatsense::Models::CurrencyListResponse::Data]
19
+ ) -> ::Array[Vatsense::Models::CurrencyListResponse::Data]
20
+
21
+ attr_reader success: bool?
22
+
23
+ def success=: (bool) -> bool
24
+
25
+ def initialize: (
26
+ ?code: Integer,
27
+ ?data: ::Array[Vatsense::Models::CurrencyListResponse::Data],
28
+ ?success: bool
29
+ ) -> void
30
+
31
+ def to_hash: -> {
32
+ code: Integer,
33
+ data: ::Array[Vatsense::Models::CurrencyListResponse::Data],
34
+ success: bool
35
+ }
36
+
37
+ type data =
38
+ {
39
+ from: String,
40
+ object: Vatsense::Models::CurrencyListResponse::Data::object,
41
+ rate: Float,
42
+ to: String
43
+ }
44
+
45
+ class Data < Vatsense::Internal::Type::BaseModel
46
+ attr_reader from: String?
47
+
48
+ def from=: (String) -> String
49
+
50
+ attr_reader object: Vatsense::Models::CurrencyListResponse::Data::object?
51
+
52
+ def object=: (
53
+ Vatsense::Models::CurrencyListResponse::Data::object
54
+ ) -> Vatsense::Models::CurrencyListResponse::Data::object
55
+
56
+ attr_reader rate: Float?
57
+
58
+ def rate=: (Float) -> Float
59
+
60
+ attr_reader to: String?
61
+
62
+ def to=: (String) -> String
63
+
64
+ def initialize: (
65
+ ?from: String,
66
+ ?object: Vatsense::Models::CurrencyListResponse::Data::object,
67
+ ?rate: Float,
68
+ ?to: String
69
+ ) -> void
70
+
71
+ def to_hash: -> {
72
+ from: String,
73
+ object: Vatsense::Models::CurrencyListResponse::Data::object,
74
+ rate: Float,
75
+ to: String
76
+ }
77
+
78
+ type object = :convert_rate
79
+
80
+ module Object
81
+ extend Vatsense::Internal::Type::Enum
82
+
83
+ CONVERT_RATE: :convert_rate
84
+
85
+ def self?.values: -> ::Array[Vatsense::Models::CurrencyListResponse::Data::object]
86
+ end
87
+ end
88
+ end
89
+ end
90
+ end
@@ -0,0 +1,32 @@
1
+ module Vatsense
2
+ module Models
3
+ type find_rate =
4
+ { code: Integer, data: Vatsense::RateWithTaxRate, success: bool }
5
+
6
+ class FindRate < Vatsense::Internal::Type::BaseModel
7
+ attr_reader code: Integer?
8
+
9
+ def code=: (Integer) -> Integer
10
+
11
+ attr_reader data: Vatsense::RateWithTaxRate?
12
+
13
+ def data=: (Vatsense::RateWithTaxRate) -> Vatsense::RateWithTaxRate
14
+
15
+ attr_reader success: bool?
16
+
17
+ def success=: (bool) -> bool
18
+
19
+ def initialize: (
20
+ ?code: Integer,
21
+ ?data: Vatsense::RateWithTaxRate,
22
+ ?success: bool
23
+ ) -> void
24
+
25
+ def to_hash: -> {
26
+ code: Integer,
27
+ data: Vatsense::RateWithTaxRate,
28
+ success: bool
29
+ }
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,85 @@
1
+ module Vatsense
2
+ module Models
3
+ class InvoiceItem = Invoice::InvoiceItem
4
+
5
+ module Invoice
6
+ type invoice_item =
7
+ {
8
+ id: String,
9
+ discount_rate: Float?,
10
+ item: String,
11
+ object: Vatsense::Models::Invoice::InvoiceItem::object,
12
+ price_each: Float,
13
+ price_total: Float,
14
+ quantity: Float,
15
+ vat_rate: Float
16
+ }
17
+
18
+ class InvoiceItem < Vatsense::Internal::Type::BaseModel
19
+ attr_reader id: String?
20
+
21
+ def id=: (String) -> String
22
+
23
+ attr_accessor discount_rate: Float?
24
+
25
+ attr_reader item: String?
26
+
27
+ def item=: (String) -> String
28
+
29
+ attr_reader object: Vatsense::Models::Invoice::InvoiceItem::object?
30
+
31
+ def object=: (
32
+ Vatsense::Models::Invoice::InvoiceItem::object
33
+ ) -> Vatsense::Models::Invoice::InvoiceItem::object
34
+
35
+ attr_reader price_each: Float?
36
+
37
+ def price_each=: (Float) -> Float
38
+
39
+ attr_reader price_total: Float?
40
+
41
+ def price_total=: (Float) -> Float
42
+
43
+ attr_reader quantity: Float?
44
+
45
+ def quantity=: (Float) -> Float
46
+
47
+ attr_reader vat_rate: Float?
48
+
49
+ def vat_rate=: (Float) -> Float
50
+
51
+ def initialize: (
52
+ ?id: String,
53
+ ?discount_rate: Float?,
54
+ ?item: String,
55
+ ?object: Vatsense::Models::Invoice::InvoiceItem::object,
56
+ ?price_each: Float,
57
+ ?price_total: Float,
58
+ ?quantity: Float,
59
+ ?vat_rate: Float
60
+ ) -> void
61
+
62
+ def to_hash: -> {
63
+ id: String,
64
+ discount_rate: Float?,
65
+ item: String,
66
+ object: Vatsense::Models::Invoice::InvoiceItem::object,
67
+ price_each: Float,
68
+ price_total: Float,
69
+ quantity: Float,
70
+ vat_rate: Float
71
+ }
72
+
73
+ type object = :item
74
+
75
+ module Object
76
+ extend Vatsense::Internal::Type::Enum
77
+
78
+ ITEM: :item
79
+
80
+ def self?.values: -> ::Array[Vatsense::Models::Invoice::InvoiceItem::object]
81
+ end
82
+ end
83
+ end
84
+ end
85
+ end
@@ -0,0 +1,46 @@
1
+ module Vatsense
2
+ module Models
3
+ class InvoiceItemInput = Invoice::InvoiceItemInput
4
+
5
+ module Invoice
6
+ type invoice_item_input =
7
+ {
8
+ item: String,
9
+ price_each: Float,
10
+ quantity: Float,
11
+ vat_rate: Float,
12
+ discount_rate: Float
13
+ }
14
+
15
+ class InvoiceItemInput < Vatsense::Internal::Type::BaseModel
16
+ attr_accessor item: String
17
+
18
+ attr_accessor price_each: Float
19
+
20
+ attr_accessor quantity: Float
21
+
22
+ attr_accessor vat_rate: Float
23
+
24
+ attr_reader discount_rate: Float?
25
+
26
+ def discount_rate=: (Float) -> Float
27
+
28
+ def initialize: (
29
+ item: String,
30
+ price_each: Float,
31
+ quantity: Float,
32
+ vat_rate: Float,
33
+ ?discount_rate: Float
34
+ ) -> void
35
+
36
+ def to_hash: -> {
37
+ item: String,
38
+ price_each: Float,
39
+ quantity: Float,
40
+ vat_rate: Float,
41
+ discount_rate: Float
42
+ }
43
+ end
44
+ end
45
+ end
46
+ end