e-invoice-api 0.1.0.pre.alpha.5

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 (233) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +57 -0
  4. data/README.md +285 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/e_invoice_api/client.rb +94 -0
  7. data/lib/e_invoice_api/errors.rb +192 -0
  8. data/lib/e_invoice_api/file_part.rb +55 -0
  9. data/lib/e_invoice_api/internal/documents_number_page.rb +96 -0
  10. data/lib/e_invoice_api/internal/transport/base_client.rb +555 -0
  11. data/lib/e_invoice_api/internal/transport/pooled_net_requester.rb +209 -0
  12. data/lib/e_invoice_api/internal/type/array_of.rb +162 -0
  13. data/lib/e_invoice_api/internal/type/base_model.rb +482 -0
  14. data/lib/e_invoice_api/internal/type/base_page.rb +55 -0
  15. data/lib/e_invoice_api/internal/type/boolean.rb +71 -0
  16. data/lib/e_invoice_api/internal/type/converter.rb +292 -0
  17. data/lib/e_invoice_api/internal/type/enum.rb +148 -0
  18. data/lib/e_invoice_api/internal/type/file_input.rb +103 -0
  19. data/lib/e_invoice_api/internal/type/hash_of.rb +182 -0
  20. data/lib/e_invoice_api/internal/type/request_parameters.rb +42 -0
  21. data/lib/e_invoice_api/internal/type/union.rb +236 -0
  22. data/lib/e_invoice_api/internal/type/unknown.rb +75 -0
  23. data/lib/e_invoice_api/internal/util.rb +914 -0
  24. data/lib/e_invoice_api/internal.rb +20 -0
  25. data/lib/e_invoice_api/models/certificate.rb +34 -0
  26. data/lib/e_invoice_api/models/currency_code.rb +28 -0
  27. data/lib/e_invoice_api/models/document_attachment_create.rb +33 -0
  28. data/lib/e_invoice_api/models/document_create.rb +521 -0
  29. data/lib/e_invoice_api/models/document_create_params.rb +14 -0
  30. data/lib/e_invoice_api/models/document_delete_params.rb +14 -0
  31. data/lib/e_invoice_api/models/document_delete_response.rb +16 -0
  32. data/lib/e_invoice_api/models/document_direction.rb +15 -0
  33. data/lib/e_invoice_api/models/document_response.rb +418 -0
  34. data/lib/e_invoice_api/models/document_retrieve_params.rb +14 -0
  35. data/lib/e_invoice_api/models/document_send_params.rb +44 -0
  36. data/lib/e_invoice_api/models/document_state.rb +18 -0
  37. data/lib/e_invoice_api/models/document_type.rb +15 -0
  38. data/lib/e_invoice_api/models/documents/attachment_add_params.rb +22 -0
  39. data/lib/e_invoice_api/models/documents/attachment_delete_params.rb +22 -0
  40. data/lib/e_invoice_api/models/documents/attachment_delete_response.rb +18 -0
  41. data/lib/e_invoice_api/models/documents/attachment_list_params.rb +16 -0
  42. data/lib/e_invoice_api/models/documents/attachment_list_response.rb +11 -0
  43. data/lib/e_invoice_api/models/documents/attachment_retrieve_params.rb +22 -0
  44. data/lib/e_invoice_api/models/documents/document_attachment.rb +44 -0
  45. data/lib/e_invoice_api/models/documents/ubl_get_params.rb +16 -0
  46. data/lib/e_invoice_api/models/documents/ubl_get_response.rb +72 -0
  47. data/lib/e_invoice_api/models/inbox_list_credit_notes_params.rb +30 -0
  48. data/lib/e_invoice_api/models/inbox_list_invoices_params.rb +30 -0
  49. data/lib/e_invoice_api/models/inbox_list_params.rb +78 -0
  50. data/lib/e_invoice_api/models/lookup_retrieve_params.rb +26 -0
  51. data/lib/e_invoice_api/models/lookup_retrieve_response.rb +491 -0
  52. data/lib/e_invoice_api/models/outbox_list_draft_documents_params.rb +30 -0
  53. data/lib/e_invoice_api/models/outbox_list_received_documents_params.rb +78 -0
  54. data/lib/e_invoice_api/models/paginated_document_response.rb +39 -0
  55. data/lib/e_invoice_api/models/payment_detail_create.rb +33 -0
  56. data/lib/e_invoice_api/models/ubl_document_validation.rb +97 -0
  57. data/lib/e_invoice_api/models/unit_of_measure_code.rb +104 -0
  58. data/lib/e_invoice_api/models/validate_validate_json_params.rb +14 -0
  59. data/lib/e_invoice_api/models/validate_validate_peppol_id_params.rb +26 -0
  60. data/lib/e_invoice_api/models/validate_validate_peppol_id_response.rb +80 -0
  61. data/lib/e_invoice_api/models/validate_validate_ubl_params.rb +20 -0
  62. data/lib/e_invoice_api/models/webhook_create_params.rb +32 -0
  63. data/lib/e_invoice_api/models/webhook_delete_params.rb +14 -0
  64. data/lib/e_invoice_api/models/webhook_delete_response.rb +18 -0
  65. data/lib/e_invoice_api/models/webhook_list_params.rb +14 -0
  66. data/lib/e_invoice_api/models/webhook_list_response.rb +8 -0
  67. data/lib/e_invoice_api/models/webhook_response.rb +42 -0
  68. data/lib/e_invoice_api/models/webhook_retrieve_params.rb +14 -0
  69. data/lib/e_invoice_api/models/webhook_update_params.rb +32 -0
  70. data/lib/e_invoice_api/models.rb +105 -0
  71. data/lib/e_invoice_api/request_options.rb +77 -0
  72. data/lib/e_invoice_api/resources/documents/attachments.rb +109 -0
  73. data/lib/e_invoice_api/resources/documents/ubl.rb +35 -0
  74. data/lib/e_invoice_api/resources/documents.rb +188 -0
  75. data/lib/e_invoice_api/resources/inbox.rb +101 -0
  76. data/lib/e_invoice_api/resources/lookup.rb +43 -0
  77. data/lib/e_invoice_api/resources/outbox.rb +76 -0
  78. data/lib/e_invoice_api/resources/validate.rb +168 -0
  79. data/lib/e_invoice_api/resources/webhooks.rb +117 -0
  80. data/lib/e_invoice_api/version.rb +5 -0
  81. data/lib/e_invoice_api.rb +107 -0
  82. data/manifest.yaml +15 -0
  83. data/rbi/e_invoice_api/client.rbi +64 -0
  84. data/rbi/e_invoice_api/errors.rbi +162 -0
  85. data/rbi/e_invoice_api/file_part.rbi +37 -0
  86. data/rbi/e_invoice_api/internal/documents_number_page.rbi +28 -0
  87. data/rbi/e_invoice_api/internal/transport/base_client.rbi +298 -0
  88. data/rbi/e_invoice_api/internal/transport/pooled_net_requester.rbi +80 -0
  89. data/rbi/e_invoice_api/internal/type/array_of.rbi +104 -0
  90. data/rbi/e_invoice_api/internal/type/base_model.rbi +304 -0
  91. data/rbi/e_invoice_api/internal/type/base_page.rbi +43 -0
  92. data/rbi/e_invoice_api/internal/type/boolean.rbi +56 -0
  93. data/rbi/e_invoice_api/internal/type/converter.rbi +162 -0
  94. data/rbi/e_invoice_api/internal/type/enum.rbi +82 -0
  95. data/rbi/e_invoice_api/internal/type/file_input.rbi +59 -0
  96. data/rbi/e_invoice_api/internal/type/hash_of.rbi +104 -0
  97. data/rbi/e_invoice_api/internal/type/request_parameters.rbi +31 -0
  98. data/rbi/e_invoice_api/internal/type/union.rbi +116 -0
  99. data/rbi/e_invoice_api/internal/type/unknown.rbi +56 -0
  100. data/rbi/e_invoice_api/internal/util.rbi +487 -0
  101. data/rbi/e_invoice_api/internal.rbi +18 -0
  102. data/rbi/e_invoice_api/models/certificate.rbi +54 -0
  103. data/rbi/e_invoice_api/models/currency_code.rbi +34 -0
  104. data/rbi/e_invoice_api/models/document_attachment_create.rbi +57 -0
  105. data/rbi/e_invoice_api/models/document_create.rbi +638 -0
  106. data/rbi/e_invoice_api/models/document_create_params.rbi +30 -0
  107. data/rbi/e_invoice_api/models/document_delete_params.rbi +30 -0
  108. data/rbi/e_invoice_api/models/document_delete_response.rbi +26 -0
  109. data/rbi/e_invoice_api/models/document_direction.rbi +22 -0
  110. data/rbi/e_invoice_api/models/document_response.rbi +504 -0
  111. data/rbi/e_invoice_api/models/document_retrieve_params.rbi +30 -0
  112. data/rbi/e_invoice_api/models/document_send_params.rbi +65 -0
  113. data/rbi/e_invoice_api/models/document_state.rbi +24 -0
  114. data/rbi/e_invoice_api/models/document_type.rbi +21 -0
  115. data/rbi/e_invoice_api/models/documents/attachment_add_params.rbi +43 -0
  116. data/rbi/e_invoice_api/models/documents/attachment_delete_params.rbi +43 -0
  117. data/rbi/e_invoice_api/models/documents/attachment_delete_response.rbi +28 -0
  118. data/rbi/e_invoice_api/models/documents/attachment_list_params.rbi +34 -0
  119. data/rbi/e_invoice_api/models/documents/attachment_list_response.rbi +15 -0
  120. data/rbi/e_invoice_api/models/documents/attachment_retrieve_params.rbi +43 -0
  121. data/rbi/e_invoice_api/models/documents/document_attachment.rbi +72 -0
  122. data/rbi/e_invoice_api/models/documents/ubl_get_params.rbi +34 -0
  123. data/rbi/e_invoice_api/models/documents/ubl_get_response.rbi +97 -0
  124. data/rbi/e_invoice_api/models/inbox_list_credit_notes_params.rbi +60 -0
  125. data/rbi/e_invoice_api/models/inbox_list_invoices_params.rbi +60 -0
  126. data/rbi/e_invoice_api/models/inbox_list_params.rbi +105 -0
  127. data/rbi/e_invoice_api/models/lookup_retrieve_params.rbi +45 -0
  128. data/rbi/e_invoice_api/models/lookup_retrieve_response.rbi +852 -0
  129. data/rbi/e_invoice_api/models/outbox_list_draft_documents_params.rbi +60 -0
  130. data/rbi/e_invoice_api/models/outbox_list_received_documents_params.rbi +108 -0
  131. data/rbi/e_invoice_api/models/paginated_document_response.rbi +56 -0
  132. data/rbi/e_invoice_api/models/payment_detail_create.rbi +56 -0
  133. data/rbi/e_invoice_api/models/ubl_document_validation.rbi +159 -0
  134. data/rbi/e_invoice_api/models/unit_of_measure_code.rbi +149 -0
  135. data/rbi/e_invoice_api/models/validate_validate_json_params.rbi +30 -0
  136. data/rbi/e_invoice_api/models/validate_validate_peppol_id_params.rbi +45 -0
  137. data/rbi/e_invoice_api/models/validate_validate_peppol_id_response.rbi +141 -0
  138. data/rbi/e_invoice_api/models/validate_validate_ubl_params.rbi +41 -0
  139. data/rbi/e_invoice_api/models/webhook_create_params.rbi +54 -0
  140. data/rbi/e_invoice_api/models/webhook_delete_params.rbi +30 -0
  141. data/rbi/e_invoice_api/models/webhook_delete_response.rbi +27 -0
  142. data/rbi/e_invoice_api/models/webhook_list_params.rbi +27 -0
  143. data/rbi/e_invoice_api/models/webhook_list_response.rbi +11 -0
  144. data/rbi/e_invoice_api/models/webhook_response.rbi +57 -0
  145. data/rbi/e_invoice_api/models/webhook_retrieve_params.rbi +30 -0
  146. data/rbi/e_invoice_api/models/webhook_update_params.rbi +51 -0
  147. data/rbi/e_invoice_api/models.rbi +70 -0
  148. data/rbi/e_invoice_api/request_options.rbi +59 -0
  149. data/rbi/e_invoice_api/resources/documents/attachments.rbi +58 -0
  150. data/rbi/e_invoice_api/resources/documents/ubl.rbi +24 -0
  151. data/rbi/e_invoice_api/resources/documents.rbi +164 -0
  152. data/rbi/e_invoice_api/resources/inbox.rbi +93 -0
  153. data/rbi/e_invoice_api/resources/lookup.rbi +31 -0
  154. data/rbi/e_invoice_api/resources/outbox.rbi +72 -0
  155. data/rbi/e_invoice_api/resources/validate.rbi +145 -0
  156. data/rbi/e_invoice_api/resources/webhooks.rbi +72 -0
  157. data/rbi/e_invoice_api/version.rbi +5 -0
  158. data/sig/e_invoice_api/client.rbs +36 -0
  159. data/sig/e_invoice_api/errors.rbs +101 -0
  160. data/sig/e_invoice_api/file_part.rbs +21 -0
  161. data/sig/e_invoice_api/internal/documents_number_page.rbs +17 -0
  162. data/sig/e_invoice_api/internal/transport/base_client.rbs +131 -0
  163. data/sig/e_invoice_api/internal/transport/pooled_net_requester.rbs +45 -0
  164. data/sig/e_invoice_api/internal/type/array_of.rbs +48 -0
  165. data/sig/e_invoice_api/internal/type/base_model.rbs +102 -0
  166. data/sig/e_invoice_api/internal/type/base_page.rbs +24 -0
  167. data/sig/e_invoice_api/internal/type/boolean.rbs +26 -0
  168. data/sig/e_invoice_api/internal/type/converter.rbs +56 -0
  169. data/sig/e_invoice_api/internal/type/enum.rbs +32 -0
  170. data/sig/e_invoice_api/internal/type/file_input.rbs +25 -0
  171. data/sig/e_invoice_api/internal/type/hash_of.rbs +48 -0
  172. data/sig/e_invoice_api/internal/type/request_parameters.rbs +19 -0
  173. data/sig/e_invoice_api/internal/type/union.rbs +52 -0
  174. data/sig/e_invoice_api/internal/type/unknown.rbs +26 -0
  175. data/sig/e_invoice_api/internal/util.rbs +185 -0
  176. data/sig/e_invoice_api/internal.rbs +9 -0
  177. data/sig/e_invoice_api/models/certificate.rbs +26 -0
  178. data/sig/e_invoice_api/models/currency_code.rbs +42 -0
  179. data/sig/e_invoice_api/models/document_attachment_create.rbs +39 -0
  180. data/sig/e_invoice_api/models/document_create.rbs +403 -0
  181. data/sig/e_invoice_api/models/document_create_params.rbs +15 -0
  182. data/sig/e_invoice_api/models/document_delete_params.rbs +15 -0
  183. data/sig/e_invoice_api/models/document_delete_response.rbs +13 -0
  184. data/sig/e_invoice_api/models/document_direction.rbs +14 -0
  185. data/sig/e_invoice_api/models/document_response.rbs +358 -0
  186. data/sig/e_invoice_api/models/document_retrieve_params.rbs +15 -0
  187. data/sig/e_invoice_api/models/document_send_params.rbs +46 -0
  188. data/sig/e_invoice_api/models/document_state.rbs +17 -0
  189. data/sig/e_invoice_api/models/document_type.rbs +14 -0
  190. data/sig/e_invoice_api/models/documents/attachment_add_params.rbs +26 -0
  191. data/sig/e_invoice_api/models/documents/attachment_delete_params.rbs +26 -0
  192. data/sig/e_invoice_api/models/documents/attachment_delete_response.rbs +15 -0
  193. data/sig/e_invoice_api/models/documents/attachment_list_params.rbs +17 -0
  194. data/sig/e_invoice_api/models/documents/attachment_list_response.rbs +10 -0
  195. data/sig/e_invoice_api/models/documents/attachment_retrieve_params.rbs +26 -0
  196. data/sig/e_invoice_api/models/documents/document_attachment.rbs +48 -0
  197. data/sig/e_invoice_api/models/documents/ubl_get_params.rbs +17 -0
  198. data/sig/e_invoice_api/models/documents/ubl_get_response.rbs +69 -0
  199. data/sig/e_invoice_api/models/inbox_list_credit_notes_params.rbs +32 -0
  200. data/sig/e_invoice_api/models/inbox_list_invoices_params.rbs +32 -0
  201. data/sig/e_invoice_api/models/inbox_list_params.rbs +65 -0
  202. data/sig/e_invoice_api/models/lookup_retrieve_params.rbs +23 -0
  203. data/sig/e_invoice_api/models/lookup_retrieve_response.rbs +365 -0
  204. data/sig/e_invoice_api/models/outbox_list_draft_documents_params.rbs +32 -0
  205. data/sig/e_invoice_api/models/outbox_list_received_documents_params.rbs +65 -0
  206. data/sig/e_invoice_api/models/paginated_document_response.rbs +40 -0
  207. data/sig/e_invoice_api/models/payment_detail_create.rbs +35 -0
  208. data/sig/e_invoice_api/models/ubl_document_validation.rbs +98 -0
  209. data/sig/e_invoice_api/models/unit_of_measure_code.rbs +192 -0
  210. data/sig/e_invoice_api/models/validate_validate_json_params.rbs +15 -0
  211. data/sig/e_invoice_api/models/validate_validate_peppol_id_params.rbs +23 -0
  212. data/sig/e_invoice_api/models/validate_validate_peppol_id_response.rbs +65 -0
  213. data/sig/e_invoice_api/models/validate_validate_ubl_params.rbs +24 -0
  214. data/sig/e_invoice_api/models/webhook_create_params.rbs +34 -0
  215. data/sig/e_invoice_api/models/webhook_delete_params.rbs +15 -0
  216. data/sig/e_invoice_api/models/webhook_delete_response.rbs +13 -0
  217. data/sig/e_invoice_api/models/webhook_list_params.rbs +15 -0
  218. data/sig/e_invoice_api/models/webhook_list_response.rbs +7 -0
  219. data/sig/e_invoice_api/models/webhook_response.rbs +42 -0
  220. data/sig/e_invoice_api/models/webhook_retrieve_params.rbs +15 -0
  221. data/sig/e_invoice_api/models/webhook_update_params.rbs +32 -0
  222. data/sig/e_invoice_api/models.rbs +65 -0
  223. data/sig/e_invoice_api/request_options.rbs +36 -0
  224. data/sig/e_invoice_api/resources/documents/attachments.rbs +32 -0
  225. data/sig/e_invoice_api/resources/documents/ubl.rbs +14 -0
  226. data/sig/e_invoice_api/resources/documents.rbs +76 -0
  227. data/sig/e_invoice_api/resources/inbox.rbs +31 -0
  228. data/sig/e_invoice_api/resources/lookup.rbs +12 -0
  229. data/sig/e_invoice_api/resources/outbox.rbs +25 -0
  230. data/sig/e_invoice_api/resources/validate.rbs +62 -0
  231. data/sig/e_invoice_api/resources/webhooks.rbs +36 -0
  232. data/sig/e_invoice_api/version.rbs +3 -0
  233. metadata +290 -0
