xero-ruby 3.0.0 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (415) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +257 -222
  3. data/lib/xero-ruby/api/accounting_api.rb +305 -152
  4. data/lib/xero-ruby/api/app_store_api.rb +87 -0
  5. data/lib/xero-ruby/api_client.rb +34 -5
  6. data/lib/xero-ruby/configuration.rb +2 -0
  7. data/lib/xero-ruby/models/accounting/account.rb +2 -0
  8. data/lib/xero-ruby/models/accounting/accounts.rb +2 -0
  9. data/lib/xero-ruby/models/accounting/accounts_payable.rb +2 -0
  10. data/lib/xero-ruby/models/accounting/accounts_receivable.rb +2 -0
  11. data/lib/xero-ruby/models/accounting/action.rb +2 -0
  12. data/lib/xero-ruby/models/accounting/actions.rb +2 -0
  13. data/lib/xero-ruby/models/accounting/address.rb +2 -0
  14. data/lib/xero-ruby/models/accounting/address_for_organisation.rb +2 -0
  15. data/lib/xero-ruby/models/accounting/allocation.rb +2 -0
  16. data/lib/xero-ruby/models/accounting/allocations.rb +2 -0
  17. data/lib/xero-ruby/models/accounting/attachment.rb +2 -0
  18. data/lib/xero-ruby/models/accounting/attachments.rb +2 -0
  19. data/lib/xero-ruby/models/accounting/balance_details.rb +2 -0
  20. data/lib/xero-ruby/models/accounting/balances.rb +2 -0
  21. data/lib/xero-ruby/models/accounting/bank_transaction.rb +2 -0
  22. data/lib/xero-ruby/models/accounting/bank_transactions.rb +2 -0
  23. data/lib/xero-ruby/models/accounting/bank_transfer.rb +2 -0
  24. data/lib/xero-ruby/models/accounting/bank_transfers.rb +2 -0
  25. data/lib/xero-ruby/models/accounting/batch_payment.rb +2 -0
  26. data/lib/xero-ruby/models/accounting/batch_payment_details.rb +2 -0
  27. data/lib/xero-ruby/models/accounting/batch_payments.rb +2 -0
  28. data/lib/xero-ruby/models/accounting/bill.rb +2 -0
  29. data/lib/xero-ruby/models/accounting/branding_theme.rb +2 -0
  30. data/lib/xero-ruby/models/accounting/branding_themes.rb +2 -0
  31. data/lib/xero-ruby/models/accounting/budget.rb +327 -0
  32. data/lib/xero-ruby/models/accounting/budget_balance.rb +267 -0
  33. data/lib/xero-ruby/models/accounting/budget_line.rb +244 -0
  34. data/lib/xero-ruby/models/accounting/budgets.rb +224 -0
  35. data/lib/xero-ruby/models/accounting/cis_org_setting.rb +2 -0
  36. data/lib/xero-ruby/models/accounting/cis_org_settings.rb +2 -0
  37. data/lib/xero-ruby/models/accounting/cis_setting.rb +2 -0
  38. data/lib/xero-ruby/models/accounting/cis_settings.rb +2 -0
  39. data/lib/xero-ruby/models/accounting/contact.rb +2 -0
  40. data/lib/xero-ruby/models/accounting/contact_group.rb +2 -0
  41. data/lib/xero-ruby/models/accounting/contact_groups.rb +2 -0
  42. data/lib/xero-ruby/models/accounting/contact_person.rb +2 -0
  43. data/lib/xero-ruby/models/accounting/contacts.rb +2 -0
  44. data/lib/xero-ruby/models/accounting/conversion_balances.rb +2 -0
  45. data/lib/xero-ruby/models/accounting/conversion_date.rb +2 -0
  46. data/lib/xero-ruby/models/accounting/credit_note.rb +2 -0
  47. data/lib/xero-ruby/models/accounting/credit_notes.rb +2 -0
  48. data/lib/xero-ruby/models/accounting/currencies.rb +2 -0
  49. data/lib/xero-ruby/models/accounting/currency.rb +2 -0
  50. data/lib/xero-ruby/models/accounting/element.rb +2 -0
  51. data/lib/xero-ruby/models/accounting/employee.rb +2 -0
  52. data/lib/xero-ruby/models/accounting/employees.rb +2 -0
  53. data/lib/xero-ruby/models/accounting/error.rb +2 -0
  54. data/lib/xero-ruby/models/accounting/expense_claim.rb +2 -0
  55. data/lib/xero-ruby/models/accounting/expense_claims.rb +2 -0
  56. data/lib/xero-ruby/models/accounting/external_link.rb +2 -0
  57. data/lib/xero-ruby/models/accounting/history_record.rb +2 -0
  58. data/lib/xero-ruby/models/accounting/history_records.rb +2 -0
  59. data/lib/xero-ruby/models/accounting/import_summary.rb +2 -0
  60. data/lib/xero-ruby/models/accounting/import_summary_accounts.rb +2 -0
  61. data/lib/xero-ruby/models/accounting/import_summary_object.rb +2 -0
  62. data/lib/xero-ruby/models/accounting/import_summary_organisation.rb +2 -0
  63. data/lib/xero-ruby/models/accounting/invoice.rb +2 -0
  64. data/lib/xero-ruby/models/accounting/invoice_reminder.rb +2 -0
  65. data/lib/xero-ruby/models/accounting/invoice_reminders.rb +2 -0
  66. data/lib/xero-ruby/models/accounting/invoices.rb +2 -0
  67. data/lib/xero-ruby/models/accounting/item.rb +2 -0
  68. data/lib/xero-ruby/models/accounting/items.rb +2 -0
  69. data/lib/xero-ruby/models/accounting/journal.rb +2 -0
  70. data/lib/xero-ruby/models/accounting/journal_line.rb +2 -0
  71. data/lib/xero-ruby/models/accounting/journals.rb +2 -0
  72. data/lib/xero-ruby/models/accounting/line_item.rb +13 -1
  73. data/lib/xero-ruby/models/accounting/line_item_tracking.rb +2 -0
  74. data/lib/xero-ruby/models/accounting/linked_transaction.rb +2 -0
  75. data/lib/xero-ruby/models/accounting/linked_transactions.rb +2 -0
  76. data/lib/xero-ruby/models/accounting/manual_journal.rb +2 -0
  77. data/lib/xero-ruby/models/accounting/manual_journal_line.rb +2 -0
  78. data/lib/xero-ruby/models/accounting/manual_journals.rb +2 -0
  79. data/lib/xero-ruby/models/accounting/online_invoice.rb +2 -0
  80. data/lib/xero-ruby/models/accounting/online_invoices.rb +2 -0
  81. data/lib/xero-ruby/models/accounting/organisation.rb +2 -0
  82. data/lib/xero-ruby/models/accounting/organisations.rb +2 -0
  83. data/lib/xero-ruby/models/accounting/overpayment.rb +2 -0
  84. data/lib/xero-ruby/models/accounting/overpayments.rb +2 -0
  85. data/lib/xero-ruby/models/accounting/payment.rb +13 -1
  86. data/lib/xero-ruby/models/accounting/payment_delete.rb +2 -0
  87. data/lib/xero-ruby/models/accounting/payment_service.rb +2 -0
  88. data/lib/xero-ruby/models/accounting/payment_services.rb +2 -0
  89. data/lib/xero-ruby/models/accounting/payment_term.rb +2 -0
  90. data/lib/xero-ruby/models/accounting/payments.rb +2 -0
  91. data/lib/xero-ruby/models/accounting/phone.rb +2 -0
  92. data/lib/xero-ruby/models/accounting/prepayment.rb +2 -0
  93. data/lib/xero-ruby/models/accounting/prepayments.rb +2 -0
  94. data/lib/xero-ruby/models/accounting/purchase.rb +2 -0
  95. data/lib/xero-ruby/models/accounting/purchase_order.rb +2 -0
  96. data/lib/xero-ruby/models/accounting/purchase_orders.rb +2 -0
  97. data/lib/xero-ruby/models/accounting/quote.rb +2 -0
  98. data/lib/xero-ruby/models/accounting/quotes.rb +2 -0
  99. data/lib/xero-ruby/models/accounting/receipt.rb +2 -0
  100. data/lib/xero-ruby/models/accounting/receipts.rb +2 -0
  101. data/lib/xero-ruby/models/accounting/repeating_invoice.rb +2 -0
  102. data/lib/xero-ruby/models/accounting/repeating_invoices.rb +2 -0
  103. data/lib/xero-ruby/models/accounting/report.rb +3 -11
  104. data/lib/xero-ruby/models/accounting/report_attribute.rb +2 -0
  105. data/lib/xero-ruby/models/accounting/report_cell.rb +2 -0
  106. data/lib/xero-ruby/models/accounting/report_fields.rb +2 -0
  107. data/lib/xero-ruby/models/accounting/report_row.rb +2 -0
  108. data/lib/xero-ruby/models/accounting/report_rows.rb +2 -0
  109. data/lib/xero-ruby/models/accounting/report_with_row.rb +3 -1
  110. data/lib/xero-ruby/models/accounting/report_with_rows.rb +2 -0
  111. data/lib/xero-ruby/models/accounting/reports.rb +2 -0
  112. data/lib/xero-ruby/models/accounting/request_empty.rb +2 -0
  113. data/lib/xero-ruby/models/accounting/sales_tracking_category.rb +2 -0
  114. data/lib/xero-ruby/models/accounting/schedule.rb +2 -0
  115. data/lib/xero-ruby/models/accounting/setup.rb +2 -0
  116. data/lib/xero-ruby/models/accounting/tax_component.rb +2 -0
  117. data/lib/xero-ruby/models/accounting/tax_rate.rb +2 -0
  118. data/lib/xero-ruby/models/accounting/tax_rates.rb +2 -0
  119. data/lib/xero-ruby/models/accounting/ten_ninety_nine_contact.rb +2 -0
  120. data/lib/xero-ruby/models/accounting/time_zone.rb +1 -0
  121. data/lib/xero-ruby/models/accounting/tracking_categories.rb +2 -0
  122. data/lib/xero-ruby/models/accounting/tracking_category.rb +2 -0
  123. data/lib/xero-ruby/models/accounting/tracking_option.rb +2 -0
  124. data/lib/xero-ruby/models/accounting/tracking_options.rb +2 -0
  125. data/lib/xero-ruby/models/accounting/user.rb +2 -0
  126. data/lib/xero-ruby/models/accounting/users.rb +2 -0
  127. data/lib/xero-ruby/models/accounting/validation_error.rb +2 -0
  128. data/lib/xero-ruby/models/app_store/plan.rb +310 -0
  129. data/lib/xero-ruby/models/app_store/price.rb +257 -0
  130. data/lib/xero-ruby/models/app_store/problem_details.rb +272 -0
  131. data/lib/xero-ruby/models/app_store/product.rb +278 -0
  132. data/lib/xero-ruby/models/app_store/subscription.rb +324 -0
  133. data/lib/xero-ruby/models/app_store/subscription_item.rb +292 -0
  134. data/lib/xero-ruby/models/assets/asset.rb +2 -0
  135. data/lib/xero-ruby/models/assets/asset_type.rb +2 -0
  136. data/lib/xero-ruby/models/assets/assets.rb +2 -0
  137. data/lib/xero-ruby/models/assets/book_depreciation_detail.rb +2 -0
  138. data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +2 -0
  139. data/lib/xero-ruby/models/assets/error.rb +2 -0
  140. data/lib/xero-ruby/models/assets/field_validation_errors_element.rb +2 -0
  141. data/lib/xero-ruby/models/assets/pagination.rb +2 -0
  142. data/lib/xero-ruby/models/assets/resource_validation_errors_element.rb +2 -0
  143. data/lib/xero-ruby/models/assets/setting.rb +2 -0
  144. data/lib/xero-ruby/models/files/association.rb +2 -0
  145. data/lib/xero-ruby/models/files/file_object.rb +2 -0
  146. data/lib/xero-ruby/models/files/files.rb +2 -0
  147. data/lib/xero-ruby/models/files/folder.rb +2 -0
  148. data/lib/xero-ruby/models/files/folders.rb +2 -0
  149. data/lib/xero-ruby/models/files/upload_object.rb +2 -0
  150. data/lib/xero-ruby/models/files/user.rb +2 -0
  151. data/lib/xero-ruby/models/payroll_au/account.rb +2 -0
  152. data/lib/xero-ruby/models/payroll_au/api_exception.rb +2 -0
  153. data/lib/xero-ruby/models/payroll_au/bank_account.rb +2 -0
  154. data/lib/xero-ruby/models/payroll_au/deduction_line.rb +2 -0
  155. data/lib/xero-ruby/models/payroll_au/deduction_type.rb +2 -0
  156. data/lib/xero-ruby/models/payroll_au/earnings_line.rb +2 -0
  157. data/lib/xero-ruby/models/payroll_au/earnings_rate.rb +2 -0
  158. data/lib/xero-ruby/models/payroll_au/employee.rb +32 -1
  159. data/lib/xero-ruby/models/payroll_au/employees.rb +2 -0
  160. data/lib/xero-ruby/models/payroll_au/home_address.rb +2 -0
  161. data/lib/xero-ruby/models/payroll_au/leave_accrual_line.rb +2 -0
  162. data/lib/xero-ruby/models/payroll_au/leave_application.rb +2 -0
  163. data/lib/xero-ruby/models/payroll_au/leave_applications.rb +2 -0
  164. data/lib/xero-ruby/models/payroll_au/leave_balance.rb +2 -0
  165. data/lib/xero-ruby/models/payroll_au/leave_earnings_line.rb +2 -0
  166. data/lib/xero-ruby/models/payroll_au/leave_line.rb +2 -0
  167. data/lib/xero-ruby/models/payroll_au/leave_lines.rb +2 -0
  168. data/lib/xero-ruby/models/payroll_au/leave_period.rb +2 -0
  169. data/lib/xero-ruby/models/payroll_au/leave_type.rb +2 -0
  170. data/lib/xero-ruby/models/payroll_au/opening_balances.rb +2 -0
  171. data/lib/xero-ruby/models/payroll_au/pay_item.rb +2 -0
  172. data/lib/xero-ruby/models/payroll_au/pay_items.rb +2 -0
  173. data/lib/xero-ruby/models/payroll_au/pay_run.rb +2 -0
  174. data/lib/xero-ruby/models/payroll_au/pay_runs.rb +2 -0
  175. data/lib/xero-ruby/models/payroll_au/pay_template.rb +2 -0
  176. data/lib/xero-ruby/models/payroll_au/payroll_calendar.rb +13 -1
  177. data/lib/xero-ruby/models/payroll_au/payroll_calendars.rb +2 -0
  178. data/lib/xero-ruby/models/payroll_au/payslip.rb +2 -0
  179. data/lib/xero-ruby/models/payroll_au/payslip_lines.rb +2 -0
  180. data/lib/xero-ruby/models/payroll_au/payslip_object.rb +2 -0
  181. data/lib/xero-ruby/models/payroll_au/payslip_summary.rb +2 -0
  182. data/lib/xero-ruby/models/payroll_au/payslips.rb +2 -0
  183. data/lib/xero-ruby/models/payroll_au/reimbursement_line.rb +2 -0
  184. data/lib/xero-ruby/models/payroll_au/reimbursement_lines.rb +2 -0
  185. data/lib/xero-ruby/models/payroll_au/reimbursement_type.rb +2 -0
  186. data/lib/xero-ruby/models/payroll_au/settings.rb +2 -0
  187. data/lib/xero-ruby/models/payroll_au/settings_object.rb +2 -0
  188. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories.rb +2 -0
  189. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_employee_groups.rb +2 -0
  190. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_timesheet_categories.rb +2 -0
  191. data/lib/xero-ruby/models/payroll_au/super_fund.rb +2 -0
  192. data/lib/xero-ruby/models/payroll_au/super_fund_product.rb +2 -0
  193. data/lib/xero-ruby/models/payroll_au/super_fund_products.rb +2 -0
  194. data/lib/xero-ruby/models/payroll_au/super_funds.rb +2 -0
  195. data/lib/xero-ruby/models/payroll_au/super_line.rb +2 -0
  196. data/lib/xero-ruby/models/payroll_au/super_membership.rb +2 -0
  197. data/lib/xero-ruby/models/payroll_au/superannuation_line.rb +2 -0
  198. data/lib/xero-ruby/models/payroll_au/tax_declaration.rb +2 -0
  199. data/lib/xero-ruby/models/payroll_au/tax_line.rb +2 -0
  200. data/lib/xero-ruby/models/payroll_au/timesheet.rb +2 -0
  201. data/lib/xero-ruby/models/payroll_au/timesheet_line.rb +2 -0
  202. data/lib/xero-ruby/models/payroll_au/timesheet_object.rb +2 -0
  203. data/lib/xero-ruby/models/payroll_au/timesheets.rb +2 -0
  204. data/lib/xero-ruby/models/payroll_au/validation_error.rb +2 -0
  205. data/lib/xero-ruby/models/payroll_nz/account.rb +2 -0
  206. data/lib/xero-ruby/models/payroll_nz/accounts.rb +2 -0
  207. data/lib/xero-ruby/models/payroll_nz/address.rb +2 -0
  208. data/lib/xero-ruby/models/payroll_nz/bank_account.rb +2 -0
  209. data/lib/xero-ruby/models/payroll_nz/benefit.rb +2 -0
  210. data/lib/xero-ruby/models/payroll_nz/deduction.rb +2 -0
  211. data/lib/xero-ruby/models/payroll_nz/deduction_line.rb +2 -0
  212. data/lib/xero-ruby/models/payroll_nz/deduction_object.rb +2 -0
  213. data/lib/xero-ruby/models/payroll_nz/deductions.rb +2 -0
  214. data/lib/xero-ruby/models/payroll_nz/earnings_line.rb +2 -0
  215. data/lib/xero-ruby/models/payroll_nz/earnings_order.rb +2 -0
  216. data/lib/xero-ruby/models/payroll_nz/earnings_order_object.rb +2 -0
  217. data/lib/xero-ruby/models/payroll_nz/earnings_orders.rb +2 -0
  218. data/lib/xero-ruby/models/payroll_nz/earnings_rate.rb +2 -0
  219. data/lib/xero-ruby/models/payroll_nz/earnings_rate_object.rb +2 -0
  220. data/lib/xero-ruby/models/payroll_nz/earnings_rates.rb +2 -0
  221. data/lib/xero-ruby/models/payroll_nz/earnings_template.rb +2 -0
  222. data/lib/xero-ruby/models/payroll_nz/earnings_template_object.rb +2 -0
  223. data/lib/xero-ruby/models/payroll_nz/employee.rb +2 -0
  224. data/lib/xero-ruby/models/payroll_nz/employee_earnings_templates.rb +2 -0
  225. data/lib/xero-ruby/models/payroll_nz/employee_leave.rb +2 -0
  226. data/lib/xero-ruby/models/payroll_nz/employee_leave_balance.rb +2 -0
  227. data/lib/xero-ruby/models/payroll_nz/employee_leave_balances.rb +2 -0
  228. data/lib/xero-ruby/models/payroll_nz/employee_leave_object.rb +2 -0
  229. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup.rb +2 -0
  230. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup_object.rb +2 -0
  231. data/lib/xero-ruby/models/payroll_nz/employee_leave_type.rb +2 -0
  232. data/lib/xero-ruby/models/payroll_nz/employee_leave_type_object.rb +2 -0
  233. data/lib/xero-ruby/models/payroll_nz/employee_leave_types.rb +2 -0
  234. data/lib/xero-ruby/models/payroll_nz/employee_leaves.rb +2 -0
  235. data/lib/xero-ruby/models/payroll_nz/employee_object.rb +2 -0
  236. data/lib/xero-ruby/models/payroll_nz/employee_opening_balance.rb +2 -0
  237. data/lib/xero-ruby/models/payroll_nz/employee_opening_balances_object.rb +2 -0
  238. data/lib/xero-ruby/models/payroll_nz/employee_pay_template.rb +2 -0
  239. data/lib/xero-ruby/models/payroll_nz/employee_pay_template_object.rb +2 -0
  240. data/lib/xero-ruby/models/payroll_nz/employee_pay_templates.rb +2 -0
  241. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance.rb +2 -0
  242. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance_object.rb +2 -0
  243. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_summary.rb +2 -0
  244. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leaves_summaries.rb +2 -0
  245. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave.rb +2 -0
  246. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave_object.rb +2 -0
  247. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leaves.rb +2 -0
  248. data/lib/xero-ruby/models/payroll_nz/employee_tax.rb +2 -0
  249. data/lib/xero-ruby/models/payroll_nz/employee_tax_object.rb +2 -0
  250. data/lib/xero-ruby/models/payroll_nz/employees.rb +2 -0
  251. data/lib/xero-ruby/models/payroll_nz/employment.rb +2 -0
  252. data/lib/xero-ruby/models/payroll_nz/employment_object.rb +2 -0
  253. data/lib/xero-ruby/models/payroll_nz/gross_earnings_history.rb +2 -0
  254. data/lib/xero-ruby/models/payroll_nz/invalid_field.rb +2 -0
  255. data/lib/xero-ruby/models/payroll_nz/leave_accrual_line.rb +2 -0
  256. data/lib/xero-ruby/models/payroll_nz/leave_earnings_line.rb +2 -0
  257. data/lib/xero-ruby/models/payroll_nz/leave_period.rb +2 -0
  258. data/lib/xero-ruby/models/payroll_nz/leave_periods.rb +2 -0
  259. data/lib/xero-ruby/models/payroll_nz/leave_type.rb +2 -0
  260. data/lib/xero-ruby/models/payroll_nz/leave_type_object.rb +2 -0
  261. data/lib/xero-ruby/models/payroll_nz/leave_types.rb +2 -0
  262. data/lib/xero-ruby/models/payroll_nz/pagination.rb +2 -0
  263. data/lib/xero-ruby/models/payroll_nz/pay_run.rb +2 -0
  264. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar.rb +2 -0
  265. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar_object.rb +2 -0
  266. data/lib/xero-ruby/models/payroll_nz/pay_run_calendars.rb +2 -0
  267. data/lib/xero-ruby/models/payroll_nz/pay_run_object.rb +2 -0
  268. data/lib/xero-ruby/models/payroll_nz/pay_runs.rb +2 -0
  269. data/lib/xero-ruby/models/payroll_nz/pay_slip.rb +2 -0
  270. data/lib/xero-ruby/models/payroll_nz/pay_slip_object.rb +2 -0
  271. data/lib/xero-ruby/models/payroll_nz/pay_slips.rb +2 -0
  272. data/lib/xero-ruby/models/payroll_nz/payment_line.rb +2 -0
  273. data/lib/xero-ruby/models/payroll_nz/payment_method.rb +2 -0
  274. data/lib/xero-ruby/models/payroll_nz/payment_method_object.rb +2 -0
  275. data/lib/xero-ruby/models/payroll_nz/problem.rb +2 -0
  276. data/lib/xero-ruby/models/payroll_nz/reimbursement.rb +2 -0
  277. data/lib/xero-ruby/models/payroll_nz/reimbursement_line.rb +2 -0
  278. data/lib/xero-ruby/models/payroll_nz/reimbursement_object.rb +2 -0
  279. data/lib/xero-ruby/models/payroll_nz/reimbursements.rb +2 -0
  280. data/lib/xero-ruby/models/payroll_nz/salary_and_wage.rb +2 -0
  281. data/lib/xero-ruby/models/payroll_nz/salary_and_wage_object.rb +2 -0
  282. data/lib/xero-ruby/models/payroll_nz/salary_and_wages.rb +2 -0
  283. data/lib/xero-ruby/models/payroll_nz/settings.rb +2 -0
  284. data/lib/xero-ruby/models/payroll_nz/statutory_deduction.rb +2 -0
  285. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_line.rb +2 -0
  286. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_object.rb +2 -0
  287. data/lib/xero-ruby/models/payroll_nz/statutory_deductions.rb +2 -0
  288. data/lib/xero-ruby/models/payroll_nz/superannuation_line.rb +2 -0
  289. data/lib/xero-ruby/models/payroll_nz/superannuation_object.rb +2 -0
  290. data/lib/xero-ruby/models/payroll_nz/superannuations.rb +2 -0
  291. data/lib/xero-ruby/models/payroll_nz/tax_line.rb +2 -0
  292. data/lib/xero-ruby/models/payroll_nz/tax_settings.rb +2 -0
  293. data/lib/xero-ruby/models/payroll_nz/timesheet.rb +2 -0
  294. data/lib/xero-ruby/models/payroll_nz/timesheet_earnings_line.rb +2 -0
  295. data/lib/xero-ruby/models/payroll_nz/timesheet_line.rb +2 -0
  296. data/lib/xero-ruby/models/payroll_nz/timesheet_line_object.rb +2 -0
  297. data/lib/xero-ruby/models/payroll_nz/timesheet_object.rb +2 -0
  298. data/lib/xero-ruby/models/payroll_nz/timesheets.rb +2 -0
  299. data/lib/xero-ruby/models/payroll_nz/tracking_categories.rb +2 -0
  300. data/lib/xero-ruby/models/payroll_nz/tracking_category.rb +2 -0
  301. data/lib/xero-ruby/models/payroll_uk/account.rb +2 -0
  302. data/lib/xero-ruby/models/payroll_uk/accounts.rb +2 -0
  303. data/lib/xero-ruby/models/payroll_uk/address.rb +2 -0
  304. data/lib/xero-ruby/models/payroll_uk/bank_account.rb +2 -0
  305. data/lib/xero-ruby/models/payroll_uk/benefit.rb +2 -0
  306. data/lib/xero-ruby/models/payroll_uk/benefit_line.rb +2 -0
  307. data/lib/xero-ruby/models/payroll_uk/benefit_object.rb +2 -0
  308. data/lib/xero-ruby/models/payroll_uk/benefits.rb +2 -0
  309. data/lib/xero-ruby/models/payroll_uk/court_order_line.rb +2 -0
  310. data/lib/xero-ruby/models/payroll_uk/deduction.rb +2 -0
  311. data/lib/xero-ruby/models/payroll_uk/deduction_line.rb +2 -0
  312. data/lib/xero-ruby/models/payroll_uk/deduction_object.rb +2 -0
  313. data/lib/xero-ruby/models/payroll_uk/deductions.rb +2 -0
  314. data/lib/xero-ruby/models/payroll_uk/earnings_line.rb +2 -0
  315. data/lib/xero-ruby/models/payroll_uk/earnings_order.rb +2 -0
  316. data/lib/xero-ruby/models/payroll_uk/earnings_order_object.rb +2 -0
  317. data/lib/xero-ruby/models/payroll_uk/earnings_orders.rb +2 -0
  318. data/lib/xero-ruby/models/payroll_uk/earnings_rate.rb +5 -2
  319. data/lib/xero-ruby/models/payroll_uk/earnings_rate_object.rb +2 -0
  320. data/lib/xero-ruby/models/payroll_uk/earnings_rates.rb +2 -0
  321. data/lib/xero-ruby/models/payroll_uk/earnings_template.rb +2 -0
  322. data/lib/xero-ruby/models/payroll_uk/earnings_template_object.rb +2 -0
  323. data/lib/xero-ruby/models/payroll_uk/employee.rb +2 -0
  324. data/lib/xero-ruby/models/payroll_uk/employee_leave.rb +2 -0
  325. data/lib/xero-ruby/models/payroll_uk/employee_leave_balance.rb +2 -0
  326. data/lib/xero-ruby/models/payroll_uk/employee_leave_balances.rb +2 -0
  327. data/lib/xero-ruby/models/payroll_uk/employee_leave_object.rb +2 -0
  328. data/lib/xero-ruby/models/payroll_uk/employee_leave_type.rb +2 -0
  329. data/lib/xero-ruby/models/payroll_uk/employee_leave_type_object.rb +2 -0
  330. data/lib/xero-ruby/models/payroll_uk/employee_leave_types.rb +2 -0
  331. data/lib/xero-ruby/models/payroll_uk/employee_leaves.rb +2 -0
  332. data/lib/xero-ruby/models/payroll_uk/employee_object.rb +2 -0
  333. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances.rb +2 -0
  334. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances_object.rb +2 -0
  335. data/lib/xero-ruby/models/payroll_uk/employee_pay_template.rb +2 -0
  336. data/lib/xero-ruby/models/payroll_uk/employee_pay_template_object.rb +2 -0
  337. data/lib/xero-ruby/models/payroll_uk/employee_pay_templates.rb +2 -0
  338. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance.rb +2 -0
  339. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance_object.rb +2 -0
  340. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_summary.rb +2 -0
  341. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leaves_summaries.rb +2 -0
  342. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave.rb +2 -0
  343. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave_object.rb +2 -0
  344. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leaves.rb +2 -0
  345. data/lib/xero-ruby/models/payroll_uk/employee_tax.rb +2 -0
  346. data/lib/xero-ruby/models/payroll_uk/employee_tax_object.rb +2 -0
  347. data/lib/xero-ruby/models/payroll_uk/employees.rb +2 -0
  348. data/lib/xero-ruby/models/payroll_uk/employment.rb +2 -0
  349. data/lib/xero-ruby/models/payroll_uk/employment_object.rb +2 -0
  350. data/lib/xero-ruby/models/payroll_uk/invalid_field.rb +2 -0
  351. data/lib/xero-ruby/models/payroll_uk/leave_accrual_line.rb +2 -0
  352. data/lib/xero-ruby/models/payroll_uk/leave_earnings_line.rb +2 -0
  353. data/lib/xero-ruby/models/payroll_uk/leave_period.rb +2 -0
  354. data/lib/xero-ruby/models/payroll_uk/leave_periods.rb +2 -0
  355. data/lib/xero-ruby/models/payroll_uk/leave_type.rb +2 -0
  356. data/lib/xero-ruby/models/payroll_uk/leave_type_object.rb +2 -0
  357. data/lib/xero-ruby/models/payroll_uk/leave_types.rb +2 -0
  358. data/lib/xero-ruby/models/payroll_uk/pagination.rb +2 -0
  359. data/lib/xero-ruby/models/payroll_uk/pay_run.rb +2 -0
  360. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar.rb +2 -0
  361. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar_object.rb +2 -0
  362. data/lib/xero-ruby/models/payroll_uk/pay_run_calendars.rb +2 -0
  363. data/lib/xero-ruby/models/payroll_uk/pay_run_object.rb +2 -0
  364. data/lib/xero-ruby/models/payroll_uk/pay_runs.rb +2 -0
  365. data/lib/xero-ruby/models/payroll_uk/payment_line.rb +2 -0
  366. data/lib/xero-ruby/models/payroll_uk/payment_method.rb +2 -0
  367. data/lib/xero-ruby/models/payroll_uk/payment_method_object.rb +2 -0
  368. data/lib/xero-ruby/models/payroll_uk/payslip.rb +2 -0
  369. data/lib/xero-ruby/models/payroll_uk/payslip_object.rb +2 -0
  370. data/lib/xero-ruby/models/payroll_uk/payslips.rb +2 -0
  371. data/lib/xero-ruby/models/payroll_uk/problem.rb +2 -0
  372. data/lib/xero-ruby/models/payroll_uk/reimbursement.rb +2 -0
  373. data/lib/xero-ruby/models/payroll_uk/reimbursement_line.rb +2 -0
  374. data/lib/xero-ruby/models/payroll_uk/reimbursement_object.rb +2 -0
  375. data/lib/xero-ruby/models/payroll_uk/reimbursements.rb +2 -0
  376. data/lib/xero-ruby/models/payroll_uk/salary_and_wage.rb +2 -0
  377. data/lib/xero-ruby/models/payroll_uk/salary_and_wage_object.rb +2 -0
  378. data/lib/xero-ruby/models/payroll_uk/salary_and_wages.rb +2 -0
  379. data/lib/xero-ruby/models/payroll_uk/settings.rb +2 -0
  380. data/lib/xero-ruby/models/payroll_uk/statutory_deduction.rb +2 -0
  381. data/lib/xero-ruby/models/payroll_uk/tax_line.rb +2 -0
  382. data/lib/xero-ruby/models/payroll_uk/timesheet.rb +2 -0
  383. data/lib/xero-ruby/models/payroll_uk/timesheet_earnings_line.rb +2 -0
  384. data/lib/xero-ruby/models/payroll_uk/timesheet_line.rb +2 -0
  385. data/lib/xero-ruby/models/payroll_uk/timesheet_line_object.rb +2 -0
  386. data/lib/xero-ruby/models/payroll_uk/timesheet_object.rb +2 -0
  387. data/lib/xero-ruby/models/payroll_uk/timesheets.rb +2 -0
  388. data/lib/xero-ruby/models/payroll_uk/tracking_categories.rb +2 -0
  389. data/lib/xero-ruby/models/payroll_uk/tracking_category.rb +2 -0
  390. data/lib/xero-ruby/models/projects/amount.rb +2 -0
  391. data/lib/xero-ruby/models/projects/error.rb +2 -0
  392. data/lib/xero-ruby/models/projects/pagination.rb +2 -0
  393. data/lib/xero-ruby/models/projects/project.rb +2 -0
  394. data/lib/xero-ruby/models/projects/project_create_or_update.rb +2 -0
  395. data/lib/xero-ruby/models/projects/project_patch.rb +2 -0
  396. data/lib/xero-ruby/models/projects/project_user.rb +2 -0
  397. data/lib/xero-ruby/models/projects/project_users.rb +2 -0
  398. data/lib/xero-ruby/models/projects/projects.rb +2 -0
  399. data/lib/xero-ruby/models/projects/task.rb +2 -0
  400. data/lib/xero-ruby/models/projects/task_create_or_update.rb +2 -0
  401. data/lib/xero-ruby/models/projects/tasks.rb +2 -0
  402. data/lib/xero-ruby/models/projects/time_entries.rb +2 -0
  403. data/lib/xero-ruby/models/projects/time_entry.rb +2 -0
  404. data/lib/xero-ruby/models/projects/time_entry_create_or_update.rb +2 -0
  405. data/lib/xero-ruby/version.rb +2 -2
  406. data/lib/xero-ruby.rb +11 -0
  407. data/spec/api_client_spec.rb +25 -2
  408. data/spec/app_store/api/app_store_api_spec.rb +45 -0
  409. data/spec/app_store/models/plan_spec.rb +62 -0
  410. data/spec/app_store/models/price_spec.rb +52 -0
  411. data/spec/app_store/models/problem_details_spec.rb +70 -0
  412. data/spec/app_store/models/product_spec.rb +56 -0
  413. data/spec/app_store/models/subscription_item_spec.rb +70 -0
  414. data/spec/app_store/models/subscription_spec.rb +82 -0
  415. metadata +30 -5
