merge_accounting_client 1.0.4 → 1.0.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 (309) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +61 -5
  3. data/docs/Account.md +12 -8
  4. data/docs/AccountEndpointRequest.md +18 -0
  5. data/docs/AccountIntegration.md +1 -1
  6. data/docs/AccountRequest.md +40 -0
  7. data/docs/AccountResponse.md +24 -0
  8. data/docs/AccountingAttachment.md +7 -3
  9. data/docs/AccountingAttachmentEndpointRequest.md +18 -0
  10. data/docs/AccountingAttachmentRequest.md +26 -0
  11. data/docs/AccountingAttachmentResponse.md +24 -0
  12. data/docs/AccountingPhoneNumberRequest.md +24 -0
  13. data/docs/AccountsApi.md +163 -5
  14. data/docs/Address.md +5 -3
  15. data/docs/AddressesApi.md +4 -2
  16. data/docs/AttachmentsApi.md +154 -0
  17. data/docs/BalanceSheet.md +11 -7
  18. data/docs/BalanceSheetsApi.md +2 -0
  19. data/docs/CashFlowStatement.md +11 -7
  20. data/docs/CashFlowStatementsApi.md +2 -0
  21. data/docs/CommonModelScopeData.md +20 -0
  22. data/docs/CommonModelScopes.md +20 -0
  23. data/docs/CommonModelScopesApi.md +157 -0
  24. data/docs/CommonModelScopesBodyRequest.md +22 -0
  25. data/docs/CommonModelScopesDisabledModels.md +26 -0
  26. data/docs/CommonModelScopesDisabledModelsEnabledActionsEnum.md +15 -0
  27. data/docs/CommonModelScopesPostInnerDeserializerRequest.md +22 -0
  28. data/docs/CommonModelScopesUpdateSerializer.md +18 -0
  29. data/docs/CompanyInfo.md +6 -4
  30. data/docs/CompanyInfoApi.md +0 -4
  31. data/docs/ConditionSchema.md +30 -0
  32. data/docs/ConditionTypeEnum.md +15 -0
  33. data/docs/Contact.md +8 -4
  34. data/docs/ContactEndpointRequest.md +18 -0
  35. data/docs/ContactRequest.md +40 -0
  36. data/docs/ContactResponse.md +24 -0
  37. data/docs/ContactsApi.md +163 -9
  38. data/docs/CreditNote.md +12 -8
  39. data/docs/CreditNoteLineItem.md +7 -3
  40. data/docs/CreditNotesApi.md +15 -9
  41. data/docs/DataPassthroughRequest.md +1 -1
  42. data/docs/EnabledActionsEnum.md +15 -0
  43. data/docs/EndUserDetailsRequest.md +3 -1
  44. data/docs/Expense.md +18 -12
  45. data/docs/ExpenseEndpointRequest.md +18 -0
  46. data/docs/ExpenseLine.md +11 -5
  47. data/docs/ExpenseLineRequest.md +38 -0
  48. data/docs/ExpenseRequest.md +38 -0
  49. data/docs/ExpenseResponse.md +24 -0
  50. data/docs/ExpensesApi.md +159 -5
  51. data/docs/IncomeStatement.md +15 -11
  52. data/docs/IncomeStatementsApi.md +2 -0
  53. data/docs/Invoice.md +21 -15
  54. data/docs/InvoiceLineItem.md +15 -5
  55. data/docs/InvoiceLineItemRequest.md +15 -3
  56. data/docs/InvoiceRequest.md +17 -11
  57. data/docs/InvoicesApi.md +16 -10
  58. data/docs/Issue.md +9 -7
  59. data/docs/IssuesApi.md +2 -2
  60. data/docs/Item.md +11 -7
  61. data/docs/ItemsApi.md +11 -9
  62. data/docs/JournalEntriesApi.md +7 -5
  63. data/docs/JournalEntry.md +18 -10
  64. data/docs/JournalEntryRequest.md +14 -8
  65. data/docs/JournalLine.md +6 -4
  66. data/docs/JournalLineRequest.md +10 -4
  67. data/docs/LinkToken.md +1 -1
  68. data/docs/LinkedAccountCondition.md +28 -0
  69. data/docs/LinkedAccountConditionRequest.md +22 -0
  70. data/docs/LinkedAccountSelectiveSyncConfiguration.md +18 -0
  71. data/docs/LinkedAccountSelectiveSyncConfigurationListRequest.md +18 -0
  72. data/docs/LinkedAccountSelectiveSyncConfigurationRequest.md +18 -0
  73. data/docs/LinkedAccountsApi.md +2 -2
  74. data/docs/MetaResponse.md +2 -0
  75. data/docs/MultipartFormFieldRequest.md +1 -1
  76. data/docs/OperatorSchema.md +20 -0
  77. data/docs/PaginatedConditionSchemaList.md +22 -0
  78. data/docs/Payment.md +14 -6
  79. data/docs/PaymentEndpointRequest.md +18 -0
  80. data/docs/PaymentRequest.md +34 -0
  81. data/docs/PaymentResponse.md +24 -0
  82. data/docs/PaymentsApi.md +159 -5
  83. data/docs/PostingStatusEnum.md +15 -0
  84. data/docs/PurchaseOrder.md +19 -13
  85. data/docs/PurchaseOrderEndpointRequest.md +18 -0
  86. data/docs/PurchaseOrderLineItem.md +10 -2
  87. data/docs/PurchaseOrderLineItemRequest.md +44 -0
  88. data/docs/PurchaseOrderRequest.md +44 -0
  89. data/docs/PurchaseOrderResponse.md +24 -0
  90. data/docs/PurchaseOrdersApi.md +167 -9
  91. data/docs/ReportItem.md +3 -1
  92. data/docs/SelectiveSyncApi.md +233 -0
  93. data/docs/SelectiveSyncConfigurationsUsageEnum.md +15 -0
  94. data/docs/SyncStatus.md +5 -3
  95. data/docs/TaxRate.md +11 -7
  96. data/docs/TaxRatesApi.md +2 -0
  97. data/docs/TrackingCategoriesApi.md +11 -5
  98. data/docs/TrackingCategory.md +13 -9
  99. data/docs/Transaction.md +20 -14
  100. data/docs/TransactionLineItem.md +9 -3
  101. data/docs/TransactionsApi.md +7 -5
  102. data/docs/VendorCredit.md +13 -7
  103. data/docs/VendorCreditLine.md +6 -2
  104. data/docs/VendorCreditsApi.md +7 -5
  105. data/lib/merge_accounting_client/api/accounts_api.rb +159 -4
  106. data/lib/merge_accounting_client/api/addresses_api.rb +9 -2
  107. data/lib/merge_accounting_client/api/attachments_api.rb +141 -0
  108. data/lib/merge_accounting_client/api/balance_sheets_api.rb +3 -0
  109. data/lib/merge_accounting_client/api/cash_flow_statements_api.rb +3 -0
  110. data/lib/merge_accounting_client/api/common_model_scopes_api.rb +146 -0
  111. data/lib/merge_accounting_client/api/company_info_api.rb +0 -14
  112. data/lib/merge_accounting_client/api/contacts_api.rb +159 -18
  113. data/lib/merge_accounting_client/api/credit_notes_api.rb +27 -18
  114. data/lib/merge_accounting_client/api/expenses_api.rb +147 -14
  115. data/lib/merge_accounting_client/api/income_statements_api.rb +3 -0
  116. data/lib/merge_accounting_client/api/invoices_api.rb +29 -20
  117. data/lib/merge_accounting_client/api/issues_api.rb +2 -2
  118. data/lib/merge_accounting_client/api/items_api.rb +21 -18
  119. data/lib/merge_accounting_client/api/journal_entries_api.rb +9 -14
  120. data/lib/merge_accounting_client/api/linked_accounts_api.rb +3 -3
  121. data/lib/merge_accounting_client/api/payments_api.rb +147 -14
  122. data/lib/merge_accounting_client/api/purchase_orders_api.rb +165 -18
  123. data/lib/merge_accounting_client/api/selective_sync_api.rb +225 -0
  124. data/lib/merge_accounting_client/api/tax_rates_api.rb +3 -0
  125. data/lib/merge_accounting_client/api/tracking_categories_api.rb +21 -4
  126. data/lib/merge_accounting_client/api/transactions_api.rb +9 -14
  127. data/lib/merge_accounting_client/api/vendor_credits_api.rb +9 -14
  128. data/lib/merge_accounting_client/models/account.rb +45 -21
  129. data/lib/merge_accounting_client/models/account_endpoint_request.rb +223 -0
  130. data/lib/merge_accounting_client/models/account_integration.rb +1 -1
  131. data/lib/merge_accounting_client/models/account_request.rb +344 -0
  132. data/lib/merge_accounting_client/models/account_response.rb +266 -0
  133. data/lib/merge_accounting_client/models/accounting_attachment.rb +39 -16
  134. data/lib/merge_accounting_client/models/accounting_attachment_endpoint_request.rb +223 -0
  135. data/lib/merge_accounting_client/models/accounting_attachment_request.rb +282 -0
  136. data/lib/merge_accounting_client/models/accounting_attachment_response.rb +266 -0
  137. data/lib/merge_accounting_client/models/accounting_phone_number_request.rb +256 -0
  138. data/lib/merge_accounting_client/models/address.rb +16 -5
  139. data/lib/merge_accounting_client/models/balance_sheet.rb +41 -18
  140. data/lib/merge_accounting_client/models/cash_flow_statement.rb +41 -18
  141. data/lib/merge_accounting_client/models/categories_enum.rb +3 -1
  142. data/lib/merge_accounting_client/models/category_enum.rb +3 -1
  143. data/lib/merge_accounting_client/models/common_model_scope_data.rb +234 -0
  144. data/lib/merge_accounting_client/models/common_model_scopes.rb +234 -0
  145. data/lib/merge_accounting_client/models/common_model_scopes_body_request.rb +274 -0
  146. data/lib/merge_accounting_client/models/common_model_scopes_disabled_models.rb +283 -0
  147. data/lib/merge_accounting_client/models/common_model_scopes_disabled_models_enabled_actions_enum.rb +45 -0
  148. data/lib/merge_accounting_client/models/common_model_scopes_post_inner_deserializer_request.rb +274 -0
  149. data/lib/merge_accounting_client/models/common_model_scopes_update_serializer.rb +226 -0
  150. data/lib/merge_accounting_client/models/company_info.rb +29 -17
  151. data/lib/merge_accounting_client/models/condition_schema.rb +298 -0
  152. data/lib/merge_accounting_client/models/condition_type_enum.rb +50 -0
  153. data/lib/merge_accounting_client/models/contact.rb +41 -18
  154. data/lib/merge_accounting_client/models/contact_endpoint_request.rb +223 -0
  155. data/lib/merge_accounting_client/models/contact_request.rb +346 -0
  156. data/lib/merge_accounting_client/models/contact_response.rb +266 -0
  157. data/lib/merge_accounting_client/models/credit_note.rb +43 -20
  158. data/lib/merge_accounting_client/models/credit_note_line_item.rb +40 -12
  159. data/lib/merge_accounting_client/models/data_passthrough_request.rb +1 -0
  160. data/lib/merge_accounting_client/models/enabled_actions_enum.rb +45 -0
  161. data/lib/merge_accounting_client/models/end_user_details_request.rb +18 -5
  162. data/lib/merge_accounting_client/models/expense.rb +91 -38
  163. data/lib/merge_accounting_client/models/expense_endpoint_request.rb +223 -0
  164. data/lib/merge_accounting_client/models/expense_line.rb +51 -17
  165. data/lib/merge_accounting_client/models/expense_line_request.rb +332 -0
  166. data/lib/merge_accounting_client/models/expense_request.rb +350 -0
  167. data/lib/merge_accounting_client/models/expense_response.rb +266 -0
  168. data/lib/merge_accounting_client/models/income_statement.rb +44 -21
  169. data/lib/merge_accounting_client/models/invoice.rb +94 -42
  170. data/lib/merge_accounting_client/models/invoice_line_item.rb +99 -26
  171. data/lib/merge_accounting_client/models/invoice_line_item_request.rb +102 -17
  172. data/lib/merge_accounting_client/models/invoice_request.rb +85 -32
  173. data/lib/merge_accounting_client/models/issue.rb +15 -4
  174. data/lib/merge_accounting_client/models/item.rb +44 -19
  175. data/lib/merge_accounting_client/models/journal_entry.rb +100 -38
  176. data/lib/merge_accounting_client/models/journal_entry_request.rb +92 -40
  177. data/lib/merge_accounting_client/models/journal_line.rb +28 -17
  178. data/lib/merge_accounting_client/models/journal_line_request.rb +52 -17
  179. data/lib/merge_accounting_client/models/link_token.rb +0 -5
  180. data/lib/merge_accounting_client/models/linked_account_condition.rb +282 -0
  181. data/lib/merge_accounting_client/models/linked_account_condition_request.rb +269 -0
  182. data/lib/merge_accounting_client/models/linked_account_selective_sync_configuration.rb +221 -0
  183. data/lib/merge_accounting_client/models/linked_account_selective_sync_configuration_list_request.rb +226 -0
  184. data/lib/merge_accounting_client/models/linked_account_selective_sync_configuration_request.rb +226 -0
  185. data/lib/merge_accounting_client/models/meta_response.rb +12 -1
  186. data/lib/merge_accounting_client/models/multipart_form_field_request.rb +1 -1
  187. data/lib/merge_accounting_client/models/operator_schema.rb +229 -0
  188. data/lib/merge_accounting_client/models/paginated_condition_schema_list.rb +240 -0
  189. data/lib/merge_accounting_client/models/payment.rb +82 -18
  190. data/lib/merge_accounting_client/models/payment_endpoint_request.rb +223 -0
  191. data/lib/merge_accounting_client/models/payment_request.rb +328 -0
  192. data/lib/merge_accounting_client/models/payment_response.rb +266 -0
  193. data/lib/merge_accounting_client/models/posting_status_enum.rb +45 -0
  194. data/lib/merge_accounting_client/models/purchase_order.rb +92 -41
  195. data/lib/merge_accounting_client/models/purchase_order_endpoint_request.rb +223 -0
  196. data/lib/merge_accounting_client/models/purchase_order_line_item.rb +79 -12
  197. data/lib/merge_accounting_client/models/purchase_order_line_item_request.rb +422 -0
  198. data/lib/merge_accounting_client/models/purchase_order_request.rb +383 -0
  199. data/lib/merge_accounting_client/models/purchase_order_response.rb +266 -0
  200. data/lib/merge_accounting_client/models/report_item.rb +15 -4
  201. data/lib/merge_accounting_client/models/selective_sync_configurations_usage_enum.rb +45 -0
  202. data/lib/merge_accounting_client/models/sync_status.rb +13 -4
  203. data/lib/merge_accounting_client/models/tax_rate.rb +59 -36
  204. data/lib/merge_accounting_client/models/tracking_category.rb +62 -38
  205. data/lib/merge_accounting_client/models/transaction.rb +97 -46
  206. data/lib/merge_accounting_client/models/transaction_line_item.rb +75 -19
  207. data/lib/merge_accounting_client/models/vendor_credit.rb +70 -18
  208. data/lib/merge_accounting_client/models/vendor_credit_line.rb +34 -6
  209. data/lib/merge_accounting_client/version.rb +1 -1
  210. data/lib/merge_accounting_client.rb +42 -1
  211. data/spec/api/accounts_api_spec.rb +30 -2
  212. data/spec/api/addresses_api_spec.rb +2 -1
  213. data/spec/api/attachments_api_spec.rb +26 -0
  214. data/spec/api/balance_sheets_api_spec.rb +1 -0
  215. data/spec/api/cash_flow_statements_api_spec.rb +1 -0
  216. data/spec/api/common_model_scopes_api_spec.rb +58 -0
  217. data/spec/api/company_info_api_spec.rb +0 -2
  218. data/spec/api/contacts_api_spec.rb +30 -4
  219. data/spec/api/credit_notes_api_spec.rb +7 -4
  220. data/spec/api/expenses_api_spec.rb +28 -2
  221. data/spec/api/income_statements_api_spec.rb +1 -0
  222. data/spec/api/invoices_api_spec.rb +8 -5
  223. data/spec/api/issues_api_spec.rb +1 -1
  224. data/spec/api/items_api_spec.rb +5 -4
  225. data/spec/api/journal_entries_api_spec.rb +3 -2
  226. data/spec/api/linked_accounts_api_spec.rb +1 -1
  227. data/spec/api/payments_api_spec.rb +28 -2
  228. data/spec/api/purchase_orders_api_spec.rb +32 -4
  229. data/spec/api/selective_sync_api_spec.rb +72 -0
  230. data/spec/api/tax_rates_api_spec.rb +1 -0
  231. data/spec/api/tracking_categories_api_spec.rb +5 -2
  232. data/spec/api/transactions_api_spec.rb +3 -2
  233. data/spec/api/vendor_credits_api_spec.rb +3 -2
  234. data/spec/models/account_endpoint_request_spec.rb +34 -0
  235. data/spec/models/account_request_spec.rb +100 -0
  236. data/spec/models/account_response_spec.rb +52 -0
  237. data/spec/models/account_spec.rb +18 -6
  238. data/spec/models/accounting_attachment_endpoint_request_spec.rb +34 -0
  239. data/spec/models/accounting_attachment_request_spec.rb +58 -0
  240. data/spec/models/accounting_attachment_response_spec.rb +52 -0
  241. data/spec/models/accounting_attachment_spec.rb +15 -3
  242. data/spec/models/accounting_phone_number_request_spec.rb +52 -0
  243. data/spec/models/address_spec.rb +6 -0
  244. data/spec/models/balance_sheet_spec.rb +15 -3
  245. data/spec/models/cash_flow_statement_spec.rb +15 -3
  246. data/spec/models/common_model_scope_data_spec.rb +40 -0
  247. data/spec/models/common_model_scopes_body_request_spec.rb +46 -0
  248. data/spec/models/common_model_scopes_disabled_models_enabled_actions_enum_spec.rb +28 -0
  249. data/spec/models/common_model_scopes_disabled_models_spec.rb +58 -0
  250. data/spec/models/common_model_scopes_post_inner_deserializer_request_spec.rb +46 -0
  251. data/spec/models/common_model_scopes_spec.rb +40 -0
  252. data/spec/models/common_model_scopes_update_serializer_spec.rb +34 -0
  253. data/spec/models/company_info_spec.rb +12 -6
  254. data/spec/models/condition_schema_spec.rb +70 -0
  255. data/spec/models/condition_type_enum_spec.rb +28 -0
  256. data/spec/models/contact_endpoint_request_spec.rb +34 -0
  257. data/spec/models/contact_request_spec.rb +100 -0
  258. data/spec/models/contact_response_spec.rb +52 -0
  259. data/spec/models/contact_spec.rb +18 -6
  260. data/spec/models/credit_note_line_item_spec.rb +12 -0
  261. data/spec/models/credit_note_spec.rb +17 -5
  262. data/spec/models/enabled_actions_enum_spec.rb +28 -0
  263. data/spec/models/end_user_details_request_spec.rb +6 -0
  264. data/spec/models/expense_endpoint_request_spec.rb +34 -0
  265. data/spec/models/expense_line_request_spec.rb +94 -0
  266. data/spec/models/expense_line_spec.rb +22 -4
  267. data/spec/models/expense_request_spec.rb +94 -0
  268. data/spec/models/expense_response_spec.rb +52 -0
  269. data/spec/models/expense_spec.rb +30 -12
  270. data/spec/models/income_statement_spec.rb +15 -3
  271. data/spec/models/invoice_line_item_request_spec.rb +41 -5
  272. data/spec/models/invoice_line_item_spec.rb +36 -6
  273. data/spec/models/invoice_request_spec.rb +26 -8
  274. data/spec/models/invoice_spec.rb +34 -16
  275. data/spec/models/issue_spec.rb +6 -0
  276. data/spec/models/item_spec.rb +18 -6
  277. data/spec/models/journal_entry_request_spec.rb +25 -7
  278. data/spec/models/journal_entry_spec.rb +35 -11
  279. data/spec/models/journal_line_request_spec.rb +22 -4
  280. data/spec/models/journal_line_spec.rb +10 -4
  281. data/spec/models/linked_account_condition_request_spec.rb +46 -0
  282. data/spec/models/linked_account_condition_spec.rb +64 -0
  283. data/spec/models/linked_account_selective_sync_configuration_list_request_spec.rb +34 -0
  284. data/spec/models/linked_account_selective_sync_configuration_request_spec.rb +34 -0
  285. data/spec/models/linked_account_selective_sync_configuration_spec.rb +34 -0
  286. data/spec/models/meta_response_spec.rb +6 -0
  287. data/spec/models/operator_schema_spec.rb +40 -0
  288. data/spec/models/paginated_condition_schema_list_spec.rb +46 -0
  289. data/spec/models/payment_endpoint_request_spec.rb +34 -0
  290. data/spec/models/payment_request_spec.rb +82 -0
  291. data/spec/models/payment_response_spec.rb +52 -0
  292. data/spec/models/payment_spec.rb +28 -4
  293. data/spec/models/posting_status_enum_spec.rb +28 -0
  294. data/spec/models/purchase_order_endpoint_request_spec.rb +34 -0
  295. data/spec/models/purchase_order_line_item_request_spec.rb +112 -0
  296. data/spec/models/purchase_order_line_item_spec.rb +24 -0
  297. data/spec/models/purchase_order_request_spec.rb +112 -0
  298. data/spec/models/purchase_order_response_spec.rb +52 -0
  299. data/spec/models/purchase_order_spec.rb +34 -16
  300. data/spec/models/report_item_spec.rb +6 -0
  301. data/spec/models/selective_sync_configurations_usage_enum_spec.rb +28 -0
  302. data/spec/models/sync_status_spec.rb +6 -0
  303. data/spec/models/tax_rate_spec.rb +19 -7
  304. data/spec/models/tracking_category_spec.rb +20 -8
  305. data/spec/models/transaction_line_item_spec.rb +19 -1
  306. data/spec/models/transaction_spec.rb +30 -12
  307. data/spec/models/vendor_credit_line_spec.rb +12 -0
  308. data/spec/models/vendor_credit_spec.rb +24 -6
  309. metadata +283 -115
