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,56 +14,67 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module MergeAccountingClient
17
- # # The Transaction Object ### Description The `Transaction` object is used to represent a company's transactions. ### Usage Example Fetch from the `GET Transaction` endpoint and view a company's transactions.
17
+ # # The Transaction Object ### Description The `Transaction` includes different types of transactions. The Transactions object does not cover expenses, credit notes, vendor credit, invoices, purchase orders, and journal entries. See the “transaction_type” field for more information. ### Usage Example Fetch from the `GET Transaction` endpoint and view a company's transactions.
18
18
  class Transaction
19
- attr_accessor :id
20
-
21
- # The type of general transaction.
19
+ # The type of transaction, which can by any transaction object not already included in Merge’s common model.
22
20
  attr_accessor :transaction_type
23
21
 
24
- # The third-party API ID of the matching object.
25
- attr_accessor :remote_id
26
-
27
- attr_accessor :remote_data
28
-
29
- # The transaction number.
22
+ # The transaction's number used for identifying purposes.
30
23
  attr_accessor :number
31
24
 
32
- # The transaction date.
25
+ # The date upon which the transaction occurred.
33
26
  attr_accessor :transaction_date
34
27
 
35
28
  # The transaction's account.
36
29
  attr_accessor :account
37
30
 
38
- # The transaction's contact.
31
+ # The contact to whom the transaction relates to.
39
32
  attr_accessor :contact
40
33
 
41
- # The transaction's total amount.
34
+ # The total amount being paid after taxes.
42
35
  attr_accessor :total_amount
43
36
 
44
- # The transaction's currency.
37
+ # The transaction'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)
45
38
  attr_accessor :currency
46
39
 
40
+ # The transaction's exchange rate.
41
+ attr_accessor :exchange_rate
42
+
43
+ # The company the transaction belongs to.
44
+ attr_accessor :company
45
+
47
46
  attr_accessor :line_items
48
47
 
49
48
  # Indicates whether or not this object has been deleted by third party webhooks.
50
49
  attr_accessor :remote_was_deleted
51
50
 
51
+ attr_accessor :id
52
+
53
+ # The third-party API ID of the matching object.
54
+ attr_accessor :remote_id
55
+
56
+ attr_accessor :field_mappings
57
+
58
+ attr_accessor :remote_data
59
+
52
60
  # Attribute mapping from ruby-style variable name to JSON key.
53
61
  def self.attribute_map
54
62
  {
55
- :'id' => :'id',
56
63
  :'transaction_type' => :'transaction_type',
57
- :'remote_id' => :'remote_id',
58
- :'remote_data' => :'remote_data',
59
64
  :'number' => :'number',
60
65
  :'transaction_date' => :'transaction_date',
61
66
  :'account' => :'account',
62
67
  :'contact' => :'contact',
63
68
  :'total_amount' => :'total_amount',
64
69
  :'currency' => :'currency',
70
+ :'exchange_rate' => :'exchange_rate',
71
+ :'company' => :'company',
65
72
  :'line_items' => :'line_items',
66
- :'remote_was_deleted' => :'remote_was_deleted'
73
+ :'remote_was_deleted' => :'remote_was_deleted',
74
+ :'id' => :'id',
75
+ :'remote_id' => :'remote_id',
76
+ :'field_mappings' => :'field_mappings',
77
+ :'remote_data' => :'remote_data'
67
78
  }
68
79
  end
69
80
 
@@ -75,18 +86,21 @@ module MergeAccountingClient
75
86
  # Attribute type mapping.
76
87
  def self.openapi_types
77
88
  {
78
- :'id' => :'String',
79
89
  :'transaction_type' => :'String',
80
- :'remote_id' => :'String',
81
- :'remote_data' => :'Array<RemoteData>',
82
90
  :'number' => :'String',
83
91
  :'transaction_date' => :'Time',
84
92
  :'account' => :'String',
85
93
  :'contact' => :'String',
86
94
  :'total_amount' => :'String',
87
95
  :'currency' => :'CurrencyEnum',
96
+ :'exchange_rate' => :'String',
97
+ :'company' => :'String',
88
98
  :'line_items' => :'Array<TransactionLineItem>',
89
- :'remote_was_deleted' => :'Boolean'
99
+ :'remote_was_deleted' => :'Boolean',
100
+ :'id' => :'String',
101
+ :'remote_id' => :'String',
102
+ :'field_mappings' => :'Hash<String, Object>',
103
+ :'remote_data' => :'Array<RemoteData>'
90
104
  }