@@ -242,6 +242,8 @@ module XeroRuby::Accounting
242
242
  original, date, timezone = *date_pattern.match(datestring)
243
243
  date = (date.to_i / 1000)
244
244
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
245
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
246
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
245
247
  else # handle date 'types' for small subset of payroll API's
246
248
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
247
249
  end
@@ -214,6 +214,8 @@ module XeroRuby::Accounting
214
214
  original, date, timezone = *date_pattern.match(datestring)
215
215
  date = (date.to_i / 1000)
216
216
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
217
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
218
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  else # handle date 'types' for small subset of payroll API's
218
220
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
219
221
  end
@@ -223,6 +223,8 @@ module XeroRuby::Accounting
223
223
  original, date, timezone = *date_pattern.match(datestring)
224
224
  date = (date.to_i / 1000)
225
225
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
226
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
227
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
226
228
  else # handle date 'types' for small subset of payroll API's
227
229
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
228
230
  end
@@ -293,6 +293,8 @@ module XeroRuby::Accounting
293
293
  original, date, timezone = *date_pattern.match(datestring)
294
294
  date = (date.to_i / 1000)
295
295
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
296
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
297
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
296
298
  else # handle date 'types' for small subset of payroll API's
297
299
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
298
300
  end
@@ -212,6 +212,8 @@ module XeroRuby::Accounting
212
212
  original, date, timezone = *date_pattern.match(datestring)