@@ -14,18 +14,12 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module MergeAccountingClient
17
- # # The Invoice Object ### Description The `Invoice` object is used to represent a company's invoices. ### Usage Example Fetch from the `LIST Invoices` endpoint and view a company's invoices.
17
+ # # The Invoice Object ### Description The `Invoice` object represents an itemized record of goods and/or services sold to a customer. If type = accounts_payable `Invoice` is a bill, if type = accounts_receivable it's an invoice. ### Usage Example Fetch from the `LIST Invoices` endpoint and view a company's invoices.
18
18
  class Invoice
19
- attr_accessor :id
20
-
21
- # The third-party API ID of the matching object.
22
- attr_accessor :remote_id
23
-
24
- attr_accessor :remote_data
25
-
26
- # The invoice's type.
19
+ # Whether the invoice is an accounts receivable or accounts payable. Accounts payable invoices are commonly referred to as Bills. * `ACCOUNTS_RECEIVABLE` - ACCOUNTS_RECEIVABLE * `ACCOUNTS_PAYABLE` - ACCOUNTS_PAYABLE
27
20
  attr_accessor :type
28
21
 
22
+ # The invoice's contact.
29
23
  attr_accessor :contact
30
24
 
31
25
  # The invoice's number.
@@ -43,16 +37,22 @@ module MergeAccountingClient
43
37
  # The invoice's private note.