91
105
  end
92
106
 
@@ -94,14 +108,17 @@ module MergeAccountingClient
94
108
  def self.openapi_nullable
95
109
  Set.new([
96
110
  :'transaction_type',
97
- :'remote_id',
98
- :'remote_data',
99
111
  :'number',
100
112
  :'transaction_date',
101
113
  :'account',
102
114
  :'contact',
103
115
  :'total_amount',
104
116
  :'currency',
117
+ :'exchange_rate',
118
+ :'company',
119
+ :'remote_id',
120
+ :'field_mappings',
121
+ :'remote_data'
105
122
  ])
106
123
  end
107
124
 
@@ -120,24 +137,10 @@ module MergeAccountingClient
120
137
  h[k.to_sym] = v
121
138
  }
122
139
 
123
- if attributes.key?(:'id')
124
- self.id = attributes[:'id']
125
- end
126
-
127
140
  if attributes.key?(:'transaction_type')
128
141
  self.transaction_type = attributes[:'transaction_type']
129
142
  end
130
143
 
131
- if attributes.key?(:'remote_id')
132
- self.remote_id = attributes[:'remote_id']
133
- end
134
-
135
- if attributes.key?(:'remote_data')
136
- if (value = attributes[:'remote_data']).is_a?(Array)
137
- self.remote_data = value
138
- end
139
- end
140
-
141
144
  if attributes.key?(:'number')
142
145
  self.number = attributes[:'number']
143
146
  end
@@ -162,6 +165,14 @@ module MergeAccountingClient
162
165
  self.currency = attributes[:'currency']
163
166
  end
164
167
 
168
+ if attributes.key?(:'exchange_rate')
169
+ self.exchange_rate = attributes[:'exchange_rate']
170
+ end
171
+
172
+ if attributes.key?(:'company')
173
+ self.company = attributes[:'company']
174
+ end
175
+
165
176
  if attributes.key?(:'line_items')
166
177
  if (value = attributes[:'line_items']).is_a?(Array)
167
178
  self.line_items = value
@@ -171,31 +182,57 @@ module MergeAccountingClient
171
182
  if attributes.key?(:'remote_was_deleted')
172
183
  self.remote_was_deleted = attributes[:'remote_was_deleted']
173
184
  end
185
+
186
+ if attributes.key?(:'id')
187
+ self.id = attributes[:'id']
188
+ end
189
+
190
+ if attributes.key?(:'remote_id')
191
+ self.remote_id = attributes[:'remote_id']
192
+ end
193
+
194
+ if attributes.key?(:'field_mappings')
195
+ if (value = attributes[:'field_mappings']).is_a?(Hash)
196
+ self.field_mappings = value
197
+ end
198
+ end
199
+
200
+ if attributes.key?(:'remote_data')
201
+ if (value = attributes[:'remote_data']).is_a?(Array)
202
+ self.remote_data = value
203
+ end
204
+ end
174
205
  end
175
206
 
176
207
  # Show invalid properties with the reasons. Usually used together with valid?
177
208
  # @return Array for valid properties with the reasons
178
209
  def list_invalid_properties
179
210
  invalid_properties = Array.new
180
- pattern = Regexp.new(/^\d{0,32}(?:\.\d{0,16})?$/)
211
+ pattern = Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
181
212
  if !@total_amount.nil? && @total_amount !~ pattern
182
213
  invalid_properties.push("invalid value for \"total_amount\", must conform to the pattern #{pattern}.")
183
214
  end
184
215
 
216
+ pattern = Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
217
+ if !@exchange_rate.nil? && @exchange_rate !~ pattern
218
+ invalid_properties.push("invalid value for \"exchange_rate\", must conform to the pattern #{pattern}.")
219
+ end
220
+
185
221
  invalid_properties
186
222
  end
187
223
 
188
224
  # Check to see if the all the properties in the model are valid
189
225
  # @return true if the model is valid
190
226
  def valid?
191
- return false if !@total_amount.nil? && @total_amount !~ Regexp.new(/^\d{0,32}(?:\.\d{0,16})?$/)
227
+ return false if !@total_amount.nil? && @total_amount !~ Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
228
+ return false if !@exchange_rate.nil? && @exchange_rate !~ Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
192
229
  true
193
230
  end
194
231
 
195
232
  # Custom attribute writer method with validation
196
233
  # @param [Object] total_amount Value to be assigned
