trevol 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 (231) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +15 -0
  3. data/GENERADO.md +14 -0
  4. data/LICENSE +21 -0
  5. data/README.md +173 -0
  6. data/lib/trevol/client.rb +94 -0
  7. data/lib/trevol/errors.rb +152 -0
  8. data/lib/trevol/llave.rb +21 -0
  9. data/lib/trevol/paginacion.rb +41 -0
  10. data/lib/trevol/transporte.rb +173 -0
  11. data/lib/trevol/webhook.rb +100 -0
  12. data/lib/trevol.rb +18 -0
  13. data/lib/trevol_generado/api/balance_api.rb +220 -0
  14. data/lib/trevol_generado/api/credit_notes_api.rb +671 -0
  15. data/lib/trevol_generado/api/debit_notes_api.rb +671 -0
  16. data/lib/trevol_generado/api/equivalent_document_adjustments_api.rb +691 -0
  17. data/lib/trevol_generado/api/equivalent_documents_api.rb +698 -0
  18. data/lib/trevol_generado/api/events_api.rb +231 -0
  19. data/lib/trevol_generado/api/general_api.rb +201 -0
  20. data/lib/trevol_generado/api/invoices_api.rb +736 -0
  21. data/lib/trevol_generado/api/payroll_adjustments_api.rb +637 -0
  22. data/lib/trevol_generado/api/payrolls_api.rb +637 -0
  23. data/lib/trevol_generado/api/radian_events_api.rb +431 -0
  24. data/lib/trevol_generado/api/requests_api.rb +97 -0
  25. data/lib/trevol_generado/api/support_document_adjustments_api.rb +565 -0
  26. data/lib/trevol_generado/api/support_documents_api.rb +565 -0
  27. data/lib/trevol_generado/api/webhook_endpoints_api.rb +556 -0
  28. data/lib/trevol_generado/api_client.rb +441 -0
  29. data/lib/trevol_generado/api_error.rb +58 -0
  30. data/lib/trevol_generado/api_model_base.rb +88 -0
  31. data/lib/trevol_generado/configuration.rb +392 -0
  32. data/lib/trevol_generado/models/acquirer.rb +209 -0
  33. data/lib/trevol_generado/models/air_collection.rb +205 -0
  34. data/lib/trevol_generado/models/air_extension.rb +216 -0
  35. data/lib/trevol_generado/models/allowance_charge.rb +250 -0
  36. data/lib/trevol_generado/models/alternative_currency.rb +180 -0
  37. data/lib/trevol_generado/models/balance.rb +244 -0
  38. data/lib/trevol_generado/models/balance_event_data.rb +172 -0
  39. data/lib/trevol_generado/models/balance_transaction.rb +265 -0
  40. data/lib/trevol_generado/models/balance_transaction_company.rb +172 -0
  41. data/lib/trevol_generado/models/balance_transaction_document.rb +173 -0
  42. data/lib/trevol_generado/models/balance_transaction_list.rb +191 -0
  43. data/lib/trevol_generado/models/carrier.rb +219 -0
  44. data/lib/trevol_generado/models/certificate_event_data.rb +180 -0
  45. data/lib/trevol_generado/models/cinema_extension.rb +214 -0
  46. data/lib/trevol_generado/models/cinema_screening.rb +256 -0
  47. data/lib/trevol_generado/models/company.rb +267 -0
  48. data/lib/trevol_generado/models/company_key.rb +182 -0
  49. data/lib/trevol_generado/models/company_numbering.rb +201 -0
  50. data/lib/trevol_generado/models/consumption.rb +246 -0
  51. data/lib/trevol_generado/models/consumption_adjustment.rb +204 -0
  52. data/lib/trevol_generado/models/contingency.rb +160 -0
  53. data/lib/trevol_generado/models/credit_note_list.rb +191 -0
  54. data/lib/trevol_generado/models/currency.rb +241 -0
  55. data/lib/trevol_generado/models/customer.rb +360 -0
  56. data/lib/trevol_generado/models/debit_note_list.rb +191 -0
  57. data/lib/trevol_generado/models/deleted_object.rb +178 -0
  58. data/lib/trevol_generado/models/delivery.rb +200 -0
  59. data/lib/trevol_generado/models/delivery_email.rb +181 -0
  60. data/lib/trevol_generado/models/delivery_terms.rb +169 -0
  61. data/lib/trevol_generado/models/dian_result.rb +182 -0
  62. data/lib/trevol_generado/models/dian_rule.rb +216 -0
  63. data/lib/trevol_generado/models/document.rb +432 -0
  64. data/lib/trevol_generado/models/document_event_data.rb +315 -0
  65. data/lib/trevol_generado/models/document_reference.rb +169 -0
  66. data/lib/trevol_generado/models/document_totals.rb +299 -0
  67. data/lib/trevol_generado/models/document_totals_currency.rb +197 -0
  68. data/lib/trevol_generado/models/document_totals_item.rb +196 -0
  69. data/lib/trevol_generado/models/document_totals_tax.rb +197 -0
  70. data/lib/trevol_generado/models/document_totals_withholding.rb +206 -0
  71. data/lib/trevol_generado/models/equivalent_adjustment_item.rb +374 -0
  72. data/lib/trevol_generado/models/equivalent_document.rb +470 -0
  73. data/lib/trevol_generado/models/equivalent_document_adjustment.rb +440 -0
  74. data/lib/trevol_generado/models/equivalent_document_adjustment_input.rb +388 -0
  75. data/lib/trevol_generado/models/equivalent_document_adjustment_list.rb +191 -0
  76. data/lib/trevol_generado/models/equivalent_document_contingency.rb +181 -0
  77. data/lib/trevol_generado/models/equivalent_document_contingency_backup.rb +171 -0
  78. data/lib/trevol_generado/models/equivalent_document_event_data.rb +313 -0
  79. data/lib/trevol_generado/models/equivalent_document_input.rb +365 -0
  80. data/lib/trevol_generado/models/equivalent_document_list.rb +191 -0
  81. data/lib/trevol_generado/models/equivalent_document_reference.rb +241 -0
  82. data/lib/trevol_generado/models/equivalent_item.rb +387 -0
  83. data/lib/trevol_generado/models/event.rb +223 -0
  84. data/lib/trevol_generado/models/event_claim.rb +170 -0
  85. data/lib/trevol_generado/models/event_delivery.rb +178 -0
  86. data/lib/trevol_generado/models/event_delivery_email.rb +161 -0
  87. data/lib/trevol_generado/models/event_dian_result.rb +173 -0
  88. data/lib/trevol_generado/models/event_dian_rule.rb +170 -0
  89. data/lib/trevol_generado/models/event_document_error.rb +170 -0
  90. data/lib/trevol_generado/models/event_equivalent_document_ref.rb +161 -0
  91. data/lib/trevol_generado/models/event_error.rb +170 -0
  92. data/lib/trevol_generado/models/event_invoice_ref.rb +161 -0
  93. data/lib/trevol_generado/models/event_list.rb +191 -0
  94. data/lib/trevol_generado/models/event_payroll_ref.rb +160 -0
  95. data/lib/trevol_generado/models/event_radian_invoice_ref.rb +181 -0
  96. data/lib/trevol_generado/models/event_resend_input.rb +177 -0
  97. data/lib/trevol_generado/models/event_support_document_ref.rb +161 -0
  98. data/lib/trevol_generado/models/extension.rb +215 -0
  99. data/lib/trevol_generado/models/foreign_address.rb +218 -0
  100. data/lib/trevol_generado/models/free_of_charge.rb +170 -0
  101. data/lib/trevol_generado/models/game.rb +203 -0
  102. data/lib/trevol_generado/models/game_credit.rb +204 -0
  103. data/lib/trevol_generado/models/games_extension.rb +216 -0
  104. data/lib/trevol_generado/models/games_venue.rb +204 -0
  105. data/lib/trevol_generado/models/interoperability.rb +205 -0
  106. data/lib/trevol_generado/models/interoperability_collection.rb +171 -0
  107. data/lib/trevol_generado/models/interoperability_data.rb +186 -0
  108. data/lib/trevol_generado/models/invoice_input.rb +364 -0
  109. data/lib/trevol_generado/models/invoice_list.rb +191 -0
  110. data/lib/trevol_generado/models/invoice_reference.rb +198 -0
  111. data/lib/trevol_generado/models/item.rb +439 -0
  112. data/lib/trevol_generado/models/item_allowance.rb +190 -0
  113. data/lib/trevol_generado/models/item_consignment.rb +286 -0
  114. data/lib/trevol_generado/models/item_mandator.rb +231 -0
  115. data/lib/trevol_generado/models/item_notary.rb +204 -0
  116. data/lib/trevol_generado/models/item_property.rb +223 -0
  117. data/lib/trevol_generado/models/item_tax.rb +246 -0
  118. data/lib/trevol_generado/models/item_withholding.rb +214 -0
  119. data/lib/trevol_generado/models/meter.rb +233 -0
  120. data/lib/trevol_generado/models/note_input.rb +329 -0
  121. data/lib/trevol_generado/models/numbering.rb +178 -0
  122. data/lib/trevol_generado/models/numbering_expiring_event_data.rb +209 -0
  123. data/lib/trevol_generado/models/numbering_low_event_data.rb +209 -0
  124. data/lib/trevol_generado/models/origin_note.rb +230 -0
  125. data/lib/trevol_generado/models/payment.rb +232 -0
  126. data/lib/trevol_generado/models/payment_method.rb +187 -0
  127. data/lib/trevol_generado/models/payroll.rb +455 -0
  128. data/lib/trevol_generado/models/payroll_adjustment.rb +467 -0
  129. data/lib/trevol_generado/models/payroll_adjustment_input.rb +362 -0
  130. data/lib/trevol_generado/models/payroll_adjustment_list.rb +191 -0
  131. data/lib/trevol_generado/models/payroll_basic.rb +204 -0
  132. data/lib/trevol_generado/models/payroll_compensated_vacation.rb +204 -0
  133. data/lib/trevol_generado/models/payroll_compensation.rb +205 -0
  134. data/lib/trevol_generado/models/payroll_deductions.rb +370 -0
  135. data/lib/trevol_generado/models/payroll_disability.rb +249 -0
  136. data/lib/trevol_generado/models/payroll_earnings.rb +406 -0
  137. data/lib/trevol_generado/models/payroll_employee.rb +437 -0
  138. data/lib/trevol_generado/models/payroll_employer.rb +238 -0
  139. data/lib/trevol_generado/models/payroll_epctv_bonus.rb +191 -0
  140. data/lib/trevol_generado/models/payroll_event_data.rb +303 -0
  141. data/lib/trevol_generado/models/payroll_files.rb +179 -0
  142. data/lib/trevol_generado/models/payroll_input.rb +420 -0
  143. data/lib/trevol_generado/models/payroll_leaves.rb +184 -0
  144. data/lib/trevol_generado/models/payroll_list.rb +191 -0
  145. data/lib/trevol_generado/models/payroll_loan.rb +204 -0
  146. data/lib/trevol_generado/models/payroll_novelty.rb +177 -0
  147. data/lib/trevol_generado/models/payroll_other_concept.rb +197 -0
  148. data/lib/trevol_generado/models/payroll_overtime.rb +262 -0
  149. data/lib/trevol_generado/models/payroll_paid_period.rb +222 -0
  150. data/lib/trevol_generado/models/payroll_payment.rb +215 -0
  151. data/lib/trevol_generado/models/payroll_percent_amount.rb +205 -0
  152. data/lib/trevol_generado/models/payroll_period.rb +247 -0
  153. data/lib/trevol_generado/models/payroll_place.rb +179 -0
  154. data/lib/trevol_generado/models/payroll_reference.rb +188 -0
  155. data/lib/trevol_generado/models/payroll_salary_amounts.rb +171 -0
  156. data/lib/trevol_generado/models/payroll_sanction.rb +205 -0
  157. data/lib/trevol_generado/models/payroll_service_bonus.rb +214 -0
  158. data/lib/trevol_generado/models/payroll_severance.rb +232 -0
  159. data/lib/trevol_generado/models/payroll_solidarity_fund.rb +191 -0
  160. data/lib/trevol_generado/models/payroll_totals.rb +188 -0
  161. data/lib/trevol_generado/models/payroll_transport.rb +181 -0
  162. data/lib/trevol_generado/models/payroll_unpaid_period.rb +195 -0
  163. data/lib/trevol_generado/models/payroll_vacation.rb +173 -0
  164. data/lib/trevol_generado/models/payroll_workplace.rb +188 -0
  165. data/lib/trevol_generado/models/period.rb +169 -0
  166. data/lib/trevol_generado/models/physical_document.rb +179 -0
  167. data/lib/trevol_generado/models/pos.rb +186 -0
  168. data/lib/trevol_generado/models/pos_buyer.rb +181 -0
  169. data/lib/trevol_generado/models/pos_register.rb +269 -0
  170. data/lib/trevol_generado/models/prepayment.rb +248 -0
  171. data/lib/trevol_generado/models/preview.rb +195 -0
  172. data/lib/trevol_generado/models/problem.rb +329 -0
  173. data/lib/trevol_generado/models/problem_error.rb +178 -0
  174. data/lib/trevol_generado/models/public_services_extension.rb +385 -0
  175. data/lib/trevol_generado/models/radian_event.rb +359 -0
  176. data/lib/trevol_generado/models/radian_event_data.rb +289 -0
  177. data/lib/trevol_generado/models/radian_event_input.rb +284 -0
  178. data/lib/trevol_generado/models/radian_event_invoice.rb +208 -0
  179. data/lib/trevol_generado/models/radian_event_list.rb +191 -0
  180. data/lib/trevol_generado/models/received_invoice.rb +200 -0
  181. data/lib/trevol_generado/models/received_invoice_issuer.rb +190 -0
  182. data/lib/trevol_generado/models/references.rb +182 -0
  183. data/lib/trevol_generado/models/request_list.rb +191 -0
  184. data/lib/trevol_generado/models/request_log.rb +275 -0
  185. data/lib/trevol_generado/models/seller.rb +385 -0
  186. data/lib/trevol_generado/models/shipment.rb +178 -0
  187. data/lib/trevol_generado/models/show_event.rb +276 -0
  188. data/lib/trevol_generado/models/show_extension.rb +203 -0
  189. data/lib/trevol_generado/models/show_producer.rb +212 -0
  190. data/lib/trevol_generado/models/standard_code.rb +169 -0
  191. data/lib/trevol_generado/models/stock_exchange_extension.rb +320 -0
  192. data/lib/trevol_generado/models/stock_exchange_prices.rb +169 -0
  193. data/lib/trevol_generado/models/support_adjustment_item.rb +295 -0
  194. data/lib/trevol_generado/models/support_adjustment_reference.rb +188 -0
  195. data/lib/trevol_generado/models/support_currency.rb +231 -0
  196. data/lib/trevol_generado/models/support_document.rb +401 -0
  197. data/lib/trevol_generado/models/support_document_adjustment.rb +409 -0
  198. data/lib/trevol_generado/models/support_document_adjustment_input.rb +331 -0
  199. data/lib/trevol_generado/models/support_document_adjustment_list.rb +191 -0
  200. data/lib/trevol_generado/models/support_document_delivery.rb +199 -0
  201. data/lib/trevol_generado/models/support_document_event_data.rb +305 -0
  202. data/lib/trevol_generado/models/support_document_input.rb +331 -0
  203. data/lib/trevol_generado/models/support_document_list.rb +191 -0
  204. data/lib/trevol_generado/models/support_document_reference.rb +198 -0
  205. data/lib/trevol_generado/models/support_item.rb +317 -0
  206. data/lib/trevol_generado/models/support_item_charge.rb +180 -0
  207. data/lib/trevol_generado/models/support_item_tax.rb +197 -0
  208. data/lib/trevol_generado/models/support_item_withholding.rb +205 -0
  209. data/lib/trevol_generado/models/tacit_acceptance.rb +224 -0
  210. data/lib/trevol_generado/models/tacit_acceptance_rule.rb +226 -0
  211. data/lib/trevol_generado/models/test_event_data.rb +171 -0
  212. data/lib/trevol_generado/models/third_party_charge.rb +277 -0
  213. data/lib/trevol_generado/models/third_party_company.rb +203 -0
  214. data/lib/trevol_generado/models/top_up.rb +199 -0
  215. data/lib/trevol_generado/models/top_up_buyer.rb +352 -0
  216. data/lib/trevol_generado/models/top_up_input.rb +187 -0
  217. data/lib/trevol_generado/models/top_up_wompi.rb +209 -0
  218. data/lib/trevol_generado/models/transport_extension.rb +281 -0
  219. data/lib/trevol_generado/models/webhook_delivery.rb +267 -0
  220. data/lib/trevol_generado/models/webhook_delivery_attempt.rb +192 -0
  221. data/lib/trevol_generado/models/webhook_delivery_list.rb +191 -0
  222. data/lib/trevol_generado/models/webhook_endpoint.rb +317 -0
  223. data/lib/trevol_generado/models/webhook_endpoint_input.rb +229 -0
  224. data/lib/trevol_generado/models/webhook_endpoint_list.rb +191 -0
  225. data/lib/trevol_generado/models/webhook_endpoint_rotate_input.rb +160 -0
  226. data/lib/trevol_generado/models/webhook_endpoint_update.rb +227 -0
  227. data/lib/trevol_generado/models/withholding.rb +224 -0
  228. data/lib/trevol_generado/tablas.rb +243 -0
  229. data/lib/trevol_generado/version.rb +15 -0
  230. data/lib/trevol_generado.rb +251 -0
  231. metadata +386 -0