44
38
  attr_accessor :memo
45
39
 
46
- # The invoice's currency.
40
+ # The company the invoice belongs to.
41
+ attr_accessor :company
42
+
43
+ # The invoice's currency. * `XUA` - ADB Unit of Account * `AFN` - Afghan Afghani * `AFA` - Afghan Afghani (1927–2002) * `ALL` - Albanian Lek * `ALK` - Albanian Lek (1946–1965) * `DZD` - Algerian Dinar * `ADP` - Andorran Peseta * `AOA` - Angolan Kwanza * `AOK` - Angolan Kwanza (1977–1991) * `AON` - Angolan New Kwanza (1990–2000) * `AOR` - Angolan Readjusted Kwanza (1995–1999) * `ARA` - Argentine Austral * `ARS` - Argentine Peso * `ARM` - Argentine Peso (1881–1970) * `ARP` - Argentine Peso (1983–1985) * `ARL` - Argentine Peso Ley (1970–1983) * `AMD` - Armenian Dram * `AWG` - Aruban Florin * `AUD` - Australian Dollar * `ATS` - Austrian Schilling * `AZN` - Azerbaijani Manat * `AZM` - Azerbaijani Manat (1993–2006) * `BSD` - Bahamian Dollar * `BHD` - Bahraini Dinar * `BDT` - Bangladeshi Taka * `BBD` - Barbadian Dollar * `BYN` - Belarusian Ruble * `BYB` - Belarusian Ruble (1994–1999) * `BYR` - Belarusian Ruble (2000–2016) * `BEF` - Belgian Franc * `BEC` - Belgian Franc (convertible) * `BEL` - Belgian Franc (financial) * `BZD` - Belize Dollar * `BMD` - Bermudan Dollar * `BTN` - Bhutanese Ngultrum * `BOB` - Bolivian Boliviano * `BOL` - Bolivian Boliviano (1863–1963) * `BOV` - Bolivian Mvdol * `BOP` - Bolivian Peso * `BAM` - Bosnia-Herzegovina Convertible Mark * `BAD` - Bosnia-Herzegovina Dinar (1992–1994) * `BAN` - Bosnia-Herzegovina New Dinar (1994–1997) * `BWP` - Botswanan Pula * `BRC` - Brazilian Cruzado (1986–1989) * `BRZ` - Brazilian Cruzeiro (1942–1967) * `BRE` - Brazilian Cruzeiro (1990–1993) * `BRR` - Brazilian Cruzeiro (1993–1994) * `BRN` - Brazilian New Cruzado (1989–1990) * `BRB` - Brazilian New Cruzeiro (1967–1986) * `BRL` - Brazilian Real * `GBP` - British Pound * `BND` - Brunei Dollar * `BGL` - Bulgarian Hard Lev * `BGN` - Bulgarian Lev * `BGO` - Bulgarian Lev (1879–1952) * `BGM` - Bulgarian Socialist Lev * `BUK` - Burmese Kyat * `BIF` - Burundian Franc * `XPF` - CFP Franc * `KHR` - Cambodian Riel * `CAD` - Canadian Dollar * `CVE` - Cape Verdean Escudo * `KYD` - Cayman Islands Dollar * `XAF` - Central African CFA Franc * `CLE` - Chilean Escudo * `CLP` - Chilean Peso * `CLF` - Chilean Unit of Account (UF) * `CNX` - Chinese People’s Bank Dollar * `CNY` - Chinese Yuan * `CNH` - Chinese Yuan (offshore) * `COP` - Colombian Peso * `COU` - Colombian Real Value Unit * `KMF` - Comorian Franc * `CDF` - Congolese Franc * `CRC` - Costa Rican Colón * `HRD` - Croatian Dinar * `HRK` - Croatian Kuna * `CUC` - Cuban Convertible Peso * `CUP` - Cuban Peso * `CYP` - Cypriot Pound * `CZK` - Czech Koruna * `CSK` - Czechoslovak Hard Koruna * `DKK` - Danish Krone * `DJF` - Djiboutian Franc * `DOP` - Dominican Peso * `NLG` - Dutch Guilder * `XCD` - East Caribbean Dollar * `DDM` - East German Mark * `ECS` - Ecuadorian Sucre * `ECV` - Ecuadorian Unit of Constant Value * `EGP` - Egyptian Pound * `GQE` - Equatorial Guinean Ekwele * `ERN` - Eritrean Nakfa * `EEK` - Estonian Kroon * `ETB` - Ethiopian Birr * `EUR` - Euro * `XBA` - European Composite Unit * `XEU` - European Currency Unit * `XBB` - European Monetary Unit * `XBC` - European Unit of Account (XBC) * `XBD` - European Unit of Account (XBD) * `FKP` - Falkland Islands Pound * `FJD` - Fijian Dollar * `FIM` - Finnish Markka * `FRF` - French Franc * `XFO` - French Gold Franc * `XFU` - French UIC-Franc * `GMD` - Gambian Dalasi * `GEK` - Georgian Kupon Larit * `GEL` - Georgian Lari * `DEM` - German Mark * `GHS` - Ghanaian Cedi * `GHC` - Ghanaian Cedi (1979–2007) * `GIP` - Gibraltar Pound * `XAU` - Gold * `GRD` - Greek Drachma * `GTQ` - Guatemalan Quetzal * `GWP` - Guinea-Bissau Peso * `GNF` - Guinean Franc * `GNS` - Guinean Syli * `GYD` - Guyanaese Dollar * `HTG` - Haitian Gourde * `HNL` - Honduran Lempira * `HKD` - Hong Kong Dollar * `HUF` - Hungarian Forint * `IMP` - IMP * `ISK` - Icelandic Króna * `ISJ` - Icelandic Króna (1918–1981) * `INR` - Indian Rupee * `IDR` - Indonesian Rupiah * `IRR` - Iranian Rial * `IQD` - Iraqi Dinar * `IEP` - Irish Pound * `ILS` - Israeli New Shekel * `ILP` - Israeli Pound * `ILR` - Israeli Shekel (1980–1985) * `ITL` - Italian Lira * `JMD` - Jamaican Dollar * `JPY` - Japanese Yen * `JOD` - Jordanian Dinar * `KZT` - Kazakhstani Tenge * `KES` - Kenyan Shilling * `KWD` - Kuwaiti Dinar * `KGS` - Kyrgystani Som * `LAK` - Laotian Kip * `LVL` - Latvian Lats * `LVR` - Latvian Ruble * `LBP` - Lebanese Pound * `LSL` - Lesotho Loti * `LRD` - Liberian Dollar * `LYD` - Libyan Dinar * `LTL` - Lithuanian Litas * `LTT` - Lithuanian Talonas * `LUL` - Luxembourg Financial Franc * `LUC` - Luxembourgian Convertible Franc * `LUF` - Luxembourgian Franc * `MOP` - Macanese Pataca * `MKD` - Macedonian Denar * `MKN` - Macedonian Denar (1992–1993) * `MGA` - Malagasy Ariary * `MGF` - Malagasy Franc * `MWK` - Malawian Kwacha * `MYR` - Malaysian Ringgit * `MVR` - Maldivian Rufiyaa * `MVP` - Maldivian Rupee (1947–1981) * `MLF` - Malian Franc * `MTL` - Maltese Lira * `MTP` - Maltese Pound * `MRU` - Mauritanian Ouguiya * `MRO` - Mauritanian Ouguiya (1973–2017) * `MUR` - Mauritian Rupee * `MXV` - Mexican Investment Unit * `MXN` - Mexican Peso * `MXP` - Mexican Silver Peso (1861–1992) * `MDC` - Moldovan Cupon * `MDL` - Moldovan Leu * `MCF` - Monegasque Franc * `MNT` - Mongolian Tugrik * `MAD` - Moroccan Dirham * `MAF` - Moroccan Franc * `MZE` - Mozambican Escudo * `MZN` - Mozambican Metical * `MZM` - Mozambican Metical (1980–2006) * `MMK` - Myanmar Kyat * `NAD` - Namibian Dollar * `NPR` - Nepalese Rupee * `ANG` - Netherlands Antillean Guilder * `TWD` - New Taiwan Dollar * `NZD` - New Zealand Dollar * `NIO` - Nicaraguan Córdoba * `NIC` - Nicaraguan Córdoba (1988–1991) * `NGN` - Nigerian Naira * `KPW` - North Korean Won * `NOK` - Norwegian Krone * `OMR` - Omani Rial * `PKR` - Pakistani Rupee * `XPD` - Palladium * `PAB` - Panamanian Balboa * `PGK` - Papua New Guinean Kina * `PYG` - Paraguayan Guarani * `PEI` - Peruvian Inti * `PEN` - Peruvian Sol * `PES` - Peruvian Sol (1863–1965) * `PHP` - Philippine Peso * `XPT` - Platinum * `PLN` - Polish Zloty * `PLZ` - Polish Zloty (1950–1995) * `PTE` - Portuguese Escudo * `GWE` - Portuguese Guinea Escudo * `QAR` - Qatari Rial * `XRE` - RINET Funds * `RHD` - Rhodesian Dollar * `RON` - Romanian Leu * `ROL` - Romanian Leu (1952–2006) * `RUB` - Russian Ruble * `RUR` - Russian Ruble (1991–1998) * `RWF` - Rwandan Franc * `SVC` - Salvadoran Colón * `WST` - Samoan Tala * `SAR` - Saudi Riyal * `RSD` - Serbian Dinar * `CSD` - Serbian Dinar (2002–2006) * `SCR` - Seychellois Rupee * `SLL` - Sierra Leonean Leone * `XAG` - Silver * `SGD` - Singapore Dollar * `SKK` - Slovak Koruna * `SIT` - Slovenian Tolar * `SBD` - Solomon Islands Dollar * `SOS` - Somali Shilling * `ZAR` - South African Rand * `ZAL` - South African Rand (financial) * `KRH` - South Korean Hwan (1953–1962) * `KRW` - South Korean Won * `KRO` - South Korean Won (1945–1953) * `SSP` - South Sudanese Pound * `SUR` - Soviet Rouble * `ESP` - Spanish Peseta * `ESA` - Spanish Peseta (A account) * `ESB` - Spanish Peseta (convertible account) * `XDR` - Special Drawing Rights * `LKR` - Sri Lankan Rupee * `SHP` - St. Helena Pound * `XSU` - Sucre * `SDD` - Sudanese Dinar (1992–2007) * `SDG` - Sudanese Pound * `SDP` - Sudanese Pound (1957–1998) * `SRD` - Surinamese Dollar * `SRG` - Surinamese Guilder * `SZL` - Swazi Lilangeni * `SEK` - Swedish Krona * `CHF` - Swiss Franc * `SYP` - Syrian Pound * `STN` - São Tomé & Príncipe Dobra * `STD` - São Tomé & Príncipe Dobra (1977–2017) * `TVD` - TVD * `TJR` - Tajikistani Ruble * `TJS` - Tajikistani Somoni * `TZS` - Tanzanian Shilling * `XTS` - Testing Currency Code * `THB` - Thai Baht * `XXX` - The codes assigned for transactions where no currency is involved * `TPE` - Timorese Escudo * `TOP` - Tongan Paʻanga * `TTD` - Trinidad & Tobago Dollar * `TND` - Tunisian Dinar * `TRY` - Turkish Lira * `TRL` - Turkish Lira (1922–2005) * `TMT` - Turkmenistani Manat * `TMM` - Turkmenistani Manat (1993–2009) * `USD` - US Dollar * `USN` - US Dollar (Next day) * `USS` - US Dollar (Same day) * `UGX` - Ugandan Shilling * `UGS` - Ugandan Shilling (1966–1987) * `UAH` - Ukrainian Hryvnia * `UAK` - Ukrainian Karbovanets * `AED` - United Arab Emirates Dirham * `UYW` - Uruguayan Nominal Wage Index Unit * `UYU` - Uruguayan Peso * `UYP` - Uruguayan Peso (1975–1993) * `UYI` - Uruguayan Peso (Indexed Units) * `UZS` - Uzbekistani Som * `VUV` - Vanuatu Vatu * `VES` - Venezuelan Bolívar * `VEB` - Venezuelan Bolívar (1871–2008) * `VEF` - Venezuelan Bolívar (2008–2018) * `VND` - Vietnamese Dong * `VNN` - Vietnamese Dong (1978–1985) * `CHE` - WIR Euro * `CHW` - WIR Franc * `XOF` - West African CFA Franc * `YDD` - Yemeni Dinar * `YER` - Yemeni Rial * `YUN` - Yugoslavian Convertible Dinar (1990–1992) * `YUD` - Yugoslavian Hard Dinar (1966–1990) * `YUM` - Yugoslavian New Dinar (1994–2002) * `YUR` - Yugoslavian Reformed Dinar (1992–1993) * `ZWN` - ZWN * `ZRN` - Zairean New Zaire (1993–1998) * `ZRZ` - Zairean Zaire (1971–1993) * `ZMW` - Zambian Kwacha * `ZMK` - Zambian Kwacha (1968–2012) * `ZWD` - Zimbabwean Dollar (1980–2008) * `ZWR` - Zimbabwean Dollar (2008) * `ZWL` - Zimbabwean Dollar (2009)
47
44
  attr_accessor :currency