@@ -0,0 +1,26 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class DocumentDeleteResponse < EInvoiceAPI::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ EInvoiceAPI::Models::DocumentDeleteResponse,
10
+ EInvoiceAPI::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig { returns(T::Boolean) }
15
+ attr_accessor :is_deleted
16
+
17
+ sig { params(is_deleted: T::Boolean).returns(T.attached_class) }
18
+ def self.new(is_deleted:)
19
+ end
20
+
21
+ sig { override.returns({ is_deleted: T::Boolean }) }
22
+ def to_hash
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,22 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ module DocumentDirection
6
+ extend EInvoiceAPI::Internal::Type::Enum
7
+
8
+ TaggedSymbol =
9
+ T.type_alias { T.all(Symbol, EInvoiceAPI::DocumentDirection) }
10
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
11
+
12
+ INBOUND = T.let(:INBOUND, EInvoiceAPI::DocumentDirection::TaggedSymbol)
13
+ OUTBOUND = T.let(:OUTBOUND, EInvoiceAPI::DocumentDirection::TaggedSymbol)
14
+
15
+ sig do
16
+ override.returns(T::Array[EInvoiceAPI::DocumentDirection::TaggedSymbol])
17
+ end
18
+ def self.values
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,504 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class DocumentResponse < EInvoiceAPI::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(EInvoiceAPI::DocumentResponse, EInvoiceAPI::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(String) }
12
+ attr_accessor :id
13
+
14
+ sig { returns(T.nilable(String)) }
15
+ attr_accessor :amount_due
16
+
17
+ sig do
18
+ returns(T.nilable(T::Array[EInvoiceAPI::Documents::DocumentAttachment]))
19
+ end
20
+ attr_reader :attachments
21
+
22
+ sig do
23
+ params(
24
+ attachments:
25
+ T::Array[EInvoiceAPI::Documents::DocumentAttachment::OrHash]
26
+ ).void
27
+ end
28
+ attr_writer :attachments
29
+
30
+ sig { returns(T.nilable(String)) }
31
+ attr_accessor :billing_address
32
+
33
+ sig { returns(T.nilable(String)) }
34
+ attr_accessor :billing_address_recipient
35
+
36
+ # Currency of the invoice
37
+ sig { returns(T.nilable(EInvoiceAPI::CurrencyCode::TaggedSymbol)) }
38
+ attr_reader :currency
39
+
40
+ sig { params(currency: EInvoiceAPI::CurrencyCode::OrSymbol).void }
41
+ attr_writer :currency
42
+
43
+ sig { returns(T.nilable(String)) }
44
+ attr_accessor :customer_address
45
+
46
+ sig { returns(T.nilable(String)) }
47
+ attr_accessor :customer_address_recipient
48
+
49
+ sig { returns(T.nilable(String)) }
50
+ attr_accessor :customer_email
51
+
52
+ sig { returns(T.nilable(String)) }
53
+ attr_accessor :customer_id
54
+
55
+ sig { returns(T.nilable(String)) }
56
+ attr_accessor :customer_name
57
+
58
+ sig { returns(T.nilable(String)) }
59
+ attr_accessor :customer_tax_id
60
+
61
+ sig { returns(T.nilable(EInvoiceAPI::DocumentDirection::TaggedSymbol)) }
62
+ attr_reader :direction
63
+
64
+ sig { params(direction: EInvoiceAPI::DocumentDirection::OrSymbol).void }
65
+ attr_writer :direction
66
+
67
+ sig { returns(T.nilable(EInvoiceAPI::DocumentType::TaggedSymbol)) }
68
+ attr_reader :document_type
69
+
70
+ sig { params(document_type: EInvoiceAPI::DocumentType::OrSymbol).void }
71
+ attr_writer :document_type
72
+
73
+ sig { returns(T.nilable(Date)) }
74
+ attr_accessor :due_date
75
+
76
+ sig { returns(T.nilable(Date)) }
77
+ attr_accessor :invoice_date
78
+
79
+ sig { returns(T.nilable(String)) }
80
+ attr_accessor :invoice_id
81
+
82
+ sig { returns(T.nilable(String)) }
83
+ attr_accessor :invoice_total
84
+
85
+ sig { returns(T.nilable(T::Array[EInvoiceAPI::DocumentResponse::Item])) }
86
+ attr_reader :items
87
+
88
+ sig do
89
+ params(
90
+ items: T::Array[EInvoiceAPI::DocumentResponse::Item::OrHash]
91
+ ).void
92
+ end
93
+ attr_writer :items
94
+
95
+ sig { returns(T.nilable(String)) }
96
+ attr_accessor :note
97
+
98
+ sig do
99
+ returns(
100
+ T.nilable(T::Array[EInvoiceAPI::DocumentResponse::PaymentDetail])
101
+ )
102
+ end
103
+ attr_reader :payment_details
104
+
105
+ sig do
106
+ params(
107
+ payment_details:
108
+ T::Array[EInvoiceAPI::DocumentResponse::PaymentDetail::OrHash]
109
+ ).void
110
+ end
111
+ attr_writer :payment_details
112
+
113
+ sig { returns(T.nilable(String)) }
114
+ attr_accessor :payment_term
115
+
116
+ sig { returns(T.nilable(String)) }
117
+ attr_accessor :previous_unpaid_balance
118
+
119
+ sig { returns(T.nilable(String)) }
120
+ attr_accessor :purchase_order
121
+
122
+ sig { returns(T.nilable(String)) }
123
+ attr_accessor :remittance_address
124
+
125
+ sig { returns(T.nilable(String)) }
126
+ attr_accessor :remittance_address_recipient
127
+
128
+ sig { returns(T.nilable(String)) }
129
+ attr_accessor :service_address
130
+
131
+ sig { returns(T.nilable(String)) }
132
+ attr_accessor :service_address_recipient
133
+
134
+ sig { returns(T.nilable(Date)) }
135
+ attr_accessor :service_end_date
136
+
137
+ sig { returns(T.nilable(Date)) }
138
+ attr_accessor :service_start_date
139
+
140
+ sig { returns(T.nilable(String)) }
141
+ attr_accessor :shipping_address
142
+
143
+ sig { returns(T.nilable(String)) }
144
+ attr_accessor :shipping_address_recipient
145
+
146
+ sig { returns(T.nilable(EInvoiceAPI::DocumentState::TaggedSymbol)) }
147
+ attr_reader :state
148
+
149
+ sig { params(state: EInvoiceAPI::DocumentState::OrSymbol).void }
150
+ attr_writer :state
151
+
152
+ sig { returns(T.nilable(String)) }
153
+ attr_accessor :subtotal
154
+
155
+ sig do
156
+ returns(T.nilable(T::Array[EInvoiceAPI::DocumentResponse::TaxDetail]))
157
+ end
158
+ attr_reader :tax_details
159
+
160
+ sig do
161
+ params(
162
+ tax_details:
163
+ T::Array[EInvoiceAPI::DocumentResponse::TaxDetail::OrHash]
164
+ ).void
165
+ end
166
+ attr_writer :tax_details
167
+
168
+ sig { returns(T.nilable(String)) }
169
+ attr_accessor :total_discount
170
+
171
+ sig { returns(T.nilable(String)) }
172
+ attr_accessor :total_tax
173
+
174
+ sig { returns(T.nilable(String)) }
175
+ attr_accessor :vendor_address
176
+
177
+ sig { returns(T.nilable(String)) }
178
+ attr_accessor :vendor_address_recipient
179
+
180
+ sig { returns(T.nilable(String)) }
181
+ attr_accessor :vendor_email
182
+
183
+ sig { returns(T.nilable(String)) }
184
+ attr_accessor :vendor_name
185
+
186
+ sig { returns(T.nilable(String)) }
187
+ attr_accessor :vendor_tax_id
188
+
189
+ sig do
190
+ params(
191
+ id: String,
192
+ amount_due: T.nilable(String),
193
+ attachments:
194
+ T::Array[EInvoiceAPI::Documents::DocumentAttachment::OrHash],
195
+ billing_address: T.nilable(String),
196
+ billing_address_recipient: T.nilable(String),
197
+ currency: EInvoiceAPI::CurrencyCode::OrSymbol,
198
+ customer_address: T.nilable(String),
199
+ customer_address_recipient: T.nilable(String),
200
+ customer_email: T.nilable(String),
201
+ customer_id: T.nilable(String),
202
+ customer_name: T.nilable(String),
203
+ customer_tax_id: T.nilable(String),
204
+ direction: EInvoiceAPI::DocumentDirection::OrSymbol,
205
+ document_type: EInvoiceAPI::DocumentType::OrSymbol,
206
+ due_date: T.nilable(Date),
207
+ invoice_date: T.nilable(Date),
208
+ invoice_id: T.nilable(String),
209
+ invoice_total: T.nilable(String),
210
+ items: T::Array[EInvoiceAPI::DocumentResponse::Item::OrHash],
211
+ note: T.nilable(String),
212
+ payment_details:
213
+ T::Array[EInvoiceAPI::DocumentResponse::PaymentDetail::OrHash],
214
+ payment_term: T.nilable(String),
215
+ previous_unpaid_balance: T.nilable(String),
216
+ purchase_order: T.nilable(String),
217
+ remittance_address: T.nilable(String),
218
+ remittance_address_recipient: T.nilable(String),
219
+ service_address: T.nilable(String),
220
+ service_address_recipient: T.nilable(String),
221
+ service_end_date: T.nilable(Date),
222
+ service_start_date: T.nilable(Date),
223
+ shipping_address: T.nilable(String),
224
+ shipping_address_recipient: T.nilable(String),
225
+ state: EInvoiceAPI::DocumentState::OrSymbol,
226
+ subtotal: T.nilable(String),
227
+ tax_details:
228
+ T::Array[EInvoiceAPI::DocumentResponse::TaxDetail::OrHash],
229
+ total_discount: T.nilable(String),
230
+ total_tax: T.nilable(String),
231
+ vendor_address: T.nilable(String),
232
+ vendor_address_recipient: T.nilable(String),
233
+ vendor_email: T.nilable(String),
234
+ vendor_name: T.nilable(String),
235
+ vendor_tax_id: T.nilable(String)
236
+ ).returns(T.attached_class)
237
+ end
238
+ def self.new(
239
+ id:,
240
+ amount_due: nil,
241
+ attachments: nil,
242
+ billing_address: nil,
243
+ billing_address_recipient: nil,
244
+ # Currency of the invoice
245
+ currency: nil,
246
+ customer_address: nil,
247
+ customer_address_recipient: nil,
248
+ customer_email: nil,
249
+ customer_id: nil,
250
+ customer_name: nil,
251
+ customer_tax_id: nil,
252
+ direction: nil,
253
+ document_type: nil,
254
+ due_date: nil,
255
+ invoice_date: nil,
256
+ invoice_id: nil,
257
+ invoice_total: nil,
258
+ items: nil,
259
+ note: nil,
260
+ payment_details: nil,
261
+ payment_term: nil,
262
+ previous_unpaid_balance: nil,
263
+ purchase_order: nil,
264
+ remittance_address: nil,
265
+ remittance_address_recipient: nil,
266
+ service_address: nil,
267
+ service_address_recipient: nil,
268
+ service_end_date: nil,
269
+ service_start_date: nil,
270
+ shipping_address: nil,
271
+ shipping_address_recipient: nil,
272
+ state: nil,
273
+ subtotal: nil,
274
+ tax_details: nil,
275
+ total_discount: nil,
276
+ total_tax: nil,
277
+ vendor_address: nil,
278
+ vendor_address_recipient: nil,
279
+ vendor_email: nil,
280
+ vendor_name: nil,
281
+ vendor_tax_id: nil
282
+ )
283
+ end
284
+
285
+ sig do
286
+ override.returns(
287
+ {
288
+ id: String,
289
+ amount_due: T.nilable(String),
290
+ attachments: T::Array[EInvoiceAPI::Documents::DocumentAttachment],
291
+ billing_address: T.nilable(String),
292
+ billing_address_recipient: T.nilable(String),
293
+ currency: EInvoiceAPI::CurrencyCode::TaggedSymbol,
294
+ customer_address: T.nilable(String),
295
+ customer_address_recipient: T.nilable(String),
296
+ customer_email: T.nilable(String),
297
+ customer_id: T.nilable(String),
298
+ customer_name: T.nilable(String),
299
+ customer_tax_id: T.nilable(String),
300
+ direction: EInvoiceAPI::DocumentDirection::TaggedSymbol,
301
+ document_type: EInvoiceAPI::DocumentType::TaggedSymbol,
302
+ due_date: T.nilable(Date),
303
+ invoice_date: T.nilable(Date),
304
+ invoice_id: T.nilable(String),
305
+ invoice_total: T.nilable(String),
306
+ items: T::Array[EInvoiceAPI::DocumentResponse::Item],
307
+ note: T.nilable(String),
308
+ payment_details:
309
+ T::Array[EInvoiceAPI::DocumentResponse::PaymentDetail],
310
+ payment_term: T.nilable(String),
311
+ previous_unpaid_balance: T.nilable(String),
312
+ purchase_order: T.nilable(String),
313
+ remittance_address: T.nilable(String),
314
+ remittance_address_recipient: T.nilable(String),
315
+ service_address: T.nilable(String),
316
+ service_address_recipient: T.nilable(String),
317
+ service_end_date: T.nilable(Date),
318
+ service_start_date: T.nilable(Date),
319
+ shipping_address: T.nilable(String),
320
+ shipping_address_recipient: T.nilable(String),
321
+ state: EInvoiceAPI::DocumentState::TaggedSymbol,
322
+ subtotal: T.nilable(String),
323
+ tax_details: T::Array[EInvoiceAPI::DocumentResponse::TaxDetail],
324
+ total_discount: T.nilable(String),
325
+ total_tax: T.nilable(String),
326
+ vendor_address: T.nilable(String),
327
+ vendor_address_recipient: T.nilable(String),
328
+ vendor_email: T.nilable(String),
329
+ vendor_name: T.nilable(String),
330
+ vendor_tax_id: T.nilable(String)
331
+ }
332
+ )
333
+ end
334
+ def to_hash
335
+ end
336
+
337
+ class Item < EInvoiceAPI::Internal::Type::BaseModel
338
+ OrHash =
339
+ T.type_alias do
340
+ T.any(
341
+ EInvoiceAPI::DocumentResponse::Item,
342
+ EInvoiceAPI::Internal::AnyHash
343
+ )
344
+ end
345
+
346
+ sig { returns(T.nilable(String)) }
347
+ attr_accessor :amount
348
+
349
+ sig { void }
350
+ attr_accessor :date
351
+
352
+ sig { returns(T.nilable(String)) }
353
+ attr_accessor :description
354
+
355
+ sig { returns(T.nilable(String)) }
356
+ attr_accessor :product_code
357
+
358
+ sig { returns(T.nilable(String)) }
359
+ attr_accessor :quantity
360
+
361
+ sig { returns(T.nilable(String)) }
362
+ attr_accessor :tax
363
+
364
+ sig { returns(T.nilable(String)) }
365
+ attr_accessor :tax_rate
366
+
367
+ # Unit of Measure Codes from UNECERec20 used in Peppol BIS Billing 3.0.
368
+ sig { returns(T.nilable(EInvoiceAPI::UnitOfMeasureCode::TaggedSymbol)) }
369
+ attr_accessor :unit
370
+
371
+ sig { returns(T.nilable(String)) }
372
+ attr_accessor :unit_price
373
+
374
+ sig do
375
+ params(
376
+ amount: T.nilable(String),
377
+ date: NilClass,
378
+ description: T.nilable(String),
379
+ product_code: T.nilable(String),
380
+ quantity: T.nilable(String),
381
+ tax: T.nilable(String),
382
+ tax_rate: T.nilable(String),
383
+ unit: T.nilable(EInvoiceAPI::UnitOfMeasureCode::OrSymbol),
384
+ unit_price: T.nilable(String)
385
+ ).returns(T.attached_class)
386
+ end
387
+ def self.new(
388
+ amount: nil,
389
+ date: nil,
390
+ description: nil,
391
+ product_code: nil,
392
+ quantity: nil,
393
+ tax: nil,
394
+ tax_rate: nil,
395
+ # Unit of Measure Codes from UNECERec20 used in Peppol BIS Billing 3.0.
396
+ unit: nil,
397
+ unit_price: nil
398
+ )
399
+ end
400
+
401
+ sig do
402
+ override.returns(
403
+ {
404
+ amount: T.nilable(String),
405
+ date: NilClass,
406
+ description: T.nilable(String),
407
+ product_code: T.nilable(String),
408
+ quantity: T.nilable(String),
409
+ tax: T.nilable(String),
410
+ tax_rate: T.nilable(String),
411
+ unit: T.nilable(EInvoiceAPI::UnitOfMeasureCode::TaggedSymbol),
412
+ unit_price: T.nilable(String)
413
+ }
414
+ )
415
+ end
416
+ def to_hash
417
+ end
418
+ end
419
+
420
+ class PaymentDetail < EInvoiceAPI::Internal::Type::BaseModel
421
+ OrHash =
422
+ T.type_alias do
423
+ T.any(
424
+ EInvoiceAPI::DocumentResponse::PaymentDetail,
425
+ EInvoiceAPI::Internal::AnyHash
426
+ )
427
+ end
428
+
429
+ sig { returns(T.nilable(String)) }
430
+ attr_accessor :bank_account_number
431
+
432
+ sig { returns(T.nilable(String)) }
433
+ attr_accessor :iban
434
+
435
+ sig { returns(T.nilable(String)) }
436
+ attr_accessor :payment_reference
437
+
438
+ sig { returns(T.nilable(String)) }
439
+ attr_accessor :swift
440
+
441
+ sig do
442
+ params(
443
+ bank_account_number: T.nilable(String),
444
+ iban: T.nilable(String),
445
+ payment_reference: T.nilable(String),
446
+ swift: T.nilable(String)
447
+ ).returns(T.attached_class)
448
+ end
449
+ def self.new(
450
+ bank_account_number: nil,
451
+ iban: nil,
452
+ payment_reference: nil,
453
+ swift: nil
454
+ )
455
+ end
456
+
457
+ sig do
458
+ override.returns(
459
+ {
460
+ bank_account_number: T.nilable(String),
461
+ iban: T.nilable(String),
462
+ payment_reference: T.nilable(String),
463
+ swift: T.nilable(String)
464
+ }
465
+ )
466
+ end
467
+ def to_hash
468
+ end
469
+ end
470
+
471
+ class TaxDetail < EInvoiceAPI::Internal::Type::BaseModel
472
+ OrHash =
473
+ T.type_alias do
474
+ T.any(
475
+ EInvoiceAPI::DocumentResponse::TaxDetail,
476
+ EInvoiceAPI::Internal::AnyHash
477
+ )
478
+ end
479
+
480
+ sig { returns(T.nilable(String)) }
481
+ attr_accessor :amount
482
+
483
+ sig { returns(T.nilable(String)) }
484
+ attr_accessor :rate
485
+
486
+ sig do
487
+ params(amount: T.nilable(String), rate: T.nilable(String)).returns(
488
+ T.attached_class
489
+ )
490
+ end
491
+ def self.new(amount: nil, rate: nil)
492
+ end
493
+
494
+ sig do
495
+ override.returns(
496
+ { amount: T.nilable(String), rate: T.nilable(String) }
497
+ )
498
+ end
499
+ def to_hash
500
+ end
501
+ end
502
+ end
503
+ end
504
+ end
@@ -0,0 +1,30 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class DocumentRetrieveParams < EInvoiceAPI::Internal::Type::BaseModel
6
+ extend EInvoiceAPI::Internal::Type::RequestParameters::Converter
7
+ include EInvoiceAPI::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ EInvoiceAPI::DocumentRetrieveParams,
13
+ EInvoiceAPI::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig do
18
+ params(request_options: EInvoiceAPI::RequestOptions::OrHash).returns(
19
+ T.attached_class
20
+ )
21
+ end
22
+ def self.new(request_options: {})
23
+ end
24
+
25
+ sig { override.returns({ request_options: EInvoiceAPI::RequestOptions }) }
26
+ def to_hash
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,65 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ class DocumentSendParams < EInvoiceAPI::Internal::Type::BaseModel
6
+ extend EInvoiceAPI::Internal::Type::RequestParameters::Converter
7
+ include EInvoiceAPI::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(EInvoiceAPI::DocumentSendParams, EInvoiceAPI::Internal::AnyHash)
12
+ end
13
+
14
+ sig { returns(T.nilable(String)) }
15
+ attr_accessor :email
16
+
17
+ sig { returns(T.nilable(String)) }
18
+ attr_accessor :receiver_peppol_id
19
+
20
+ sig { returns(T.nilable(String)) }
21
+ attr_accessor :receiver_peppol_scheme
22
+
23
+ sig { returns(T.nilable(String)) }
24
+ attr_accessor :sender_peppol_id
25
+
26
+ sig { returns(T.nilable(String)) }
27
+ attr_accessor :sender_peppol_scheme
28
+
29
+ sig do
30
+ params(
31
+ email: T.nilable(String),
32
+ receiver_peppol_id: T.nilable(String),
33
+ receiver_peppol_scheme: T.nilable(String),
34
+ sender_peppol_id: T.nilable(String),
35
+ sender_peppol_scheme: T.nilable(String),
36
+ request_options: EInvoiceAPI::RequestOptions::OrHash
37
+ ).returns(T.attached_class)
38
+ end
39
+ def self.new(
40
+ email: nil,
41
+ receiver_peppol_id: nil,
42
+ receiver_peppol_scheme: nil,
43
+ sender_peppol_id: nil,
44
+ sender_peppol_scheme: nil,
45
+ request_options: {}
46
+ )
47
+ end
48
+
49
+ sig do
50
+ override.returns(
51
+ {
52
+ email: T.nilable(String),
53
+ receiver_peppol_id: T.nilable(String),
54
+ receiver_peppol_scheme: T.nilable(String),
55
+ sender_peppol_id: T.nilable(String),
56
+ sender_peppol_scheme: T.nilable(String),
57
+ request_options: EInvoiceAPI::RequestOptions
58
+ }
59
+ )
60
+ end
61
+ def to_hash
62
+ end
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,24 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ module DocumentState
6
+ extend EInvoiceAPI::Internal::Type::Enum
7
+
8
+ TaggedSymbol = T.type_alias { T.all(Symbol, EInvoiceAPI::DocumentState) }
9
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
10
+
11
+ DRAFT = T.let(:DRAFT, EInvoiceAPI::DocumentState::TaggedSymbol)
12
+ TRANSIT = T.let(:TRANSIT, EInvoiceAPI::DocumentState::TaggedSymbol)
13
+ FAILED = T.let(:FAILED, EInvoiceAPI::DocumentState::TaggedSymbol)
14
+ SENT = T.let(:SENT, EInvoiceAPI::DocumentState::TaggedSymbol)
15
+ RECEIVED = T.let(:RECEIVED, EInvoiceAPI::DocumentState::TaggedSymbol)
16
+
17
+ sig do
18
+ override.returns(T::Array[EInvoiceAPI::DocumentState::TaggedSymbol])
19
+ end
20
+ def self.values
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,21 @@
1
+ # typed: strong
2
+
3
+ module EInvoiceAPI
4
+ module Models
5
+ module DocumentType
6
+ extend EInvoiceAPI::Internal::Type::Enum
7
+
8
+ TaggedSymbol = T.type_alias { T.all(Symbol, EInvoiceAPI::DocumentType) }
9
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
10
+
11
+ INVOICE = T.let(:INVOICE, EInvoiceAPI::DocumentType::TaggedSymbol)
12
+ CREDIT_NOTE = T.let(:CREDIT_NOTE, EInvoiceAPI::DocumentType::TaggedSymbol)
13
+
14
+ sig do
15
+ override.returns(T::Array[EInvoiceAPI::DocumentType::TaggedSymbol])
16
+ end
17
+ def self.values
18
+ end
19
+ end
20
+ end
21
+ end