@@ -0,0 +1,401 @@
1
+ =begin
2
+ #API de Trevol
3
+
4
+ #Trevol API. Documentación: https://platform.trevol.si/docs
5
+
6
+ The version of the OpenAPI document: 2026-10-22
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.26.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module TrevolGenerado
17
+ # Un documento soporte en adquisiciones a no obligados a facturar (Invoice 05). Se genera, no se expide: archivos `xml` y `dian_response`.
18
+ class SupportDocument < ApiModelBase
19
+ # sd_…
20
+ attr_accessor :id
21
+
22
+ # Valores conocidos: `support_document`.
23
+ attr_accessor :object
24
+
25
+ # Valores conocidos: `test`, `live`.
26
+ attr_accessor :environment
27
+
28
+ # `processing` solo en la versión 2026-10-22: la DIAN no confirmó y Trevol sigue resolviendo el documento (el resultado llega por GET y por webhook; no crees otro documento para la misma venta). En 2026-10-21 ese documento se ve como `error`. Valores conocidos: `pending`, `sending`, `accepted`, `rejected`, `error`, `processing`.
29
+ attr_accessor :status
30
+
31
+ attr_accessor :number
32
+
33
+ attr_accessor :prefix
34
+
35
+ attr_accessor :external_id
36
+
37
+ # Valores conocidos: `api`, `app`, `contapyme`.
38
+ attr_accessor :origin
39
+
40
+ attr_accessor :qr
41
+
42
+ attr_accessor :issued_at
43
+
44
+ attr_accessor :items
45
+
46
+ attr_accessor :payment
47
+
48
+ attr_accessor :currency
49
+
50
+ # Montos como texto decimal con 2 decimales, siempre en pesos. Con moneda extranjera, `currency` trae el equivalente.
51
+ attr_accessor :totals
52
+
53
+ attr_accessor :dian
54
+
55
+ # El documento soporte se genera, no se expide: no hay PDF, ZIP ni correo. Solo hay XML y la respuesta de la DIAN.
56
+ attr_accessor :delivery
57
+
58
+ attr_accessor :created_at
59
+
60
+ attr_accessor :updated_at
61
+
62
+ # El código único del documento (CUDS, 96 hex).
63
+ attr_accessor :cuds
64
+
65
+ attr_accessor :seller
66
+
67
+ attr_accessor :notes
68
+
69
+ attr_accessor :references
70
+
71
+ attr_accessor :allowance_charges
72
+
73
+ # Valores conocidos: `per_operation`, `weekly`.
74
+ attr_accessor :transmission
75
+
76
+ attr_accessor :adjustment_note
77
+
78
+ # Attribute mapping from ruby-style variable name to JSON key.
79
+ def self.attribute_map
80
+ {
81
+ :'id' => :'id',
82
+ :'object' => :'object',
83
+ :'environment' => :'environment',
84
+ :'status' => :'status',
85
+ :'number' => :'number',
86
+ :'prefix' => :'prefix',
87
+ :'external_id' => :'external_id',
88
+ :'origin' => :'origin',
89
+ :'qr' => :'qr',
90
+ :'issued_at' => :'issued_at',
91
+ :'items' => :'items',
92
+ :'payment' => :'payment',
93
+ :'currency' => :'currency',
94
+ :'totals' => :'totals',
95
+ :'dian' => :'dian',
96
+ :'delivery' => :'delivery',
97
+ :'created_at' => :'created_at',
98
+ :'updated_at' => :'updated_at',
99
+ :'cuds' => :'cuds',
100
+ :'seller' => :'seller',
101
+ :'notes' => :'notes',
102
+ :'references' => :'references',
103
+ :'allowance_charges' => :'allowance_charges',
104
+ :'transmission' => :'transmission',
105
+ :'adjustment_note' => :'adjustment_note'
106
+ }
107
+ end
108
+
109
+ # Returns attribute mapping this model knows about
110
+ def self.acceptable_attribute_map
111
+ attribute_map
112
+ end
113
+
114
+ # Returns all the JSON keys this model knows about
115
+ def self.acceptable_attributes
116
+ acceptable_attribute_map.values
117
+ end
118
+
119
+ # Attribute type mapping.
120
+ def self.openapi_types
121
+ {
122
+ :'id' => :'String',
123
+ :'object' => :'String',
124
+ :'environment' => :'String',
125
+ :'status' => :'String',
126
+ :'number' => :'String',
127
+ :'prefix' => :'String',
128
+ :'external_id' => :'String',
129
+ :'origin' => :'String',
130
+ :'qr' => :'String',
131
+ :'issued_at' => :'Time',
132
+ :'items' => :'Array<SupportItem>',
133
+ :'payment' => :'Payment',
134
+ :'currency' => :'SupportCurrency',
135
+ :'totals' => :'DocumentTotals',
136
+ :'dian' => :'DianResult',
137
+ :'delivery' => :'SupportDocumentDelivery',
138
+ :'created_at' => :'Time',
139
+ :'updated_at' => :'Time',
140
+ :'cuds' => :'String',
141
+ :'seller' => :'Seller',
142
+ :'notes' => :'Array<String>',
143
+ :'references' => :'References',
144
+ :'allowance_charges' => :'Array<AllowanceCharge>',
145
+ :'transmission' => :'String',
146
+ :'adjustment_note' => :'SupportAdjustmentReference'
147
+ }
148
+ end
149
+
150
+ # List of attributes with nullable: true
151
+ def self.openapi_nullable
152
+ Set.new([
153
+ :'number',
154
+ :'prefix',
155
+ :'external_id',
156
+ :'qr',
157
+ :'issued_at',
158
+ :'totals',
159
+ :'updated_at',
160
+ :'cuds',
161
+ :'adjustment_note'
162
+ ])
163
+ end
164
+
165
+ # Returns attribute type mapping
166
+ def self.acceptable_openapi_types
167
+ openapi_types
168
+ end
169
+
170
+ # Returns the nullable attributes
171
+ def self.acceptable_openapi_nullable
172
+ openapi_nullable
173
+ end
174
+
175
+ # Initializes the object
176
+ # @param [Hash] attributes Model attributes in the form of hash
177
+ def initialize(attributes = {})
178
+ if (!attributes.is_a?(Hash))
179
+ fail ArgumentError, "The input argument (attributes) must be a hash in `TrevolGenerado::SupportDocument` initialize method"
180
+ end
181
+
182
+ # check to see if the attribute exists and convert string to symbol for hash key
183
+ acceptable_attribute_map = self.class.acceptable_attribute_map
184
+ attributes = attributes.each_with_object({}) { |(k, v), h|
185
+ if (!acceptable_attribute_map.key?(k.to_sym))
186
+ fail ArgumentError, "`#{k}` is not a valid attribute in `TrevolGenerado::SupportDocument`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
187
+ end
188
+ h[k.to_sym] = v
189
+ }
190
+
191
+ if attributes.key?(:'id')
192
+ self.id = attributes[:'id']
193
+ end
194
+
195
+ if attributes.key?(:'object')
196
+ self.object = attributes[:'object']
197
+ end
198
+
199
+ if attributes.key?(:'environment')
200
+ self.environment = attributes[:'environment']
201
+ end
202
+
203
+ if attributes.key?(:'status')
204
+ self.status = attributes[:'status']
205
+ end
206
+
207
+ if attributes.key?(:'number')
208
+ self.number = attributes[:'number']
209
+ end
210
+
211
+ if attributes.key?(:'prefix')
212
+ self.prefix = attributes[:'prefix']
213
+ end
214
+
215
+ if attributes.key?(:'external_id')
216
+ self.external_id = attributes[:'external_id']
217
+ end
218
+
219
+ if attributes.key?(:'origin')
220
+ self.origin = attributes[:'origin']
221
+ end
222
+
223
+ if attributes.key?(:'qr')
224
+ self.qr = attributes[:'qr']
225
+ end
226
+
227
+ if attributes.key?(:'issued_at')
228
+ self.issued_at = attributes[:'issued_at']
229
+ end
230
+
231
+ if attributes.key?(:'items')
232
+ if (value = attributes[:'items']).is_a?(Array)
233
+ self.items = value
234
+ end
235
+ end
236
+
237
+ if attributes.key?(:'payment')
238
+ self.payment = attributes[:'payment']
239
+ end
240
+
241
+ if attributes.key?(:'currency')
242
+ self.currency = attributes[:'currency']
243
+ end
244
+
245
+ if attributes.key?(:'totals')
246
+ self.totals = attributes[:'totals']
247
+ end
248
+
249
+ if attributes.key?(:'dian')
250
+ self.dian = attributes[:'dian']
251
+ end
252
+
253
+ if attributes.key?(:'delivery')
254
+ self.delivery = attributes[:'delivery']
255
+ end
256
+
257
+ if attributes.key?(:'created_at')
258
+ self.created_at = attributes[:'created_at']
259
+ end
260
+
261
+ if attributes.key?(:'updated_at')
262
+ self.updated_at = attributes[:'updated_at']
263
+ end
264
+
265
+ if attributes.key?(:'cuds')
266
+ self.cuds = attributes[:'cuds']
267
+ end
268
+
269
+ if attributes.key?(:'seller')
270
+ self.seller = attributes[:'seller']
271
+ end
272
+
273
+ if attributes.key?(:'notes')
274
+ if (value = attributes[:'notes']).is_a?(Array)
275
+ self.notes = value
276
+ end
277
+ end
278
+
279
+ if attributes.key?(:'references')
280
+ self.references = attributes[:'references']
281
+ end
282
+
283
+ if attributes.key?(:'allowance_charges')
284
+ if (value = attributes[:'allowance_charges']).is_a?(Array)
285
+ self.allowance_charges = value
286
+ end
287
+ end
288
+
289
+ if attributes.key?(:'transmission')
290
+ self.transmission = attributes[:'transmission']
291
+ end
292
+
293
+ if attributes.key?(:'adjustment_note')
294
+ self.adjustment_note = attributes[:'adjustment_note']
295
+ end
296
+ end
297
+
298
+ # Show invalid properties with the reasons. Usually used together with valid?
299
+ # @return Array for valid properties with the reasons
300
+ def list_invalid_properties
301
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
302
+ invalid_properties = Array.new
303
+ invalid_properties
304
+ end
305
+
306
+ # Check to see if the all the properties in the model are valid
307
+ # @return true if the model is valid
308
+ def valid?
309
+ warn '[DEPRECATED] the `valid?` method is obsolete'
310
+ true
311
+ end
312
+
313
+ # Checks equality by comparing each attribute.
314
+ # @param [Object] Object to be compared
315
+ def ==(o)
316
+ return true if self.equal?(o)
317
+ self.class == o.class &&
318
+ id == o.id &&
319
+ object == o.object &&
320
+ environment == o.environment &&
321
+ status == o.status &&
322
+ number == o.number &&
323
+ prefix == o.prefix &&
324
+ external_id == o.external_id &&
325
+ origin == o.origin &&
326
+ qr == o.qr &&
327
+ issued_at == o.issued_at &&
328
+ items == o.items &&
329
+ payment == o.payment &&
330
+ currency == o.currency &&
331
+ totals == o.totals &&
332
+ dian == o.dian &&
333
+ delivery == o.delivery &&
334
+ created_at == o.created_at &&
335
+ updated_at == o.updated_at &&
336
+ cuds == o.cuds &&
337
+ seller == o.seller &&
338
+ notes == o.notes &&
339
+ references == o.references &&
340
+ allowance_charges == o.allowance_charges &&
341
+ transmission == o.transmission &&
342
+ adjustment_note == o.adjustment_note
343
+ end
344
+
345
+ # @see the `==` method
346
+ # @param [Object] Object to be compared
347
+ def eql?(o)
348
+ self == o
349
+ end
350
+
351
+ # Calculates hash code according to all attributes.
352
+ # @return [Integer] Hash code
353
+ def hash
354
+ [id, object, environment, status, number, prefix, external_id, origin, qr, issued_at, items, payment, currency, totals, dian, delivery, created_at, updated_at, cuds, seller, notes, references, allowance_charges, transmission, adjustment_note].hash
355
+ end
356
+
357
+ # Builds the object from hash
358
+ # @param [Hash] attributes Model attributes in the form of hash
359
+ # @return [Object] Returns the model itself
360
+ def self.build_from_hash(attributes)
361
+ return nil unless attributes.is_a?(Hash)
362
+ attributes = attributes.transform_keys(&:to_sym)
363
+ # include attributes inherited from allOf parents (the nearest declaration wins)
364
+ map = acceptable_attribute_map
365
+ transformed_hash = {}
366
+ acceptable_openapi_types.each_pair do |key, type|
367
+ if attributes.key?(map[key]) && attributes[map[key]].nil?
368
+ transformed_hash["#{key}"] = nil
369
+ elsif type =~ /\AArray<(.*)>/i
370
+ # check to ensure the input is an array given that the attribute
371
+ # is documented as an array but the input is not
372
+ if attributes[map[key]].is_a?(Array)
373
+ transformed_hash["#{key}"] = attributes[map[key]].map { |v| _deserialize($1, v) }
374
+ end
375
+ elsif !attributes[map[key]].nil?
376
+ transformed_hash["#{key}"] = _deserialize(type, attributes[map[key]])
377
+ end
378
+ end
379
+ new(transformed_hash)
380
+ end
381
+
382
+ # Returns the object in the form of hash
383
+ # @return [Hash] Returns the object in the form of hash
384
+ def to_hash
385
+ hash = {}
386
+ # include attributes inherited from allOf parents (the nearest declaration wins)
387
+ self.class.acceptable_attribute_map.each_pair do |attr, param|
388
+ value = self.send(attr)
389
+ if value.nil?
390
+ is_nullable = self.class.acceptable_openapi_nullable.include?(attr)
391
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
392
+ end
393
+
394
+ hash[param] = _to_hash(value)
395
+ end
396
+ hash
397
+ end
398
+
399
+ end
400
+
401
+ end