48
45
 
49
- # The invoice's total discount.
46
+ # The invoice's exchange rate.
47
+ attr_accessor :exchange_rate
48
+
49
+ # The total discounts applied to the total cost.
50
50
  attr_accessor :total_discount
51
51
 
52
- # The invoice's sub-total.
52
+ # The total amount being paid before taxes.
53
53
  attr_accessor :sub_total
54
54
 
55
- # The invoice's total tax amount.
55
+ # The total amount being paid in taxes.
56
56
  attr_accessor :total_tax_amount
57
57
 
58
58
  # The invoice's total amount.
@@ -71,12 +71,18 @@ module MergeAccountingClient
71
71
 
72
72
  attr_accessor :remote_was_deleted
73
73
 
74
+ attr_accessor :id
75
+
76
+ # The third-party API ID of the matching object.
77
+ attr_accessor :remote_id
78
+
79
+ attr_accessor :field_mappings
80
+
81
+ attr_accessor :remote_data
82
+
74
83
  # Attribute mapping from ruby-style variable name to JSON key.
75
84
  def self.attribute_map
76
85
  {
77
- :'id' => :'id',
78
- :'remote_id' => :'remote_id',
79
- :'remote_data' => :'remote_data',
80
86
  :'type' => :'type',
81
87
  :'contact' => :'contact',
82
88
  :'number' => :'number',
@@ -84,7 +90,9 @@ module MergeAccountingClient
84
90
  :'due_date' => :'due_date',
85
91
  :'paid_on_date' => :'paid_on_date',
86
92
  :'memo' => :'memo',
93
+ :'company' => :'company',
87
94
  :'currency' => :'currency',
95
+ :'exchange_rate' => :'exchange_rate',
88
96
  :'total_discount' => :'total_discount',
89
97
  :'sub_total' => :'sub_total',
90
98
  :'total_tax_amount' => :'total_tax_amount',
@@ -93,7 +101,11 @@ module MergeAccountingClient
93
101
  :'remote_updated_at' => :'remote_updated_at',
94
102
  :'payments' => :'payments',
95
103
  :'line_items' => :'line_items',
96
- :'remote_was_deleted' => :'remote_was_deleted'
104
+ :'remote_was_deleted' => :'remote_was_deleted',
105
+ :'id' => :'id',
106
+ :'remote_id' => :'remote_id',
107
+ :'field_mappings' => :'field_mappings',
108
+ :'remote_data' => :'remote_data'
97
109
  }