197
234
  def total_amount=(total_amount)
198
- pattern = Regexp.new(/^\d{0,32}(?:\.\d{0,16})?$/)
235
+ pattern = Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
199
236
  if !total_amount.nil? && total_amount !~ pattern
200
237
  fail ArgumentError, "invalid value for \"total_amount\", must conform to the pattern #{pattern}."
201
238
  end
@@ -203,23 +240,37 @@ module MergeAccountingClient
203
240
  @total_amount = total_amount
204
241
  end
205
242
 
243
+ # Custom attribute writer method with validation
244
+ # @param [Object] exchange_rate Value to be assigned
245
+ def exchange_rate=(exchange_rate)
246
+ pattern = Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
247
+ if !exchange_rate.nil? && exchange_rate !~ pattern
248
+ fail ArgumentError, "invalid value for \"exchange_rate\", must conform to the pattern #{pattern}."
249
+ end
250
+
251
+ @exchange_rate = exchange_rate
252
+ end
253
+
206
254
  # Checks equality by comparing each attribute.
207
255
  # @param [Object] Object to be compared
208
256
  def ==(o)
209
257
  return true if self.equal?(o)
210
258
  self.class == o.class &&
211
- id == o.id &&
212
259
  transaction_type == o.transaction_type &&
213
- remote_id == o.remote_id &&
214
- remote_data == o.remote_data &&
215
260
  number == o.number &&
216
261
  transaction_date == o.transaction_date &&
217
262
  account == o.account &&
218
263
  contact == o.contact &&
219
264
  total_amount == o.total_amount &&
220
265
  currency == o.currency &&
266
+ exchange_rate == o.exchange_rate &&
267
+ company == o.company &&
221
268
  line_items == o.line_items &&
222
- remote_was_deleted == o.remote_was_deleted
269
+ remote_was_deleted == o.remote_was_deleted &&
270
+ id == o.id &&
271
+ remote_id == o.remote_id &&
272
+ field_mappings == o.field_mappings &&
273
+ remote_data == o.remote_data
223
274
  end
224
275
 
225
276
  # @see the `==` method
@@ -231,7 +282,7 @@ module MergeAccountingClient
231
282
  # Calculates hash code according to all attributes.
232
283
  # @return [Integer] Hash code
233
284
  def hash
234
- [id, transaction_type, remote_id, remote_data, number, transaction_date, account, contact, total_amount, currency, line_items, remote_was_deleted].hash
285
+ [transaction_type, number, transaction_date, account, contact, total_amount, currency, exchange_rate, company, line_items, remote_was_deleted, id, remote_id, field_mappings, remote_data].hash
235
286
  end
236
287
 
237
288
  # Builds the object from hash
@@ -16,7 +16,7 @@ require 'time'
16
16
  module MergeAccountingClient
17
17
  # # The TransactionLineItem Object ### Description The `TransactionLineItem` object is used to represent a transaction's line items. ### Usage Example Fetch from the `GET TransactionLineItem` endpoint and view the transaction's line items.
18
18
  class TransactionLineItem
19
- # A memo attached to the line item.
19
+ # An internal note used by the business to clarify purpose of the transaction.
20
20
  attr_accessor :memo
21
21
 
22
22
  # The line item's unit price.
@@ -33,14 +33,23 @@ module MergeAccountingClient
33
33
  # The line's associated tracking category.
34
34
  attr_accessor :tracking_category
35
35
 
36
+ # The line's associated tracking categories.
37
+ attr_accessor :tracking_categories
38
+
36
39
  # The line item's total.
37
40
  attr_accessor :total_line_amount
38
41
 
39
42
  # The line item's tax rate.
40
43
  attr_accessor :tax_rate
41
44
 
42
- # The third-party API ID of the matching object.
43
- attr_accessor :remote_id
45
+ # 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)
46
+ attr_accessor :currency
47
+
48
+ # The line item's exchange rate.
49
+ attr_accessor :exchange_rate
50
+
51
+ # The company the line belongs to.
52
+ attr_accessor :company
44
53
 
45
54
  # Attribute mapping from ruby-style variable name to JSON key.
46
55
  def self.attribute_map
@@ -51,9 +60,12 @@ module MergeAccountingClient
51
60
  :'item' => :'item',
52
61
  :'account' => :'account',
53
62
  :'tracking_category' => :'tracking_category',
63
+ :'tracking_categories' => :'tracking_categories',
54
64
  :'total_line_amount' => :'total_line_amount',