213
213
  date = (date.to_i / 1000)
214
214
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
215
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
216
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
215
217
  else # handle date 'types' for small subset of payroll API's
216
218
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  end
@@ -212,6 +212,8 @@ module XeroRuby::Accounting
212
212
  original, date, timezone = *date_pattern.match(datestring)
213
213
  date = (date.to_i / 1000)
214
214
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
215
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
216
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
215
217
  else # handle date 'types' for small subset of payroll API's
216
218
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  end
@@ -697,6 +697,8 @@ module XeroRuby::Accounting
697
697
  original, date, timezone = *date_pattern.match(datestring)
698
698
  date = (date.to_i / 1000)
699
699
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
700
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
701
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
700
702
  else # handle date 'types' for small subset of payroll API's
701
703
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
702
704
  end
@@ -212,6 +212,8 @@ module XeroRuby::Accounting
212
212
  original, date, timezone = *date_pattern.match(datestring)
213
213
  date = (date.to_i / 1000)
214
214
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
215
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
216
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
215
217
  else # handle date 'types' for small subset of payroll API's
216
218
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  end
@@ -214,6 +214,8 @@ module XeroRuby::Accounting
214
214
  original, date, timezone = *date_pattern.match(datestring)
215
215
  date = (date.to_i / 1000)