98
110
  end
99
111
 
@@ -105,9 +117,6 @@ module MergeAccountingClient
105
117
  # Attribute type mapping.
106
118
  def self.openapi_types
107
119
  {
108
- :'id' => :'String',
109
- :'remote_id' => :'String',
110
- :'remote_data' => :'Array<RemoteData>',
111
120
  :'type' => :'InvoiceTypeEnum',
112
121
  :'contact' => :'String',
113
122
  :'number' => :'String',
@@ -115,7 +124,9 @@ module MergeAccountingClient
115
124
  :'due_date' => :'Time',
116
125
  :'paid_on_date' => :'Time',
117
126
  :'memo' => :'String',
127
+ :'company' => :'String',
118
128
  :'currency' => :'CurrencyEnum',
129
+ :'exchange_rate' => :'String',
119
130
  :'total_discount' => :'Float',
120
131
  :'sub_total' => :'Float',
121
132
  :'total_tax_amount' => :'Float',
@@ -124,15 +135,17 @@ module MergeAccountingClient
124
135
  :'remote_updated_at' => :'Time',
125
136
  :'payments' => :'Array<String>',
126
137
  :'line_items' => :'Array<InvoiceLineItem>',
127
- :'remote_was_deleted' => :'Boolean'
138
+ :'remote_was_deleted' => :'Boolean',
139
+ :'id' => :'String',
140
+ :'remote_id' => :'String',
141
+ :'field_mappings' => :'Hash<String, Object>',
142
+ :'remote_data' => :'Array<RemoteData>'
128
143
  }
129
144
  end
130
145
 
131
146
  # List of attributes with nullable: true
132
147
  def self.openapi_nullable
133
148
  Set.new([
134
- :'remote_id',
135
- :'remote_data',
136
149
  :'type',
137
150
  :'contact',
138
151
  :'number',
@@ -140,13 +153,18 @@ module MergeAccountingClient
140
153
  :'due_date',
141
154
  :'paid_on_date',
142
155
  :'memo',
156
+ :'company',
143
157
  :'currency',
158
+ :'exchange_rate',
144
159
  :'total_discount',
145
160
  :'sub_total',
146
161
  :'total_tax_amount',
147
162
  :'total_amount',
148
163
  :'balance',
149
164
  :'remote_updated_at',
165
+ :'remote_id',
166
+ :'field_mappings',
167
+ :'remote_data'
150
168
  ])
151
169
  end
152
170
 
@@ -165,20 +183,6 @@ module MergeAccountingClient
165
183
  h[k.to_sym] = v
166
184
  }
167
185
 
168
- if attributes.key?(:'id')
169
- self.id = attributes[:'id']
170
- end
171
-
172
- if attributes.key?(:'remote_id')
173
- self.remote_id = attributes[:'remote_id']
174
- end
175
-
176
- if attributes.key?(:'remote_data')
177
- if (value = attributes[:'remote_data']).is_a?(Array)
178
- self.remote_data = value
179
- end
180
- end
181
-
182
186
  if attributes.key?(:'type')
183
187
  self.type = attributes[:'type']
184
188
  end
@@ -207,10 +211,18 @@ module MergeAccountingClient
207
211
  self.memo = attributes[:'memo']
208
212
  end
209
213
 
214
+ if attributes.key?(:'company')
215
+ self.company = attributes[:'company']
216
+ end
217
+
210
218
  if attributes.key?(:'currency')
211
219
  self.currency = attributes[:'currency']
212
220
  end
213
221
 
222
+ if attributes.key?(:'exchange_rate')
223
+ self.exchange_rate = attributes[:'exchange_rate']
224
+ end
225
+
214
226
  if attributes.key?(:'total_discount')
215
227
  self.total_discount = attributes[:'total_discount']
216
228
  end
@@ -250,29 +262,63 @@ module MergeAccountingClient
250
262
  if attributes.key?(:'remote_was_deleted')