55
65
  :'tax_rate' => :'tax_rate',
56
- :'remote_id' => :'remote_id'
66
+ :'currency' => :'currency',
67
+ :'exchange_rate' => :'exchange_rate',
68
+ :'company' => :'company'
57
69
  }
58
70
  end
59
71
 
@@ -71,9 +83,12 @@ module MergeAccountingClient
71
83
  :'item' => :'String',
72
84
  :'account' => :'String',
73
85
  :'tracking_category' => :'String',
86
+ :'tracking_categories' => :'Array<String>',
74
87
  :'total_line_amount' => :'String',
75
88
  :'tax_rate' => :'String',
76
- :'remote_id' => :'String'
89
+ :'currency' => :'CurrencyEnum',
90
+ :'exchange_rate' => :'String',
91
+ :'company' => :'String'
77
92
  }
78
93
  end
79
94
 
@@ -88,7 +103,9 @@ module MergeAccountingClient
88
103
  :'tracking_category',
89
104
  :'total_line_amount',
90
105
  :'tax_rate',
91
- :'remote_id'
106
+ :'currency',
107
+ :'exchange_rate',
108
+ :'company'
92
109
  ])
93
110
  end
94
111
 
@@ -131,6 +148,12 @@ module MergeAccountingClient
131
148
  self.tracking_category = attributes[:'tracking_category']
132
149
  end
133
150
 
151
+ if attributes.key?(:'tracking_categories')
152
+ if (value = attributes[:'tracking_categories']).is_a?(Array)
153
+ self.tracking_categories = value
154
+ end
155
+ end
156
+
134
157
  if attributes.key?(:'total_line_amount')
135
158
  self.total_line_amount = attributes[:'total_line_amount']
136
159
  end
@@ -139,8 +162,16 @@ module MergeAccountingClient
139
162
  self.tax_rate = attributes[:'tax_rate']
140
163
  end
141
164
 
142
- if attributes.key?(:'remote_id')
143
- self.remote_id = attributes[:'remote_id']
165
+ if attributes.key?(:'currency')
166
+ self.currency = attributes[:'currency']
167
+ end
168
+
169
+ if attributes.key?(:'exchange_rate')
170
+ self.exchange_rate = attributes[:'exchange_rate']
171
+ end
172
+
173
+ if attributes.key?(:'company')
174
+ self.company = attributes[:'company']
144
175
  end
145
176
  end
146
177
 
@@ -148,37 +179,48 @@ module MergeAccountingClient
148
179
  # @return Array for valid properties with the reasons
149
180
  def list_invalid_properties
150
181
  invalid_properties = Array.new
151
- pattern = Regexp.new(/^\d{0,32}(?:\.\d{0,16})?$/)
182
+ pattern = Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
152
183
  if !@unit_price.nil? && @unit_price !~ pattern
153
184
  invalid_properties.push("invalid value for \"unit_price\", must conform to the pattern #{pattern}.")
154
185
  end
155
186
 
156
- pattern = Regexp.new(/^\d{0,24}(?:\.\d{0,8})?$/)
187
+ pattern = Regexp.new(/^-?\d{0,24}(?:\.\d{0,8})?$/)
157
188
  if !@quantity.nil? && @quantity !~ pattern
158
189
  invalid_properties.push("invalid value for \"quantity\", must conform to the pattern #{pattern}.")
159
190
  end
160
191
 
161
- pattern = Regexp.new(/^\d{0,32}(?:\.\d{0,16})?$/)
192
+ if @tracking_categories.nil?
193
+ invalid_properties.push('invalid value for "tracking_categories", tracking_categories cannot be nil.')
194
+ end
195
+
196
+ pattern = Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
162
197
  if !@total_line_amount.nil? && @total_line_amount !~ pattern
163
198
  invalid_properties.push("invalid value for \"total_line_amount\", must conform to the pattern #{pattern}.")
164
199
  end
165
200
 
201
+ pattern = Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
202
+ if !@exchange_rate.nil? && @exchange_rate !~ pattern
203
+ invalid_properties.push("invalid value for \"exchange_rate\", must conform to the pattern #{pattern}.")
204
+ end
205
+
166
206
  invalid_properties
167
207
  end
168
208
 
169
209
  # Check to see if the all the properties in the model are valid
170
210
  # @return true if the model is valid
171
211
  def valid?