216
216
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
217
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
218
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  else # handle date 'types' for small subset of payroll API's
218
220
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
219
221
  end
@@ -214,6 +214,8 @@ module XeroRuby::Accounting
214
214
  original, date, timezone = *date_pattern.match(datestring)
215
215
  date = (date.to_i / 1000)
216
216
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
217
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
218
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  else # handle date 'types' for small subset of payroll API's
218
220
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
219
221
  end
@@ -433,6 +433,8 @@ module XeroRuby::Accounting
433
433
  original, date, timezone = *date_pattern.match(datestring)
434
434
  date = (date.to_i / 1000)
435
435
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
436
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
437
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
436
438
  else # handle date 'types' for small subset of payroll API's
437
439
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
438
440
  end
@@ -214,6 +214,8 @@ module XeroRuby::Accounting
214
214
  original, date, timezone = *date_pattern.match(datestring)
215
215
  date = (date.to_i / 1000)
216
216
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
217
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
218
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  else # handle date 'types' for small subset of payroll API's
218
220
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
219
221
  end
@@ -343,6 +343,8 @@ module XeroRuby::Accounting
343
343
  original, date, timezone = *date_pattern.match(datestring)
344
344
  date = (date.to_i / 1000)
345
345
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
346
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
347
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
346
348
  else # handle date 'types' for small subset of payroll API's
