fortis-apimatic-sdk 1.0.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 (738) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +197 -0
  4. data/bin/console +15 -0
  5. data/lib/fortis_api/api_helper.rb +10 -0
  6. data/lib/fortis_api/client.rb +274 -0
  7. data/lib/fortis_api/configuration.rb +192 -0
  8. data/lib/fortis_api/controllers/apple_pay_validate_merchant_controller.rb +35 -0
  9. data/lib/fortis_api/controllers/async_processing_controller.rb +32 -0
  10. data/lib/fortis_api/controllers/base_controller.rb +60 -0
  11. data/lib/fortis_api/controllers/batches_controller.rb +103 -0
  12. data/lib/fortis_api/controllers/contacts_controller.rb +242 -0
  13. data/lib/fortis_api/controllers/declined_recurring_transactions_controller.rb +186 -0
  14. data/lib/fortis_api/controllers/device_terms_controller.rb +141 -0
  15. data/lib/fortis_api/controllers/elements_controller.rb +66 -0
  16. data/lib/fortis_api/controllers/full_boarding_controller.rb +38 -0
  17. data/lib/fortis_api/controllers/level3_data_controller.rb +119 -0
  18. data/lib/fortis_api/controllers/locations_controller.rb +301 -0
  19. data/lib/fortis_api/controllers/m3_ds_authentication_controller.rb +42 -0
  20. data/lib/fortis_api/controllers/m3_ds_transactions_controller.rb +36 -0
  21. data/lib/fortis_api/controllers/merchant_deposits_controller.rb +175 -0
  22. data/lib/fortis_api/controllers/merchant_details_controller.rb +35 -0
  23. data/lib/fortis_api/controllers/on_boarding_controller.rb +53 -0
  24. data/lib/fortis_api/controllers/paylinks_controller.rb +248 -0
  25. data/lib/fortis_api/controllers/payment_card_reader_token_controller.rb +30 -0
  26. data/lib/fortis_api/controllers/quick_invoices_controller.rb +325 -0
  27. data/lib/fortis_api/controllers/recurring_controller.rb +342 -0
  28. data/lib/fortis_api/controllers/signatures_controller.rb +149 -0
  29. data/lib/fortis_api/controllers/tags_controller.rb +200 -0
  30. data/lib/fortis_api/controllers/terminals_controller.rb +187 -0
  31. data/lib/fortis_api/controllers/tickets_controller.rb +150 -0
  32. data/lib/fortis_api/controllers/tokens_controller.rb +446 -0
  33. data/lib/fortis_api/controllers/transaction_ach_retries_controller.rb +150 -0
  34. data/lib/fortis_api/controllers/transactions_ach_controller.rb +253 -0
  35. data/lib/fortis_api/controllers/transactions_cash_controller.rb +61 -0
  36. data/lib/fortis_api/controllers/transactions_credit_card_controller.rb +1473 -0
  37. data/lib/fortis_api/controllers/transactions_ebt_card_controller.rb +77 -0
  38. data/lib/fortis_api/controllers/transactions_read_controller.rb +136 -0
  39. data/lib/fortis_api/controllers/transactions_updates_controller.rb +266 -0
  40. data/lib/fortis_api/controllers/user_verifications_controller.rb +103 -0
  41. data/lib/fortis_api/controllers/users_controller.rb +309 -0
  42. data/lib/fortis_api/controllers/webhooks_controller.rb +246 -0
  43. data/lib/fortis_api/exceptions/api_exception.rb +21 -0
  44. data/lib/fortis_api/exceptions/response401token_exception.rb +57 -0
  45. data/lib/fortis_api/exceptions/response412_exception.rb +74 -0
  46. data/lib/fortis_api/exceptions/response_error_exception.rb +74 -0
  47. data/lib/fortis_api/http/auth/access_token.rb +52 -0
  48. data/lib/fortis_api/http/auth/developer_id.rb +52 -0
  49. data/lib/fortis_api/http/auth/user_api_key.rb +52 -0
  50. data/lib/fortis_api/http/auth/user_id.rb +52 -0
  51. data/lib/fortis_api/http/http_call_back.rb +10 -0
  52. data/lib/fortis_api/http/http_method_enum.rb +10 -0
  53. data/lib/fortis_api/http/http_request.rb +10 -0
  54. data/lib/fortis_api/http/http_response.rb +10 -0
  55. data/lib/fortis_api/http/proxy_settings.rb +22 -0
  56. data/lib/fortis_api/models/account_info.rb +338 -0
  57. data/lib/fortis_api/models/account_type12_enum.rb +36 -0
  58. data/lib/fortis_api/models/account_type13_enum.rb +39 -0
  59. data/lib/fortis_api/models/account_type16_enum.rb +40 -0
  60. data/lib/fortis_api/models/account_type_enum.rb +64 -0
  61. data/lib/fortis_api/models/account_vault.rb +734 -0
  62. data/lib/fortis_api/models/account_vault_cau_log.rb +122 -0
  63. data/lib/fortis_api/models/account_vault_cau_product_transaction.rb +387 -0
  64. data/lib/fortis_api/models/ach_product_transaction.rb +1571 -0
  65. data/lib/fortis_api/models/ach_sec_code1_enum.rb +52 -0
  66. data/lib/fortis_api/models/ach_sec_code31_enum.rb +53 -0
  67. data/lib/fortis_api/models/ach_sec_code3_enum.rb +52 -0
  68. data/lib/fortis_api/models/ach_sec_code_enum.rb +44 -0
  69. data/lib/fortis_api/models/acs_challenge_mandated_enum.rb +38 -0
  70. data/lib/fortis_api/models/action_enum.rb +49 -0
  71. data/lib/fortis_api/models/active_notification_alert.rb +239 -0
  72. data/lib/fortis_api/models/active_recurring.rb +476 -0
  73. data/lib/fortis_api/models/additional_access.rb +74 -0
  74. data/lib/fortis_api/models/additional_amount.rb +119 -0
  75. data/lib/fortis_api/models/addon.rb +130 -0
  76. data/lib/fortis_api/models/address.rb +118 -0
  77. data/lib/fortis_api/models/address1.rb +129 -0
  78. data/lib/fortis_api/models/address2.rb +117 -0
  79. data/lib/fortis_api/models/address81.rb +133 -0
  80. data/lib/fortis_api/models/address_match_enum.rb +40 -0
  81. data/lib/fortis_api/models/address_type_enum.rb +40 -0
  82. data/lib/fortis_api/models/alert_type_enum.rb +58 -0
  83. data/lib/fortis_api/models/alert_type_id_enum.rb +58 -0
  84. data/lib/fortis_api/models/all_tag.rb +113 -0
  85. data/lib/fortis_api/models/alt_bank_account.rb +113 -0
  86. data/lib/fortis_api/models/amount_ind_enum.rb +122 -0
  87. data/lib/fortis_api/models/app_delivery_enum.rb +40 -0
  88. data/lib/fortis_api/models/async.rb +83 -0
  89. data/lib/fortis_api/models/auth_role.rb +140 -0
  90. data/lib/fortis_api/models/avs_enum.rb +48 -0
  91. data/lib/fortis_api/models/balance.rb +97 -0
  92. data/lib/fortis_api/models/bank_account.rb +101 -0
  93. data/lib/fortis_api/models/bank_account1.rb +129 -0
  94. data/lib/fortis_api/models/base_model.rb +122 -0
  95. data/lib/fortis_api/models/batch_risk_config.rb +90 -0
  96. data/lib/fortis_api/models/billing_address.rb +133 -0
  97. data/lib/fortis_api/models/billing_address1.rb +149 -0
  98. data/lib/fortis_api/models/billing_address24.rb +158 -0
  99. data/lib/fortis_api/models/billing_address5.rb +97 -0
  100. data/lib/fortis_api/models/body.rb +91 -0
  101. data/lib/fortis_api/models/branding_domain.rb +474 -0
  102. data/lib/fortis_api/models/branding_domain1.rb +474 -0
  103. data/lib/fortis_api/models/broad_info.rb +171 -0
  104. data/lib/fortis_api/models/browser_information.rb +288 -0
  105. data/lib/fortis_api/models/business_category_enum.rb +74 -0
  106. data/lib/fortis_api/models/business_type_enum.rb +462 -0
  107. data/lib/fortis_api/models/cardholder.rb +185 -0
  108. data/lib/fortis_api/models/cardholder_account.rb +131 -0
  109. data/lib/fortis_api/models/category_enum.rb +135 -0
  110. data/lib/fortis_api/models/cau_subscribe_type_code_enum.rb +46 -0
  111. data/lib/fortis_api/models/cau_subscribe_type_id_enum.rb +46 -0
  112. data/lib/fortis_api/models/cau_summary_status_id_enum.rb +50 -0
  113. data/lib/fortis_api/models/cc_product_transaction.rb +1571 -0
  114. data/lib/fortis_api/models/ch_acc_age_ind_enum.rb +50 -0
  115. data/lib/fortis_api/models/ch_acc_change_ind_enum.rb +47 -0
  116. data/lib/fortis_api/models/ch_acc_pw_change_ind_enum.rb +51 -0
  117. data/lib/fortis_api/models/challenge_message_extension.rb +109 -0
  118. data/lib/fortis_api/models/challenge_window_size_enum.rb +56 -0
  119. data/lib/fortis_api/models/changelog.rb +157 -0
  120. data/lib/fortis_api/models/changelog_detail.rb +107 -0
  121. data/lib/fortis_api/models/children.rb +421 -0
  122. data/lib/fortis_api/models/communication_type_enum.rb +40 -0
  123. data/lib/fortis_api/models/conditions.rb +82 -0
  124. data/lib/fortis_api/models/conditions18.rb +92 -0
  125. data/lib/fortis_api/models/conditions181.rb +92 -0
  126. data/lib/fortis_api/models/conditions191.rb +92 -0
  127. data/lib/fortis_api/models/conditions27.rb +82 -0
  128. data/lib/fortis_api/models/conditions4.rb +92 -0
  129. data/lib/fortis_api/models/conditions41.rb +92 -0
  130. data/lib/fortis_api/models/conditions42.rb +92 -0
  131. data/lib/fortis_api/models/conditions43.rb +92 -0
  132. data/lib/fortis_api/models/contact.rb +106 -0
  133. data/lib/fortis_api/models/contact1.rb +421 -0
  134. data/lib/fortis_api/models/contact11.rb +105 -0
  135. data/lib/fortis_api/models/contact_user_default_entry_page_enum.rb +52 -0
  136. data/lib/fortis_api/models/context.rb +82 -0
  137. data/lib/fortis_api/models/country_enum.rb +36 -0
  138. data/lib/fortis_api/models/created_user.rb +591 -0
  139. data/lib/fortis_api/models/currency_type.rb +84 -0
  140. data/lib/fortis_api/models/data.rb +125 -0
  141. data/lib/fortis_api/models/data1.rb +72 -0
  142. data/lib/fortis_api/models/data10.rb +694 -0
  143. data/lib/fortis_api/models/data11.rb +491 -0
  144. data/lib/fortis_api/models/data12.rb +237 -0
  145. data/lib/fortis_api/models/data13.rb +172 -0
  146. data/lib/fortis_api/models/data14.rb +280 -0
  147. data/lib/fortis_api/models/data15.rb +433 -0
  148. data/lib/fortis_api/models/data16.rb +468 -0
  149. data/lib/fortis_api/models/data17.rb +72 -0
  150. data/lib/fortis_api/models/data18.rb +861 -0
  151. data/lib/fortis_api/models/data19.rb +127 -0
  152. data/lib/fortis_api/models/data2.rb +580 -0
  153. data/lib/fortis_api/models/data20.rb +668 -0
  154. data/lib/fortis_api/models/data21.rb +136 -0
  155. data/lib/fortis_api/models/data22.rb +122 -0
  156. data/lib/fortis_api/models/data23.rb +700 -0
  157. data/lib/fortis_api/models/data24.rb +214 -0
  158. data/lib/fortis_api/models/data25.rb +889 -0
  159. data/lib/fortis_api/models/data26.rb +211 -0
  160. data/lib/fortis_api/models/data27.rb +2577 -0
  161. data/lib/fortis_api/models/data28.rb +256 -0
  162. data/lib/fortis_api/models/data29.rb +94 -0
  163. data/lib/fortis_api/models/data3.rb +168 -0
  164. data/lib/fortis_api/models/data32.rb +101 -0
  165. data/lib/fortis_api/models/data33.rb +73 -0
  166. data/lib/fortis_api/models/data34.rb +815 -0
  167. data/lib/fortis_api/models/data37.rb +75 -0
  168. data/lib/fortis_api/models/data38.rb +150 -0
  169. data/lib/fortis_api/models/data39.rb +285 -0
  170. data/lib/fortis_api/models/data4.rb +254 -0
  171. data/lib/fortis_api/models/data5.rb +102 -0
  172. data/lib/fortis_api/models/data6.rb +244 -0
  173. data/lib/fortis_api/models/data7.rb +135 -0
  174. data/lib/fortis_api/models/data8.rb +345 -0
  175. data/lib/fortis_api/models/data9.rb +82 -0
  176. data/lib/fortis_api/models/debit_credit_enum.rb +37 -0
  177. data/lib/fortis_api/models/declined_recurring_notification.rb +146 -0
  178. data/lib/fortis_api/models/default_transaction_type_enum.rb +40 -0
  179. data/lib/fortis_api/models/delivery_method_enum.rb +54 -0
  180. data/lib/fortis_api/models/delivery_timeframe_enum.rb +46 -0
  181. data/lib/fortis_api/models/deposit_type_enum.rb +40 -0
  182. data/lib/fortis_api/models/detail.rb +102 -0
  183. data/lib/fortis_api/models/detail1.rb +263 -0
  184. data/lib/fortis_api/models/detail2.rb +154 -0
  185. data/lib/fortis_api/models/developer_company.rb +149 -0
  186. data/lib/fortis_api/models/device.rb +111 -0
  187. data/lib/fortis_api/models/device_binding_status_enum.rb +441 -0
  188. data/lib/fortis_api/models/device_channel_enum.rb +37 -0
  189. data/lib/fortis_api/models/document.rb +91 -0
  190. data/lib/fortis_api/models/domain.rb +474 -0
  191. data/lib/fortis_api/models/e_format_enum.rb +56 -0
  192. data/lib/fortis_api/models/ebt_type_enum.rb +36 -0
  193. data/lib/fortis_api/models/email_blacklist.rb +105 -0
  194. data/lib/fortis_api/models/email_enum.rb +42 -0
  195. data/lib/fortis_api/models/emv_receipt_data.rb +141 -0
  196. data/lib/fortis_api/models/entry_mode_id_enum.rb +52 -0
  197. data/lib/fortis_api/models/expand10_enum.rb +26 -0
  198. data/lib/fortis_api/models/expand117_enum.rb +96 -0
  199. data/lib/fortis_api/models/expand11_enum.rb +108 -0
  200. data/lib/fortis_api/models/expand123_enum.rb +40 -0
  201. data/lib/fortis_api/models/expand15_enum.rb +26 -0
  202. data/lib/fortis_api/models/expand17_enum.rb +100 -0
  203. data/lib/fortis_api/models/expand18_enum.rb +88 -0
  204. data/lib/fortis_api/models/expand1_enum.rb +76 -0
  205. data/lib/fortis_api/models/expand26_enum.rb +92 -0
  206. data/lib/fortis_api/models/expand34_enum.rb +26 -0
  207. data/lib/fortis_api/models/expand37_enum.rb +26 -0
  208. data/lib/fortis_api/models/expand40_enum.rb +60 -0
  209. data/lib/fortis_api/models/expand44_enum.rb +40 -0
  210. data/lib/fortis_api/models/expand47_enum.rb +69 -0
  211. data/lib/fortis_api/models/expand57_enum.rb +48 -0
  212. data/lib/fortis_api/models/expand5_enum.rb +40 -0
  213. data/lib/fortis_api/models/expand60_enum.rb +200 -0
  214. data/lib/fortis_api/models/expand8_enum.rb +52 -0
  215. data/lib/fortis_api/models/expand_enum.rb +40 -0
  216. data/lib/fortis_api/models/field.rb +82 -0
  217. data/lib/fortis_api/models/field18.rb +143 -0
  218. data/lib/fortis_api/models/field27_enum.rb +108 -0
  219. data/lib/fortis_api/models/field28_enum.rb +200 -0
  220. data/lib/fortis_api/models/field30_enum.rb +76 -0
  221. data/lib/fortis_api/models/field31_enum.rb +92 -0
  222. data/lib/fortis_api/models/field33_enum.rb +220 -0
  223. data/lib/fortis_api/models/field34_enum.rb +236 -0
  224. data/lib/fortis_api/models/field35_enum.rb +216 -0
  225. data/lib/fortis_api/models/field36_enum.rb +232 -0
  226. data/lib/fortis_api/models/field37_enum.rb +26 -0
  227. data/lib/fortis_api/models/field38_enum.rb +108 -0
  228. data/lib/fortis_api/models/field39_enum.rb +209 -0
  229. data/lib/fortis_api/models/field41_enum.rb +280 -0
  230. data/lib/fortis_api/models/field43_enum.rb +236 -0
  231. data/lib/fortis_api/models/field45_enum.rb +56 -0
  232. data/lib/fortis_api/models/field47_enum.rb +52 -0
  233. data/lib/fortis_api/models/field49_enum.rb +240 -0
  234. data/lib/fortis_api/models/field51_enum.rb +88 -0
  235. data/lib/fortis_api/models/field53_enum.rb +286 -0
  236. data/lib/fortis_api/models/field55_enum.rb +76 -0
  237. data/lib/fortis_api/models/field57_enum.rb +652 -0
  238. data/lib/fortis_api/models/field59_enum.rb +40 -0
  239. data/lib/fortis_api/models/field60_enum.rb +280 -0
  240. data/lib/fortis_api/models/field_configuration.rb +111 -0
  241. data/lib/fortis_api/models/file.rb +223 -0
  242. data/lib/fortis_api/models/file2.rb +82 -0
  243. data/lib/fortis_api/models/file5.rb +85 -0
  244. data/lib/fortis_api/models/filter_by.rb +120 -0
  245. data/lib/fortis_api/models/footer.rb +91 -0
  246. data/lib/fortis_api/models/forecast.rb +139 -0
  247. data/lib/fortis_api/models/format1_enum.rb +36 -0
  248. data/lib/fortis_api/models/format_enum.rb +36 -0
  249. data/lib/fortis_api/models/header.rb +91 -0
  250. data/lib/fortis_api/models/helppage.rb +151 -0
  251. data/lib/fortis_api/models/helppage2.rb +151 -0
  252. data/lib/fortis_api/models/home_phone.rb +84 -0
  253. data/lib/fortis_api/models/hosted_payment_page.rb +298 -0
  254. data/lib/fortis_api/models/identity_verification.rb +112 -0
  255. data/lib/fortis_api/models/identity_verification2.rb +110 -0
  256. data/lib/fortis_api/models/identity_verification27.rb +110 -0
  257. data/lib/fortis_api/models/idtype_enum.rb +36 -0
  258. data/lib/fortis_api/models/iias_ind_enum.rb +46 -0
  259. data/lib/fortis_api/models/industry_type_enum.rb +52 -0
  260. data/lib/fortis_api/models/initiation_type_enum.rb +76 -0
  261. data/lib/fortis_api/models/interval_type_enum.rb +40 -0
  262. data/lib/fortis_api/models/item_list.rb +82 -0
  263. data/lib/fortis_api/models/item_list4.rb +79 -0
  264. data/lib/fortis_api/models/item_list5.rb +85 -0
  265. data/lib/fortis_api/models/joi.rb +73 -0
  266. data/lib/fortis_api/models/joi18.rb +85 -0
  267. data/lib/fortis_api/models/joi19.rb +85 -0
  268. data/lib/fortis_api/models/joi27.rb +73 -0
  269. data/lib/fortis_api/models/joi4.rb +85 -0
  270. data/lib/fortis_api/models/kyc_response_object.rb +79 -0
  271. data/lib/fortis_api/models/level3_data.rb +274 -0
  272. data/lib/fortis_api/models/level3_data5.rb +192 -0
  273. data/lib/fortis_api/models/level3_data6.rb +273 -0
  274. data/lib/fortis_api/models/level3_default.rb +274 -0
  275. data/lib/fortis_api/models/line_item.rb +246 -0
  276. data/lib/fortis_api/models/line_item13.rb +245 -0
  277. data/lib/fortis_api/models/line_item19.rb +215 -0
  278. data/lib/fortis_api/models/line_item20.rb +173 -0
  279. data/lib/fortis_api/models/links.rb +111 -0
  280. data/lib/fortis_api/models/list.rb +326 -0
  281. data/lib/fortis_api/models/list1.rb +580 -0
  282. data/lib/fortis_api/models/list10.rb +861 -0
  283. data/lib/fortis_api/models/list11.rb +668 -0
  284. data/lib/fortis_api/models/list12.rb +136 -0
  285. data/lib/fortis_api/models/list13.rb +122 -0
  286. data/lib/fortis_api/models/list14.rb +700 -0
  287. data/lib/fortis_api/models/list15.rb +214 -0
  288. data/lib/fortis_api/models/list16.rb +889 -0
  289. data/lib/fortis_api/models/list17.rb +211 -0
  290. data/lib/fortis_api/models/list18.rb +2577 -0
  291. data/lib/fortis_api/models/list19.rb +101 -0
  292. data/lib/fortis_api/models/list20.rb +815 -0
  293. data/lib/fortis_api/models/list3.rb +168 -0
  294. data/lib/fortis_api/models/list4.rb +244 -0
  295. data/lib/fortis_api/models/list5.rb +491 -0
  296. data/lib/fortis_api/models/list6.rb +694 -0
  297. data/lib/fortis_api/models/list8.rb +280 -0
  298. data/lib/fortis_api/models/list9.rb +468 -0
  299. data/lib/fortis_api/models/location.rb +387 -0
  300. data/lib/fortis_api/models/location18.rb +387 -0
  301. data/lib/fortis_api/models/location20.rb +131 -0
  302. data/lib/fortis_api/models/location5.rb +132 -0
  303. data/lib/fortis_api/models/location_billing_account.rb +268 -0
  304. data/lib/fortis_api/models/location_type_enum.rb +40 -0
  305. data/lib/fortis_api/models/location_user.rb +149 -0
  306. data/lib/fortis_api/models/locationmarketplace.rb +143 -0
  307. data/lib/fortis_api/models/log_email.rb +192 -0
  308. data/lib/fortis_api/models/log_sms.rb +166 -0
  309. data/lib/fortis_api/models/marketplace.rb +143 -0
  310. data/lib/fortis_api/models/merchant_list.rb +134 -0
  311. data/lib/fortis_api/models/merchant_risk_indicator.rb +237 -0
  312. data/lib/fortis_api/models/message_category_enum.rb +120 -0
  313. data/lib/fortis_api/models/message_extension.rb +109 -0
  314. data/lib/fortis_api/models/meta.rb +81 -0
  315. data/lib/fortis_api/models/method3.rb +97 -0
  316. data/lib/fortis_api/models/method50.rb +106 -0
  317. data/lib/fortis_api/models/method53_enum.rb +26 -0
  318. data/lib/fortis_api/models/method5_enum.rb +26 -0
  319. data/lib/fortis_api/models/method_enum.rb +26 -0
  320. data/lib/fortis_api/models/mobile_phone.rb +85 -0
  321. data/lib/fortis_api/models/modified_user.rb +591 -0
  322. data/lib/fortis_api/models/multi_transaction.rb +103 -0
  323. data/lib/fortis_api/models/operator1_enum.rb +36 -0
  324. data/lib/fortis_api/models/operator_enum.rb +36 -0
  325. data/lib/fortis_api/models/order21.rb +79 -0
  326. data/lib/fortis_api/models/order_enum.rb +36 -0
  327. data/lib/fortis_api/models/owner.rb +233 -0
  328. data/lib/fortis_api/models/ownership_type_enum.rb +68 -0
  329. data/lib/fortis_api/models/page.rb +84 -0
  330. data/lib/fortis_api/models/pagination.rb +113 -0
  331. data/lib/fortis_api/models/parent.rb +421 -0
  332. data/lib/fortis_api/models/parent3.rb +387 -0
  333. data/lib/fortis_api/models/partner_enum.rb +68 -0
  334. data/lib/fortis_api/models/paylink_action_enum.rb +37 -0
  335. data/lib/fortis_api/models/payment_acc_ind_enum.rb +51 -0
  336. data/lib/fortis_api/models/payment_method16_enum.rb +36 -0
  337. data/lib/fortis_api/models/payment_method1_enum.rb +36 -0
  338. data/lib/fortis_api/models/payment_method9_enum.rb +36 -0
  339. data/lib/fortis_api/models/payment_method_enum.rb +40 -0
  340. data/lib/fortis_api/models/payment_recurring_notification.rb +146 -0
  341. data/lib/fortis_api/models/postback_log.rb +162 -0
  342. data/lib/fortis_api/models/postback_status_id_enum.rb +50 -0
  343. data/lib/fortis_api/models/pre_order_purchase_ind_enum.rb +38 -0
  344. data/lib/fortis_api/models/preferred_language_enum.rb +38 -0
  345. data/lib/fortis_api/models/preferred_protocol_version_enum.rb +51 -0
  346. data/lib/fortis_api/models/pricing_element.rb +103 -0
  347. data/lib/fortis_api/models/primary_location.rb +387 -0
  348. data/lib/fortis_api/models/primary_principal.rb +211 -0
  349. data/lib/fortis_api/models/primary_principal1.rb +209 -0
  350. data/lib/fortis_api/models/process_method_enum.rb +36 -0
  351. data/lib/fortis_api/models/processor_enum.rb +52 -0
  352. data/lib/fortis_api/models/product_accountvault.rb +173 -0
  353. data/lib/fortis_api/models/product_file.rb +227 -0
  354. data/lib/fortis_api/models/product_file1.rb +227 -0
  355. data/lib/fortis_api/models/product_invoice.rb +341 -0
  356. data/lib/fortis_api/models/product_recurring.rb +230 -0
  357. data/lib/fortis_api/models/product_token.rb +173 -0
  358. data/lib/fortis_api/models/product_transaction.rb +1571 -0
  359. data/lib/fortis_api/models/product_transaction1.rb +1571 -0
  360. data/lib/fortis_api/models/purchase.rb +327 -0
  361. data/lib/fortis_api/models/quick_invoice.rb +657 -0
  362. data/lib/fortis_api/models/quick_invoice_setting.rb +189 -0
  363. data/lib/fortis_api/models/quick_invoice_view.rb +107 -0
  364. data/lib/fortis_api/models/reason_code.rb +84 -0
  365. data/lib/fortis_api/models/reason_code_id1_enum.rb +912 -0
  366. data/lib/fortis_api/models/reason_code_id_enum.rb +750 -0
  367. data/lib/fortis_api/models/reason_model_enum.rb +72 -0
  368. data/lib/fortis_api/models/received_email.rb +192 -0
  369. data/lib/fortis_api/models/recipients_enum.rb +45 -0
  370. data/lib/fortis_api/models/recurring.rb +476 -0
  371. data/lib/fortis_api/models/recurring3.rb +476 -0
  372. data/lib/fortis_api/models/recurring_flag_enum.rb +40 -0
  373. data/lib/fortis_api/models/recurring_split.rb +118 -0
  374. data/lib/fortis_api/models/recurring_type_id_enum.rb +36 -0
  375. data/lib/fortis_api/models/registration_field_enum.rb +92 -0
  376. data/lib/fortis_api/models/rejected_transaction.rb +2034 -0
  377. data/lib/fortis_api/models/rejected_transaction_ach_retry.rb +146 -0
  378. data/lib/fortis_api/models/relationship_enum.rb +40 -0
  379. data/lib/fortis_api/models/reorder_items_ind_enum.rb +37 -0
  380. data/lib/fortis_api/models/report_export_type_enum.rb +44 -0
  381. data/lib/fortis_api/models/resource12_enum.rb +41 -0
  382. data/lib/fortis_api/models/resource2_enum.rb +40 -0
  383. data/lib/fortis_api/models/resource_enum.rb +44 -0
  384. data/lib/fortis_api/models/resources.rb +138 -0
  385. data/lib/fortis_api/models/response416date_range.rb +92 -0
  386. data/lib/fortis_api/models/response417filter_channels.rb +92 -0
  387. data/lib/fortis_api/models/response_apple_pay_validate_merchant.rb +83 -0
  388. data/lib/fortis_api/models/response_async_status.rb +83 -0
  389. data/lib/fortis_api/models/response_batchs_collection.rb +121 -0
  390. data/lib/fortis_api/models/response_contact.rb +83 -0
  391. data/lib/fortis_api/models/response_contact_searchs_collection.rb +121 -0
  392. data/lib/fortis_api/models/response_contacts_collection.rb +121 -0
  393. data/lib/fortis_api/models/response_declined_recurring_transaction.rb +83 -0
  394. data/lib/fortis_api/models/response_declined_recurring_transaction_payment.rb +83 -0
  395. data/lib/fortis_api/models/response_declined_recurring_transaction_resend.rb +83 -0
  396. data/lib/fortis_api/models/response_declined_recurring_transactions_collection.rb +122 -0
  397. data/lib/fortis_api/models/response_device_term.rb +83 -0
  398. data/lib/fortis_api/models/response_device_terms_collection.rb +121 -0
  399. data/lib/fortis_api/models/response_fullboarding.rb +83 -0
  400. data/lib/fortis_api/models/response_location.rb +83 -0
  401. data/lib/fortis_api/models/response_location_info.rb +83 -0
  402. data/lib/fortis_api/models/response_location_infos_collection.rb +121 -0
  403. data/lib/fortis_api/models/response_location_searchs_collection.rb +121 -0
  404. data/lib/fortis_api/models/response_locations_collection.rb +121 -0
  405. data/lib/fortis_api/models/response_merchant_deposit.rb +83 -0
  406. data/lib/fortis_api/models/response_merchant_deposits_collection.rb +121 -0
  407. data/lib/fortis_api/models/response_merchant_details.rb +83 -0
  408. data/lib/fortis_api/models/response_onboarding.rb +83 -0
  409. data/lib/fortis_api/models/response_paylink.rb +83 -0
  410. data/lib/fortis_api/models/response_paylinks_collection.rb +121 -0
  411. data/lib/fortis_api/models/response_payment_card_reader_token.rb +83 -0
  412. data/lib/fortis_api/models/response_quick_invoice.rb +83 -0
  413. data/lib/fortis_api/models/response_quick_invoice_resend.rb +83 -0
  414. data/lib/fortis_api/models/response_quick_invoices_collection.rb +121 -0
  415. data/lib/fortis_api/models/response_recurring.rb +83 -0
  416. data/lib/fortis_api/models/response_recurrings_collection.rb +121 -0
  417. data/lib/fortis_api/models/response_remove_verification.rb +83 -0
  418. data/lib/fortis_api/models/response_send_verification.rb +83 -0
  419. data/lib/fortis_api/models/response_signature.rb +83 -0
  420. data/lib/fortis_api/models/response_signatures_collection.rb +121 -0
  421. data/lib/fortis_api/models/response_tag.rb +83 -0
  422. data/lib/fortis_api/models/response_tags_collection.rb +120 -0
  423. data/lib/fortis_api/models/response_terminal.rb +83 -0
  424. data/lib/fortis_api/models/response_terminals_collection.rb +121 -0
  425. data/lib/fortis_api/models/response_three_ds_authentication.rb +83 -0
  426. data/lib/fortis_api/models/response_three_ds_transaction.rb +83 -0
  427. data/lib/fortis_api/models/response_ticket.rb +83 -0
  428. data/lib/fortis_api/models/response_ticket_intention.rb +83 -0
  429. data/lib/fortis_api/models/response_tickets_collection.rb +121 -0
  430. data/lib/fortis_api/models/response_token.rb +83 -0
  431. data/lib/fortis_api/models/response_tokens_collection.rb +121 -0
  432. data/lib/fortis_api/models/response_transaction.rb +83 -0
  433. data/lib/fortis_api/models/response_transaction_ach_retry.rb +83 -0
  434. data/lib/fortis_api/models/response_transaction_ach_retrys_collection.rb +121 -0
  435. data/lib/fortis_api/models/response_transaction_bin_info.rb +83 -0
  436. data/lib/fortis_api/models/response_transaction_intention.rb +83 -0
  437. data/lib/fortis_api/models/response_transaction_level3.rb +83 -0
  438. data/lib/fortis_api/models/response_transaction_level3_master.rb +83 -0
  439. data/lib/fortis_api/models/response_transaction_level3_visa.rb +83 -0
  440. data/lib/fortis_api/models/response_transaction_processing.rb +83 -0
  441. data/lib/fortis_api/models/response_transactions_collection.rb +121 -0
  442. data/lib/fortis_api/models/response_user.rb +83 -0
  443. data/lib/fortis_api/models/response_user_api_key.rb +83 -0
  444. data/lib/fortis_api/models/response_user_verification.rb +83 -0
  445. data/lib/fortis_api/models/response_user_verifications_collection.rb +121 -0
  446. data/lib/fortis_api/models/response_users_collection.rb +121 -0
  447. data/lib/fortis_api/models/response_webhook.rb +83 -0
  448. data/lib/fortis_api/models/result.rb +95 -0
  449. data/lib/fortis_api/models/retry_transaction.rb +2034 -0
  450. data/lib/fortis_api/models/retry_transaction_ach_retry.rb +146 -0
  451. data/lib/fortis_api/models/return_fee_transaction.rb +2034 -0
  452. data/lib/fortis_api/models/return_fee_transaction_ach_retry.rb +146 -0
  453. data/lib/fortis_api/models/saved_account.rb +734 -0
  454. data/lib/fortis_api/models/scheme_id_enum.rb +45 -0
  455. data/lib/fortis_api/models/sec_code_enum.rb +44 -0
  456. data/lib/fortis_api/models/settings.rb +92 -0
  457. data/lib/fortis_api/models/severity_enum.rb +48 -0
  458. data/lib/fortis_api/models/ship_address_usage_ind_enum.rb +46 -0
  459. data/lib/fortis_api/models/ship_indicator_enum.rb +83 -0
  460. data/lib/fortis_api/models/ship_name_indicator_enum.rb +38 -0
  461. data/lib/fortis_api/models/shipping_address.rb +161 -0
  462. data/lib/fortis_api/models/signature.rb +125 -0
  463. data/lib/fortis_api/models/sms_blacklist.rb +105 -0
  464. data/lib/fortis_api/models/sms_enum.rb +42 -0
  465. data/lib/fortis_api/models/sort.rb +91 -0
  466. data/lib/fortis_api/models/source_enum.rb +41 -0
  467. data/lib/fortis_api/models/stack_enum.rb +36 -0
  468. data/lib/fortis_api/models/status11.rb +84 -0
  469. data/lib/fortis_api/models/status3_enum.rb +36 -0
  470. data/lib/fortis_api/models/status5.rb +73 -0
  471. data/lib/fortis_api/models/status_code12_enum.rb +42 -0
  472. data/lib/fortis_api/models/status_code14_enum.rb +42 -0
  473. data/lib/fortis_api/models/status_code17_enum.rb +89 -0
  474. data/lib/fortis_api/models/status_code_enum.rb +46 -0
  475. data/lib/fortis_api/models/status_enum.rb +40 -0
  476. data/lib/fortis_api/models/status_id_enum.rb +42 -0
  477. data/lib/fortis_api/models/surcharge.rb +318 -0
  478. data/lib/fortis_api/models/surcharge_transaction.rb +208 -0
  479. data/lib/fortis_api/models/suspicious_acc_activity_enum.rb +38 -0
  480. data/lib/fortis_api/models/tag.rb +113 -0
  481. data/lib/fortis_api/models/tag_transaction.rb +177 -0
  482. data/lib/fortis_api/models/tax_exempt_enum.rb +36 -0
  483. data/lib/fortis_api/models/tax_surcharge_config_enum.rb +42 -0
  484. data/lib/fortis_api/models/terminal.rb +595 -0
  485. data/lib/fortis_api/models/terminal2.rb +595 -0
  486. data/lib/fortis_api/models/terminal_application.rb +212 -0
  487. data/lib/fortis_api/models/terminal_cvm.rb +166 -0
  488. data/lib/fortis_api/models/terminal_manufacturer.rb +140 -0
  489. data/lib/fortis_api/models/terminal_manufacturer_code_enum.rb +44 -0
  490. data/lib/fortis_api/models/terminal_router.rb +139 -0
  491. data/lib/fortis_api/models/terminal_timeouts.rb +204 -0
  492. data/lib/fortis_api/models/terminal_timeouts12.rb +213 -0
  493. data/lib/fortis_api/models/three_ds_req_auth_method_enum.rb +155 -0
  494. data/lib/fortis_api/models/three_ds_req_prior_auth_method_enum.rb +128 -0
  495. data/lib/fortis_api/models/three_ds_requestor.rb +306 -0
  496. data/lib/fortis_api/models/three_ds_requestor_authentication_ind_enum.rb +143 -0
  497. data/lib/fortis_api/models/three_ds_requestor_authentication_info.rb +148 -0
  498. data/lib/fortis_api/models/three_ds_requestor_challenge_ind_enum.rb +144 -0
  499. data/lib/fortis_api/models/three_ds_requestor_dec_req_ind_enum.rb +56 -0
  500. data/lib/fortis_api/models/three_ds_requestor_prior_authentication_info.rb +146 -0
  501. data/lib/fortis_api/models/three_ds_requestor_spc_support_enum.rb +29 -0
  502. data/lib/fortis_api/models/three_ri_ind_enum.rb +180 -0
  503. data/lib/fortis_api/models/tip_percents.rb +100 -0
  504. data/lib/fortis_api/models/trans_char_enum.rb +36 -0
  505. data/lib/fortis_api/models/transaction.rb +2034 -0
  506. data/lib/fortis_api/models/transaction_batch.rb +275 -0
  507. data/lib/fortis_api/models/transaction_history.rb +138 -0
  508. data/lib/fortis_api/models/transaction_level3.rb +94 -0
  509. data/lib/fortis_api/models/transaction_reference.rb +182 -0
  510. data/lib/fortis_api/models/transaction_split.rb +127 -0
  511. data/lib/fortis_api/models/transaction_status_enum.rb +73 -0
  512. data/lib/fortis_api/models/transaction_type_enum.rb +52 -0
  513. data/lib/fortis_api/models/trx_source_code_enum.rb +143 -0
  514. data/lib/fortis_api/models/trx_source_id_enum.rb +143 -0
  515. data/lib/fortis_api/models/type103_enum.rb +26 -0
  516. data/lib/fortis_api/models/type10_enum.rb +26 -0
  517. data/lib/fortis_api/models/type110_enum.rb +26 -0
  518. data/lib/fortis_api/models/type112.rb +84 -0
  519. data/lib/fortis_api/models/type113_enum.rb +26 -0
  520. data/lib/fortis_api/models/type114_enum.rb +26 -0
  521. data/lib/fortis_api/models/type115_enum.rb +26 -0
  522. data/lib/fortis_api/models/type116_enum.rb +26 -0
  523. data/lib/fortis_api/models/type117_enum.rb +26 -0
  524. data/lib/fortis_api/models/type11_enum.rb +26 -0
  525. data/lib/fortis_api/models/type123_enum.rb +26 -0
  526. data/lib/fortis_api/models/type124_enum.rb +26 -0
  527. data/lib/fortis_api/models/type128_enum.rb +26 -0
  528. data/lib/fortis_api/models/type129_enum.rb +26 -0
  529. data/lib/fortis_api/models/type130_enum.rb +26 -0
  530. data/lib/fortis_api/models/type134_enum.rb +26 -0
  531. data/lib/fortis_api/models/type135_enum.rb +26 -0
  532. data/lib/fortis_api/models/type136_enum.rb +26 -0
  533. data/lib/fortis_api/models/type137_enum.rb +26 -0
  534. data/lib/fortis_api/models/type138_enum.rb +26 -0
  535. data/lib/fortis_api/models/type15_enum.rb +26 -0
  536. data/lib/fortis_api/models/type16_enum.rb +27 -0
  537. data/lib/fortis_api/models/type1_enum.rb +26 -0
  538. data/lib/fortis_api/models/type20_enum.rb +26 -0
  539. data/lib/fortis_api/models/type21_enum.rb +26 -0
  540. data/lib/fortis_api/models/type22_enum.rb +26 -0
  541. data/lib/fortis_api/models/type23_enum.rb +26 -0
  542. data/lib/fortis_api/models/type27_enum.rb +26 -0
  543. data/lib/fortis_api/models/type28_enum.rb +26 -0
  544. data/lib/fortis_api/models/type29_enum.rb +36 -0
  545. data/lib/fortis_api/models/type2_enum.rb +26 -0
  546. data/lib/fortis_api/models/type30_enum.rb +26 -0
  547. data/lib/fortis_api/models/type31_enum.rb +26 -0
  548. data/lib/fortis_api/models/type35_enum.rb +26 -0
  549. data/lib/fortis_api/models/type39_enum.rb +26 -0
  550. data/lib/fortis_api/models/type3_enum.rb +26 -0
  551. data/lib/fortis_api/models/type43_enum.rb +26 -0
  552. data/lib/fortis_api/models/type44_enum.rb +26 -0
  553. data/lib/fortis_api/models/type45_enum.rb +26 -0
  554. data/lib/fortis_api/models/type46_enum.rb +26 -0
  555. data/lib/fortis_api/models/type47_enum.rb +26 -0
  556. data/lib/fortis_api/models/type48_enum.rb +26 -0
  557. data/lib/fortis_api/models/type4_enum.rb +26 -0
  558. data/lib/fortis_api/models/type52_enum.rb +26 -0
  559. data/lib/fortis_api/models/type53_enum.rb +26 -0
  560. data/lib/fortis_api/models/type54_enum.rb +26 -0
  561. data/lib/fortis_api/models/type58_enum.rb +26 -0
  562. data/lib/fortis_api/models/type59_enum.rb +26 -0
  563. data/lib/fortis_api/models/type5_enum.rb +26 -0
  564. data/lib/fortis_api/models/type60_enum.rb +74 -0
  565. data/lib/fortis_api/models/type61_enum.rb +26 -0
  566. data/lib/fortis_api/models/type62_enum.rb +26 -0
  567. data/lib/fortis_api/models/type67_enum.rb +26 -0
  568. data/lib/fortis_api/models/type68_enum.rb +26 -0
  569. data/lib/fortis_api/models/type6_enum.rb +26 -0
  570. data/lib/fortis_api/models/type72_enum.rb +26 -0
  571. data/lib/fortis_api/models/type73_enum.rb +26 -0
  572. data/lib/fortis_api/models/type77_enum.rb +26 -0
  573. data/lib/fortis_api/models/type78_enum.rb +26 -0
  574. data/lib/fortis_api/models/type82_enum.rb +26 -0
  575. data/lib/fortis_api/models/type83_enum.rb +26 -0
  576. data/lib/fortis_api/models/type87_enum.rb +26 -0
  577. data/lib/fortis_api/models/type88_enum.rb +26 -0
  578. data/lib/fortis_api/models/type92_enum.rb +26 -0
  579. data/lib/fortis_api/models/type94_enum.rb +26 -0
  580. data/lib/fortis_api/models/type99_enum.rb +26 -0
  581. data/lib/fortis_api/models/type_enum.rb +26 -0
  582. data/lib/fortis_api/models/type_id_enum.rb +58 -0
  583. data/lib/fortis_api/models/ui_prefs.rb +123 -0
  584. data/lib/fortis_api/models/update_if_exists_enum.rb +26 -0
  585. data/lib/fortis_api/models/user.rb +107 -0
  586. data/lib/fortis_api/models/user1.rb +591 -0
  587. data/lib/fortis_api/models/user9.rb +591 -0
  588. data/lib/fortis_api/models/user_type_code_enum.rb +78 -0
  589. data/lib/fortis_api/models/v1_contacts_request.rb +368 -0
  590. data/lib/fortis_api/models/v1_contacts_request1.rb +372 -0
  591. data/lib/fortis_api/models/v1_declined_recurring_transaction_payments_request.rb +214 -0
  592. data/lib/fortis_api/models/v1_device_terms_request.rb +118 -0
  593. data/lib/fortis_api/models/v1_elements_ticket_intention_request.rb +122 -0
  594. data/lib/fortis_api/models/v1_elements_transaction_intention_request.rb +334 -0
  595. data/lib/fortis_api/models/v1_fullboarding_request.rb +489 -0
  596. data/lib/fortis_api/models/v1_merchant_threedsecure_authentication_request.rb +473 -0
  597. data/lib/fortis_api/models/v1_onboarding_request.rb +413 -0
  598. data/lib/fortis_api/models/v1_paylinks_request.rb +380 -0
  599. data/lib/fortis_api/models/v1_paylinks_request1.rb +383 -0
  600. data/lib/fortis_api/models/v1_quick_invoices_request.rb +564 -0
  601. data/lib/fortis_api/models/v1_quick_invoices_request1.rb +570 -0
  602. data/lib/fortis_api/models/v1_quick_invoices_transaction_request.rb +72 -0
  603. data/lib/fortis_api/models/v1_recurrings_defer_payment_request.rb +71 -0
  604. data/lib/fortis_api/models/v1_recurrings_request.rb +387 -0
  605. data/lib/fortis_api/models/v1_recurrings_request1.rb +377 -0
  606. data/lib/fortis_api/models/v1_recurrings_skip_payment_request.rb +71 -0
  607. data/lib/fortis_api/models/v1_signatures_request.rb +91 -0
  608. data/lib/fortis_api/models/v1_tags_request.rb +79 -0
  609. data/lib/fortis_api/models/v1_tags_request1.rb +85 -0
  610. data/lib/fortis_api/models/v1_terminals_request.rb +519 -0
  611. data/lib/fortis_api/models/v1_terminals_request1.rb +536 -0
  612. data/lib/fortis_api/models/v1_tickets_request.rb +193 -0
  613. data/lib/fortis_api/models/v1_tokens_ach_request.rb +525 -0
  614. data/lib/fortis_api/models/v1_tokens_ach_request1.rb +501 -0
  615. data/lib/fortis_api/models/v1_tokens_cc_request.rb +586 -0
  616. data/lib/fortis_api/models/v1_tokens_cc_request1.rb +497 -0
  617. data/lib/fortis_api/models/v1_tokens_previous_transaction_request.rb +483 -0
  618. data/lib/fortis_api/models/v1_tokens_terminal_async_request.rb +501 -0
  619. data/lib/fortis_api/models/v1_tokens_terminal_request.rb +501 -0
  620. data/lib/fortis_api/models/v1_tokens_ticket_request.rb +493 -0
  621. data/lib/fortis_api/models/v1_tokens_wallet_request.rb +515 -0
  622. data/lib/fortis_api/models/v1_transaction_ach_retries_request.rb +85 -0
  623. data/lib/fortis_api/models/v1_transactions_ach_credit_keyed_request.rb +869 -0
  624. data/lib/fortis_api/models/v1_transactions_ach_credit_prev_trxn_request.rb +863 -0
  625. data/lib/fortis_api/models/v1_transactions_ach_credit_token_request.rb +876 -0
  626. data/lib/fortis_api/models/v1_transactions_ach_debit_keyed_request.rb +869 -0
  627. data/lib/fortis_api/models/v1_transactions_ach_debit_prev_trxn_request.rb +863 -0
  628. data/lib/fortis_api/models/v1_transactions_ach_debit_token_request.rb +876 -0
  629. data/lib/fortis_api/models/v1_transactions_ach_refund_prev_trxn_request.rb +863 -0
  630. data/lib/fortis_api/models/v1_transactions_auth_complete_request.rb +785 -0
  631. data/lib/fortis_api/models/v1_transactions_auth_increment_request.rb +783 -0
  632. data/lib/fortis_api/models/v1_transactions_cash_refund_request.rb +807 -0
  633. data/lib/fortis_api/models/v1_transactions_cash_sale_request.rb +794 -0
  634. data/lib/fortis_api/models/v1_transactions_cc_auth_only_keyed_request.rb +1148 -0
  635. data/lib/fortis_api/models/v1_transactions_cc_auth_only_prev_trxn_request.rb +1125 -0
  636. data/lib/fortis_api/models/v1_transactions_cc_auth_only_swiped_request.rb +1102 -0
  637. data/lib/fortis_api/models/v1_transactions_cc_auth_only_taptopay_request.rb +974 -0
  638. data/lib/fortis_api/models/v1_transactions_cc_auth_only_terminal_request.rb +1105 -0
  639. data/lib/fortis_api/models/v1_transactions_cc_auth_only_ticket_request.rb +1089 -0
  640. data/lib/fortis_api/models/v1_transactions_cc_auth_only_token_request.rb +1119 -0
  641. data/lib/fortis_api/models/v1_transactions_cc_auth_only_wallet_request.rb +1099 -0
  642. data/lib/fortis_api/models/v1_transactions_cc_avs_only_keyed_request.rb +1150 -0
  643. data/lib/fortis_api/models/v1_transactions_cc_avs_only_prev_trxn_request.rb +1125 -0
  644. data/lib/fortis_api/models/v1_transactions_cc_avs_only_swiped_request.rb +1103 -0
  645. data/lib/fortis_api/models/v1_transactions_cc_avs_only_terminal_request.rb +1106 -0
  646. data/lib/fortis_api/models/v1_transactions_cc_avs_only_ticket_request.rb +1090 -0
  647. data/lib/fortis_api/models/v1_transactions_cc_avs_only_token_request.rb +1121 -0
  648. data/lib/fortis_api/models/v1_transactions_cc_avs_only_wallet_request.rb +1101 -0
  649. data/lib/fortis_api/models/v1_transactions_cc_balance_inquiry_keyed_request.rb +1150 -0
  650. data/lib/fortis_api/models/v1_transactions_cc_balance_inquiry_prev_trxn_request.rb +1125 -0
  651. data/lib/fortis_api/models/v1_transactions_cc_balance_inquiry_swiped_request.rb +1103 -0
  652. data/lib/fortis_api/models/v1_transactions_cc_balance_inquiry_terminal_request.rb +1106 -0
  653. data/lib/fortis_api/models/v1_transactions_cc_balance_inquiry_ticket_request.rb +1090 -0
  654. data/lib/fortis_api/models/v1_transactions_cc_balance_inquiry_token_request.rb +1121 -0
  655. data/lib/fortis_api/models/v1_transactions_cc_balance_inquiry_wallet_request.rb +1101 -0
  656. data/lib/fortis_api/models/v1_transactions_cc_force_keyed_request.rb +1171 -0
  657. data/lib/fortis_api/models/v1_transactions_cc_force_prev_trxn_request.rb +1146 -0
  658. data/lib/fortis_api/models/v1_transactions_cc_force_swiped_request.rb +1112 -0
  659. data/lib/fortis_api/models/v1_transactions_cc_force_ticket_request.rb +1112 -0
  660. data/lib/fortis_api/models/v1_transactions_cc_force_token_request.rb +1141 -0
  661. data/lib/fortis_api/models/v1_transactions_cc_force_wallet_request.rb +1123 -0
  662. data/lib/fortis_api/models/v1_transactions_cc_refund_keyed_request.rb +1180 -0
  663. data/lib/fortis_api/models/v1_transactions_cc_refund_prev_trxn_request.rb +1125 -0
  664. data/lib/fortis_api/models/v1_transactions_cc_refund_swiped_request.rb +1102 -0
  665. data/lib/fortis_api/models/v1_transactions_cc_refund_taptopay_request.rb +987 -0
  666. data/lib/fortis_api/models/v1_transactions_cc_refund_terminal_request.rb +1105 -0
  667. data/lib/fortis_api/models/v1_transactions_cc_refund_ticket_request.rb +1089 -0
  668. data/lib/fortis_api/models/v1_transactions_cc_refund_token_request.rb +1119 -0
  669. data/lib/fortis_api/models/v1_transactions_cc_refund_wallet_request.rb +1099 -0
  670. data/lib/fortis_api/models/v1_transactions_cc_sale_keyed_request.rb +1148 -0
  671. data/lib/fortis_api/models/v1_transactions_cc_sale_prev_trxn_request.rb +1125 -0
  672. data/lib/fortis_api/models/v1_transactions_cc_sale_swiped_request.rb +1102 -0
  673. data/lib/fortis_api/models/v1_transactions_cc_sale_taptopay_request.rb +974 -0
  674. data/lib/fortis_api/models/v1_transactions_cc_sale_terminal_request.rb +1105 -0
  675. data/lib/fortis_api/models/v1_transactions_cc_sale_ticket_request.rb +1089 -0
  676. data/lib/fortis_api/models/v1_transactions_cc_sale_token_request.rb +1119 -0
  677. data/lib/fortis_api/models/v1_transactions_cc_sale_wallet_request.rb +1099 -0
  678. data/lib/fortis_api/models/v1_transactions_ebt_voucher_clear_refund_keyed_request.rb +1159 -0
  679. data/lib/fortis_api/models/v1_transactions_ebt_voucher_clear_sale_keyed_request.rb +1159 -0
  680. data/lib/fortis_api/models/v1_transactions_level3_master_card_request.rb +71 -0
  681. data/lib/fortis_api/models/v1_transactions_level3_visa_request.rb +71 -0
  682. data/lib/fortis_api/models/v1_transactions_partial_reversal_request.rb +763 -0
  683. data/lib/fortis_api/models/v1_transactions_refund_request.rb +765 -0
  684. data/lib/fortis_api/models/v1_transactions_tip_adjust_request.rb +1049 -0
  685. data/lib/fortis_api/models/v1_transactions_void_request.rb +85 -0
  686. data/lib/fortis_api/models/v1_users_request.rb +430 -0
  687. data/lib/fortis_api/models/v1_users_request1.rb +440 -0
  688. data/lib/fortis_api/models/v1_wallet_provider_apple_pay_validate_merchant_request.rb +98 -0
  689. data/lib/fortis_api/models/v1_wallet_provider_merchant_details_request.rb +73 -0
  690. data/lib/fortis_api/models/v1_webhooks_batch_request.rb +255 -0
  691. data/lib/fortis_api/models/v1_webhooks_batch_request1.rb +267 -0
  692. data/lib/fortis_api/models/v1_webhooks_contact_request.rb +257 -0
  693. data/lib/fortis_api/models/v1_webhooks_contact_request1.rb +267 -0
  694. data/lib/fortis_api/models/v1_webhooks_transaction_request.rb +255 -0
  695. data/lib/fortis_api/models/v1_webhooks_transaction_request1.rb +267 -0
  696. data/lib/fortis_api/models/values4_enum.rb +36 -0
  697. data/lib/fortis_api/models/values50_enum.rb +36 -0
  698. data/lib/fortis_api/models/values51_enum.rb +40 -0
  699. data/lib/fortis_api/models/values58_enum.rb +36 -0
  700. data/lib/fortis_api/models/values5_enum.rb +36 -0
  701. data/lib/fortis_api/models/values6_enum.rb +36 -0
  702. data/lib/fortis_api/models/values7_enum.rb +36 -0
  703. data/lib/fortis_api/models/values99_enum.rb +36 -0
  704. data/lib/fortis_api/models/values_enum.rb +44 -0
  705. data/lib/fortis_api/models/wallet_provider_enum.rb +36 -0
  706. data/lib/fortis_api/models/wallet_type_enum.rb +55 -0
  707. data/lib/fortis_api/models/work_phone.rb +84 -0
  708. data/lib/fortis_api/utilities/date_time_helper.rb +11 -0
  709. data/lib/fortis_api/utilities/file_wrapper.rb +28 -0
  710. data/lib/fortis_api/utilities/union_type_lookup.rb +384 -0
  711. data/lib/fortis_api.rb +755 -0
  712. data/test/controllers/controller_test_base.rb +23 -0
  713. data/test/controllers/test_async_processing_controller.rb +43 -0
  714. data/test/controllers/test_batches_controller.rb +146 -0
  715. data/test/controllers/test_contacts_controller.rb +668 -0
  716. data/test/controllers/test_declined_recurring_transactions_controller.rb +150 -0
  717. data/test/controllers/test_device_terms_controller.rb +261 -0
  718. data/test/controllers/test_level3_data_controller.rb +91 -0
  719. data/test/controllers/test_locations_controller.rb +959 -0
  720. data/test/controllers/test_m3_ds_transactions_controller.rb +47 -0
  721. data/test/controllers/test_merchant_deposits_controller.rb +66 -0
  722. data/test/controllers/test_paylinks_controller.rb +185 -0
  723. data/test/controllers/test_payment_card_reader_token_controller.rb +43 -0
  724. data/test/controllers/test_quick_invoices_controller.rb +1218 -0
  725. data/test/controllers/test_recurring_controller.rb +1046 -0
  726. data/test/controllers/test_signatures_controller.rb +121 -0
  727. data/test/controllers/test_tags_controller.rb +155 -0
  728. data/test/controllers/test_terminals_controller.rb +242 -0
  729. data/test/controllers/test_tickets_controller.rb +94 -0
  730. data/test/controllers/test_tokens_controller.rb +641 -0
  731. data/test/controllers/test_transaction_ach_retries_controller.rb +427 -0
  732. data/test/controllers/test_transactions_read_controller.rb +867 -0
  733. data/test/controllers/test_transactions_updates_controller.rb +419 -0
  734. data/test/controllers/test_user_verifications_controller.rb +86 -0
  735. data/test/controllers/test_users_controller.rb +747 -0
  736. data/test/controllers/test_webhooks_controller.rb +51 -0
  737. data/test/http_response_catcher.rb +19 -0
  738. metadata +849 -0
