ledger_sync 1.6.0 → 1.7.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 (316) hide show
  1. checksums.yaml +4 -4
  2. data/.env.template +0 -3
  3. data/Gemfile.lock +6 -8
  4. data/ledger_sync.gemspec +0 -1
  5. data/lib/ledger_sync.rb +0 -1
  6. data/lib/ledger_sync/ledgers/client.rb +8 -4
  7. data/lib/ledger_sync/test/support/test_ledger/config.rb +1 -0
  8. data/lib/ledger_sync/version.rb +1 -1
  9. metadata +5 -326
  10. data/bin/quickbooks_online_oauth_server.rb +0 -103
  11. data/lib/ledger_sync/ledgers/netsuite/account/deserializer.rb +0 -23
  12. data/lib/ledger_sync/ledgers/netsuite/account/operations/create.rb +0 -28
  13. data/lib/ledger_sync/ledgers/netsuite/account/operations/find.rb +0 -28
  14. data/lib/ledger_sync/ledgers/netsuite/account/searcher.rb +0 -12
  15. data/lib/ledger_sync/ledgers/netsuite/account/searcher_deserializer.rb +0 -29
  16. data/lib/ledger_sync/ledgers/netsuite/account/serializer.rb +0 -21
  17. data/lib/ledger_sync/ledgers/netsuite/check/deserializer.rb +0 -29
  18. data/lib/ledger_sync/ledgers/netsuite/check/operations/create.rb +0 -27
  19. data/lib/ledger_sync/ledgers/netsuite/check/operations/delete.rb +0 -27
  20. data/lib/ledger_sync/ledgers/netsuite/check/operations/find.rb +0 -27
  21. data/lib/ledger_sync/ledgers/netsuite/check/operations/update.rb +0 -27
  22. data/lib/ledger_sync/ledgers/netsuite/check/searcher.rb +0 -15
  23. data/lib/ledger_sync/ledgers/netsuite/check/searcher_deserializer.rb +0 -16
  24. data/lib/ledger_sync/ledgers/netsuite/check/serializer.rb +0 -51
  25. data/lib/ledger_sync/ledgers/netsuite/check_line_item/deserializer.rb +0 -18
  26. data/lib/ledger_sync/ledgers/netsuite/check_line_item/serializer.rb +0 -26
  27. data/lib/ledger_sync/ledgers/netsuite/client.rb +0 -188
  28. data/lib/ledger_sync/ledgers/netsuite/config.rb +0 -7
  29. data/lib/ledger_sync/ledgers/netsuite/currency/deserializer.rb +0 -23
  30. data/lib/ledger_sync/ledgers/netsuite/currency/operations/create.rb +0 -25
  31. data/lib/ledger_sync/ledgers/netsuite/currency/operations/delete.rb +0 -23
  32. data/lib/ledger_sync/ledgers/netsuite/currency/operations/find.rb +0 -23
  33. data/lib/ledger_sync/ledgers/netsuite/currency/operations/update.rb +0 -23
  34. data/lib/ledger_sync/ledgers/netsuite/currency/serializer.rb +0 -21
  35. data/lib/ledger_sync/ledgers/netsuite/customer/deserializer.rb +0 -22
  36. data/lib/ledger_sync/ledgers/netsuite/customer/operations/create.rb +0 -26
  37. data/lib/ledger_sync/ledgers/netsuite/customer/operations/delete.rb +0 -26
  38. data/lib/ledger_sync/ledgers/netsuite/customer/operations/find.rb +0 -26
  39. data/lib/ledger_sync/ledgers/netsuite/customer/operations/update.rb +0 -26
  40. data/lib/ledger_sync/ledgers/netsuite/customer/searcher.rb +0 -12
  41. data/lib/ledger_sync/ledgers/netsuite/customer/searcher_deserializer.rb +0 -18
  42. data/lib/ledger_sync/ledgers/netsuite/customer/serializer.rb +0 -29
  43. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/deserializer.rb +0 -20
  44. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/operations/create.rb +0 -24
  45. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/operations/delete.rb +0 -24
  46. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/operations/find.rb +0 -24
  47. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/operations/update.rb +0 -24
  48. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/searcher.rb +0 -12
  49. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/searcher_deserializer.rb +0 -16
  50. data/lib/ledger_sync/ledgers/netsuite/customer_deposit/serializer.rb +0 -25
  51. data/lib/ledger_sync/ledgers/netsuite/dashboard_url_helper.rb +0 -28
  52. data/lib/ledger_sync/ledgers/netsuite/department/deserializer.rb +0 -15
  53. data/lib/ledger_sync/ledgers/netsuite/department/operations/create.rb +0 -25
  54. data/lib/ledger_sync/ledgers/netsuite/department/operations/delete.rb +0 -25
  55. data/lib/ledger_sync/ledgers/netsuite/department/operations/find.rb +0 -25
  56. data/lib/ledger_sync/ledgers/netsuite/department/operations/update.rb +0 -25
  57. data/lib/ledger_sync/ledgers/netsuite/department/searcher.rb +0 -12
  58. data/lib/ledger_sync/ledgers/netsuite/department/searcher_deserializer.rb +0 -19
  59. data/lib/ledger_sync/ledgers/netsuite/department/serializer.rb +0 -13
  60. data/lib/ledger_sync/ledgers/netsuite/deserializer.rb +0 -18
  61. data/lib/ledger_sync/ledgers/netsuite/error.rb +0 -19
  62. data/lib/ledger_sync/ledgers/netsuite/journal_entry/deserializer.rb +0 -31
  63. data/lib/ledger_sync/ledgers/netsuite/journal_entry/operations/create.rb +0 -26
  64. data/lib/ledger_sync/ledgers/netsuite/journal_entry/operations/delete.rb +0 -26
  65. data/lib/ledger_sync/ledgers/netsuite/journal_entry/operations/find.rb +0 -26
  66. data/lib/ledger_sync/ledgers/netsuite/journal_entry/operations/update.rb +0 -30
  67. data/lib/ledger_sync/ledgers/netsuite/journal_entry/serializer.rb +0 -36
  68. data/lib/ledger_sync/ledgers/netsuite/journal_entry_line_item/deserializer.rb +0 -20
  69. data/lib/ledger_sync/ledgers/netsuite/journal_entry_line_item/serializer.rb +0 -21
  70. data/lib/ledger_sync/ledgers/netsuite/ledger_class/deserializer.rb +0 -15
  71. data/lib/ledger_sync/ledgers/netsuite/ledger_class/operations/create.rb +0 -25
  72. data/lib/ledger_sync/ledgers/netsuite/ledger_class/operations/delete.rb +0 -25
  73. data/lib/ledger_sync/ledgers/netsuite/ledger_class/operations/find.rb +0 -25
  74. data/lib/ledger_sync/ledgers/netsuite/ledger_class/operations/update.rb +0 -25
  75. data/lib/ledger_sync/ledgers/netsuite/ledger_class/searcher.rb +0 -12
  76. data/lib/ledger_sync/ledgers/netsuite/ledger_class/searcher_deserializer.rb +0 -19
  77. data/lib/ledger_sync/ledgers/netsuite/ledger_class/serializer.rb +0 -13
  78. data/lib/ledger_sync/ledgers/netsuite/location/deserializer.rb +0 -15
  79. data/lib/ledger_sync/ledgers/netsuite/location/operations/create.rb +0 -21
  80. data/lib/ledger_sync/ledgers/netsuite/location/operations/delete.rb +0 -21
  81. data/lib/ledger_sync/ledgers/netsuite/location/operations/find.rb +0 -21
  82. data/lib/ledger_sync/ledgers/netsuite/location/operations/update.rb +0 -21
  83. data/lib/ledger_sync/ledgers/netsuite/location/searcher.rb +0 -12
  84. data/lib/ledger_sync/ledgers/netsuite/location/serializer.rb +0 -13
  85. data/lib/ledger_sync/ledgers/netsuite/operation.rb +0 -40
  86. data/lib/ledger_sync/ledgers/netsuite/operation/create.rb +0 -58
  87. data/lib/ledger_sync/ledgers/netsuite/operation/delete.rb +0 -49
  88. data/lib/ledger_sync/ledgers/netsuite/operation/find.rb +0 -60
  89. data/lib/ledger_sync/ledgers/netsuite/operation/update.rb +0 -61
  90. data/lib/ledger_sync/ledgers/netsuite/record/http_method.rb +0 -33
  91. data/lib/ledger_sync/ledgers/netsuite/record/metadata.rb +0 -109
  92. data/lib/ledger_sync/ledgers/netsuite/record/parameter.rb +0 -20
  93. data/lib/ledger_sync/ledgers/netsuite/record/property.rb +0 -22
  94. data/lib/ledger_sync/ledgers/netsuite/reference/serializer.rb +0 -13
  95. data/lib/ledger_sync/ledgers/netsuite/resource.rb +0 -10
  96. data/lib/ledger_sync/ledgers/netsuite/resources/account.rb +0 -43
  97. data/lib/ledger_sync/ledgers/netsuite/resources/check.rb +0 -23
  98. data/lib/ledger_sync/ledgers/netsuite/resources/check_line_item.rb +0 -15
  99. data/lib/ledger_sync/ledgers/netsuite/resources/currency.rb +0 -13
  100. data/lib/ledger_sync/ledgers/netsuite/resources/customer.rb +0 -19
  101. data/lib/ledger_sync/ledgers/netsuite/resources/customer_deposit.rb +0 -15
  102. data/lib/ledger_sync/ledgers/netsuite/resources/department.rb +0 -16
  103. data/lib/ledger_sync/ledgers/netsuite/resources/deposit.rb +0 -28
  104. data/lib/ledger_sync/ledgers/netsuite/resources/deposit_line_item.rb +0 -25
  105. data/lib/ledger_sync/ledgers/netsuite/resources/invoice.rb +0 -28
  106. data/lib/ledger_sync/ledgers/netsuite/resources/invoice_line_item.rb +0 -21
  107. data/lib/ledger_sync/ledgers/netsuite/resources/item.rb +0 -11
  108. data/lib/ledger_sync/ledgers/netsuite/resources/journal_entry.rb +0 -26
  109. data/lib/ledger_sync/ledgers/netsuite/resources/journal_entry_line_item.rb +0 -24
  110. data/lib/ledger_sync/ledgers/netsuite/resources/ledger_class.rb +0 -16
  111. data/lib/ledger_sync/ledgers/netsuite/resources/location.rb +0 -11
  112. data/lib/ledger_sync/ledgers/netsuite/resources/subsidiary.rb +0 -12
  113. data/lib/ledger_sync/ledgers/netsuite/resources/vendor.rb +0 -23
  114. data/lib/ledger_sync/ledgers/netsuite/searcher.rb +0 -66
  115. data/lib/ledger_sync/ledgers/netsuite/serializer.rb +0 -13
  116. data/lib/ledger_sync/ledgers/netsuite/subsidiary/deserializer.rb +0 -17
  117. data/lib/ledger_sync/ledgers/netsuite/subsidiary/searcher.rb +0 -12
  118. data/lib/ledger_sync/ledgers/netsuite/subsidiary/searcher_deserializer.rb +0 -15
  119. data/lib/ledger_sync/ledgers/netsuite/subsidiary/serializer.rb +0 -15
  120. data/lib/ledger_sync/ledgers/netsuite/token.rb +0 -158
  121. data/lib/ledger_sync/ledgers/netsuite/type/deserializer_active_type.rb +0 -32
  122. data/lib/ledger_sync/ledgers/netsuite/type/deserializer_customer_type.rb +0 -35
  123. data/lib/ledger_sync/ledgers/netsuite/type/deserializer_entity_type.rb +0 -30
  124. data/lib/ledger_sync/ledgers/netsuite/type/deserializer_subsidiary_type.rb +0 -35
  125. data/lib/ledger_sync/ledgers/netsuite/vendor/deserializer.rb +0 -30
  126. data/lib/ledger_sync/ledgers/netsuite/vendor/operations/create.rb +0 -27
  127. data/lib/ledger_sync/ledgers/netsuite/vendor/operations/delete.rb +0 -27
  128. data/lib/ledger_sync/ledgers/netsuite/vendor/operations/find.rb +0 -27
  129. data/lib/ledger_sync/ledgers/netsuite/vendor/operations/update.rb +0 -27
  130. data/lib/ledger_sync/ledgers/netsuite/vendor/searcher.rb +0 -12
  131. data/lib/ledger_sync/ledgers/netsuite/vendor/searcher_deserializer.rb +0 -21
  132. data/lib/ledger_sync/ledgers/netsuite/vendor/serializer.rb +0 -30
  133. data/lib/ledger_sync/ledgers/quickbooks_online/account/deserializer.rb +0 -31
  134. data/lib/ledger_sync/ledgers/quickbooks_online/account/operations/create.rb +0 -28
  135. data/lib/ledger_sync/ledgers/quickbooks_online/account/operations/find.rb +0 -28
  136. data/lib/ledger_sync/ledgers/quickbooks_online/account/operations/update.rb +0 -30
  137. data/lib/ledger_sync/ledgers/quickbooks_online/account/searcher.rb +0 -15
  138. data/lib/ledger_sync/ledgers/quickbooks_online/account/serializer.rb +0 -31
  139. data/lib/ledger_sync/ledgers/quickbooks_online/account_based_expense_line_detail/deserializer.rb +0 -21
  140. data/lib/ledger_sync/ledgers/quickbooks_online/account_based_expense_line_detail/serializer.rb +0 -21
  141. data/lib/ledger_sync/ledgers/quickbooks_online/bill/deserializer.rb +0 -41
  142. data/lib/ledger_sync/ledgers/quickbooks_online/bill/operations/create.rb +0 -29
  143. data/lib/ledger_sync/ledgers/quickbooks_online/bill/operations/find.rb +0 -29
  144. data/lib/ledger_sync/ledgers/quickbooks_online/bill/operations/update.rb +0 -29
  145. data/lib/ledger_sync/ledgers/quickbooks_online/bill/searcher.rb +0 -14
  146. data/lib/ledger_sync/ledgers/quickbooks_online/bill/serializer.rb +0 -41
  147. data/lib/ledger_sync/ledgers/quickbooks_online/bill_line/deserializer.rb +0 -22
  148. data/lib/ledger_sync/ledgers/quickbooks_online/bill_line/serializer.rb +0 -26
  149. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment/deserializer.rb +0 -55
  150. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment/operations/create.rb +0 -33
  151. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment/operations/find.rb +0 -33
  152. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment/operations/update.rb +0 -33
  153. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment/serializer.rb +0 -55
  154. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment_line/deserializer.rb +0 -16
  155. data/lib/ledger_sync/ledgers/quickbooks_online/bill_payment_line/serializer.rb +0 -16
  156. data/lib/ledger_sync/ledgers/quickbooks_online/check_payment/deserializer.rb +0 -17
  157. data/lib/ledger_sync/ledgers/quickbooks_online/check_payment/serializer.rb +0 -17
  158. data/lib/ledger_sync/ledgers/quickbooks_online/client.rb +0 -237
  159. data/lib/ledger_sync/ledgers/quickbooks_online/config.rb +0 -10
  160. data/lib/ledger_sync/ledgers/quickbooks_online/credit_card_payment/deserializer.rb +0 -17
  161. data/lib/ledger_sync/ledgers/quickbooks_online/credit_card_payment/serializer.rb +0 -17
  162. data/lib/ledger_sync/ledgers/quickbooks_online/currency/deserializer.rb +0 -16
  163. data/lib/ledger_sync/ledgers/quickbooks_online/currency/serializer.rb +0 -17
  164. data/lib/ledger_sync/ledgers/quickbooks_online/customer/deserializer.rb +0 -26
  165. data/lib/ledger_sync/ledgers/quickbooks_online/customer/operations/create.rb +0 -26
  166. data/lib/ledger_sync/ledgers/quickbooks_online/customer/operations/find.rb +0 -26
  167. data/lib/ledger_sync/ledgers/quickbooks_online/customer/operations/update.rb +0 -26
  168. data/lib/ledger_sync/ledgers/quickbooks_online/customer/searcher.rb +0 -15
  169. data/lib/ledger_sync/ledgers/quickbooks_online/customer/serializer.rb +0 -26
  170. data/lib/ledger_sync/ledgers/quickbooks_online/dashboard_url_helper.rb +0 -34
  171. data/lib/ledger_sync/ledgers/quickbooks_online/department/deserializer.rb +0 -22
  172. data/lib/ledger_sync/ledgers/quickbooks_online/department/operations/create.rb +0 -25
  173. data/lib/ledger_sync/ledgers/quickbooks_online/department/operations/find.rb +0 -25
  174. data/lib/ledger_sync/ledgers/quickbooks_online/department/operations/update.rb +0 -25
  175. data/lib/ledger_sync/ledgers/quickbooks_online/department/searcher.rb +0 -17
  176. data/lib/ledger_sync/ledgers/quickbooks_online/department/serializer.rb +0 -41
  177. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/deserializer.rb +0 -36
  178. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/operations/create.rb +0 -27
  179. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/operations/find.rb +0 -27
  180. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/operations/update.rb +0 -27
  181. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/searcher.rb +0 -14
  182. data/lib/ledger_sync/ledgers/quickbooks_online/deposit/serializer.rb +0 -36
  183. data/lib/ledger_sync/ledgers/quickbooks_online/deposit_line/deserializer.rb +0 -22
  184. data/lib/ledger_sync/ledgers/quickbooks_online/deposit_line/serializer.rb +0 -26
  185. data/lib/ledger_sync/ledgers/quickbooks_online/deposit_line_detail/deserializer.rb +0 -34
  186. data/lib/ledger_sync/ledgers/quickbooks_online/deposit_line_detail/serializer.rb +0 -35
  187. data/lib/ledger_sync/ledgers/quickbooks_online/deserializer.rb +0 -100
  188. data/lib/ledger_sync/ledgers/quickbooks_online/expense/deserializer.rb +0 -54
  189. data/lib/ledger_sync/ledgers/quickbooks_online/expense/operations/create.rb +0 -30
  190. data/lib/ledger_sync/ledgers/quickbooks_online/expense/operations/find.rb +0 -30
  191. data/lib/ledger_sync/ledgers/quickbooks_online/expense/operations/update.rb +0 -30
  192. data/lib/ledger_sync/ledgers/quickbooks_online/expense/searcher.rb +0 -14
  193. data/lib/ledger_sync/ledgers/quickbooks_online/expense/serializer.rb +0 -53
  194. data/lib/ledger_sync/ledgers/quickbooks_online/expense_line/deserializer.rb +0 -22
  195. data/lib/ledger_sync/ledgers/quickbooks_online/expense_line/serializer.rb +0 -26
  196. data/lib/ledger_sync/ledgers/quickbooks_online/invoice/deserializer.rb +0 -35
  197. data/lib/ledger_sync/ledgers/quickbooks_online/invoice/operations/create.rb +0 -27
  198. data/lib/ledger_sync/ledgers/quickbooks_online/invoice/operations/find.rb +0 -27
  199. data/lib/ledger_sync/ledgers/quickbooks_online/invoice/operations/update.rb +0 -27
  200. data/lib/ledger_sync/ledgers/quickbooks_online/invoice/serializer.rb +0 -35
  201. data/lib/ledger_sync/ledgers/quickbooks_online/invoice_line/deserializer.rb +0 -21
  202. data/lib/ledger_sync/ledgers/quickbooks_online/invoice_line/serializer.rb +0 -25
  203. data/lib/ledger_sync/ledgers/quickbooks_online/item/deserializer.rb +0 -13
  204. data/lib/ledger_sync/ledgers/quickbooks_online/item/serializer.rb +0 -12
  205. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/deserializer.rb +0 -28
  206. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/operations/create.rb +0 -25
  207. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/operations/find.rb +0 -25
  208. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/operations/update.rb +0 -25
  209. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/searcher.rb +0 -14
  210. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry/serializer.rb +0 -28
  211. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry_line/deserializer.rb +0 -20
  212. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry_line/serializer.rb +0 -24
  213. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry_line_detail/deserializer.rb +0 -29
  214. data/lib/ledger_sync/ledgers/quickbooks_online/journal_entry_line_detail/serializer.rb +0 -29
  215. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/deserializer.rb +0 -24
  216. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/operations/create.rb +0 -25
  217. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/operations/find.rb +0 -25
  218. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/operations/update.rb +0 -25
  219. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/searcher.rb +0 -15
  220. data/lib/ledger_sync/ledgers/quickbooks_online/ledger_class/serializer.rb +0 -24
  221. data/lib/ledger_sync/ledgers/quickbooks_online/oauth_client.rb +0 -93
  222. data/lib/ledger_sync/ledgers/quickbooks_online/operation.rb +0 -61
  223. data/lib/ledger_sync/ledgers/quickbooks_online/operation/create.rb +0 -26
  224. data/lib/ledger_sync/ledgers/quickbooks_online/operation/find.rb +0 -25
  225. data/lib/ledger_sync/ledgers/quickbooks_online/operation/full_update.rb +0 -42
  226. data/lib/ledger_sync/ledgers/quickbooks_online/operation/sparse_update.rb +0 -29
  227. data/lib/ledger_sync/ledgers/quickbooks_online/payment/deserializer.rb +0 -42
  228. data/lib/ledger_sync/ledgers/quickbooks_online/payment/operations/create.rb +0 -30
  229. data/lib/ledger_sync/ledgers/quickbooks_online/payment/operations/find.rb +0 -30
  230. data/lib/ledger_sync/ledgers/quickbooks_online/payment/operations/update.rb +0 -30
  231. data/lib/ledger_sync/ledgers/quickbooks_online/payment/serializer.rb +0 -42
  232. data/lib/ledger_sync/ledgers/quickbooks_online/payment_line/deserializer.rb +0 -17
  233. data/lib/ledger_sync/ledgers/quickbooks_online/payment_line/serializer.rb +0 -17
  234. data/lib/ledger_sync/ledgers/quickbooks_online/preferences/deserializer.rb +0 -24
  235. data/lib/ledger_sync/ledgers/quickbooks_online/preferences/operations/find.rb +0 -30
  236. data/lib/ledger_sync/ledgers/quickbooks_online/preferences/serializer.rb +0 -24
  237. data/lib/ledger_sync/ledgers/quickbooks_online/primary_email_addr/deserializer.rb +0 -13
  238. data/lib/ledger_sync/ledgers/quickbooks_online/primary_email_addr/serializer.rb +0 -13
  239. data/lib/ledger_sync/ledgers/quickbooks_online/primary_phone/deserializer.rb +0 -13
  240. data/lib/ledger_sync/ledgers/quickbooks_online/primary_phone/serializer.rb +0 -13
  241. data/lib/ledger_sync/ledgers/quickbooks_online/reference/deserializer.rb +0 -13
  242. data/lib/ledger_sync/ledgers/quickbooks_online/reference/serializer.rb +0 -13
  243. data/lib/ledger_sync/ledgers/quickbooks_online/request.rb +0 -98
  244. data/lib/ledger_sync/ledgers/quickbooks_online/resource.rb +0 -10
  245. data/lib/ledger_sync/ledgers/quickbooks_online/resources/account.rb +0 -359
  246. data/lib/ledger_sync/ledgers/quickbooks_online/resources/account_based_expense_line_detail.rb +0 -16
  247. data/lib/ledger_sync/ledgers/quickbooks_online/resources/bill.rb +0 -31
  248. data/lib/ledger_sync/ledgers/quickbooks_online/resources/bill_line.rb +0 -19
  249. data/lib/ledger_sync/ledgers/quickbooks_online/resources/bill_payment.rb +0 -44
  250. data/lib/ledger_sync/ledgers/quickbooks_online/resources/bill_payment_line.rb +0 -19
  251. data/lib/ledger_sync/ledgers/quickbooks_online/resources/check_payment.rb +0 -11
  252. data/lib/ledger_sync/ledgers/quickbooks_online/resources/credit_card_payment.rb +0 -11
  253. data/lib/ledger_sync/ledgers/quickbooks_online/resources/currency.rb +0 -17
  254. data/lib/ledger_sync/ledgers/quickbooks_online/resources/customer.rb +0 -24
  255. data/lib/ledger_sync/ledgers/quickbooks_online/resources/department.rb +0 -20
  256. data/lib/ledger_sync/ledgers/quickbooks_online/resources/deposit.rb +0 -28
  257. data/lib/ledger_sync/ledgers/quickbooks_online/resources/deposit_line.rb +0 -19
  258. data/lib/ledger_sync/ledgers/quickbooks_online/resources/deposit_line_detail.rb +0 -22
  259. data/lib/ledger_sync/ledgers/quickbooks_online/resources/expense.rb +0 -40
  260. data/lib/ledger_sync/ledgers/quickbooks_online/resources/expense_line.rb +0 -19
  261. data/lib/ledger_sync/ledgers/quickbooks_online/resources/invoice.rb +0 -28
  262. data/lib/ledger_sync/ledgers/quickbooks_online/resources/invoice_line.rb +0 -19
  263. data/lib/ledger_sync/ledgers/quickbooks_online/resources/item.rb +0 -11
  264. data/lib/ledger_sync/ledgers/quickbooks_online/resources/journal_entry.rb +0 -24
  265. data/lib/ledger_sync/ledgers/quickbooks_online/resources/journal_entry_line.rb +0 -20
  266. data/lib/ledger_sync/ledgers/quickbooks_online/resources/journal_entry_line_detail.rb +0 -27
  267. data/lib/ledger_sync/ledgers/quickbooks_online/resources/ledger_class.rb +0 -20
  268. data/lib/ledger_sync/ledgers/quickbooks_online/resources/payment.rb +0 -31
  269. data/lib/ledger_sync/ledgers/quickbooks_online/resources/payment_line.rb +0 -19
  270. data/lib/ledger_sync/ledgers/quickbooks_online/resources/preferences.rb +0 -24
  271. data/lib/ledger_sync/ledgers/quickbooks_online/resources/primary_email_addr.rb +0 -11
  272. data/lib/ledger_sync/ledgers/quickbooks_online/resources/primary_phone.rb +0 -11
  273. data/lib/ledger_sync/ledgers/quickbooks_online/resources/sales_item_line_detail.rb +0 -19
  274. data/lib/ledger_sync/ledgers/quickbooks_online/resources/transfer.rb +0 -24
  275. data/lib/ledger_sync/ledgers/quickbooks_online/resources/vendor.rb +0 -25
  276. data/lib/ledger_sync/ledgers/quickbooks_online/sales_item_line_detail/deserializer.rb +0 -21
  277. data/lib/ledger_sync/ledgers/quickbooks_online/sales_item_line_detail/serializer.rb +0 -21
  278. data/lib/ledger_sync/ledgers/quickbooks_online/searcher.rb +0 -60
  279. data/lib/ledger_sync/ledgers/quickbooks_online/serialization/type/amount_float_to_integer_type.rb +0 -21
  280. data/lib/ledger_sync/ledgers/quickbooks_online/serialization/type/deserialize_transaction_reference_type.rb +0 -30
  281. data/lib/ledger_sync/ledgers/quickbooks_online/serialization/type/integer_to_amount_float_type.rb +0 -21
  282. data/lib/ledger_sync/ledgers/quickbooks_online/serialization/type/serialize_transaction_reference_type.rb +0 -30
  283. data/lib/ledger_sync/ledgers/quickbooks_online/serializer.rb +0 -71
  284. data/lib/ledger_sync/ledgers/quickbooks_online/serialziation/type/mapping_type.rb +0 -27
  285. data/lib/ledger_sync/ledgers/quickbooks_online/transfer/deserializer.rb +0 -31
  286. data/lib/ledger_sync/ledgers/quickbooks_online/transfer/operations/create.rb +0 -26
  287. data/lib/ledger_sync/ledgers/quickbooks_online/transfer/operations/find.rb +0 -26
  288. data/lib/ledger_sync/ledgers/quickbooks_online/transfer/operations/update.rb +0 -26
  289. data/lib/ledger_sync/ledgers/quickbooks_online/transfer/serializer.rb +0 -31
  290. data/lib/ledger_sync/ledgers/quickbooks_online/util/error_matcher.rb +0 -70
  291. data/lib/ledger_sync/ledgers/quickbooks_online/util/error_parser.rb +0 -27
  292. data/lib/ledger_sync/ledgers/quickbooks_online/util/ledger_error_parser.rb +0 -103
  293. data/lib/ledger_sync/ledgers/quickbooks_online/util/operation_error_parser.rb +0 -99
  294. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/deserializer.rb +0 -27
  295. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/operations/create.rb +0 -27
  296. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/operations/find.rb +0 -27
  297. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/operations/update.rb +0 -27
  298. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/searcher.rb +0 -15
  299. data/lib/ledger_sync/ledgers/quickbooks_online/vendor/serializer.rb +0 -27
  300. data/lib/ledger_sync/ledgers/quickbooks_online/webhook.rb +0 -58
  301. data/lib/ledger_sync/ledgers/quickbooks_online/webhook_event.rb +0 -81
  302. data/lib/ledger_sync/ledgers/quickbooks_online/webhook_notification.rb +0 -43
  303. data/lib/ledger_sync/ledgers/stripe/client.rb +0 -41
  304. data/lib/ledger_sync/ledgers/stripe/config.rb +0 -5
  305. data/lib/ledger_sync/ledgers/stripe/customer/operations/create.rb +0 -44
  306. data/lib/ledger_sync/ledgers/stripe/customer/operations/delete.rb +0 -35
  307. data/lib/ledger_sync/ledgers/stripe/customer/operations/find.rb +0 -44
  308. data/lib/ledger_sync/ledgers/stripe/customer/operations/update.rb +0 -43
  309. data/lib/ledger_sync/ledgers/stripe/dashboard_url_helper.rb +0 -21
  310. data/lib/ledger_sync/ledgers/stripe/operation.rb +0 -35
  311. data/lib/ledger_sync/ledgers/stripe/operation/create.rb +0 -15
  312. data/lib/ledger_sync/ledgers/stripe/operation/delete.rb +0 -15
  313. data/lib/ledger_sync/ledgers/stripe/operation/find.rb +0 -15
  314. data/lib/ledger_sync/ledgers/stripe/operation/update.rb +0 -15
  315. data/lib/ledger_sync/ledgers/stripe/resource.rb +0 -10
  316. data/lib/ledger_sync/ledgers/stripe/resources/customer.rb +0 -13