347
349
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
348
350
  end
@@ -324,6 +324,8 @@ module XeroRuby::Accounting
324
324
  original, date, timezone = *date_pattern.match(datestring)
325
325
  date = (date.to_i / 1000)
326
326
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
327
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
328
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
327
329
  else # handle date 'types' for small subset of payroll API's
328
330
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
329
331
  end
@@ -214,6 +214,8 @@ module XeroRuby::Accounting
214
214
  original, date, timezone = *date_pattern.match(datestring)
215
215
  date = (date.to_i / 1000)
216
216
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
217
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
218
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  else # handle date 'types' for small subset of payroll API's
218
220
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
219
221
  end
@@ -34,6 +34,9 @@ module XeroRuby::Accounting
34
34
  # See Accounts
35
35
  attr_accessor :account_code
36
36
 
37
+ # The associated account ID related to this line item
38
+ attr_accessor :account_id
39
+
37
40
  # The tax type from TaxRates
38
41
  attr_accessor :tax_type
39
42
 
@@ -64,6 +67,7 @@ module XeroRuby::Accounting
64
67
  :'unit_amount' => :'UnitAmount',
65
68
  :'item_code' => :'ItemCode',
66
69
  :'account_code' => :'AccountCode',
70
+ :'account_id' => :'AccountID',
67
71
  :'tax_type' => :'TaxType',