@@ -0,0 +1,668 @@
1
+ # fortis_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ require_relative 'controller_test_base'
7
+
8
+ class ContactsControllerTest < ControllerTestBase
9
+ # Called only once for the class before any test has executed
10
+ def setup
11
+ setup_class
12
+ @controller = @client.contacts
13
+ @response_catcher = @controller.http_call_back
14
+ end
15
+
16
+ # Contacts Search
17
+ def test_contacts_search
18
+ # Parameters for the API call
19
+ location_id = '11e95f8ec39de8fbdb0a4f1a'
20
+ page = nil
21
+ keyword = nil
22
+ active = nil
23
+
24
+ # Perform the API call through the SDK function
25
+ result = @controller.contacts_search(location_id, page: page,
26
+ keyword: keyword, active: active)
27
+
28
+ # Test response code
29
+ assert_equal(200, @response_catcher.response.status_code)
30
+ # Test headers
31
+ expected_headers = {}
32
+ expected_headers['content-type'] = 'application/json; charset=utf-8'
33
+
34
+ assert(ComparisonHelper.match_headers(expected_headers, @response_catcher.response.headers))
35
+
36
+ # Test whether the captured response is as we expected
37
+ refute_nil(result)
38
+ expected_body = JSON.parse(
39
+ '{"type":"ContactSearchsCollection","list":[{"location_id":"11e95f8ec39d'\
40
+ 'e8fbdb0a4f1a","account_number":"54545433332","contact_api_id":"137","fi'\
41
+ 'rst_name":"John","last_name":"Smith","cell_phone":"3339998822","balance'\
42
+ '":245.36,"address":{"city":"Novi","state":"Michigan","postal_code":"483'\
43
+ '75","country":"USA"},"company_name":"Fortis Payment Systems, LLC","head'\
44
+ 'er_message":"This is a sample message for you","date_of_birth":"2021-12'\
45
+ '-01","email_trx_receipt":true,"home_phone":"3339998822","office_phone":'\
46
+ '"3339998822","office_phone_ext":"5","home_phone_country_code":"+1","off'\
47
+ 'ice_phone_country_code":"+1","cell_phone_country_code":"+1","header_mes'\
48
+ 'sage_type":0,"update_if_exists":1,"contact_c1":"any","contact_c2":"anyt'\
49
+ 'hing","contact_c3":"something","parent_id":"11e95f8ec39de8fbdb0a4f1a","'\
50
+ 'email":"email@domain.com","token_import_id":"11e95f8ec39de8fbdb0a4f1a",'\
51
+ '"id":"11e95f8ec39de8fbdb0a4f1a","created_ts":1422040992,"modified_ts":1'\
52
+ '422040992,"active":true,"created_user_id":"11e95f8ec39de8fbdb0a4f1a","r'\
53
+ 'eceived_emails":[{"subject":"Payment Receipt - 12skiestech","body":"Thi'\
54
+ 's email is being sent from a server.","source_address":"\\"12skiestech '\
55
+ 'A7t3qi\\" <noreply@zeamster.email>","return_path":"\\"12skiestech A7t3q'\
56
+ 'i\\" <noreply@zeamster.email>","provider_id":"0100017e67bcc530-e1dd23b4'\
57
+ '-8a39-4a5b-8d5d-68d51c4c942f-000000","domain_id":"11e95f8ec39de8fbdb0a4'\
58
+ 'f1a","reason_sent":"Contact Email","reason_model":"Transaction","reason'\
59
+ '_model_id":"11e95f8ec39de8fbdb0a4f1a","reply_to":"\\"Zeamster\\" <emma.'\
60
+ 'p@zeamster.com>","id":"11e95f8ec39de8fbdb0a4f1a","created_ts":142204099'\
61
+ '2}],"is_deletable":true,"location":{"id":"11e95f8ec39de8fbdb0a4f1a","cr'\
62
+ 'eated_ts":1422040992,"modified_ts":1422040992,"account_number":"5454545'\
63
+ '454545454","address":{"city":"Novi","state":"MI","postal_code":"48375",'\
64
+ '"country":"US"},"branding_domain_id":"11e95f8ec39de8fbdb0a4f1a","contac'\
65
+ 't_email_trx_receipt_default":true,"default_ach":"11e608a7d515f1e093242b'\
66
+ 'b2","default_cc":"11e608a442a5f1e092242dda","email_reply_to":"email@dom'\
67
+ 'ain.com","fax":"3339998822","location_api_id":"location-111111","locati'\
68
+ 'on_api_key":"AE34BBCAADF4AE34BBCAADF4","location_c1":"custom 1","locati'\
69
+ 'on_c2":"custom 2","location_c3":"custom data 3","name":"Sample Company '\
70
+ 'Headquarters","office_phone":"2481234567","office_ext_phone":"102102120'\
71
+ '9","tz":"America/New_York","parent_id":"11e95f8ec39de8fbdb0a4f1a","show'\
72
+ '_contact_notes":true,"show_contact_files":true,"created_user_id":"11e95'\
73
+ 'f8ec39de8fbdb0a4f1a","location_type":"merchant","ticket_hash_key":"A5F4'\
74
+ '43CADF4AE34BBCAADF4","additional_access":{}},"user":{"account_number":"'\
75
+ '5454545454545454","branding_domain_url":"{branding_domain_url}","cell_p'\
76
+ 'hone":"3339998822","company_name":"Fortis Payment Systems, LLC","contac'\
77
+ 't_id":"11e95f8ec39de8fbdb0a4f1a","date_of_birth":"2021-12-01","domain_i'\
78
+ 'd":"11e95f8ec39de8fbdb0a4f1a","email":"email@domain.com","email_trx_rec'\
79
+ 'eipt":true,"home_phone":"3339998822","first_name":"John","last_name":"S'\
80
+ 'mith","locale":"en-US","office_phone":"3339998822","office_ext_phone":"'\
81
+ '5","primary_location_id":"11e95f8ec39de8fbdb0a4f1a","requires_new_passw'\
82
+ 'ord":null,"terms_condition_code":"20220308","tz":"America/New_York","ui'\
83
+ '_prefs":{"entry_page":"dashboard","page_size":2,"report_export_type":"c'\
84
+ 'sv","process_method":"virtual_terminal","default_terminal":"11e95f8ec39'\
85
+ 'de8fbdb0a4f1a"},"username":"{user_name}","user_api_key":"234bas8dfn8238'\
86
+ 'f923w2","user_hash_key":null,"user_type_code":100,"password":null,"zip"'\
87
+ ':"48375","location_id":"11e95f8ec39de8fbdb0a4f1a","status_code":1,"api_'\
88
+ 'only":false,"is_invitation":false,"address":{"city":"Novi","state":"MI"'\
89
+ ',"postal_code":"48375","country":"US"},"id":"11e95f8ec39de8fbdb0a4f1a",'\
90
+ '"status":true,"login_attempts":0,"last_login_ts":1422040992,"created_ts'\
91
+ '":1422040992,"modified_ts":1422040992,"created_user_id":"11e95f8ec39de8'\
92
+ 'fbdb0a4f1a","terms_accepted_ts":1422040992,"terms_agree_ip":"192.168.0.'\
93
+ '10","current_date_time":"2019-03-11T10:38:26-0700","current_login":1422'\
94
+ '040992,"log_api_response_body_ts":1422040992},"recurrings":[{"account_v'\
95
+ 'ault_id":"11e95f8ec39de8fbdb0a4f1a","token_id":"11e95f8ec39de8fbdb0a4f1'\
96
+ 'a","contact_id":"11e95f8ec39de8fbdb0a4f1a","account_vault_api_id":"toke'\
97
+ 'n1234abcd","token_api_id":"token1234abcd","_joi":{"conditions":{}},"act'\
98
+ 'ive":true,"description":"Description","end_date":"2021-12-01","installm'\
99
+ 'ent_total_count":20,"interval":1,"interval_type":"d","location_id":"11e'\
100
+ '95f8ec39de8fbdb0a4f1a","notification_days":2,"payment_method":"cc","pro'\
101
+ 'duct_transaction_id":"11e95f8ec39de8fbdb0a4f1a","recurring_id":"11e95f8'\
102
+ 'ec39de8fbdb0a4f1a","recurring_api_id":"recurring1234abcd","start_date":'\
103
+ '"2021-12-01","status":"active","transaction_amount":300,"terms_agree":t'\
104
+ 'rue,"terms_agree_ip":"192.168.0.10","recurring_c1":"recurring custom da'\
105
+ 'ta 1","recurring_c2":"recurring custom data 2","recurring_c3":"recurrin'\
106
+ 'g custom data 3","send_to_proc_as_recur":true,"tags":["Walk-in Customer'\
107
+ '"],"secondary_amount":100,"currency":"USD","id":"11e95f8ec39de8fbdb0a4f'\
108
+ '1a","next_run_date":"2021-12-01","created_ts":1422040992,"modified_ts":'\
109
+ '1422040992,"recurring_type_id":"i","installment_amount_total":99999999,'\
110
+ '"created_user_id":"11e95f8ec39de8fbdb0a4f1a"}],"email_blacklist":{"id":'\
111
+ '"11e95f8ec39de8fbdb0a4f1a","isBlacklisted":true,"detail":true,"created_'\
112
+ 'ts":1422040992},"sms_blacklist":{"id":"11e95f8ec39de8fbdb0a4f1a","isBla'\
113
+ 'cklisted":true,"detail":true,"created_ts":1422040992},"changelogs":[{"i'\
114
+ 'd":"11e95f8ec39de8fbdb0a4f1a","created_ts":1422040992,"action":"CREATE"'\
115
+ ',"model":"TransactionRequest","model_id":"11ec829598f0d4008be9aba4","us'\
116
+ 'er_id":"11e95f8ec39de8fbdb0a4f1a","changelog_details":[{"id":"11e95f8ec'\
117
+ '39de8fbdb0a4f1a","changelog_id":"11e95f8ec39de8fbdb0a4f1a","field":"nex'\
118
+ 't_run_ts","old_value":"1643616000"}],"user":{"id":"11e95f8ec39de8fbdb0a'\
119
+ '4f1a","username":"email@domain.com","first_name":"Bob","last_name":"Fai'\
120
+ 'rview"}}],"postback_logs":[{"id":"11e95f8ec39de8fbdb0a4f1a","postback_c'\
121
+ 'onfig_id":"11e95f8ec39de8fbdb0a4f1a","changelog_id":"11e95f8ec39de8fbdb'\
122
+ '0a4f1a","next_run_ts":1422040992,"created_ts":1422040992,"model_id":"11'\
123
+ 'e95f8ec39de8fbdb0a4f1a"}],"created_user":{"account_number":"54545454545'\
124
+ '45454","branding_domain_url":"{branding_domain_url}","cell_phone":"3339'\
125
+ '998822","company_name":"Fortis Payment Systems, LLC","contact_id":"11e9'\
126
+ '5f8ec39de8fbdb0a4f1a","date_of_birth":"2021-12-01","domain_id":"11e95f8'\
127
+ 'ec39de8fbdb0a4f1a","email":"email@domain.com","email_trx_receipt":true,'\
128
+ '"home_phone":"3339998822","first_name":"John","last_name":"Smith","loca'\
129
+ 'le":"en-US","office_phone":"3339998822","office_ext_phone":"5","primary'\
130
+ '_location_id":"11e95f8ec39de8fbdb0a4f1a","requires_new_password":null,"'\
131
+ 'terms_condition_code":"20220308","tz":"America/New_York","ui_prefs":{"e'\
132
+ 'ntry_page":"dashboard","page_size":2,"report_export_type":"csv","proces'\
133
+ 's_method":"virtual_terminal","default_terminal":"11e95f8ec39de8fbdb0a4f'\
134
+ '1a"},"username":"{user_name}","user_api_key":"234bas8dfn8238f923w2","us'\
135
+ 'er_hash_key":null,"user_type_code":100,"password":null,"zip":"48375","l'\
136
+ 'ocation_id":"11e95f8ec39de8fbdb0a4f1a","status_code":1,"api_only":false'\
137
+ ',"is_invitation":false,"address":{"city":"Novi","state":"MI","postal_co'\
138
+ 'de":"48375","country":"US"},"id":"11e95f8ec39de8fbdb0a4f1a","status":tr'\
139
+ 'ue,"login_attempts":0,"last_login_ts":1422040992,"created_ts":142204099'\
140
+ '2,"modified_ts":1422040992,"created_user_id":"11e95f8ec39de8fbdb0a4f1a"'\
141
+ ',"terms_accepted_ts":1422040992,"terms_agree_ip":"192.168.0.10","curren'\
142
+ 't_date_time":"2019-03-11T10:38:26-0700","current_login":1422040992,"log'\
143
+ '_api_response_body_ts":1422040992},"parent":{"location_id":"11e95f8ec39'\
144
+ 'de8fbdb0a4f1a","account_number":"54545433332","contact_api_id":"137","f'\
145
+ 'irst_name":"John","last_name":"Smith","cell_phone":"3339998822","balanc'\
146
+ 'e":245.36,"address":{"city":"Novi","state":"Michigan","postal_code":"48'\
147
+ '375","country":"USA"},"company_name":"Fortis Payment Systems, LLC","hea'\
148
+ 'der_message":"This is a sample message for you","date_of_birth":"2021-1'\
149
+ '2-01","email_trx_receipt":true,"home_phone":"3339998822","office_phone"'\
150
+ ':"3339998822","office_phone_ext":"5","home_phone_country_code":"+1","of'\
151
+ 'fice_phone_country_code":"+1","cell_phone_country_code":"+1","header_me'\
152
+ 'ssage_type":0,"update_if_exists":1,"contact_c1":"any","contact_c2":"any'\
153
+ 'thing","contact_c3":"something","parent_id":"11e95f8ec39de8fbdb0a4f1a",'\
154
+ '"email":"email@domain.com","token_import_id":"11e95f8ec39de8fbdb0a4f1a"'\
155
+ ',"id":"11e95f8ec39de8fbdb0a4f1a","created_ts":1422040992,"modified_ts":'\
156
+ '1422040992,"active":true,"created_user_id":"11e95f8ec39de8fbdb0a4f1a"},'\
157
+ '"children":{"location_id":"11e95f8ec39de8fbdb0a4f1a","account_number":"'\
158
+ '54545433332","contact_api_id":"137","first_name":"John","last_name":"Sm'\
159
+ 'ith","cell_phone":"3339998822","balance":245.36,"address":{"city":"Novi'\
160
+ '","state":"Michigan","postal_code":"48375","country":"USA"},"company_na'\
161
+ 'me":"Fortis Payment Systems, LLC","header_message":"This is a sample me'\
162
+ 'ssage for you","date_of_birth":"2021-12-01","email_trx_receipt":true,"h'\
163
+ 'ome_phone":"3339998822","office_phone":"3339998822","office_phone_ext":'\
164
+ '"5","home_phone_country_code":"+1","office_phone_country_code":"+1","ce'\
165
+ 'll_phone_country_code":"+1","header_message_type":0,"update_if_exists":'\
166
+ '1,"contact_c1":"any","contact_c2":"anything","contact_c3":"something","'\
167
+ 'parent_id":"11e95f8ec39de8fbdb0a4f1a","email":"email@domain.com","token'\
168
+ '_import_id":"11e95f8ec39de8fbdb0a4f1a","id":"11e95f8ec39de8fbdb0a4f1a",'\
169
+ '"created_ts":1422040992,"modified_ts":1422040992,"active":true,"created'\
170
+ '_user_id":"11e95f8ec39de8fbdb0a4f1a"}}],"links":{"type":"Links","first"'\
171
+ ':"/v1/endpoint?page[size]=10&page[number]=1","previous":"/v1/endpoint?p'\
172
+ 'age[size]=10&page[number]=5","next":"/v1/endpoint?page[size]=10&page[nu'\
173
+ 'mber]=7","last":"/v1/endpoint?page[size]=10&page[number]=42"},"paginati'\
174
+ 'on":{"type":"Pagination","total_count":423,"page_count":42,"page_number'\
175
+ '":6,"page_size":10},"sort":{"type":"Sorting","fields":[{"field":"last_n'\
176
+ 'ame","order":"asc"}]}}'
177
+ )
178
+ received_body = JSON.parse(@response_catcher.response.raw_body)
179
+ assert(ComparisonHelper.match_body(expected_body, received_body))
180
+ end
181
+
182
+ # List all Contacts
183
+ def test_list_all_contacts
184
+ # Parameters for the API call
185
+ page = nil
186
+ order = nil
187
+ filter_by = nil
188
+ expand = nil
189
+ format = nil
190
+ typeahead = nil
191
+ fields = nil
192
+
193
+ # Perform the API call through the SDK function
194
+ result = @controller.list_all_contacts(page: page, order: order,
195
+ filter_by: filter_by, expand: expand,
196
+ format: format, typeahead: typeahead,
197
+ fields: fields)
198
+
199
+ # Test response code
200
+ assert_equal(200, @response_catcher.response.status_code)
201
+ # Test headers
202
+ expected_headers = {}
203
+ expected_headers['content-type'] = 'application/json; charset=utf-8'
204
+
205
+ assert(ComparisonHelper.match_headers(expected_headers, @response_catcher.response.headers))
206
+
207
+ # Test whether the captured response is as we expected
208
+ refute_nil(result)
209
+ expected_body = JSON.parse(
210
+ '{"type":"ContactsCollection","list":[{"location_id":"11e95f8ec39de8fbdb'\
211
+ '0a4f1a","account_number":"54545433332","contact_api_id":"137","first_na'\
212
+ 'me":"John","last_name":"Smith","cell_phone":"3339998822","balance":245.'\
213
+ '36,"address":{"city":"Novi","state":"Michigan","postal_code":"48375","c'\
214
+ 'ountry":"USA"},"company_name":"Fortis Payment Systems, LLC","header_mes'\
215
+ 'sage":"This is a sample message for you","date_of_birth":"2021-12-01","'\
216
+ 'email_trx_receipt":true,"home_phone":"3339998822","office_phone":"33399'\
217
+ '98822","office_phone_ext":"5","home_phone_country_code":"+1","office_ph'\
218
+ 'one_country_code":"+1","cell_phone_country_code":"+1","header_message_t'\
219
+ 'ype":0,"update_if_exists":1,"contact_c1":"any","contact_c2":"anything",'\
220
+ '"contact_c3":"something","parent_id":"11e95f8ec39de8fbdb0a4f1a","email"'\
221
+ ':"email@domain.com","token_import_id":"11e95f8ec39de8fbdb0a4f1a","id":"'\
222
+ '11e95f8ec39de8fbdb0a4f1a","created_ts":1422040992,"modified_ts":1422040'\
223
+ '992,"active":true,"created_user_id":"11e95f8ec39de8fbdb0a4f1a","receive'\
224
+ 'd_emails":[{"subject":"Payment Receipt - 12skiestech","body":"This emai'\
225
+ 'l is being sent from a server.","source_address":"\\"12skiestech A7t3qi'\
226
+ '\\" <noreply@zeamster.email>","return_path":"\\"12skiestech A7t3qi\\" <'\
227
+ 'noreply@zeamster.email>","provider_id":"0100017e67bcc530-e1dd23b4-8a39-'\
228
+ '4a5b-8d5d-68d51c4c942f-000000","domain_id":"11e95f8ec39de8fbdb0a4f1a","'\
229
+ 'reason_sent":"Contact Email","reason_model":"Transaction","reason_model'\
230
+ '_id":"11e95f8ec39de8fbdb0a4f1a","reply_to":"\\"Zeamster\\" <emma.p@zeam'\
231
+ 'ster.com>","id":"11e95f8ec39de8fbdb0a4f1a","created_ts":1422040992}],"i'\
232
+ 's_deletable":true,"location":{"id":"11e95f8ec39de8fbdb0a4f1a","created_'\
233
+ 'ts":1422040992,"modified_ts":1422040992,"account_number":"5454545454545'\
234
+ '454","address":{"city":"Novi","state":"MI","postal_code":"48375","count'\
235
+ 'ry":"US"},"branding_domain_id":"11e95f8ec39de8fbdb0a4f1a","contact_emai'\
236
+ 'l_trx_receipt_default":true,"default_ach":"11e608a7d515f1e093242bb2","d'\
237
+ 'efault_cc":"11e608a442a5f1e092242dda","email_reply_to":"email@domain.co'\
238
+ 'm","fax":"3339998822","location_api_id":"location-111111","location_api'\
239
+ '_key":"AE34BBCAADF4AE34BBCAADF4","location_c1":"custom 1","location_c2"'\
240
+ ':"custom 2","location_c3":"custom data 3","name":"Sample Company Headqu'\
241
+ 'arters","office_phone":"2481234567","office_ext_phone":"1021021209","tz'\
242
+ '":"America/New_York","parent_id":"11e95f8ec39de8fbdb0a4f1a","show_conta'\
243
+ 'ct_notes":true,"show_contact_files":true,"created_user_id":"11e95f8ec39'\
244
+ 'de8fbdb0a4f1a","location_type":"merchant","ticket_hash_key":"A5F443CADF'\
245
+ '4AE34BBCAADF4","additional_access":{}},"user":{"account_number":"545454'\
246
+ '5454545454","branding_domain_url":"{branding_domain_url}","cell_phone":'\
247
+ '"3339998822","company_name":"Fortis Payment Systems, LLC","contact_id":'\
248
+ '"11e95f8ec39de8fbdb0a4f1a","date_of_birth":"2021-12-01","domain_id":"11'\
249
+ 'e95f8ec39de8fbdb0a4f1a","email":"email@domain.com","email_trx_receipt":'\
250
+ 'true,"home_phone":"3339998822","first_name":"John","last_name":"Smith",'\
251
+ '"locale":"en-US","office_phone":"3339998822","office_ext_phone":"5","pr'\
252
+ 'imary_location_id":"11e95f8ec39de8fbdb0a4f1a","requires_new_password":n'\
253
+ 'ull,"terms_condition_code":"20220308","tz":"America/New_York","ui_prefs'\
254
+ '":{"entry_page":"dashboard","page_size":2,"report_export_type":"csv","p'\
255
+ 'rocess_method":"virtual_terminal","default_terminal":"11e95f8ec39de8fbd'\
256
+ 'b0a4f1a"},"username":"{user_name}","user_api_key":"234bas8dfn8238f923w2'\
257
+ '","user_hash_key":null,"user_type_code":100,"password":null,"zip":"4837'\
258
+ '5","location_id":"11e95f8ec39de8fbdb0a4f1a","status_code":1,"api_only":'\
259
+ 'false,"is_invitation":false,"address":{"city":"Novi","state":"MI","post'\
260
+ 'al_code":"48375","country":"US"},"id":"11e95f8ec39de8fbdb0a4f1a","statu'\
261
+ 's":true,"login_attempts":0,"last_login_ts":1422040992,"created_ts":1422'\
262
+ '040992,"modified_ts":1422040992,"created_user_id":"11e95f8ec39de8fbdb0a'\
263
+ '4f1a","terms_accepted_ts":1422040992,"terms_agree_ip":"192.168.0.10","c'\
264
+ 'urrent_date_time":"2019-03-11T10:38:26-0700","current_login":1422040992'\
265
+ ',"log_api_response_body_ts":1422040992},"recurrings":[{"account_vault_i'\
266
+ 'd":"11e95f8ec39de8fbdb0a4f1a","token_id":"11e95f8ec39de8fbdb0a4f1a","co'\
267
+ 'ntact_id":"11e95f8ec39de8fbdb0a4f1a","account_vault_api_id":"token1234a'\
268
+ 'bcd","token_api_id":"token1234abcd","_joi":{"conditions":{}},"active":t'\
269
+ 'rue,"description":"Description","end_date":"2021-12-01","installment_to'\
270
+ 'tal_count":20,"interval":1,"interval_type":"d","location_id":"11e95f8ec'\
271
+ '39de8fbdb0a4f1a","notification_days":2,"payment_method":"cc","product_t'\
272
+ 'ransaction_id":"11e95f8ec39de8fbdb0a4f1a","recurring_id":"11e95f8ec39de'\
273
+ '8fbdb0a4f1a","recurring_api_id":"recurring1234abcd","start_date":"2021-'\
274
+ '12-01","status":"active","transaction_amount":300,"terms_agree":true,"t'\
275
+ 'erms_agree_ip":"192.168.0.10","recurring_c1":"recurring custom data 1",'\
276
+ '"recurring_c2":"recurring custom data 2","recurring_c3":"recurring cust'\
277
+ 'om data 3","send_to_proc_as_recur":true,"tags":["Walk-in Customer"],"se'\
278
+ 'condary_amount":100,"currency":"USD","id":"11e95f8ec39de8fbdb0a4f1a","n'\
279
+ 'ext_run_date":"2021-12-01","created_ts":1422040992,"modified_ts":142204'\
280
+ '0992,"recurring_type_id":"i","installment_amount_total":99999999,"creat'\
281
+ 'ed_user_id":"11e95f8ec39de8fbdb0a4f1a"}],"email_blacklist":{"id":"11e95'\
282
+ 'f8ec39de8fbdb0a4f1a","isBlacklisted":true,"detail":true,"created_ts":14'\
283
+ '22040992},"sms_blacklist":{"id":"11e95f8ec39de8fbdb0a4f1a","isBlacklist'\
284
+ 'ed":true,"detail":true,"created_ts":1422040992},"changelogs":[{"id":"11'\
285
+ 'e95f8ec39de8fbdb0a4f1a","created_ts":1422040992,"action":"CREATE","mode'\
286
+ 'l":"TransactionRequest","model_id":"11ec829598f0d4008be9aba4","user_id"'\
287
+ ':"11e95f8ec39de8fbdb0a4f1a","changelog_details":[{"id":"11e95f8ec39de8f'\
288
+ 'bdb0a4f1a","changelog_id":"11e95f8ec39de8fbdb0a4f1a","field":"next_run_'\
289
+ 'ts","old_value":"1643616000"}],"user":{"id":"11e95f8ec39de8fbdb0a4f1a",'\
290
+ '"username":"email@domain.com","first_name":"Bob","last_name":"Fairview"'\
291
+ '}}],"postback_logs":[{"id":"11e95f8ec39de8fbdb0a4f1a","postback_config_'\
292
+ 'id":"11e95f8ec39de8fbdb0a4f1a","changelog_id":"11e95f8ec39de8fbdb0a4f1a'\
293
+ '","next_run_ts":1422040992,"created_ts":1422040992,"model_id":"11e95f8e'\
294
+ 'c39de8fbdb0a4f1a"}],"created_user":{"account_number":"5454545454545454"'\
295
+ ',"branding_domain_url":"{branding_domain_url}","cell_phone":"3339998822'\
296
+ '","company_name":"Fortis Payment Systems, LLC","contact_id":"11e95f8ec3'\
297
+ '9de8fbdb0a4f1a","date_of_birth":"2021-12-01","domain_id":"11e95f8ec39de'\
298
+ '8fbdb0a4f1a","email":"email@domain.com","email_trx_receipt":true,"home_'\
299
+ 'phone":"3339998822","first_name":"John","last_name":"Smith","locale":"e'\
300
+ 'n-US","office_phone":"3339998822","office_ext_phone":"5","primary_locat'\
301
+ 'ion_id":"11e95f8ec39de8fbdb0a4f1a","requires_new_password":null,"terms_'\
302
+ 'condition_code":"20220308","tz":"America/New_York","ui_prefs":{"entry_p'\
303
+ 'age":"dashboard","page_size":2,"report_export_type":"csv","process_meth'\
304
+ 'od":"virtual_terminal","default_terminal":"11e95f8ec39de8fbdb0a4f1a"},"'\
305
+ 'username":"{user_name}","user_api_key":"234bas8dfn8238f923w2","user_has'\
306
+ 'h_key":null,"user_type_code":100,"password":null,"zip":"48375","locatio'\
307
+ 'n_id":"11e95f8ec39de8fbdb0a4f1a","status_code":1,"api_only":false,"is_i'\
308
+ 'nvitation":false,"address":{"city":"Novi","state":"MI","postal_code":"4'\
309
+ '8375","country":"US"},"id":"11e95f8ec39de8fbdb0a4f1a","status":true,"lo'\
310
+ 'gin_attempts":0,"last_login_ts":1422040992,"created_ts":1422040992,"mod'\
311
+ 'ified_ts":1422040992,"created_user_id":"11e95f8ec39de8fbdb0a4f1a","term'\
312
+ 's_accepted_ts":1422040992,"terms_agree_ip":"192.168.0.10","current_date'\
313
+ '_time":"2019-03-11T10:38:26-0700","current_login":1422040992,"log_api_r'\
314
+ 'esponse_body_ts":1422040992},"parent":{"location_id":"11e95f8ec39de8fbd'\
315
+ 'b0a4f1a","account_number":"54545433332","contact_api_id":"137","first_n'\
316
+ 'ame":"John","last_name":"Smith","cell_phone":"3339998822","balance":245'\
317
+ '.36,"address":{"city":"Novi","state":"Michigan","postal_code":"48375","'\
318
+ 'country":"USA"},"company_name":"Fortis Payment Systems, LLC","header_me'\
319
+ 'ssage":"This is a sample message for you","date_of_birth":"2021-12-01",'\
320
+ '"email_trx_receipt":true,"home_phone":"3339998822","office_phone":"3339'\
321
+ '998822","office_phone_ext":"5","home_phone_country_code":"+1","office_p'\
322
+ 'hone_country_code":"+1","cell_phone_country_code":"+1","header_message_'\
323
+ 'type":0,"update_if_exists":1,"contact_c1":"any","contact_c2":"anything"'\
324
+ ',"contact_c3":"something","parent_id":"11e95f8ec39de8fbdb0a4f1a","email'\
325
+ '":"email@domain.com","token_import_id":"11e95f8ec39de8fbdb0a4f1a","id":'\
326
+ '"11e95f8ec39de8fbdb0a4f1a","created_ts":1422040992,"modified_ts":142204'\
327
+ '0992,"active":true,"created_user_id":"11e95f8ec39de8fbdb0a4f1a"},"child'\
328
+ 'ren":{"location_id":"11e95f8ec39de8fbdb0a4f1a","account_number":"545454'\
329
+ '33332","contact_api_id":"137","first_name":"John","last_name":"Smith","'\
330
+ 'cell_phone":"3339998822","balance":245.36,"address":{"city":"Novi","sta'\
331
+ 'te":"Michigan","postal_code":"48375","country":"USA"},"company_name":"F'\
332
+ 'ortis Payment Systems, LLC","header_message":"This is a sample message '\
333
+ 'for you","date_of_birth":"2021-12-01","email_trx_receipt":true,"home_ph'\
334
+ 'one":"3339998822","office_phone":"3339998822","office_phone_ext":"5","h'\
335
+ 'ome_phone_country_code":"+1","office_phone_country_code":"+1","cell_pho'\
336
+ 'ne_country_code":"+1","header_message_type":0,"update_if_exists":1,"con'\
337
+ 'tact_c1":"any","contact_c2":"anything","contact_c3":"something","parent'\
338
+ '_id":"11e95f8ec39de8fbdb0a4f1a","email":"email@domain.com","token_impor'\
339
+ 't_id":"11e95f8ec39de8fbdb0a4f1a","id":"11e95f8ec39de8fbdb0a4f1a","creat'\
340
+ 'ed_ts":1422040992,"modified_ts":1422040992,"active":true,"created_user_'\
341
+ 'id":"11e95f8ec39de8fbdb0a4f1a"}}],"links":{"type":"Links","first":"/v1/'\
342
+ 'endpoint?page[size]=10&page[number]=1","previous":"/v1/endpoint?page[si'\
343
+ 'ze]=10&page[number]=5","next":"/v1/endpoint?page[size]=10&page[number]='\
344
+ '7","last":"/v1/endpoint?page[size]=10&page[number]=42"},"pagination":{"'\
345
+ 'type":"Pagination","total_count":423,"page_count":42,"page_number":6,"p'\
346
+ 'age_size":10},"sort":{"type":"Sorting","fields":[{"field":"last_name","'\
347
+ 'order":"asc"}]}}'
348
+ )
349
+ received_body = JSON.parse(@response_catcher.response.raw_body)
350
+ assert(ComparisonHelper.match_body(expected_body, received_body))
351
+ end
352
+
353
+ # Delete Contact
354
+ def test_delete_contact
355
+ # Parameters for the API call
356
+ contact_id = '11e95f8ec39de8fbdb0a4f1a'
357
+
358
+ # Perform the API call through the SDK function
359
+ result = @controller.delete_contact(contact_id)
360
+
361
+ # Test response code
362
+ assert_equal(204, @response_catcher.response.status_code)
363
+ # Test headers
364
+ expected_headers = {}
365
+ expected_headers['content-type'] = 'application/json; charset=utf-8'
366
+
367
+ assert(ComparisonHelper.match_headers(expected_headers, @response_catcher.response.headers))
368
+
369
+ # Test whether the captured response is as we expected
370
+ refute_nil(result)
371
+ expected_body = JSON.parse(
372
+ '{"type":"Contact","data":{"location_id":"11e95f8ec39de8fbdb0a4f1a","acc'\
373
+ 'ount_number":"54545433332","contact_api_id":"137","first_name":"John","'\
374
+ 'last_name":"Smith","cell_phone":"3339998822","balance":245.36,"address"'\
375
+ ':{"city":"Novi","state":"Michigan","postal_code":"48375","country":"USA'\
376
+ '"},"company_name":"Fortis Payment Systems, LLC","header_message":"This '\
377
+ 'is a sample message for you","date_of_birth":"2021-12-01","email_trx_re'\
378
+ 'ceipt":true,"home_phone":"3339998822","office_phone":"3339998822","offi'\
379
+ 'ce_phone_ext":"5","home_phone_country_code":"+1","office_phone_country_'\
380
+ 'code":"+1","cell_phone_country_code":"+1","header_message_type":0,"upda'\
381
+ 'te_if_exists":1,"contact_c1":"any","contact_c2":"anything","contact_c3"'\
382
+ ':"something","parent_id":"11e95f8ec39de8fbdb0a4f1a","email":"email@doma'\
383
+ 'in.com","token_import_id":"11e95f8ec39de8fbdb0a4f1a","id":"11e95f8ec39d'\
384
+ 'e8fbdb0a4f1a","created_ts":1422040992,"modified_ts":1422040992,"active"'\
385
+ ':true,"created_user_id":"11e95f8ec39de8fbdb0a4f1a","received_emails":[{'\
386
+ '"subject":"Payment Receipt - 12skiestech","body":"This email is being s'\
387
+ 'ent from a server.","source_address":"\\"12skiestech A7t3qi\\" <noreply'\
388
+ '@zeamster.email>","return_path":"\\"12skiestech A7t3qi\\" <noreply@zeam'\
389
+ 'ster.email>","provider_id":"0100017e67bcc530-e1dd23b4-8a39-4a5b-8d5d-68'\
390
+ 'd51c4c942f-000000","domain_id":"11e95f8ec39de8fbdb0a4f1a","reason_sent"'\
391
+ ':"Contact Email","reason_model":"Transaction","reason_model_id":"11e95f'\
392
+ '8ec39de8fbdb0a4f1a","reply_to":"\\"Zeamster\\" <emma.p@zeamster.com>","'\
393
+ 'id":"11e95f8ec39de8fbdb0a4f1a","created_ts":1422040992}],"is_deletable"'\
394
+ ':true,"location":{"id":"11e95f8ec39de8fbdb0a4f1a","created_ts":14220409'\
395
+ '92,"modified_ts":1422040992,"account_number":"5454545454545454","addres'\
396
+ 's":{"city":"Novi","state":"MI","postal_code":"48375","country":"US"},"b'\
397
+ 'randing_domain_id":"11e95f8ec39de8fbdb0a4f1a","contact_email_trx_receip'\
398
+ 't_default":true,"default_ach":"11e608a7d515f1e093242bb2","default_cc":"'\
399
+ '11e608a442a5f1e092242dda","email_reply_to":"email@domain.com","fax":"33'\
400
+ '39998822","location_api_id":"location-111111","location_api_key":"AE34B'\
401
+ 'BCAADF4AE34BBCAADF4","location_c1":"custom 1","location_c2":"custom 2",'\
402
+ '"location_c3":"custom data 3","name":"Sample Company Headquarters","off'\
403
+ 'ice_phone":"2481234567","office_ext_phone":"1021021209","tz":"America/N'\
404
+ 'ew_York","parent_id":"11e95f8ec39de8fbdb0a4f1a","show_contact_notes":tr'\
405
+ 'ue,"show_contact_files":true,"created_user_id":"11e95f8ec39de8fbdb0a4f1'\
406
+ 'a","location_type":"merchant","ticket_hash_key":"A5F443CADF4AE34BBCAADF'\
407
+ '4","additional_access":{}},"user":{"account_number":"5454545454545454",'\
408
+ '"branding_domain_url":"{branding_domain_url}","cell_phone":"3339998822"'\
409
+ ',"company_name":"Fortis Payment Systems, LLC","contact_id":"11e95f8ec39'\
410
+ 'de8fbdb0a4f1a","date_of_birth":"2021-12-01","domain_id":"11e95f8ec39de8'\
411
+ 'fbdb0a4f1a","email":"email@domain.com","email_trx_receipt":true,"home_p'\
412
+ 'hone":"3339998822","first_name":"John","last_name":"Smith","locale":"en'\
413
+ '-US","office_phone":"3339998822","office_ext_phone":"5","primary_locati'\
414
+ 'on_id":"11e95f8ec39de8fbdb0a4f1a","requires_new_password":null,"terms_c'\
415
+ 'ondition_code":"20220308","tz":"America/New_York","ui_prefs":{"entry_pa'\
416
+ 'ge":"dashboard","page_size":2,"report_export_type":"csv","process_metho'\
417
+ 'd":"virtual_terminal","default_terminal":"11e95f8ec39de8fbdb0a4f1a"},"u'\
418
+ 'sername":"{user_name}","user_api_key":"234bas8dfn8238f923w2","user_hash'\
419
+ '_key":null,"user_type_code":100,"password":null,"zip":"48375","location'\
420
+ '_id":"11e95f8ec39de8fbdb0a4f1a","status_code":1,"api_only":false,"is_in'\
421
+ 'vitation":false,"address":{"city":"Novi","state":"MI","postal_code":"48'\
422
+ '375","country":"US"},"id":"11e95f8ec39de8fbdb0a4f1a","status":true,"log'\
423
+ 'in_attempts":0,"last_login_ts":1422040992,"created_ts":1422040992,"modi'\
424
+ 'fied_ts":1422040992,"created_user_id":"11e95f8ec39de8fbdb0a4f1a","terms'\
425
+ '_accepted_ts":1422040992,"terms_agree_ip":"192.168.0.10","current_date_'\
426
+ 'time":"2019-03-11T10:38:26-0700","current_login":1422040992,"log_api_re'\
427
+ 'sponse_body_ts":1422040992},"recurrings":[{"account_vault_id":"11e95f8e'\
428
+ 'c39de8fbdb0a4f1a","token_id":"11e95f8ec39de8fbdb0a4f1a","contact_id":"1'\
429
+ '1e95f8ec39de8fbdb0a4f1a","account_vault_api_id":"token1234abcd","token_'\
430
+ 'api_id":"token1234abcd","_joi":{"conditions":{}},"active":true,"descrip'\
431
+ 'tion":"Description","end_date":"2021-12-01","installment_total_count":2'\
432
+ '0,"interval":1,"interval_type":"d","location_id":"11e95f8ec39de8fbdb0a4'\
433
+ 'f1a","notification_days":2,"payment_method":"cc","product_transaction_i'\
434
+ 'd":"11e95f8ec39de8fbdb0a4f1a","recurring_id":"11e95f8ec39de8fbdb0a4f1a"'\
435
+ ',"recurring_api_id":"recurring1234abcd","start_date":"2021-12-01","stat'\
436
+ 'us":"active","transaction_amount":300,"terms_agree":true,"terms_agree_i'\
437
+ 'p":"192.168.0.10","recurring_c1":"recurring custom data 1","recurring_c'\
438
+ '2":"recurring custom data 2","recurring_c3":"recurring custom data 3","'\
439
+ 'send_to_proc_as_recur":true,"tags":["Walk-in Customer"],"secondary_amou'\
440
+ 'nt":100,"currency":"USD","id":"11e95f8ec39de8fbdb0a4f1a","next_run_date'\
441
+ '":"2021-12-01","created_ts":1422040992,"modified_ts":1422040992,"recurr'\
442
+ 'ing_type_id":"i","installment_amount_total":99999999,"created_user_id":'\
443
+ '"11e95f8ec39de8fbdb0a4f1a"}],"email_blacklist":{"id":"11e95f8ec39de8fbd'\
444
+ 'b0a4f1a","isBlacklisted":true,"detail":true,"created_ts":1422040992},"s'\
445
+ 'ms_blacklist":{"id":"11e95f8ec39de8fbdb0a4f1a","isBlacklisted":true,"de'\
446
+ 'tail":true,"created_ts":1422040992},"changelogs":[{"id":"11e95f8ec39de8'\
447
+ 'fbdb0a4f1a","created_ts":1422040992,"action":"CREATE","model":"Transact'\
448
+ 'ionRequest","model_id":"11ec829598f0d4008be9aba4","user_id":"11e95f8ec3'\
449
+ '9de8fbdb0a4f1a","changelog_details":[{"id":"11e95f8ec39de8fbdb0a4f1a","'\
450
+ 'changelog_id":"11e95f8ec39de8fbdb0a4f1a","field":"next_run_ts","old_val'\
451
+ 'ue":"1643616000"}],"user":{"id":"11e95f8ec39de8fbdb0a4f1a","username":"'\
452
+ 'email@domain.com","first_name":"Bob","last_name":"Fairview"}}],"postbac'\
453
+ 'k_logs":[{"id":"11e95f8ec39de8fbdb0a4f1a","postback_config_id":"11e95f8'\
454
+ 'ec39de8fbdb0a4f1a","changelog_id":"11e95f8ec39de8fbdb0a4f1a","next_run_'\
455
+ 'ts":1422040992,"created_ts":1422040992,"model_id":"11e95f8ec39de8fbdb0a'\
456
+ '4f1a"}],"created_user":{"account_number":"5454545454545454","branding_d'\
457
+ 'omain_url":"{branding_domain_url}","cell_phone":"3339998822","company_n'\
458
+ 'ame":"Fortis Payment Systems, LLC","contact_id":"11e95f8ec39de8fbdb0a4f'\
459
+ '1a","date_of_birth":"2021-12-01","domain_id":"11e95f8ec39de8fbdb0a4f1a"'\
460
+ ',"email":"email@domain.com","email_trx_receipt":true,"home_phone":"3339'\
461
+ '998822","first_name":"John","last_name":"Smith","locale":"en-US","offic'\
462
+ 'e_phone":"3339998822","office_ext_phone":"5","primary_location_id":"11e'\
463
+ '95f8ec39de8fbdb0a4f1a","requires_new_password":null,"terms_condition_co'\
464
+ 'de":"20220308","tz":"America/New_York","ui_prefs":{"entry_page":"dashbo'\
465
+ 'ard","page_size":2,"report_export_type":"csv","process_method":"virtual'\
466
+ '_terminal","default_terminal":"11e95f8ec39de8fbdb0a4f1a"},"username":"{'\
467
+ 'user_name}","user_api_key":"234bas8dfn8238f923w2","user_hash_key":null,'\
468
+ '"user_type_code":100,"password":null,"zip":"48375","location_id":"11e95'\
469
+ 'f8ec39de8fbdb0a4f1a","status_code":1,"api_only":false,"is_invitation":f'\
470
+ 'alse,"address":{"city":"Novi","state":"MI","postal_code":"48375","count'\
471
+ 'ry":"US"},"id":"11e95f8ec39de8fbdb0a4f1a","status":true,"login_attempts'\
472
+ '":0,"last_login_ts":1422040992,"created_ts":1422040992,"modified_ts":14'\
473
+ '22040992,"created_user_id":"11e95f8ec39de8fbdb0a4f1a","terms_accepted_t'\
474
+ 's":1422040992,"terms_agree_ip":"192.168.0.10","current_date_time":"2019'\
475
+ '-03-11T10:38:26-0700","current_login":1422040992,"log_api_response_body'\
476
+ '_ts":1422040992},"parent":{"location_id":"11e95f8ec39de8fbdb0a4f1a","ac'\
477
+ 'count_number":"54545433332","contact_api_id":"137","first_name":"John",'\
478
+ '"last_name":"Smith","cell_phone":"3339998822","balance":245.36,"address'\
479
+ '":{"city":"Novi","state":"Michigan","postal_code":"48375","country":"US'\
480
+ 'A"},"company_name":"Fortis Payment Systems, LLC","header_message":"This'\
481
+ ' is a sample message for you","date_of_birth":"2021-12-01","email_trx_r'\
482
+ 'eceipt":true,"home_phone":"3339998822","office_phone":"3339998822","off'\
483
+ 'ice_phone_ext":"5","home_phone_country_code":"+1","office_phone_country'\
484
+ '_code":"+1","cell_phone_country_code":"+1","header_message_type":0,"upd'\
485
+ 'ate_if_exists":1,"contact_c1":"any","contact_c2":"anything","contact_c3'\
486
+ '":"something","parent_id":"11e95f8ec39de8fbdb0a4f1a","email":"email@dom'\
487
+ 'ain.com","token_import_id":"11e95f8ec39de8fbdb0a4f1a","id":"11e95f8ec39'\
488
+ 'de8fbdb0a4f1a","created_ts":1422040992,"modified_ts":1422040992,"active'\
489
+ '":true,"created_user_id":"11e95f8ec39de8fbdb0a4f1a"},"children":{"locat'\
490
+ 'ion_id":"11e95f8ec39de8fbdb0a4f1a","account_number":"54545433332","cont'\
491
+ 'act_api_id":"137","first_name":"John","last_name":"Smith","cell_phone":'\
492
+ '"3339998822","balance":245.36,"address":{"city":"Novi","state":"Michiga'\
493
+ 'n","postal_code":"48375","country":"USA"},"company_name":"Fortis Paymen'\
494
+ 't Systems, LLC","header_message":"This is a sample message for you","da'\
495
+ 'te_of_birth":"2021-12-01","email_trx_receipt":true,"home_phone":"333999'\
496
+ '8822","office_phone":"3339998822","office_phone_ext":"5","home_phone_co'\
497
+ 'untry_code":"+1","office_phone_country_code":"+1","cell_phone_country_c'\
498
+ 'ode":"+1","header_message_type":0,"update_if_exists":1,"contact_c1":"an'\
499
+ 'y","contact_c2":"anything","contact_c3":"something","parent_id":"11e95f'\
500
+ '8ec39de8fbdb0a4f1a","email":"email@domain.com","token_import_id":"11e95'\
501
+ 'f8ec39de8fbdb0a4f1a","id":"11e95f8ec39de8fbdb0a4f1a","created_ts":14220'\
502
+ '40992,"modified_ts":1422040992,"active":true,"created_user_id":"11e95f8'\
503
+ 'ec39de8fbdb0a4f1a"}}}'
504
+ )
505
+ received_body = JSON.parse(@response_catcher.response.raw_body)
506
+ assert(ComparisonHelper.match_body(expected_body, received_body))
507
+ end
508
+
509
+ # View Single Contact
510
+ def test_view_single_contact
511
+ # Parameters for the API call
512
+ contact_id = '11e95f8ec39de8fbdb0a4f1a'
513
+ expand = nil
514
+ fields = nil
515
+
516
+ # Perform the API call through the SDK function
517
+ result = @controller.view_single_contact(contact_id, expand: expand,
518
+ fields: fields)
519
+
520
+ # Test response code
521
+ assert_equal(200, @response_catcher.response.status_code)
522
+ # Test headers
523
+ expected_headers = {}
524
+ expected_headers['content-type'] = 'application/json; charset=utf-8'
525
+
526
+ assert(ComparisonHelper.match_headers(expected_headers, @response_catcher.response.headers))
527
+
528
+ # Test whether the captured response is as we expected
529
+ refute_nil(result)
530
+ expected_body = JSON.parse(
531
+ '{"type":"Contact","data":{"location_id":"11e95f8ec39de8fbdb0a4f1a","acc'\
532
+ 'ount_number":"54545433332","contact_api_id":"137","first_name":"John","'\
533
+ 'last_name":"Smith","cell_phone":"3339998822","balance":245.36,"address"'\
534
+ ':{"city":"Novi","state":"Michigan","postal_code":"48375","country":"USA'\
535
+ '"},"company_name":"Fortis Payment Systems, LLC","header_message":"This '\
536
+ 'is a sample message for you","date_of_birth":"2021-12-01","email_trx_re'\
537
+ 'ceipt":true,"home_phone":"3339998822","office_phone":"3339998822","offi'\
538
+ 'ce_phone_ext":"5","home_phone_country_code":"+1","office_phone_country_'\
539
+ 'code":"+1","cell_phone_country_code":"+1","header_message_type":0,"upda'\
540
+ 'te_if_exists":1,"contact_c1":"any","contact_c2":"anything","contact_c3"'\
541
+ ':"something","parent_id":"11e95f8ec39de8fbdb0a4f1a","email":"email@doma'\
542
+ 'in.com","token_import_id":"11e95f8ec39de8fbdb0a4f1a","id":"11e95f8ec39d'\
543
+ 'e8fbdb0a4f1a","created_ts":1422040992,"modified_ts":1422040992,"active"'\
544
+ ':true,"created_user_id":"11e95f8ec39de8fbdb0a4f1a","received_emails":[{'\
545
+ '"subject":"Payment Receipt - 12skiestech","body":"This email is being s'\
546
+ 'ent from a server.","source_address":"\\"12skiestech A7t3qi\\" <noreply'\
547
+ '@zeamster.email>","return_path":"\\"12skiestech A7t3qi\\" <noreply@zeam'\
548
+ 'ster.email>","provider_id":"0100017e67bcc530-e1dd23b4-8a39-4a5b-8d5d-68'\
549
+ 'd51c4c942f-000000","domain_id":"11e95f8ec39de8fbdb0a4f1a","reason_sent"'\
550
+ ':"Contact Email","reason_model":"Transaction","reason_model_id":"11e95f'\
551
+ '8ec39de8fbdb0a4f1a","reply_to":"\\"Zeamster\\" <emma.p@zeamster.com>","'\
552
+ 'id":"11e95f8ec39de8fbdb0a4f1a","created_ts":1422040992}],"is_deletable"'\
553
+ ':true,"location":{"id":"11e95f8ec39de8fbdb0a4f1a","created_ts":14220409'\
554
+ '92,"modified_ts":1422040992,"account_number":"5454545454545454","addres'\
555
+ 's":{"city":"Novi","state":"MI","postal_code":"48375","country":"US"},"b'\
556
+ 'randing_domain_id":"11e95f8ec39de8fbdb0a4f1a","contact_email_trx_receip'\
557
+ 't_default":true,"default_ach":"11e608a7d515f1e093242bb2","default_cc":"'\
558
+ '11e608a442a5f1e092242dda","email_reply_to":"email@domain.com","fax":"33'\
559
+ '39998822","location_api_id":"location-111111","location_api_key":"AE34B'\
560
+ 'BCAADF4AE34BBCAADF4","location_c1":"custom 1","location_c2":"custom 2",'\
561
+ '"location_c3":"custom data 3","name":"Sample Company Headquarters","off'\
562
+ 'ice_phone":"2481234567","office_ext_phone":"1021021209","tz":"America/N'\
563
+ 'ew_York","parent_id":"11e95f8ec39de8fbdb0a4f1a","show_contact_notes":tr'\
564
+ 'ue,"show_contact_files":true,"created_user_id":"11e95f8ec39de8fbdb0a4f1'\
565
+ 'a","location_type":"merchant","ticket_hash_key":"A5F443CADF4AE34BBCAADF'\
566
+ '4","additional_access":{}},"user":{"account_number":"5454545454545454",'\
567
+ '"branding_domain_url":"{branding_domain_url}","cell_phone":"3339998822"'\
568
+ ',"company_name":"Fortis Payment Systems, LLC","contact_id":"11e95f8ec39'\
569
+ 'de8fbdb0a4f1a","date_of_birth":"2021-12-01","domain_id":"11e95f8ec39de8'\
570
+ 'fbdb0a4f1a","email":"email@domain.com","email_trx_receipt":true,"home_p'\
571
+ 'hone":"3339998822","first_name":"John","last_name":"Smith","locale":"en'\
572
+ '-US","office_phone":"3339998822","office_ext_phone":"5","primary_locati'\
573
+ 'on_id":"11e95f8ec39de8fbdb0a4f1a","requires_new_password":null,"terms_c'\
574
+ 'ondition_code":"20220308","tz":"America/New_York","ui_prefs":{"entry_pa'\
575
+ 'ge":"dashboard","page_size":2,"report_export_type":"csv","process_metho'\
576
+ 'd":"virtual_terminal","default_terminal":"11e95f8ec39de8fbdb0a4f1a"},"u'\
577
+ 'sername":"{user_name}","user_api_key":"234bas8dfn8238f923w2","user_hash'\
578
+ '_key":null,"user_type_code":100,"password":null,"zip":"48375","location'\
579
+ '_id":"11e95f8ec39de8fbdb0a4f1a","status_code":1,"api_only":false,"is_in'\
580
+ 'vitation":false,"address":{"city":"Novi","state":"MI","postal_code":"48'\
581
+ '375","country":"US"},"id":"11e95f8ec39de8fbdb0a4f1a","status":true,"log'\
582
+ 'in_attempts":0,"last_login_ts":1422040992,"created_ts":1422040992,"modi'\
583
+ 'fied_ts":1422040992,"created_user_id":"11e95f8ec39de8fbdb0a4f1a","terms'\
584
+ '_accepted_ts":1422040992,"terms_agree_ip":"192.168.0.10","current_date_'\
585
+ 'time":"2019-03-11T10:38:26-0700","current_login":1422040992,"log_api_re'\
586
+ 'sponse_body_ts":1422040992},"recurrings":[{"account_vault_id":"11e95f8e'\
587
+ 'c39de8fbdb0a4f1a","token_id":"11e95f8ec39de8fbdb0a4f1a","contact_id":"1'\
588
+ '1e95f8ec39de8fbdb0a4f1a","account_vault_api_id":"token1234abcd","token_'\
589
+ 'api_id":"token1234abcd","_joi":{"conditions":{}},"active":true,"descrip'\
590
+ 'tion":"Description","end_date":"2021-12-01","installment_total_count":2'\
591
+ '0,"interval":1,"interval_type":"d","location_id":"11e95f8ec39de8fbdb0a4'\
592
+ 'f1a","notification_days":2,"payment_method":"cc","product_transaction_i'\
593
+ 'd":"11e95f8ec39de8fbdb0a4f1a","recurring_id":"11e95f8ec39de8fbdb0a4f1a"'\
594
+ ',"recurring_api_id":"recurring1234abcd","start_date":"2021-12-01","stat'\
595
+ 'us":"active","transaction_amount":300,"terms_agree":true,"terms_agree_i'\
596
+ 'p":"192.168.0.10","recurring_c1":"recurring custom data 1","recurring_c'\
597
+ '2":"recurring custom data 2","recurring_c3":"recurring custom data 3","'\
598
+ 'send_to_proc_as_recur":true,"tags":["Walk-in Customer"],"secondary_amou'\
599
+ 'nt":100,"currency":"USD","id":"11e95f8ec39de8fbdb0a4f1a","next_run_date'\
600
+ '":"2021-12-01","created_ts":1422040992,"modified_ts":1422040992,"recurr'\
601
+ 'ing_type_id":"i","installment_amount_total":99999999,"created_user_id":'\
602
+ '"11e95f8ec39de8fbdb0a4f1a"}],"email_blacklist":{"id":"11e95f8ec39de8fbd'\
603
+ 'b0a4f1a","isBlacklisted":true,"detail":true,"created_ts":1422040992},"s'\
604
+ 'ms_blacklist":{"id":"11e95f8ec39de8fbdb0a4f1a","isBlacklisted":true,"de'\
605
+ 'tail":true,"created_ts":1422040992},"changelogs":[{"id":"11e95f8ec39de8'\
606
+ 'fbdb0a4f1a","created_ts":1422040992,"action":"CREATE","model":"Transact'\
607
+ 'ionRequest","model_id":"11ec829598f0d4008be9aba4","user_id":"11e95f8ec3'\
608
+ '9de8fbdb0a4f1a","changelog_details":[{"id":"11e95f8ec39de8fbdb0a4f1a","'\
609
+ 'changelog_id":"11e95f8ec39de8fbdb0a4f1a","field":"next_run_ts","old_val'\
610
+ 'ue":"1643616000"}],"user":{"id":"11e95f8ec39de8fbdb0a4f1a","username":"'\
611
+ 'email@domain.com","first_name":"Bob","last_name":"Fairview"}}],"postbac'\
612
+ 'k_logs":[{"id":"11e95f8ec39de8fbdb0a4f1a","postback_config_id":"11e95f8'\
613
+ 'ec39de8fbdb0a4f1a","changelog_id":"11e95f8ec39de8fbdb0a4f1a","next_run_'\
614
+ 'ts":1422040992,"created_ts":1422040992,"model_id":"11e95f8ec39de8fbdb0a'\
615
+ '4f1a"}],"created_user":{"account_number":"5454545454545454","branding_d'\
616
+ 'omain_url":"{branding_domain_url}","cell_phone":"3339998822","company_n'\
617
+ 'ame":"Fortis Payment Systems, LLC","contact_id":"11e95f8ec39de8fbdb0a4f'\
618
+ '1a","date_of_birth":"2021-12-01","domain_id":"11e95f8ec39de8fbdb0a4f1a"'\
619
+ ',"email":"email@domain.com","email_trx_receipt":true,"home_phone":"3339'\
620
+ '998822","first_name":"John","last_name":"Smith","locale":"en-US","offic'\
621
+ 'e_phone":"3339998822","office_ext_phone":"5","primary_location_id":"11e'\
622
+ '95f8ec39de8fbdb0a4f1a","requires_new_password":null,"terms_condition_co'\
623
+ 'de":"20220308","tz":"America/New_York","ui_prefs":{"entry_page":"dashbo'\
624
+ 'ard","page_size":2,"report_export_type":"csv","process_method":"virtual'\
625
+ '_terminal","default_terminal":"11e95f8ec39de8fbdb0a4f1a"},"username":"{'\
626
+ 'user_name}","user_api_key":"234bas8dfn8238f923w2","user_hash_key":null,'\
627
+ '"user_type_code":100,"password":null,"zip":"48375","location_id":"11e95'\
628
+ 'f8ec39de8fbdb0a4f1a","status_code":1,"api_only":false,"is_invitation":f'\
629
+ 'alse,"address":{"city":"Novi","state":"MI","postal_code":"48375","count'\
630
+ 'ry":"US"},"id":"11e95f8ec39de8fbdb0a4f1a","status":true,"login_attempts'\
631
+ '":0,"last_login_ts":1422040992,"created_ts":1422040992,"modified_ts":14'\
632
+ '22040992,"created_user_id":"11e95f8ec39de8fbdb0a4f1a","terms_accepted_t'\
633
+ 's":1422040992,"terms_agree_ip":"192.168.0.10","current_date_time":"2019'\
634
+ '-03-11T10:38:26-0700","current_login":1422040992,"log_api_response_body'\
635
+ '_ts":1422040992},"parent":{"location_id":"11e95f8ec39de8fbdb0a4f1a","ac'\
636
+ 'count_number":"54545433332","contact_api_id":"137","first_name":"John",'\
637
+ '"last_name":"Smith","cell_phone":"3339998822","balance":245.36,"address'\
638
+ '":{"city":"Novi","state":"Michigan","postal_code":"48375","country":"US'\
639
+ 'A"},"company_name":"Fortis Payment Systems, LLC","header_message":"This'\
640
+ ' is a sample message for you","date_of_birth":"2021-12-01","email_trx_r'\
641
+ 'eceipt":true,"home_phone":"3339998822","office_phone":"3339998822","off'\
642
+ 'ice_phone_ext":"5","home_phone_country_code":"+1","office_phone_country'\
643
+ '_code":"+1","cell_phone_country_code":"+1","header_message_type":0,"upd'\
644
+ 'ate_if_exists":1,"contact_c1":"any","contact_c2":"anything","contact_c3'\
645
+ '":"something","parent_id":"11e95f8ec39de8fbdb0a4f1a","email":"email@dom'\
646
+ 'ain.com","token_import_id":"11e95f8ec39de8fbdb0a4f1a","id":"11e95f8ec39'\
647
+ 'de8fbdb0a4f1a","created_ts":1422040992,"modified_ts":1422040992,"active'\
648
+ '":true,"created_user_id":"11e95f8ec39de8fbdb0a4f1a"},"children":{"locat'\
649
+ 'ion_id":"11e95f8ec39de8fbdb0a4f1a","account_number":"54545433332","cont'\
650
+ 'act_api_id":"137","first_name":"John","last_name":"Smith","cell_phone":'\
651
+ '"3339998822","balance":245.36,"address":{"city":"Novi","state":"Michiga'\
652
+ 'n","postal_code":"48375","country":"USA"},"company_name":"Fortis Paymen'\
653
+ 't Systems, LLC","header_message":"This is a sample message for you","da'\
654
+ 'te_of_birth":"2021-12-01","email_trx_receipt":true,"home_phone":"333999'\
655
+ '8822","office_phone":"3339998822","office_phone_ext":"5","home_phone_co'\
656
+ 'untry_code":"+1","office_phone_country_code":"+1","cell_phone_country_c'\
657
+ 'ode":"+1","header_message_type":0,"update_if_exists":1,"contact_c1":"an'\
658
+ 'y","contact_c2":"anything","contact_c3":"something","parent_id":"11e95f'\
659
+ '8ec39de8fbdb0a4f1a","email":"email@domain.com","token_import_id":"11e95'\
660
+ 'f8ec39de8fbdb0a4f1a","id":"11e95f8ec39de8fbdb0a4f1a","created_ts":14220'\
661
+ '40992,"modified_ts":1422040992,"active":true,"created_user_id":"11e95f8'\
662
+ 'ec39de8fbdb0a4f1a"}}}'
663
+ )
664
+ received_body = JSON.parse(@response_catcher.response.raw_body)
665
+ assert(ComparisonHelper.match_body(expected_body, received_body))
666
+ end
667
+
668
+ end