251
263
  self.remote_was_deleted = attributes[:'remote_was_deleted']
252
264
  end
265
+
266
+ if attributes.key?(:'id')
267
+ self.id = attributes[:'id']
268
+ end
269
+
270
+ if attributes.key?(:'remote_id')
271
+ self.remote_id = attributes[:'remote_id']
272
+ end
273
+
274
+ if attributes.key?(:'field_mappings')
275
+ if (value = attributes[:'field_mappings']).is_a?(Hash)
276
+ self.field_mappings = value
277
+ end
278
+ end
279
+
280
+ if attributes.key?(:'remote_data')
281
+ if (value = attributes[:'remote_data']).is_a?(Array)
282
+ self.remote_data = value
283
+ end
284
+ end
253
285
  end
254
286
 
255
287
  # Show invalid properties with the reasons. Usually used together with valid?
256
288
  # @return Array for valid properties with the reasons
257
289
  def list_invalid_properties
258
290
  invalid_properties = Array.new
291
+ pattern = Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
292
+ if !@exchange_rate.nil? && @exchange_rate !~ pattern
293
+ invalid_properties.push("invalid value for \"exchange_rate\", must conform to the pattern #{pattern}.")
294
+ end
295
+
259
296
  invalid_properties
260
297
  end
261
298
 
262
299
  # Check to see if the all the properties in the model are valid
263
300
  # @return true if the model is valid
264
301
  def valid?
302
+ return false if !@exchange_rate.nil? && @exchange_rate !~ Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
265
303
  true
266
304
  end
267
305
 
306
+ # Custom attribute writer method with validation
307
+ # @param [Object] exchange_rate Value to be assigned
308
+ def exchange_rate=(exchange_rate)
309
+ pattern = Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
310
+ if !exchange_rate.nil? && exchange_rate !~ pattern
311
+ fail ArgumentError, "invalid value for \"exchange_rate\", must conform to the pattern #{pattern}."
312
+ end
313
+
314
+ @exchange_rate = exchange_rate
315
+ end
316
+
268
317
  # Checks equality by comparing each attribute.
269
318
  # @param [Object] Object to be compared
270
319
  def ==(o)
271
320
  return true if self.equal?(o)
272
321
  self.class == o.class &&
273
- id == o.id &&
274
- remote_id == o.remote_id &&
275
- remote_data == o.remote_data &&
276
322
  type == o.type &&
277
323
  contact == o.contact &&
278
324
  number == o.number &&
@@ -280,7 +326,9 @@ module MergeAccountingClient
280
326
  due_date == o.due_date &&
281
327
  paid_on_date == o.paid_on_date &&
282
328
  memo == o.memo &&
329
+ company == o.company &&
283
330
  currency == o.currency &&
331
+ exchange_rate == o.exchange_rate &&
284
332
  total_discount == o.total_discount &&
285
333
  sub_total == o.sub_total &&
286
334
  total_tax_amount == o.total_tax_amount &&
@@ -289,7 +337,11 @@ module MergeAccountingClient
289
337
  remote_updated_at == o.remote_updated_at &&
290
338
  payments == o.payments &&
291
339
  line_items == o.line_items &&
292
- remote_was_deleted == o.remote_was_deleted
340
+ remote_was_deleted == o.remote_was_deleted &&
341
+ id == o.id &&
342
+ remote_id == o.remote_id &&
343
+ field_mappings == o.field_mappings &&
344
+ remote_data == o.remote_data
293
345
  end
294
346
 
295
347
  # @see the `==` method
@@ -301,7 +353,7 @@ module MergeAccountingClient
301
353
  # Calculates hash code according to all attributes.
302
354
  # @return [Integer] Hash code
303
355
  def hash
304
- [id, remote_id, remote_data, type, contact, number, issue_date, due_date, paid_on_date, memo, currency, total_discount, sub_total, total_tax_amount, total_amount, balance, remote_updated_at, payments, line_items, remote_was_deleted].hash
356
+ [type, contact, number, issue_date, due_date, paid_on_date, memo, company, currency, exchange_rate, total_discount, sub_total, total_tax_amount, total_amount, balance, remote_updated_at, payments, line_items, remote_was_deleted, id, remote_id, field_mappings, remote_data].hash
305
357
  end
306
358
 
307
359
  # Builds the object from hash
@@ -14,13 +14,8 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module MergeAccountingClient
17
- # # The InvoiceLineItem Object ### Description The `InvoiceLineItem` object is used to represent an invoice's line items. ### Usage Example Fetch from the `GET Invoice` endpoint and view the invoice's line items.
17
+ # # The InvoiceLineItem Object ### Description The `InvoiceLineItem` object represents an itemized record of goods and/or services sold to a customer. If type = accounts_payable, invoice is a bill, if type = accounts_receivable it's an invoice. ### Usage Example Fetch from the `GET Invoice` endpoint and view the invoice's line items.
18
18
  class InvoiceLineItem
19
- attr_accessor :id
20
-
21
- # The third-party API ID of the matching object.
22
- attr_accessor :remote_id
23
-
24
19
  # The line item's description.
25
20
  attr_accessor :description
26
21
 
@@ -33,24 +28,47 @@ module MergeAccountingClient
33
28
  # The line item's total amount.
34
29
  attr_accessor :total_amount
35
30
 