68
72
  :'tax_amount' => :'TaxAmount',
69
73
  :'line_amount' => :'LineAmount',
@@ -83,6 +87,7 @@ module XeroRuby::Accounting
83
87
  :'unit_amount' => :'BigDecimal',
84
88
  :'item_code' => :'String',
85
89
  :'account_code' => :'String',
90
+ :'account_id' => :'String',
86
91
  :'tax_type' => :'String',
87
92
  :'tax_amount' => :'BigDecimal',
88
93
  :'line_amount' => :'BigDecimal',
@@ -132,6 +137,10 @@ module XeroRuby::Accounting
132
137
  self.account_code = attributes[:'account_code']
133
138
  end
134
139
 
140
+ if attributes.key?(:'account_id')
141
+ self.account_id = attributes[:'account_id']
142
+ end
143
+
135
144
  if attributes.key?(:'tax_type')
136
145
  self.tax_type = attributes[:'tax_type']
137
146
  end
@@ -187,6 +196,7 @@ module XeroRuby::Accounting
187
196
  unit_amount == o.unit_amount &&
188
197
  item_code == o.item_code &&
189
198
  account_code == o.account_code &&
199
+ account_id == o.account_id &&
190
200
  tax_type == o.tax_type &&
191
201
  tax_amount == o.tax_amount &&