172
- return false if !@unit_price.nil? && @unit_price !~ Regexp.new(/^\d{0,32}(?:\.\d{0,16})?$/)
173
- return false if !@quantity.nil? && @quantity !~ Regexp.new(/^\d{0,24}(?:\.\d{0,8})?$/)
174
- return false if !@total_line_amount.nil? && @total_line_amount !~ Regexp.new(/^\d{0,32}(?:\.\d{0,16})?$/)
212
+ return false if !@unit_price.nil? && @unit_price !~ Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
213
+ return false if !@quantity.nil? && @quantity !~ Regexp.new(/^-?\d{0,24}(?:\.\d{0,8})?$/)
214
+ return false if @tracking_categories.nil?
215
+ return false if !@total_line_amount.nil? && @total_line_amount !~ Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
216
+ return false if !@exchange_rate.nil? && @exchange_rate !~ Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
175
217
  true
176
218
  end
177
219
 
178
220
  # Custom attribute writer method with validation
179
221
  # @param [Object] unit_price Value to be assigned
180
222
  def unit_price=(unit_price)
181
- pattern = Regexp.new(/^\d{0,32}(?:\.\d{0,16})?$/)
223
+ pattern = Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
182
224
  if !unit_price.nil? && unit_price !~ pattern
183
225
  fail ArgumentError, "invalid value for \"unit_price\", must conform to the pattern #{pattern}."
184
226
  end
@@ -189,7 +231,7 @@ module MergeAccountingClient
189
231
  # Custom attribute writer method with validation
190
232
  # @param [Object] quantity Value to be assigned
191
233
  def quantity=(quantity)
192
- pattern = Regexp.new(/^\d{0,24}(?:\.\d{0,8})?$/)
234
+ pattern = Regexp.new(/^-?\d{0,24}(?:\.\d{0,8})?$/)
193
235
  if !quantity.nil? && quantity !~ pattern
194
236
  fail ArgumentError, "invalid value for \"quantity\", must conform to the pattern #{pattern}."
195
237
  end
@@ -200,7 +242,7 @@ module MergeAccountingClient
200
242
  # Custom attribute writer method with validation
201
243
  # @param [Object] total_line_amount Value to be assigned
202
244
  def total_line_amount=(total_line_amount)
203
- pattern = Regexp.new(/^\d{0,32}(?:\.\d{0,16})?$/)
245
+ pattern = Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
204
246
  if !total_line_amount.nil? && total_line_amount !~ pattern
205
247
  fail ArgumentError, "invalid value for \"total_line_amount\", must conform to the pattern #{pattern}."
206
248
  end
@@ -208,6 +250,17 @@ module MergeAccountingClient
208
250
  @total_line_amount = total_line_amount
209
251
  end
210
252
 
253
+ # Custom attribute writer method with validation
254
+ # @param [Object] exchange_rate Value to be assigned
255
+ def exchange_rate=(exchange_rate)
256
+ pattern = Regexp.new(/^-?\d{0,32}(?:\.\d{0,16})?$/)
257
+ if !exchange_rate.nil? && exchange_rate !~ pattern
258
+ fail ArgumentError, "invalid value for \"exchange_rate\", must conform to the pattern #{pattern}."
259
+ end
260
+
261
+ @exchange_rate = exchange_rate
262
+ end
263
+
211
264
  # Checks equality by comparing each attribute.
212
265
  # @param [Object] Object to be compared
213
266
  def ==(o)
@@ -219,9 +272,12 @@ module MergeAccountingClient
219
272
  item == o.item &&
220
273
  account == o.account &&
221
274
  tracking_category == o.tracking_category &&
275
+ tracking_categories == o.tracking_categories &&
222
276
  total_line_amount == o.total_line_amount &&
223
277
  tax_rate == o.tax_rate &&
224
- remote_id == o.remote_id
278
+ currency == o.currency &&
279
+ exchange_rate == o.exchange_rate &&
280
+ company == o.company
225
281
  end
226
282
 
227
283
  # @see the `==` method
@@ -233,7 +289,7 @@ module MergeAccountingClient
233
289
  # Calculates hash code according to all attributes.
234
290
  # @return [Integer] Hash code
235
291
  def hash
236
- [memo, unit_price, quantity, item, account, tracking_category, total_line_amount, tax_rate, remote_id].hash
292
+ [memo, unit_price, quantity, item, account, tracking_category, tracking_categories, total_line_amount, tax_rate, currency, exchange_rate, company].hash
237
293
  end
238
294
 
239
295
  # Builds the object from hash