31
+ # The line item's currency. * `XUA` - ADB Unit of Account * `AFN` - Afghan Afghani * `AFA` - Afghan Afghani (1927–2002) * `ALL` - Albanian Lek * `ALK` - Albanian Lek (1946–1965) * `DZD` - Algerian Dinar * `ADP` - Andorran Peseta * `AOA` - Angolan Kwanza * `AOK` - Angolan Kwanza (1977–1991) * `AON` - Angolan New Kwanza (1990–2000) * `AOR` - Angolan Readjusted Kwanza (1995–1999) * `ARA` - Argentine Austral * `ARS` - Argentine Peso * `ARM` - Argentine Peso (1881–1970) * `ARP` - Argentine Peso (1983–1985) * `ARL` - Argentine Peso Ley (1970–1983) * `AMD` - Armenian Dram * `AWG` - Aruban Florin * `AUD` - Australian Dollar * `ATS` - Austrian Schilling * `AZN` - Azerbaijani Manat * `AZM` - Azerbaijani Manat (1993–2006) * `BSD` - Bahamian Dollar * `BHD` - Bahraini Dinar * `BDT` - Bangladeshi Taka * `BBD` - Barbadian Dollar * `BYN` - Belarusian Ruble * `BYB` - Belarusian Ruble (1994–1999) * `BYR` - Belarusian Ruble (2000–2016) * `BEF` - Belgian Franc * `BEC` - Belgian Franc (convertible) * `BEL` - Belgian Franc (financial) * `BZD` - Belize Dollar * `BMD` - Bermudan Dollar * `BTN` - Bhutanese Ngultrum * `BOB` - Bolivian Boliviano * `BOL` - Bolivian Boliviano (1863–1963) * `BOV` - Bolivian Mvdol * `BOP` - Bolivian Peso * `BAM` - Bosnia-Herzegovina Convertible Mark * `BAD` - Bosnia-Herzegovina Dinar (1992–1994) * `BAN` - Bosnia-Herzegovina New Dinar (1994–1997) * `BWP` - Botswanan Pula * `BRC` - Brazilian Cruzado (1986–1989) * `BRZ` - Brazilian Cruzeiro (1942–1967) * `BRE` - Brazilian Cruzeiro (1990–1993) * `BRR` - Brazilian Cruzeiro (1993–1994) * `BRN` - Brazilian New Cruzado (1989–1990) * `BRB` - Brazilian New Cruzeiro (1967–1986) * `BRL` - Brazilian Real * `GBP` - British Pound * `BND` - Brunei Dollar * `BGL` - Bulgarian Hard Lev * `BGN` - Bulgarian Lev * `BGO` - Bulgarian Lev (1879–1952) * `BGM` - Bulgarian Socialist Lev * `BUK` - Burmese Kyat * `BIF` - Burundian Franc * `XPF` - CFP Franc * `KHR` - Cambodian Riel * `CAD` - Canadian Dollar * `CVE` - Cape Verdean Escudo * `KYD` - Cayman Islands Dollar * `XAF` - Central African CFA Franc * `CLE` - Chilean Escudo * `CLP` - Chilean Peso * `CLF` - Chilean Unit of Account (UF) * `CNX` - Chinese People’s Bank Dollar * `CNY` - Chinese Yuan * `CNH` - Chinese Yuan (offshore) * `COP` - Colombian Peso * `COU` - Colombian Real Value Unit * `KMF` - Comorian Franc * `CDF` - Congolese Franc * `CRC` - Costa Rican Colón * `HRD` - Croatian Dinar * `HRK` - Croatian Kuna * `CUC` - Cuban Convertible Peso * `CUP` - Cuban Peso * `CYP` - Cypriot Pound * `CZK` - Czech Koruna * `CSK` - Czechoslovak Hard Koruna * `DKK` - Danish Krone * `DJF` - Djiboutian Franc * `DOP` - Dominican Peso * `NLG` - Dutch Guilder * `XCD` - East Caribbean Dollar * `DDM` - East German Mark * `ECS` - Ecuadorian Sucre * `ECV` - Ecuadorian Unit of Constant Value * `EGP` - Egyptian Pound * `GQE` - Equatorial Guinean Ekwele * `ERN` - Eritrean Nakfa * `EEK` - Estonian Kroon * `ETB` - Ethiopian Birr * `EUR` - Euro * `XBA` - European Composite Unit * `XEU` - European Currency Unit * `XBB` - European Monetary Unit * `XBC` - European Unit of Account (XBC) * `XBD` - European Unit of Account (XBD) * `FKP` - Falkland Islands Pound * `FJD` - Fijian Dollar * `FIM` - Finnish Markka * `FRF` - French Franc * `XFO` - French Gold Franc * `XFU` - French UIC-Franc * `GMD` - Gambian Dalasi * `GEK` - Georgian Kupon Larit * `GEL` - Georgian Lari * `DEM` - German Mark * `GHS` - Ghanaian Cedi * `GHC` - Ghanaian Cedi (1979–2007) * `GIP` - Gibraltar Pound * `XAU` - Gold * `GRD` - Greek Drachma * `GTQ` - Guatemalan Quetzal * `GWP` - Guinea-Bissau Peso * `GNF` - Guinean Franc * `GNS` - Guinean Syli * `GYD` - Guyanaese Dollar * `HTG` - Haitian Gourde * `HNL` - Honduran Lempira * `HKD` - Hong Kong Dollar * `HUF` - Hungarian Forint * `IMP` - IMP * `ISK` - Icelandic Króna * `ISJ` - Icelandic Króna (1918–1981) * `INR` - Indian Rupee * `IDR` - Indonesian Rupiah * `IRR` - Iranian Rial * `IQD` - Iraqi Dinar * `IEP` - Irish Pound * `ILS` - Israeli New Shekel * `ILP` - Israeli Pound * `ILR` - Israeli Shekel (1980–1985) * `ITL` - Italian Lira * `JMD` - Jamaican Dollar * `JPY` - Japanese Yen * `JOD` - Jordanian Dinar * `KZT` - Kazakhstani Tenge * `KES` - Kenyan Shilling * `KWD` - Kuwaiti Dinar * `KGS` - Kyrgystani Som * `LAK` - Laotian Kip * `LVL` - Latvian Lats * `LVR` - Latvian Ruble * `LBP` - Lebanese Pound * `LSL` - Lesotho Loti * `LRD` - Liberian Dollar * `LYD` - Libyan Dinar * `LTL` - Lithuanian Litas * `LTT` - Lithuanian Talonas * `LUL` - Luxembourg Financial Franc * `LUC` - Luxembourgian Convertible Franc * `LUF` - Luxembourgian Franc * `MOP` - Macanese Pataca * `MKD` - Macedonian Denar * `MKN` - Macedonian Denar (1992–1993) * `MGA` - Malagasy Ariary * `MGF` - Malagasy Franc * `MWK` - Malawian Kwacha * `MYR` - Malaysian Ringgit * `MVR` - Maldivian Rufiyaa * `MVP` - Maldivian Rupee (1947–1981) * `MLF` - Malian Franc * `MTL` - Maltese Lira * `MTP` - Maltese Pound * `MRU` - Mauritanian Ouguiya * `MRO` - Mauritanian Ouguiya (1973–2017) * `MUR` - Mauritian Rupee * `MXV` - Mexican Investment Unit * `MXN` - Mexican Peso * `MXP` - Mexican Silver Peso (1861–1992) * `MDC` - Moldovan Cupon * `MDL` - Moldovan Leu * `MCF` - Monegasque Franc * `MNT` - Mongolian Tugrik * `MAD` - Moroccan Dirham * `MAF` - Moroccan Franc * `MZE` - Mozambican Escudo * `MZN` - Mozambican Metical * `MZM` - Mozambican Metical (1980–2006) * `MMK` - Myanmar Kyat * `NAD` - Namibian Dollar * `NPR` - Nepalese Rupee * `ANG` - Netherlands Antillean Guilder * `TWD` - New Taiwan Dollar * `NZD` - New Zealand Dollar * `NIO` - Nicaraguan Córdoba * `NIC` - Nicaraguan Córdoba (1988–1991) * `NGN` - Nigerian Naira * `KPW` - North Korean Won * `NOK` - Norwegian Krone * `OMR` - Omani Rial * `PKR` - Pakistani Rupee * `XPD` - Palladium * `PAB` - Panamanian Balboa * `PGK` - Papua New Guinean Kina * `PYG` - Paraguayan Guarani * `PEI` - Peruvian Inti * `PEN` - Peruvian Sol * `PES` - Peruvian Sol (1863–1965) * `PHP` - Philippine Peso * `XPT` - Platinum * `PLN` - Polish Zloty * `PLZ` - Polish Zloty (1950–1995) * `PTE` - Portuguese Escudo * `GWE` - Portuguese Guinea Escudo * `QAR` - Qatari Rial * `XRE` - RINET Funds * `RHD` - Rhodesian Dollar * `RON` - Romanian Leu * `ROL` - Romanian Leu (1952–2006) * `RUB` - Russian Ruble * `RUR` - Russian Ruble (1991–1998) * `RWF` - Rwandan Franc * `SVC` - Salvadoran Colón * `WST` - Samoan Tala * `SAR` - Saudi Riyal * `RSD` - Serbian Dinar * `CSD` - Serbian Dinar (2002–2006) * `SCR` - Seychellois Rupee * `SLL` - Sierra Leonean Leone * `XAG` - Silver * `SGD` - Singapore Dollar * `SKK` - Slovak Koruna * `SIT` - Slovenian Tolar * `SBD` - Solomon Islands Dollar * `SOS` - Somali Shilling * `ZAR` - South African Rand * `ZAL` - South African Rand (financial) * `KRH` - South Korean Hwan (1953–1962) * `KRW` - South Korean Won * `KRO` - South Korean Won (1945–1953) * `SSP` - South Sudanese Pound * `SUR` - Soviet Rouble * `ESP` - Spanish Peseta * `ESA` - Spanish Peseta (A account) * `ESB` - Spanish Peseta (convertible account) * `XDR` - Special Drawing Rights * `LKR` - Sri Lankan Rupee * `SHP` - St. Helena Pound * `XSU` - Sucre * `SDD` - Sudanese Dinar (1992–2007) * `SDG` - Sudanese Pound * `SDP` - Sudanese Pound (1957–1998) * `SRD` - Surinamese Dollar * `SRG` - Surinamese Guilder * `SZL` - Swazi Lilangeni * `SEK` - Swedish Krona * `CHF` - Swiss Franc * `SYP` - Syrian Pound * `STN` - São Tomé & Príncipe Dobra * `STD` - São Tomé & Príncipe Dobra (1977–2017) * `TVD` - TVD * `TJR` - Tajikistani Ruble * `TJS` - Tajikistani Somoni * `TZS` - Tanzanian Shilling * `XTS` - Testing Currency Code * `THB` - Thai Baht * `XXX` - The codes assigned for transactions where no currency is involved * `TPE` - Timorese Escudo * `TOP` - Tongan Paʻanga * `TTD` - Trinidad & Tobago Dollar * `TND` - Tunisian Dinar * `TRY` - Turkish Lira * `TRL` - Turkish Lira (1922–2005) * `TMT` - Turkmenistani Manat * `TMM` - Turkmenistani Manat (1993–2009) * `USD` - US Dollar * `USN` - US Dollar (Next day) * `USS` - US Dollar (Same day) * `UGX` - Ugandan Shilling * `UGS` - Ugandan Shilling (1966–1987) * `UAH` - Ukrainian Hryvnia * `UAK` - Ukrainian Karbovanets * `AED` - United Arab Emirates Dirham * `UYW` - Uruguayan Nominal Wage Index Unit * `UYU` - Uruguayan Peso * `UYP` - Uruguayan Peso (1975–1993) * `UYI` - Uruguayan Peso (Indexed Units) * `UZS` - Uzbekistani Som * `VUV` - Vanuatu Vatu * `VES` - Venezuelan Bolívar * `VEB` - Venezuelan Bolívar (1871–2008) * `VEF` - Venezuelan Bolívar (2008–2018) * `VND` - Vietnamese Dong * `VNN` - Vietnamese Dong (1978–1985) * `CHE` - WIR Euro * `CHW` - WIR Franc * `XOF` - West African CFA Franc * `YDD` - Yemeni Dinar * `YER` - Yemeni Rial * `YUN` - Yugoslavian Convertible Dinar (1990–1992) * `YUD` - Yugoslavian Hard Dinar (1966–1990) * `YUM` - Yugoslavian New Dinar (1994–2002) * `YUR` - Yugoslavian Reformed Dinar (1992–1993) * `ZWN` - ZWN * `ZRN` - Zairean New Zaire (1993–1998) * `ZRZ` - Zairean Zaire (1971–1993) * `ZMW` - Zambian Kwacha * `ZMK` - Zambian Kwacha (1968–2012) * `ZWD` - Zimbabwean Dollar (1980–2008) * `ZWR` - Zimbabwean Dollar (2008) * `ZWL` - Zimbabwean Dollar (2009)
32
+ attr_accessor :currency
33
+
34
+ # The line item's exchange rate.
35
+ attr_accessor :exchange_rate
36
+
36
37
  attr_accessor :item