192
202
  line_amount == o.line_amount &&
@@ -205,7 +215,7 @@ module XeroRuby::Accounting
205
215
  # Calculates hash code according to all attributes.
206
216
  # @return [Integer] Hash code
207
217
  def hash
208
- [line_item_id, description, quantity, unit_amount, item_code, account_code, tax_type, tax_amount, line_amount, tracking, discount_rate, discount_amount, repeating_invoice_id].hash
218
+ [line_item_id, description, quantity, unit_amount, item_code, account_code, account_id, tax_type, tax_amount, line_amount, tracking, discount_rate, discount_amount, repeating_invoice_id].hash
209
219
  end
210
220
 
211
221
  # Builds the object from hash
@@ -334,6 +344,8 @@ module XeroRuby::Accounting
334
344
  original, date, timezone = *date_pattern.match(datestring)
335
345
  date = (date.to_i / 1000)
336
346
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
347
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
348
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
337
349
  else # handle date 'types' for small subset of payroll API's
338
350
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
339
351
  end
@@ -257,6 +257,8 @@ module XeroRuby::Accounting
257
257
  original, date, timezone = *date_pattern.match(datestring)
258
258
  date = (date.to_i / 1000)
259
259
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
260
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
261
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
260
262
  else # handle date 'types' for small subset of payroll API's
261
263
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
262
264
  end
@@ -380,6 +380,8 @@ module XeroRuby::Accounting
380
380
  original, date, timezone = *date_pattern.match(datestring)
381
381
  date = (date.to_i / 1000)
382
382
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
383
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
384
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
383
385
  else # handle date 'types' for small subset of payroll API's
384
386
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
385
387
  end
@@ -214,6 +214,8 @@ module XeroRuby::Accounting
214
214
  original, date, timezone = *date_pattern.match(datestring)
215
215
  date = (date.to_i / 1000)
216
216
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
217
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
218
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  else # handle date 'types' for small subset of payroll API's
218
220
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
219
221
  end
@@ -396,6 +396,8 @@ module XeroRuby::Accounting
396
396
  original, date, timezone = *date_pattern.match(datestring)
397
397
  date = (date.to_i / 1000)
398
398
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
399
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
400
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
399
401
  else # handle date 'types' for small subset of payroll API's
400
402
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
401
403
  end
@@ -284,6 +284,8 @@ module XeroRuby::Accounting
284
284
  original, date, timezone = *date_pattern.match(datestring)
285
285
  date = (date.to_i / 1000)
286
286
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
287
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
288
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
287
289
  else # handle date 'types' for small subset of payroll API's
288
290
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
289
291
  end
@@ -214,6 +214,8 @@ module XeroRuby::Accounting
214
214
  original, date, timezone = *date_pattern.match(datestring)
215
215
  date = (date.to_i / 1000)
216
216
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
217
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
218
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  else # handle date 'types' for small subset of payroll API's
218
220
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
219
221
  end
@@ -212,6 +212,8 @@ module XeroRuby::Accounting
212
212
  original, date, timezone = *date_pattern.match(datestring)
213
213
  date = (date.to_i / 1000)
214
214
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
215
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
216
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
215
217
  else # handle date 'types' for small subset of payroll API's