@@ -1,99 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'error_parser'
4
-
5
- module LedgerSync
6
- module Ledgers
7
- module QuickBooksOnline
8
- class Util
9
- class OperationErrorParser < ErrorParser
10
- class DuplicateNameMatcher < ErrorMatcher
11
- def error_class
12
- Error::OperationError::DuplicateLedgerResourceError
13
- end
14
-
15
- def output_message
16
- "Resource with same name already exists: #{error_message}"
17
- end
18
-
19
- def match?
20
- code == 6240 ||
21
- message.include?('the name supplied already exists')
22
- end
23
- end
24
-
25
- class NotFoundMatcher < ErrorMatcher
26
- def error_class
27
- Error::OperationError::NotFoundError
28
- end
29
-
30
- def output_message
31
- "Unable to find in ledger with: #{error_message}"
32
- end
33
-
34
- def match?
35
- code == 610 ||
36
- message.include?('object not found')
37
- end
38
- end
39
-
40
- class ValidationError < ErrorMatcher
41
- def error_class
42
- Error::OperationError::LedgerValidationError
43
- end
44
-
45
- def output_message
46
- "Ledger object is not valid: #{error_message}"
47
- end
48
-
49
- def match?
50
- code == 6080
51
- end
52
- end
53
-
54
- class GenericMatcher < ErrorMatcher
55
- def error_class
56
- Error::OperationError
57
- end
58
-
59
- def output_message
60
- "Something went wrong: #{error_message}"
61
- end
62
-
63
- def match?
64
- true
65
- end
66
- end
67
-
68
- # ! always keep GenericMatcher as last
69
- PARSERS = [
70
- DuplicateNameMatcher,
71
- NotFoundMatcher,
72
- ValidationError,
73
- GenericMatcher
74
- ].freeze
75
-
76
- attr_reader :operation
77
-
78
- def initialize(error:, operation: nil)
79
- @operation = operation
80
- super(error: error)
81
- end
82
-
83
- def parse
84
- PARSERS.map do |parser|
85
- matcher = parser.new(error: error)
86
- next unless matcher.match?
87
-
88
- return matcher.error_class.new(
89
- operation: operation,
90
- message: matcher.output_message,
91
- response: error
92
- )
93
- end
94
- end
95
- end
96
- end
97
- end
98
- end
99
- end
@@ -1,27 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative '../primary_phone/deserializer'
4
- require_relative '../primary_email_addr/deserializer'
5
-
6
- module LedgerSync
7
- module Ledgers
8
- module QuickBooksOnline
9
- class Vendor
10
- class Deserializer < QuickBooksOnline::Deserializer
11
- id
12
-
13
- attribute :DisplayName
14
- attribute :GivenName
15
- attribute :MiddleName
16
- attribute :FamilyName
17
- attribute :CompanyName
18
-
19
- references_one :PrimaryPhone,
20
- deserializer: PrimaryPhone::Deserializer
21
- references_one :PrimaryEmailAddr,
22
- deserializer: PrimaryEmailAddr::Deserializer
23
- end
24
- end
25
- end
26
- end
27
- end
@@ -1,27 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module LedgerSync
4
- module Ledgers
5
- module QuickBooksOnline
6
- class Vendor
7
- module Operations
8
- class Create < Operation::Create
9
- class Contract < LedgerSync::Ledgers::Contract
10
- params do
11
- required(:external_id).maybe(:string)
12
- required(:ledger_id).value(:nil)
13
- optional(:CompanyName).maybe(:string)
14
- optional(:DisplayName).maybe(:string)
15
- optional(:FamilyName).maybe(:string)
16
- optional(:GivenName).maybe(:string)
17
- optional(:MiddleName).maybe(:string)
18
- required(:PrimaryPhone).maybe(:hash, Types::Reference)
19
- required(:PrimaryEmailAddr).maybe(:hash, Types::Reference)
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
26
- end
27
- end
@@ -1,27 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module LedgerSync
4
- module Ledgers
5
- module QuickBooksOnline
6
- class Vendor
7
- module Operations
8
- class Find < Operation::Find
9
- class Contract < LedgerSync::Ledgers::Contract
10
- params do
11
- required(:external_id).maybe(:string)
12
- required(:ledger_id).filled(:string)
13
- optional(:CompanyName).maybe(:string)
14
- optional(:DisplayName).maybe(:string)
15
- optional(:FamilyName).maybe(:string)
16
- optional(:GivenName).maybe(:string)
17
- optional(:MiddleName).maybe(:string)
18
- optional(:PrimaryPhone).maybe(:hash, Types::Reference)
19
- optional(:PrimaryEmailAddr).maybe(:hash, Types::Reference)
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
26
- end
27
- end
@@ -1,27 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module LedgerSync
4
- module Ledgers
5
- module QuickBooksOnline
6
- class Vendor
7
- module Operations
8
- class Update < Operation::FullUpdate
9
- class Contract < LedgerSync::Ledgers::Contract
10
- params do
11
- required(:external_id).maybe(:string)
12
- required(:ledger_id).filled(:string)
13
- optional(:CompanyName).maybe(:string)
14
- optional(:DisplayName).maybe(:string)
15
- optional(:FamilyName).maybe(:string)
16
- optional(:GivenName).maybe(:string)
17
- optional(:MiddleName).maybe(:string)
18
- required(:PrimaryPhone).maybe(:hash, Types::Reference)
19
- required(:PrimaryEmailAddr).maybe(:hash, Types::Reference)
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
26
- end
27
- end
@@ -1,15 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module LedgerSync
4
- module Ledgers
5
- module QuickBooksOnline
6
- class Vendor
7
- class Searcher < Searcher
8
- def query_string
9
- "DisplayName LIKE '%#{query}%'"
10
- end
11
- end
12
- end
13
- end
14
- end
15
- end
@@ -1,27 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative '../primary_phone/serializer'
4
- require_relative '../primary_email_addr/serializer'
5
-
6
- module LedgerSync
7
- module Ledgers
8
- module QuickBooksOnline
9
- class Vendor
10
- class Serializer < QuickBooksOnline::Serializer
11
- id
12
-
13
- attribute :DisplayName
14
- attribute :GivenName
15
- attribute :MiddleName
16
- attribute :FamilyName
17
- attribute :CompanyName
18
-
19
- references_one :PrimaryPhone,
20
- serializer: PrimaryPhone::Serializer
21
- references_one :PrimaryEmailAddr,
22
- serializer: PrimaryEmailAddr::Serializer
23
- end
24
- end
25
- end
26
- end
27
- end
@@ -1,58 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'webhook_event'
4
-
5
- # ref: https://developer.intuit.com/app/developer/qbo/docs/develop/webhooks/managing-webhooks-notifications#validating-the-notification
6
- module LedgerSync
7
- module Ledgers
8
- module QuickBooksOnline
9
- class Webhook
10
- attr_reader :notifications,
11
- :original_payload,
12
- :payload
13
-
14
- def initialize(payload:)
15
- @original_payload = payload
16
- @payload = payload.is_a?(String) ? JSON.parse(payload) : payload
17
-
18
- event_notifications_payload = @payload['eventNotifications']
19
- raise 'Invalid payload: Could not find eventNotifications' unless event_notifications_payload.is_a?(Array)
20
-
21
- @notifications = []
22
-
23
- event_notifications_payload.each do |event_notification_payload|
24
- @notifications << WebhookNotification.new(
25
- payload: event_notification_payload,
26
- webhook: self
27
- )
28
- end
29
- end
30
-
31
- def events
32
- notifications.map(&:events)
33
- end
34
-
35
- def resources
36
- @resources ||= notifications.map(&:resources).flatten.compact
37
- end
38
-
39
- def valid?(signature:, verification_token:)
40
- self.class.valid?(
41
- payload: payload.to_json,
42
- signature: signature,
43
- verification_token: verification_token
44
- )
45
- end
46
-
47
- def self.valid?(payload:, signature:, verification_token:)
48
- raise 'Cannot verify non-String payload' unless payload.is_a?(String)
49
-
50
- digest = OpenSSL::Digest.new('sha256')
51
- hmac = OpenSSL::HMAC.digest(digest, verification_token, payload)
52
- base64 = Base64.encode64(hmac).strip
53
- base64 == signature
54
- end
55
- end
56
- end
57
- end
58
- end
@@ -1,81 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # ref: https://developer.intuit.com/app/developer/qbo/docs/develop/webhooks/managing-webhooks-notifications#validating-the-notification
4
- module LedgerSync
5
- module Ledgers
6
- module QuickBooksOnline
7
- class WebhookEvent
8
- attr_reader :deleted_id,
9
- :event_operation,
10
- :last_updated_at,
11
- :ledger_id,
12
- :original_payload,
13
- :payload,
14
- :quickbooks_online_resource_type,
15
- :webhook_notification,
16
- :webhook
17
-
18
- def initialize(payload:, webhook_notification: nil)
19
- @original_payload = payload
20
- @payload = payload.is_a?(String) ? JSON.parse(payload) : payload
21
-
22
- @deleted_id = @payload['deletedId']
23
-
24
- @event_operation = @payload['operation']
25
- raise 'Invalid payload: Could not find operation' if @event_operation.blank?
26
-
27
- @last_updated_at = @payload['lastUpdated']
28
- raise 'Invalid payload: Could not find lastUpdated' if @last_updated_at.blank?
29
-
30
- @last_updated_at = Time.parse(@last_updated_at)
31
-
32
- @ledger_id = @payload['id']
33
- raise 'Invalid payload: Could not find id' if @ledger_id.blank?
34
-
35
- @quickbooks_online_resource_type = @payload['name']
36
- raise 'Invalid payload: Could not find name' if @quickbooks_online_resource_type.blank?
37
-
38
- @webhook_notification = webhook_notification
39
- @webhook = webhook_notification.try(:webhook)
40
- end
41
-
42
- def find(client:)
43
- find_operation(client: client).perform
44
- end
45
-
46
- def find_operation(client:)
47
- find_operation_class(client: client).new(
48
- client: client,
49
- resource: resource_class.new(ledger_id: ledger_id)
50
- )
51
- end
52
-
53
- def find_operation_class(client:)
54
- client.class.base_operations_module_for(resource_class: resource_class)::Find
55
- end
56
-
57
- def local_resource_type
58
- @local_resource_type ||= resource_class.resource_type
59
- end
60
-
61
- def resource
62
- return unless resource_class.present?
63
-
64
- resource_class.new(ledger_id: ledger_id)
65
- end
66
-
67
- def resource!
68
- if resource.nil?
69
- raise "Resource class does not exist for QuickBooks Online object: #{quickbooks_online_resource_type}"
70
- end
71
-
72
- resource
73
- end
74
-
75
- def resource_class
76
- @resource_class ||= Client.resource_from_ledger_type(type: quickbooks_online_resource_type.downcase)
77
- end
78
- end
79
- end
80
- end
81
- end
@@ -1,43 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'webhook_event'
4
-
5
- # ref: https://developer.intuit.com/app/developer/qbo/docs/develop/webhooks/managing-webhooks-notifications#validating-the-notification
6
- module LedgerSync
7
- module Ledgers
8
- module QuickBooksOnline
9
- class WebhookNotification
10
- attr_reader :events,
11
- :original_payload,
12
- :payload,
13
- :realm_id,
14
- :webhook
15
-
16
- def initialize(args = {})
17
- @original_payload = args.fetch(:payload)
18
- @webhook = args.fetch(:webhook, nil)
19
- @payload = original_payload.is_a?(String) ? JSON.parse(original_payload) : original_payload
20
-
21
- @realm_id = @payload['realmId']
22
- raise 'Invalid payload: Could not find realmId' if @realm_id.blank?
23
-
24
- events_payload = @payload.dig('dataChangeEvent', 'entities')
25
- raise 'Invalid payload: Could not find dataChangeEvent -> entities' unless events_payload.is_a?(Array)
26
-
27
- @events = []
28
-
29
- events_payload.each do |event_payload|
30
- @events << WebhookEvent.new(
31
- payload: event_payload,
32
- webhook_notification: self
33
- )
34
- end
35
- end
36
-
37
- def resources
38
- @resources ||= events.map(&:resource).compact
39
- end
40
- end
41
- end
42
- end
43
- end
@@ -1,41 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'oauth2'
4
-
5
- module LedgerSync
6
- module Ledgers
7
- module Stripe
8
- class Client
9
- include Ledgers::Client::Mixin
10
-
11
- attr_reader :api_key
12
-
13
- def initialize(
14
- api_key:
15
- )
16
- @api_key = api_key
17
-
18
- super()
19
- end
20
-
21
- def url_for(resource:)
22
- DashboardURLHelper.new(
23
- resource: resource,
24
- base_url: 'https://dashboard.stripe.com'
25
- ).url
26
- end
27
-
28
- def wrap_perform
29
- ::Stripe.api_key = api_key
30
- yield
31
- ensure
32
- ::Stripe.api_key = nil
33
- end
34
-
35
- def self.ledger_attributes_to_save
36
- []
37
- end
38
- end
39
- end
40
- end
41
- end