37
38
 
38
39
  attr_accessor :account
39
40
 
40
41
  attr_accessor :tracking_category
41
42
 
43
+ attr_accessor :tracking_categories
44
+
45
+ # The company the line item belongs to.
46
+ attr_accessor :company
47
+
48
+ attr_accessor :id
49
+
50
+ # The third-party API ID of the matching object.
51
+ attr_accessor :remote_id
52
+
53
+ attr_accessor :field_mappings
54
+
42
55
  # Attribute mapping from ruby-style variable name to JSON key.
43
56
  def self.attribute_map
44
57
  {
45
- :'id' => :'id',
46
- :'remote_id' => :'remote_id',
47
58
  :'description' => :'description',
48
59
  :'unit_price' => :'unit_price',
49
60
  :'quantity' => :'quantity',
50
61
  :'total_amount' => :'total_amount',
62
+ :'currency' => :'currency',
63
+ :'exchange_rate' => :'exchange_rate',
51
64
  :'item' => :'item',
52
65
  :'account' => :'account',
53
- :'tracking_category' => :'tracking_category'
66
+ :'tracking_category' => :'tracking_category',
67
+ :'tracking_categories' => :'tracking_categories',
68
+ :'company' => :'company',
69
+ :'id' => :'id',
70
+ :'remote_id' => :'remote_id',
71
+ :'field_mappings' => :'field_mappings'
54
72
  }
55
73
  end
56
74
 
@@ -62,29 +80,38 @@ module MergeAccountingClient
62
80
  # Attribute type mapping.
63
81
  def self.openapi_types
64
82
  {
65
- :'id' => :'String',
66
- :'remote_id' => :'String',
67
83
  :'description' => :'String',
68
84
  :'unit_price' => :'Float',
69
85
  :'quantity' => :'Float',
70
86
  :'total_amount' => :'Float',
87
+ :'currency' => :'CurrencyEnum',
88
+ :'exchange_rate' => :'String',
71
89
  :'item' => :'String',
72
90
  :'account' => :'String',
73
- :'tracking_category' => :'String'
91
+ :'tracking_category' => :'String',
92
+ :'tracking_categories' => :'Array<String>',
93
+ :'company' => :'String',
94
+ :'id' => :'String',
95
+ :'remote_id' => :'String',
96
+ :'field_mappings' => :'Hash<String, Object>'
74
97
  }
75
98
  end
76
99
 
77
100
  # List of attributes with nullable: true
78
101
  def self.openapi_nullable
79
102
  Set.new([
80
- :'remote_id',
81
103
  :'description',
82
104
  :'unit_price',
83
105
  :'quantity',
84
106
  :'total_amount',
107
+ :'currency',
108
+ :'exchange_rate',
85
109
  :'item',
86
110
  :'account',
87
- :'tracking_category'
111
+ :'tracking_category',
112
+ :'company',
113
+ :'remote_id',
114
+ :'field_mappings'
88
115
  ])
89
116
  end
90
117
 
@@ -103,14 +130,6 @@ module MergeAccountingClient
103
130
  h[k.to_sym] = v
104
131
  }
105
132
 
106
- if attributes.key?(:'id')
107
- self.id = attributes[:'id']
108
- end
109
-
110
- if attributes.key?(:'remote_id')
111
- self.remote_id = attributes[:'remote_id']
112
- end
113
-
114
133
  if attributes.key?(:'description')
115
134
  self.description = attributes[:'description']
116
135
  end
@@ -127,6 +146,14 @@ module MergeAccountingClient
127
146
  self.total_amount = attributes[:'total_amount']
128
147
  end
129
148
 
149
+ if attributes.key?(:'currency')
150
+ self.currency = attributes[:'currency']
151
+ end
152
+
153
+ if attributes.key?(:'exchange_rate')
154
+ self.exchange_rate = attributes[:'exchange_rate']
155
+ end
156
+
130
157
  if attributes.key?(:'item')
131
158
  self.item = attributes[:'item']
132
159
  end
@@ -138,35 +165,81 @@ module MergeAccountingClient
138
165
  if attributes.key?(:'tracking_category')
139
166
  self.tracking_category = attributes[:'tracking_category']
140
167
  end
168
+
169
+ if attributes.key?(:'tracking_categories')
170
+ if (value = attributes[:'tracking_categories']).is_a?(Array)
171
+ self.tracking_categories = value
172
+ end
173
+ end
174
+
175
+ if attributes.key?(:'company')
176
+ self.company = attributes[:'company']
177
+ end
178
+
179
+ if attributes.key?(:'id')
180
+ self.id = attributes[:'id']
181
+ end
182
+
183
+ if attributes.key?(:'remote_id')
184
+ self.remote_id = attributes[:'remote_id']
185
+ end
186
+
187
+ if attributes.key?(:'field_mappings')
188
+ if (value = attributes[:'field_mappings']).is_a?(Hash)
189
+ self.field_mappings = value
190
+ end
191
+ end
141
192
  end
142
193
 
143
194
  # Show invalid properties with the reasons. Usually used together with valid?
144
195
  # @return Array for valid properties with the reasons
145
196
  def list_invalid_properties
146
197
  invalid_properties = Array.new
198
+ pattern = Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
199
+ if !@exchange_rate.nil? && @exchange_rate !~ pattern
200
+ invalid_properties.push("invalid value for \"exchange_rate\", must conform to the pattern #{pattern}.")
201
+ end
202
+
147
203
  invalid_properties
148
204
  end
149
205
 
150
206
  # Check to see if the all the properties in the model are valid
151
207
  # @return true if the model is valid
152
208
  def valid?
209
+ return false if !@exchange_rate.nil? && @exchange_rate !~ Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
153
210
  true
154
211
  end
155
212
 
213
+ # Custom attribute writer method with validation
214
+ # @param [Object] exchange_rate Value to be assigned
215
+ def exchange_rate=(exchange_rate)
216
+ pattern = Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
217
+ if !exchange_rate.nil? && exchange_rate !~ pattern
218
+ fail ArgumentError, "invalid value for \"exchange_rate\", must conform to the pattern #{pattern}."
219
+ end
220
+
221
+ @exchange_rate = exchange_rate
222
+ end
223
+
156
224
  # Checks equality by comparing each attribute.
157
225
  # @param [Object] Object to be compared
158
226
  def ==(o)
159
227
  return true if self.equal?(o)
160
228
  self.class == o.class &&
161
- id == o.id &&
162
- remote_id == o.remote_id &&
163
229
  description == o.description &&
164
230
  unit_price == o.unit_price &&
165
231
  quantity == o.quantity &&
166
232
  total_amount == o.total_amount &&
233
+ currency == o.currency &&
234
+ exchange_rate == o.exchange_rate &&
167
235
  item == o.item &&
168
236
  account == o.account &&
169
- tracking_category == o.tracking_category
237
+ tracking_category == o.tracking_category &&
238
+ tracking_categories == o.tracking_categories &&
239
+ company == o.company &&
240
+ id == o.id &&
241
+ remote_id == o.remote_id &&
242
+ field_mappings == o.field_mappings
170
243
  end
171
244
 
172
245
  # @see the `==` method
@@ -178,7 +251,7 @@ module MergeAccountingClient
178
251
  # Calculates hash code according to all attributes.
179
252
  # @return [Integer] Hash code
180
253
  def hash
181
- [id, remote_id, description, unit_price, quantity, total_amount, item, account, tracking_category].hash
254
+ [description, unit_price, quantity, total_amount, currency, exchange_rate, item, account, tracking_category, tracking_categories, company, id, remote_id, field_mappings].hash
182
255
  end
183
256
 
184
257
  # Builds the object from hash