216
218
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  end
@@ -214,6 +214,8 @@ module XeroRuby::Accounting
214
214
  original, date, timezone = *date_pattern.match(datestring)
215
215
  date = (date.to_i / 1000)
216
216
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
217
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
218
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  else # handle date 'types' for small subset of payroll API's
218
220
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
219
221
  end
@@ -714,6 +714,8 @@ module XeroRuby::Accounting
714
714
  original, date, timezone = *date_pattern.match(datestring)
715
715
  date = (date.to_i / 1000)
716
716
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
717
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
718
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
717
719
  else # handle date 'types' for small subset of payroll API's
718
720
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
719
721
  end
@@ -214,6 +214,8 @@ module XeroRuby::Accounting
214
214
  original, date, timezone = *date_pattern.match(datestring)
215
215
  date = (date.to_i / 1000)
216
216
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
217
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
218
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  else # handle date 'types' for small subset of payroll API's
218
220
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
219
221
  end
@@ -454,6 +454,8 @@ module XeroRuby::Accounting
454
454
  original, date, timezone = *date_pattern.match(datestring)
455
455
  date = (date.to_i / 1000)
456
456
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
457
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
458
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
457
459
  else # handle date 'types' for small subset of payroll API's
458
460
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
459
461
  end
@@ -214,6 +214,8 @@ module XeroRuby::Accounting
214
214
  original, date, timezone = *date_pattern.match(datestring)
215
215
  date = (date.to_i / 1000)
216
216
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
217
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
218
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  else # handle date 'types' for small subset of payroll API's
218
220
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
219
221
  end
@@ -49,6 +49,9 @@ module XeroRuby::Accounting
49
49
  # The amount of the payment. Must be less than or equal to the outstanding amount owing on the invoice e.g. 200.00
50
50
  attr_accessor :amount
51
51
 
52
+ # The amount of the payment in the currency of the bank account.
53
+ attr_accessor :bank_amount
54
+
52
55
  # An optional description for the payment e.g. Direct Debit
53
56
  attr_accessor :reference
54
57
 
@@ -137,6 +140,7 @@ module XeroRuby::Accounting
137
140
  :'date' => :'Date',
138
141
  :'currency_rate' => :'CurrencyRate',
139
142
  :'amount' => :'Amount',
143
+ :'bank_amount' => :'BankAmount',
140
144
  :'reference' => :'Reference',
141
145
  :'is_reconciled' => :'IsReconciled',
142
146
  :'status' => :'Status',
@@ -168,6 +172,7 @@ module XeroRuby::Accounting
168
172
  :'date' => :'Date',
169
173
  :'currency_rate' => :'BigDecimal',
170
174
  :'amount' => :'BigDecimal',
175
+ :'bank_amount' => :'BigDecimal',
171
176
  :'reference' => :'String',
172
177
  :'is_reconciled' => :'Boolean',
173
178
  :'status' => :'String',
@@ -244,6 +249,10 @@ module XeroRuby::Accounting
244
249
  self.amount = attributes[:'amount']
245
250
  end
246
251
 
252
+ if attributes.key?(:'bank_amount')
253
+ self.bank_amount = attributes[:'bank_amount']
254
+ end
255
+
247
256
  if attributes.key?(:'reference')
248
257
  self.reference = attributes[:'reference']
249
258
  end
@@ -360,6 +369,7 @@ module XeroRuby::Accounting
360
369
  date == o.date &&
361
370
  currency_rate == o.currency_rate &&
362
371
  amount == o.amount &&
372
+ bank_amount == o.bank_amount &&
363
373
  reference == o.reference &&
364
374
  is_reconciled == o.is_reconciled &&
365
375
  status == o.status &&
@@ -385,7 +395,7 @@ module XeroRuby::Accounting
385
395
  # Calculates hash code according to all attributes.
386
396
  # @return [Integer] Hash code
387
397
  def hash
388
- [invoice, credit_note, prepayment, overpayment, invoice_number, credit_note_number, account, code, date, currency_rate, amount, reference, is_reconciled, status, payment_type, updated_date_utc, payment_id, batch_payment_id, bank_account_number, particulars, details, has_account, has_validation_errors, status_attribute_string, validation_errors].hash
398
+ [invoice, credit_note, prepayment, overpayment, invoice_number, credit_note_number, account, code, date, currency_rate, amount, bank_amount, reference, is_reconciled, status, payment_type, updated_date_utc, payment_id, batch_payment_id, bank_account_number, particulars, details, has_account, has_validation_errors, status_attribute_string, validation_errors].hash
389
399
  end
390
400
 
391
401
  # Builds the object from hash
@@ -514,6 +524,8 @@ module XeroRuby::Accounting
514
524
  original, date, timezone = *date_pattern.match(datestring)
515
525
  date = (date.to_i / 1000)
516
526
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
527
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
528
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
517
529
  else # handle date 'types' for small subset of payroll API's
518
530
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
519
531
  end
@@ -219,6 +219,8 @@ module XeroRuby::Accounting
219
219
  original, date, timezone = *date_pattern.match(datestring)
220
220
  date = (date.to_i / 1000)
221
221
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
222
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
223
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
222
224
  else # handle date 'types' for small subset of payroll API's
223
225
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
224
226
  end
@@ -264,6 +264,8 @@ module XeroRuby::Accounting
264
264
  original, date, timezone = *date_pattern.match(datestring)
265
265
  date = (date.to_i / 1000)
266
266
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
267
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
268
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
267
269
  else # handle date 'types' for small subset of payroll API's
268
270
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
269
271
  end
@@ -214,6 +214,8 @@ module XeroRuby::Accounting
214
214
  original, date, timezone = *date_pattern.match(datestring)
215
215
  date = (date.to_i / 1000)
216
216
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
217
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
218
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  else # handle date 'types' for small subset of payroll API's
218
220
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
219
221
  end
@@ -222,6 +222,8 @@ module XeroRuby::Accounting
222
222
  original, date, timezone = *date_pattern.match(datestring)
223
223
  date = (date.to_i / 1000)
224
224
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
225
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
226
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
225
227
  else # handle date 'types' for small subset of payroll API's
226
228
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
227
229
  end
@@ -214,6 +214,8 @@ module XeroRuby::Accounting
214
214
  original, date, timezone = *date_pattern.match(datestring)
215
215
  date = (date.to_i / 1000)
216
216
  Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
217
+ elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
218
+ Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
217
219
  else # handle date 'types' for small subset of payroll API's
218
220
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
219
221
  end