fortis-python-sdk 1.0.0__py3-none-any.whl

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 (699) hide show
  1. fortis_python_sdk-1.0.0.dist-info/METADATA +183 -0
  2. fortis_python_sdk-1.0.0.dist-info/RECORD +699 -0
  3. fortis_python_sdk-1.0.0.dist-info/WHEEL +5 -0
  4. fortis_python_sdk-1.0.0.dist-info/licenses/LICENSE +28 -0
  5. fortis_python_sdk-1.0.0.dist-info/top_level.txt +1 -0
  6. fortisapi/__init__.py +12 -0
  7. fortisapi/api_helper.py +19 -0
  8. fortisapi/configuration.py +294 -0
  9. fortisapi/controllers/__init__.py +40 -0
  10. fortisapi/controllers/apple_pay_validate_merchant_controller.py +84 -0
  11. fortisapi/controllers/async_processing_controller.py +78 -0
  12. fortisapi/controllers/base_controller.py +67 -0
  13. fortisapi/controllers/batches_controller.py +179 -0
  14. fortisapi/controllers/calculate_surcharge_controller.py +76 -0
  15. fortisapi/controllers/contacts_controller.py +398 -0
  16. fortisapi/controllers/declined_recurring_transactions_controller.py +326 -0
  17. fortisapi/controllers/device_terms_controller.py +242 -0
  18. fortisapi/controllers/elements_controller.py +129 -0
  19. fortisapi/controllers/enterprise_link_redirect_controller.py +81 -0
  20. fortisapi/controllers/full_boarding_controller.py +85 -0
  21. fortisapi/controllers/level_3_data_controller.py +219 -0
  22. fortisapi/controllers/locations_controller.py +478 -0
  23. fortisapi/controllers/m_3_ds_authentication_controller.py +90 -0
  24. fortisapi/controllers/m_3_ds_transactions_controller.py +84 -0
  25. fortisapi/controllers/merchant_deposits_controller.py +295 -0
  26. fortisapi/controllers/merchant_details_controller.py +82 -0
  27. fortisapi/controllers/on_boarding_controller.py +100 -0
  28. fortisapi/controllers/paylinks_controller.py +396 -0
  29. fortisapi/controllers/payment_card_reader_token_controller.py +76 -0
  30. fortisapi/controllers/quick_invoices_controller.py +531 -0
  31. fortisapi/controllers/recurring_controller.py +545 -0
  32. fortisapi/controllers/reports_controller.py +209 -0
  33. fortisapi/controllers/signatures_controller.py +249 -0
  34. fortisapi/controllers/tags_controller.py +328 -0
  35. fortisapi/controllers/terminals_controller.py +304 -0
  36. fortisapi/controllers/tickets_controller.py +249 -0
  37. fortisapi/controllers/tokens_controller.py +679 -0
  38. fortisapi/controllers/transaction_ach_retries_controller.py +250 -0
  39. fortisapi/controllers/transactions_ach_controller.py +398 -0
  40. fortisapi/controllers/transactions_cash_controller.py +123 -0
  41. fortisapi/controllers/transactions_credit_card_controller.py +1796 -0
  42. fortisapi/controllers/transactions_ebt_card_controller.py +147 -0
  43. fortisapi/controllers/transactions_read_controller.py +248 -0
  44. fortisapi/controllers/transactions_updates_controller.py +435 -0
  45. fortisapi/controllers/webhooks_controller.py +493 -0
  46. fortisapi/exceptions/__init__.py +8 -0
  47. fortisapi/exceptions/api_exception.py +36 -0
  48. fortisapi/exceptions/response_401_token_exception.py +77 -0
  49. fortisapi/exceptions/response_412_exception.py +109 -0
  50. fortisapi/exceptions/response_error_exception.py +109 -0
  51. fortisapi/fortisapi_client.py +360 -0
  52. fortisapi/http/__init__.py +11 -0
  53. fortisapi/http/auth/__init__.py +8 -0
  54. fortisapi/http/auth/access_token.py +100 -0
  55. fortisapi/http/auth/developer_id.py +100 -0
  56. fortisapi/http/auth/user_api_key.py +100 -0
  57. fortisapi/http/auth/user_id.py +100 -0
  58. fortisapi/http/http_call_back.py +20 -0
  59. fortisapi/http/http_client_provider.py +23 -0
  60. fortisapi/http/http_method_enum.py +25 -0
  61. fortisapi/http/http_request.py +55 -0
  62. fortisapi/http/http_response.py +45 -0
  63. fortisapi/http/proxy_settings.py +50 -0
  64. fortisapi/models/__init__.py +636 -0
  65. fortisapi/models/account_info.py +519 -0
  66. fortisapi/models/account_type_12_enum.py +47 -0
  67. fortisapi/models/account_type_13_enum.py +51 -0
  68. fortisapi/models/account_type_16_enum.py +51 -0
  69. fortisapi/models/account_type_enum.py +83 -0
  70. fortisapi/models/account_vault.py +1408 -0
  71. fortisapi/models/account_vault_cau_log.py +201 -0
  72. fortisapi/models/account_vault_cau_product_transaction.py +754 -0
  73. fortisapi/models/ach_product_transaction.py +3048 -0
  74. fortisapi/models/ach_sec_code_1_enum.py +59 -0
  75. fortisapi/models/ach_sec_code_31_enum.py +61 -0
  76. fortisapi/models/ach_sec_code_3_enum.py +59 -0
  77. fortisapi/models/ach_sec_code_enum.py +67 -0
  78. fortisapi/models/acs_challenge_mandated_enum.py +52 -0
  79. fortisapi/models/action_enum.py +70 -0
  80. fortisapi/models/active_recurring.py +975 -0
  81. fortisapi/models/additional_access.py +102 -0
  82. fortisapi/models/additional_amount.py +201 -0
  83. fortisapi/models/addon.py +222 -0
  84. fortisapi/models/addon_transaction_type_enum.py +57 -0
  85. fortisapi/models/address.py +205 -0
  86. fortisapi/models/address_1.py +228 -0
  87. fortisapi/models/address_2.py +204 -0
  88. fortisapi/models/address_71.py +186 -0
  89. fortisapi/models/address_match_enum.py +54 -0
  90. fortisapi/models/address_type_enum.py +50 -0
  91. fortisapi/models/all_tag.py +194 -0
  92. fortisapi/models/alt_bank_account.py +180 -0
  93. fortisapi/models/amount_ind_enum.py +121 -0
  94. fortisapi/models/app_delivery_enum.py +50 -0
  95. fortisapi/models/auth_currency_enum.py +168 -0
  96. fortisapi/models/avs_enum.py +56 -0
  97. fortisapi/models/balance.py +154 -0
  98. fortisapi/models/bank_account.py +156 -0
  99. fortisapi/models/bank_account_1.py +186 -0
  100. fortisapi/models/batch_risk_config.py +132 -0
  101. fortisapi/models/billing_address.py +233 -0
  102. fortisapi/models/billing_address_1.py +258 -0
  103. fortisapi/models/billing_address_24.py +263 -0
  104. fortisapi/models/billing_address_5.py +155 -0
  105. fortisapi/models/body.py +134 -0
  106. fortisapi/models/branding_domain.py +867 -0
  107. fortisapi/models/branding_domain_1.py +867 -0
  108. fortisapi/models/broad_info.py +241 -0
  109. fortisapi/models/browser_information.py +401 -0
  110. fortisapi/models/business_category_enum.py +77 -0
  111. fortisapi/models/business_type_enum.py +365 -0
  112. fortisapi/models/cardholder.py +324 -0
  113. fortisapi/models/cardholder_account.py +211 -0
  114. fortisapi/models/category_enum.py +133 -0
  115. fortisapi/models/cau_subscribe_type_code_enum.py +50 -0
  116. fortisapi/models/cau_subscribe_type_id_enum.py +50 -0
  117. fortisapi/models/cau_summary_status_id_enum.py +53 -0
  118. fortisapi/models/cc_product_transaction.py +3048 -0
  119. fortisapi/models/ch_acc_age_ind_enum.py +66 -0
  120. fortisapi/models/ch_acc_change_ind_enum.py +63 -0
  121. fortisapi/models/ch_acc_pw_change_ind_enum.py +67 -0
  122. fortisapi/models/challenge_message_extension.py +177 -0
  123. fortisapi/models/challenge_window_size_enum.py +73 -0
  124. fortisapi/models/changelog.py +280 -0
  125. fortisapi/models/changelog_detail.py +178 -0
  126. fortisapi/models/children.py +822 -0
  127. fortisapi/models/communication_type_enum.py +50 -0
  128. fortisapi/models/conditions.py +125 -0
  129. fortisapi/models/conditions_18.py +146 -0
  130. fortisapi/models/conditions_181.py +146 -0
  131. fortisapi/models/conditions_191.py +146 -0
  132. fortisapi/models/conditions_27.py +125 -0
  133. fortisapi/models/conditions_4.py +146 -0
  134. fortisapi/models/conditions_41.py +146 -0
  135. fortisapi/models/conditions_42.py +146 -0
  136. fortisapi/models/conditions_43.py +146 -0
  137. fortisapi/models/contact.py +179 -0
  138. fortisapi/models/contact_1.py +822 -0
  139. fortisapi/models/contact_9.py +169 -0
  140. fortisapi/models/contact_user_default_entry_page_enum.py +59 -0
  141. fortisapi/models/context.py +125 -0
  142. fortisapi/models/country_enum.py +47 -0
  143. fortisapi/models/created_user.py +1197 -0
  144. fortisapi/models/currency_code_enum.py +186 -0
  145. fortisapi/models/currency_type.py +131 -0
  146. fortisapi/models/data.py +225 -0
  147. fortisapi/models/data_1.py +105 -0
  148. fortisapi/models/data_10.py +1283 -0
  149. fortisapi/models/data_11.py +948 -0
  150. fortisapi/models/data_12.py +369 -0
  151. fortisapi/models/data_13.py +263 -0
  152. fortisapi/models/data_14.py +552 -0
  153. fortisapi/models/data_15.py +102 -0
  154. fortisapi/models/data_16.py +930 -0
  155. fortisapi/models/data_17.py +920 -0
  156. fortisapi/models/data_18.py +102 -0
  157. fortisapi/models/data_19.py +631 -0
  158. fortisapi/models/data_2.py +1134 -0
  159. fortisapi/models/data_20.py +1657 -0
  160. fortisapi/models/data_21.py +223 -0
  161. fortisapi/models/data_22.py +1341 -0
  162. fortisapi/models/data_23.py +245 -0
  163. fortisapi/models/data_24.py +219 -0
  164. fortisapi/models/data_25.py +1456 -0
  165. fortisapi/models/data_26.py +376 -0
  166. fortisapi/models/data_27.py +1681 -0
  167. fortisapi/models/data_28.py +380 -0
  168. fortisapi/models/data_29.py +4233 -0
  169. fortisapi/models/data_3.py +296 -0
  170. fortisapi/models/data_30.py +421 -0
  171. fortisapi/models/data_31.py +150 -0
  172. fortisapi/models/data_34.py +103 -0
  173. fortisapi/models/data_35.py +259 -0
  174. fortisapi/models/data_36.py +537 -0
  175. fortisapi/models/data_4.py +482 -0
  176. fortisapi/models/data_5.py +171 -0
  177. fortisapi/models/data_6.py +469 -0
  178. fortisapi/models/data_7.py +230 -0
  179. fortisapi/models/data_8.py +616 -0
  180. fortisapi/models/data_9.py +129 -0
  181. fortisapi/models/debit_credit_enum.py +48 -0
  182. fortisapi/models/declined_recurring_notification.py +251 -0
  183. fortisapi/models/default_transaction_type_enum.py +50 -0
  184. fortisapi/models/delivery_method_enum.py +61 -0
  185. fortisapi/models/delivery_timeframe_enum.py +61 -0
  186. fortisapi/models/deposit_type_enum.py +50 -0
  187. fortisapi/models/detail.py +173 -0
  188. fortisapi/models/detail_1.py +323 -0
  189. fortisapi/models/detail_2.py +273 -0
  190. fortisapi/models/developer_company.py +270 -0
  191. fortisapi/models/device.py +123 -0
  192. fortisapi/models/device_binding_status_enum.py +373 -0
  193. fortisapi/models/device_channel_enum.py +51 -0
  194. fortisapi/models/document.py +115 -0
  195. fortisapi/models/e_format_enum.py +62 -0
  196. fortisapi/models/ebt_plan_enum.py +50 -0
  197. fortisapi/models/ebt_type_enum.py +61 -0
  198. fortisapi/models/email_blacklist.py +178 -0
  199. fortisapi/models/email_enum.py +47 -0
  200. fortisapi/models/emv_receipt_data.py +244 -0
  201. fortisapi/models/entry_mode_id_enum.py +73 -0
  202. fortisapi/models/expand_108_enum.py +48 -0
  203. fortisapi/models/expand_10_enum.py +42 -0
  204. fortisapi/models/expand_11_enum.py +99 -0
  205. fortisapi/models/expand_15_enum.py +42 -0
  206. fortisapi/models/expand_17_enum.py +96 -0
  207. fortisapi/models/expand_18_enum.py +84 -0
  208. fortisapi/models/expand_1_enum.py +75 -0
  209. fortisapi/models/expand_26_enum.py +87 -0
  210. fortisapi/models/expand_34_enum.py +42 -0
  211. fortisapi/models/expand_37_enum.py +42 -0
  212. fortisapi/models/expand_40_enum.py +63 -0
  213. fortisapi/models/expand_44_enum.py +48 -0
  214. fortisapi/models/expand_47_enum.py +69 -0
  215. fortisapi/models/expand_57_enum.py +54 -0
  216. fortisapi/models/expand_5_enum.py +48 -0
  217. fortisapi/models/expand_60_enum.py +171 -0
  218. fortisapi/models/expand_8_enum.py +57 -0
  219. fortisapi/models/expand_enum.py +51 -0
  220. fortisapi/models/field.py +125 -0
  221. fortisapi/models/field_20.py +267 -0
  222. fortisapi/models/field_27_enum.py +129 -0
  223. fortisapi/models/field_28_enum.py +168 -0
  224. fortisapi/models/field_30_enum.py +75 -0
  225. fortisapi/models/field_31_enum.py +87 -0
  226. fortisapi/models/field_33_enum.py +183 -0
  227. fortisapi/models/field_34_enum.py +195 -0
  228. fortisapi/models/field_35_enum.py +180 -0
  229. fortisapi/models/field_36_enum.py +192 -0
  230. fortisapi/models/field_37_enum.py +102 -0
  231. fortisapi/models/field_39_enum.py +186 -0
  232. fortisapi/models/field_41_enum.py +237 -0
  233. fortisapi/models/field_43_enum.py +198 -0
  234. fortisapi/models/field_45_enum.py +78 -0
  235. fortisapi/models/field_46_enum.py +126 -0
  236. fortisapi/models/field_47_enum.py +60 -0
  237. fortisapi/models/field_49_enum.py +57 -0
  238. fortisapi/models/field_51_enum.py +210 -0
  239. fortisapi/models/field_53_enum.py +84 -0
  240. fortisapi/models/field_55_enum.py +231 -0
  241. fortisapi/models/field_57_enum.py +75 -0
  242. fortisapi/models/field_59_enum.py +510 -0
  243. fortisapi/models/field_configuration.py +202 -0
  244. fortisapi/models/file.py +412 -0
  245. fortisapi/models/file_2.py +125 -0
  246. fortisapi/models/file_5.py +130 -0
  247. fortisapi/models/filter_by.py +171 -0
  248. fortisapi/models/footer.py +134 -0
  249. fortisapi/models/forecast.py +250 -0
  250. fortisapi/models/format_1_enum.py +47 -0
  251. fortisapi/models/format_enum.py +47 -0
  252. fortisapi/models/header.py +134 -0
  253. fortisapi/models/helppage.py +270 -0
  254. fortisapi/models/home_phone.py +130 -0
  255. fortisapi/models/hosted_payment_page.py +558 -0
  256. fortisapi/models/identity_verification.py +183 -0
  257. fortisapi/models/identity_verification_2.py +183 -0
  258. fortisapi/models/identity_verification_27.py +165 -0
  259. fortisapi/models/idtype_enum.py +47 -0
  260. fortisapi/models/iias_ind_enum.py +64 -0
  261. fortisapi/models/industry_type_enum.py +59 -0
  262. fortisapi/models/initiation_type_enum.py +92 -0
  263. fortisapi/models/interval_type_enum.py +50 -0
  264. fortisapi/models/item_list.py +125 -0
  265. fortisapi/models/item_list_4.py +99 -0
  266. fortisapi/models/item_list_5.py +130 -0
  267. fortisapi/models/joi.py +104 -0
  268. fortisapi/models/joi_18.py +111 -0
  269. fortisapi/models/joi_19.py +111 -0
  270. fortisapi/models/joi_27.py +104 -0
  271. fortisapi/models/joi_4.py +110 -0
  272. fortisapi/models/kyc_response_object.py +101 -0
  273. fortisapi/models/level_3_data.py +481 -0
  274. fortisapi/models/level_3_data_5.py +324 -0
  275. fortisapi/models/level_3_data_6.py +469 -0
  276. fortisapi/models/level_3_default.py +481 -0
  277. fortisapi/models/line_item.py +450 -0
  278. fortisapi/models/line_item_13.py +449 -0
  279. fortisapi/models/line_item_19.py +360 -0
  280. fortisapi/models/line_item_20.py +273 -0
  281. fortisapi/models/links.py +196 -0
  282. fortisapi/models/list.py +650 -0
  283. fortisapi/models/list_1.py +1134 -0
  284. fortisapi/models/list_10.py +1657 -0
  285. fortisapi/models/list_11.py +1341 -0
  286. fortisapi/models/list_12.py +336 -0
  287. fortisapi/models/list_13.py +731 -0
  288. fortisapi/models/list_14.py +245 -0
  289. fortisapi/models/list_15.py +219 -0
  290. fortisapi/models/list_16.py +1456 -0
  291. fortisapi/models/list_17.py +376 -0
  292. fortisapi/models/list_18.py +1681 -0
  293. fortisapi/models/list_19.py +380 -0
  294. fortisapi/models/list_20.py +4233 -0
  295. fortisapi/models/list_3.py +296 -0
  296. fortisapi/models/list_4.py +469 -0
  297. fortisapi/models/list_5.py +948 -0
  298. fortisapi/models/list_6.py +1283 -0
  299. fortisapi/models/list_8.py +552 -0
  300. fortisapi/models/list_9.py +920 -0
  301. fortisapi/models/location.py +756 -0
  302. fortisapi/models/location_18.py +217 -0
  303. fortisapi/models/location_5.py +227 -0
  304. fortisapi/models/location_billing_account.py +509 -0
  305. fortisapi/models/location_type_26_enum.py +51 -0
  306. fortisapi/models/location_type_enum.py +50 -0
  307. fortisapi/models/locationmarketplace.py +247 -0
  308. fortisapi/models/log_email.py +364 -0
  309. fortisapi/models/log_sms.py +315 -0
  310. fortisapi/models/marketplace.py +247 -0
  311. fortisapi/models/masync.py +128 -0
  312. fortisapi/models/merchant_list.py +193 -0
  313. fortisapi/models/merchant_risk_indicator.py +341 -0
  314. fortisapi/models/message_category_enum.py +119 -0
  315. fortisapi/models/message_extension.py +177 -0
  316. fortisapi/models/meta.py +107 -0
  317. fortisapi/models/method_3.py +147 -0
  318. fortisapi/models/method_50.py +145 -0
  319. fortisapi/models/method_53_enum.py +56 -0
  320. fortisapi/models/method_5_enum.py +56 -0
  321. fortisapi/models/method_enum.py +56 -0
  322. fortisapi/models/mobile_phone.py +130 -0
  323. fortisapi/models/modified_user.py +1197 -0
  324. fortisapi/models/multi_transaction.py +147 -0
  325. fortisapi/models/operator_1_enum.py +59 -0
  326. fortisapi/models/operator_enum.py +47 -0
  327. fortisapi/models/order_21.py +99 -0
  328. fortisapi/models/order_enum.py +47 -0
  329. fortisapi/models/owner.py +322 -0
  330. fortisapi/models/ownership_type_enum.py +71 -0
  331. fortisapi/models/page.py +132 -0
  332. fortisapi/models/pagination.py +196 -0
  333. fortisapi/models/parent.py +822 -0
  334. fortisapi/models/parent_3.py +756 -0
  335. fortisapi/models/partner_enum.py +71 -0
  336. fortisapi/models/paylink_action_enum.py +47 -0
  337. fortisapi/models/payment_acc_ind_enum.py +67 -0
  338. fortisapi/models/payment_method_16_enum.py +47 -0
  339. fortisapi/models/payment_method_1_enum.py +47 -0
  340. fortisapi/models/payment_method_9_enum.py +50 -0
  341. fortisapi/models/payment_method_enum.py +50 -0
  342. fortisapi/models/payment_recurring_notification.py +251 -0
  343. fortisapi/models/payment_type_priority_enum.py +47 -0
  344. fortisapi/models/postback_log.py +295 -0
  345. fortisapi/models/postback_status_id_enum.py +53 -0
  346. fortisapi/models/pre_order_purchase_ind_enum.py +52 -0
  347. fortisapi/models/preferred_language_enum.py +51 -0
  348. fortisapi/models/preferred_protocol_version_enum.py +65 -0
  349. fortisapi/models/pricing_element.py +147 -0
  350. fortisapi/models/primary_principal.py +396 -0
  351. fortisapi/models/primary_principal_1.py +376 -0
  352. fortisapi/models/process_method_enum.py +47 -0
  353. fortisapi/models/processor_enum.py +59 -0
  354. fortisapi/models/product_accountvault.py +317 -0
  355. fortisapi/models/product_file.py +416 -0
  356. fortisapi/models/product_file_1.py +414 -0
  357. fortisapi/models/product_invoice.py +651 -0
  358. fortisapi/models/product_recurring.py +387 -0
  359. fortisapi/models/product_token.py +317 -0
  360. fortisapi/models/product_transaction.py +3048 -0
  361. fortisapi/models/product_transaction_1.py +3046 -0
  362. fortisapi/models/purchase.py +501 -0
  363. fortisapi/models/quick_invoice.py +1256 -0
  364. fortisapi/models/quick_invoice_setting.py +299 -0
  365. fortisapi/models/quick_invoice_view.py +176 -0
  366. fortisapi/models/reason_code.py +131 -0
  367. fortisapi/models/reason_code_id_1_enum.py +935 -0
  368. fortisapi/models/reason_code_id_enum.py +578 -0
  369. fortisapi/models/reason_model_enum.py +74 -0
  370. fortisapi/models/received_email.py +364 -0
  371. fortisapi/models/recipients_enum.py +62 -0
  372. fortisapi/models/recurring.py +975 -0
  373. fortisapi/models/recurring_3.py +977 -0
  374. fortisapi/models/recurring_flag_enum.py +64 -0
  375. fortisapi/models/recurring_split.py +200 -0
  376. fortisapi/models/recurring_type_id_enum.py +47 -0
  377. fortisapi/models/registration_field_enum.py +87 -0
  378. fortisapi/models/rejected_transaction.py +3198 -0
  379. fortisapi/models/rejected_transaction_ach_retry.py +244 -0
  380. fortisapi/models/relationship_enum.py +50 -0
  381. fortisapi/models/reorder_items_ind_enum.py +51 -0
  382. fortisapi/models/report_export_type_enum.py +53 -0
  383. fortisapi/models/resource_12_enum.py +52 -0
  384. fortisapi/models/resource_2_enum.py +50 -0
  385. fortisapi/models/resource_enum.py +55 -0
  386. fortisapi/models/response_416_date_range.py +148 -0
  387. fortisapi/models/response_417_filter_channels.py +148 -0
  388. fortisapi/models/response_apple_pay_validate_merchant.py +126 -0
  389. fortisapi/models/response_async_status.py +126 -0
  390. fortisapi/models/response_batchs_collection.py +228 -0
  391. fortisapi/models/response_calculate_surcharge.py +126 -0
  392. fortisapi/models/response_contact.py +126 -0
  393. fortisapi/models/response_contact_searchs_collection.py +228 -0
  394. fortisapi/models/response_contacts_collection.py +228 -0
  395. fortisapi/models/response_declined_recurring_transaction.py +126 -0
  396. fortisapi/models/response_declined_recurring_transaction_payment.py +126 -0
  397. fortisapi/models/response_declined_recurring_transaction_resend.py +126 -0
  398. fortisapi/models/response_declined_recurring_transactions_collection.py +228 -0
  399. fortisapi/models/response_device_term.py +126 -0
  400. fortisapi/models/response_device_terms_collection.py +228 -0
  401. fortisapi/models/response_fullboarding.py +126 -0
  402. fortisapi/models/response_location.py +126 -0
  403. fortisapi/models/response_location_info.py +126 -0
  404. fortisapi/models/response_location_infos_collection.py +228 -0
  405. fortisapi/models/response_location_searchs_collection.py +228 -0
  406. fortisapi/models/response_locations_collection.py +228 -0
  407. fortisapi/models/response_merchant.py +126 -0
  408. fortisapi/models/response_merchant_deposit.py +126 -0
  409. fortisapi/models/response_merchant_deposits_collection.py +228 -0
  410. fortisapi/models/response_merchant_details.py +126 -0
  411. fortisapi/models/response_onboarding.py +126 -0
  412. fortisapi/models/response_paylink.py +126 -0
  413. fortisapi/models/response_paylinks_collection.py +228 -0
  414. fortisapi/models/response_payment_card_reader_token.py +126 -0
  415. fortisapi/models/response_quick_invoice.py +126 -0
  416. fortisapi/models/response_quick_invoice_resend.py +126 -0
  417. fortisapi/models/response_quick_invoices_collection.py +228 -0
  418. fortisapi/models/response_recurring.py +126 -0
  419. fortisapi/models/response_recurrings_collection.py +228 -0
  420. fortisapi/models/response_reporting_reports_cc_settled_transactions_collection.py +231 -0
  421. fortisapi/models/response_reporting_reports_chargebacks_collection.py +228 -0
  422. fortisapi/models/response_signature.py +126 -0
  423. fortisapi/models/response_signatures_collection.py +228 -0
  424. fortisapi/models/response_tag.py +126 -0
  425. fortisapi/models/response_tags_collection.py +228 -0
  426. fortisapi/models/response_terminal.py +126 -0
  427. fortisapi/models/response_terminals_collection.py +228 -0
  428. fortisapi/models/response_three_ds_authentication.py +126 -0
  429. fortisapi/models/response_three_ds_transaction.py +126 -0
  430. fortisapi/models/response_ticket.py +126 -0
  431. fortisapi/models/response_ticket_intention.py +126 -0
  432. fortisapi/models/response_tickets_collection.py +228 -0
  433. fortisapi/models/response_token.py +126 -0
  434. fortisapi/models/response_tokens_collection.py +228 -0
  435. fortisapi/models/response_transaction.py +126 -0
  436. fortisapi/models/response_transaction_ach_retry.py +126 -0
  437. fortisapi/models/response_transaction_ach_retrys_collection.py +228 -0
  438. fortisapi/models/response_transaction_bin_info.py +126 -0
  439. fortisapi/models/response_transaction_intention.py +126 -0
  440. fortisapi/models/response_transaction_level_3.py +126 -0
  441. fortisapi/models/response_transaction_level_3_master.py +126 -0
  442. fortisapi/models/response_transaction_level_3_visa.py +126 -0
  443. fortisapi/models/response_transaction_processing.py +126 -0
  444. fortisapi/models/response_transactions_collection.py +228 -0
  445. fortisapi/models/response_webhook.py +126 -0
  446. fortisapi/models/result.py +152 -0
  447. fortisapi/models/retry_transaction.py +3198 -0
  448. fortisapi/models/retry_transaction_ach_retry.py +246 -0
  449. fortisapi/models/return_fee_transaction.py +3198 -0
  450. fortisapi/models/return_fee_transaction_ach_retry.py +246 -0
  451. fortisapi/models/saved_account.py +1408 -0
  452. fortisapi/models/scheme_id_enum.py +54 -0
  453. fortisapi/models/sec_code_enum.py +51 -0
  454. fortisapi/models/settings.py +148 -0
  455. fortisapi/models/settled_currency_enum.py +168 -0
  456. fortisapi/models/severity_enum.py +62 -0
  457. fortisapi/models/ship_address_usage_ind_enum.py +62 -0
  458. fortisapi/models/ship_indicator_enum.py +101 -0
  459. fortisapi/models/ship_name_indicator_enum.py +52 -0
  460. fortisapi/models/shipping_address.py +264 -0
  461. fortisapi/models/signature.py +220 -0
  462. fortisapi/models/sms_blacklist.py +178 -0
  463. fortisapi/models/sms_enum.py +47 -0
  464. fortisapi/models/sort.py +132 -0
  465. fortisapi/models/source_enum.py +56 -0
  466. fortisapi/models/stack_enum.py +47 -0
  467. fortisapi/models/status_11.py +131 -0
  468. fortisapi/models/status_3_enum.py +47 -0
  469. fortisapi/models/status_5.py +102 -0
  470. fortisapi/models/status_code_12_enum.py +47 -0
  471. fortisapi/models/status_code_17_enum.py +102 -0
  472. fortisapi/models/status_code_enum.py +50 -0
  473. fortisapi/models/status_enum.py +50 -0
  474. fortisapi/models/status_id_enum.py +47 -0
  475. fortisapi/models/surcharge.py +574 -0
  476. fortisapi/models/surcharge_transaction.py +367 -0
  477. fortisapi/models/suspicious_acc_activity_enum.py +52 -0
  478. fortisapi/models/tag.py +194 -0
  479. fortisapi/models/tag_transaction.py +319 -0
  480. fortisapi/models/tax_exempt_enum.py +61 -0
  481. fortisapi/models/tax_surcharge_config_enum.py +47 -0
  482. fortisapi/models/terminal.py +1245 -0
  483. fortisapi/models/terminal_2.py +1243 -0
  484. fortisapi/models/terminal_application.py +411 -0
  485. fortisapi/models/terminal_cvm.py +293 -0
  486. fortisapi/models/terminal_manufacturer.py +249 -0
  487. fortisapi/models/terminal_manufacturer_code_enum.py +55 -0
  488. fortisapi/models/terminal_router.py +245 -0
  489. fortisapi/models/terminal_timeouts.py +304 -0
  490. fortisapi/models/terminal_timeouts_12.py +314 -0
  491. fortisapi/models/three_ds_req_auth_method_enum.py +154 -0
  492. fortisapi/models/three_ds_req_prior_auth_method_enum.py +123 -0
  493. fortisapi/models/three_ds_requestor.py +345 -0
  494. fortisapi/models/three_ds_requestor_authentication_ind_enum.py +141 -0
  495. fortisapi/models/three_ds_requestor_authentication_info.py +179 -0
  496. fortisapi/models/three_ds_requestor_challenge_ind_enum.py +126 -0
  497. fortisapi/models/three_ds_requestor_dec_req_ind_enum.py +72 -0
  498. fortisapi/models/three_ds_requestor_prior_authentication_info.py +188 -0
  499. fortisapi/models/three_ds_requestor_spc_support_enum.py +49 -0
  500. fortisapi/models/three_ri_ind_enum.py +180 -0
  501. fortisapi/models/tip_percents.py +160 -0
  502. fortisapi/models/trans_char_enum.py +45 -0
  503. fortisapi/models/transaction.py +3196 -0
  504. fortisapi/models/transaction_batch.py +537 -0
  505. fortisapi/models/transaction_batch_settlement.py +202 -0
  506. fortisapi/models/transaction_history.py +246 -0
  507. fortisapi/models/transaction_level_3.py +152 -0
  508. fortisapi/models/transaction_reference.py +298 -0
  509. fortisapi/models/transaction_split.py +221 -0
  510. fortisapi/models/transaction_status_enum.py +88 -0
  511. fortisapi/models/transaction_type_enum.py +68 -0
  512. fortisapi/models/trx_source_code_enum.py +155 -0
  513. fortisapi/models/trx_source_id_enum.py +155 -0
  514. fortisapi/models/type_103_enum.py +44 -0
  515. fortisapi/models/type_105_enum.py +44 -0
  516. fortisapi/models/type_10_enum.py +44 -0
  517. fortisapi/models/type_110_enum.py +44 -0
  518. fortisapi/models/type_114_enum.py +44 -0
  519. fortisapi/models/type_11_enum.py +44 -0
  520. fortisapi/models/type_121_enum.py +44 -0
  521. fortisapi/models/type_123.py +131 -0
  522. fortisapi/models/type_124_enum.py +44 -0
  523. fortisapi/models/type_125_enum.py +44 -0
  524. fortisapi/models/type_126_enum.py +44 -0
  525. fortisapi/models/type_127_enum.py +44 -0
  526. fortisapi/models/type_128_enum.py +44 -0
  527. fortisapi/models/type_134_enum.py +44 -0
  528. fortisapi/models/type_135_enum.py +44 -0
  529. fortisapi/models/type_136_enum.py +44 -0
  530. fortisapi/models/type_15_enum.py +44 -0
  531. fortisapi/models/type_16_enum.py +44 -0
  532. fortisapi/models/type_1_enum.py +44 -0
  533. fortisapi/models/type_20_enum.py +44 -0
  534. fortisapi/models/type_21_enum.py +44 -0
  535. fortisapi/models/type_22_enum.py +44 -0
  536. fortisapi/models/type_23_enum.py +44 -0
  537. fortisapi/models/type_27_enum.py +44 -0
  538. fortisapi/models/type_28_enum.py +44 -0
  539. fortisapi/models/type_29_enum.py +64 -0
  540. fortisapi/models/type_2_enum.py +44 -0
  541. fortisapi/models/type_30_enum.py +44 -0
  542. fortisapi/models/type_31_enum.py +44 -0
  543. fortisapi/models/type_35_enum.py +44 -0
  544. fortisapi/models/type_39_enum.py +44 -0
  545. fortisapi/models/type_3_enum.py +44 -0
  546. fortisapi/models/type_43_enum.py +44 -0
  547. fortisapi/models/type_44_enum.py +44 -0
  548. fortisapi/models/type_45_enum.py +44 -0
  549. fortisapi/models/type_46_enum.py +44 -0
  550. fortisapi/models/type_47_enum.py +44 -0
  551. fortisapi/models/type_48_enum.py +44 -0
  552. fortisapi/models/type_4_enum.py +44 -0
  553. fortisapi/models/type_52_enum.py +44 -0
  554. fortisapi/models/type_53_enum.py +44 -0
  555. fortisapi/models/type_54_enum.py +44 -0
  556. fortisapi/models/type_55_enum.py +44 -0
  557. fortisapi/models/type_59_enum.py +44 -0
  558. fortisapi/models/type_5_enum.py +44 -0
  559. fortisapi/models/type_60_enum.py +44 -0
  560. fortisapi/models/type_61_enum.py +45 -0
  561. fortisapi/models/type_62_enum.py +44 -0
  562. fortisapi/models/type_63_enum.py +91 -0
  563. fortisapi/models/type_64_enum.py +44 -0
  564. fortisapi/models/type_65_enum.py +44 -0
  565. fortisapi/models/type_6_enum.py +44 -0
  566. fortisapi/models/type_70_enum.py +44 -0
  567. fortisapi/models/type_71_enum.py +44 -0
  568. fortisapi/models/type_75_enum.py +44 -0
  569. fortisapi/models/type_79_enum.py +44 -0
  570. fortisapi/models/type_83_enum.py +44 -0
  571. fortisapi/models/type_84_enum.py +44 -0
  572. fortisapi/models/type_88_enum.py +44 -0
  573. fortisapi/models/type_89_enum.py +44 -0
  574. fortisapi/models/type_93_enum.py +44 -0
  575. fortisapi/models/type_94_enum.py +44 -0
  576. fortisapi/models/type_98_enum.py +44 -0
  577. fortisapi/models/type_99_enum.py +44 -0
  578. fortisapi/models/type_enum.py +44 -0
  579. fortisapi/models/type_id_enum.py +59 -0
  580. fortisapi/models/ui_prefs.py +204 -0
  581. fortisapi/models/update_if_exists_enum.py +44 -0
  582. fortisapi/models/user.py +180 -0
  583. fortisapi/models/user_1.py +1197 -0
  584. fortisapi/models/user_9.py +1195 -0
  585. fortisapi/models/user_type_code_enum.py +74 -0
  586. fortisapi/models/v_1_contacts_request.py +685 -0
  587. fortisapi/models/v_1_contacts_request_1.py +707 -0
  588. fortisapi/models/v_1_declined_recurring_transaction_payments_request.py +354 -0
  589. fortisapi/models/v_1_device_terms_request.py +161 -0
  590. fortisapi/models/v_1_elements_ticket_intention_request.py +195 -0
  591. fortisapi/models/v_1_elements_transaction_intention_request.py +591 -0
  592. fortisapi/models/v_1_fullboarding_request.py +827 -0
  593. fortisapi/models/v_1_merchant_threedsecure_authentication_request.py +696 -0
  594. fortisapi/models/v_1_onboarding_request.py +833 -0
  595. fortisapi/models/v_1_paylinks_request.py +723 -0
  596. fortisapi/models/v_1_paylinks_request_1.py +735 -0
  597. fortisapi/models/v_1_public_calculate_surcharge_request.py +527 -0
  598. fortisapi/models/v_1_quick_invoices_request.py +1035 -0
  599. fortisapi/models/v_1_quick_invoices_request_1.py +1070 -0
  600. fortisapi/models/v_1_quick_invoices_transaction_request.py +86 -0
  601. fortisapi/models/v_1_recurrings_defer_payment_request.py +86 -0
  602. fortisapi/models/v_1_recurrings_request.py +742 -0
  603. fortisapi/models/v_1_recurrings_request_1.py +750 -0
  604. fortisapi/models/v_1_recurrings_skip_payment_request.py +86 -0
  605. fortisapi/models/v_1_signatures_request.py +113 -0
  606. fortisapi/models/v_1_tags_request.py +99 -0
  607. fortisapi/models/v_1_tags_request_1.py +130 -0
  608. fortisapi/models/v_1_terminals_request.py +1005 -0
  609. fortisapi/models/v_1_terminals_request_1.py +1112 -0
  610. fortisapi/models/v_1_tickets_request.py +286 -0
  611. fortisapi/models/v_1_tokens_ach_request.py +945 -0
  612. fortisapi/models/v_1_tokens_ach_request_1.py +907 -0
  613. fortisapi/models/v_1_tokens_cc_request.py +1071 -0
  614. fortisapi/models/v_1_tokens_cc_request_1.py +905 -0
  615. fortisapi/models/v_1_tokens_previous_transaction_request.py +858 -0
  616. fortisapi/models/v_1_tokens_terminal_async_request.py +889 -0
  617. fortisapi/models/v_1_tokens_terminal_request.py +889 -0
  618. fortisapi/models/v_1_tokens_ticket_request.py +882 -0
  619. fortisapi/models/v_1_tokens_wallet_request.py +919 -0
  620. fortisapi/models/v_1_transaction_ach_retries_request.py +119 -0
  621. fortisapi/models/v_1_transactions_ach_credit_keyed_request.py +1600 -0
  622. fortisapi/models/v_1_transactions_ach_credit_prev_trxn_request.py +1616 -0
  623. fortisapi/models/v_1_transactions_ach_credit_token_request.py +1660 -0
  624. fortisapi/models/v_1_transactions_ach_debit_keyed_request.py +1600 -0
  625. fortisapi/models/v_1_transactions_ach_debit_prev_trxn_request.py +1616 -0
  626. fortisapi/models/v_1_transactions_ach_debit_token_request.py +1660 -0
  627. fortisapi/models/v_1_transactions_ach_refund_prev_trxn_request.py +1616 -0
  628. fortisapi/models/v_1_transactions_auth_complete_request.py +1519 -0
  629. fortisapi/models/v_1_transactions_auth_increment_request.py +1533 -0
  630. fortisapi/models/v_1_transactions_cash_refund_request.py +1515 -0
  631. fortisapi/models/v_1_transactions_cash_sale_request.py +1489 -0
  632. fortisapi/models/v_1_transactions_cc_auth_only_keyed_request.py +2164 -0
  633. fortisapi/models/v_1_transactions_cc_auth_only_prev_trxn_request.py +2124 -0
  634. fortisapi/models/v_1_transactions_cc_auth_only_taptopay_request.py +1843 -0
  635. fortisapi/models/v_1_transactions_cc_auth_only_terminal_request.py +2082 -0
  636. fortisapi/models/v_1_transactions_cc_auth_only_ticket_request.py +2050 -0
  637. fortisapi/models/v_1_transactions_cc_auth_only_token_request.py +2129 -0
  638. fortisapi/models/v_1_transactions_cc_auth_only_wallet_request.py +2062 -0
  639. fortisapi/models/v_1_transactions_cc_avs_only_keyed_request.py +2175 -0
  640. fortisapi/models/v_1_transactions_cc_avs_only_prev_trxn_request.py +2124 -0
  641. fortisapi/models/v_1_transactions_cc_avs_only_swiped_request.py +2086 -0
  642. fortisapi/models/v_1_transactions_cc_avs_only_terminal_request.py +2093 -0
  643. fortisapi/models/v_1_transactions_cc_avs_only_ticket_request.py +2061 -0
  644. fortisapi/models/v_1_transactions_cc_avs_only_token_request.py +2140 -0
  645. fortisapi/models/v_1_transactions_cc_avs_only_wallet_request.py +2073 -0
  646. fortisapi/models/v_1_transactions_cc_balance_inquiry_keyed_request.py +2176 -0
  647. fortisapi/models/v_1_transactions_cc_balance_inquiry_prev_trxn_request.py +2125 -0
  648. fortisapi/models/v_1_transactions_cc_balance_inquiry_swiped_request.py +2087 -0
  649. fortisapi/models/v_1_transactions_cc_balance_inquiry_terminal_request.py +2094 -0
  650. fortisapi/models/v_1_transactions_cc_balance_inquiry_ticket_request.py +2062 -0
  651. fortisapi/models/v_1_transactions_cc_balance_inquiry_token_request.py +2141 -0
  652. fortisapi/models/v_1_transactions_cc_balance_inquiry_wallet_request.py +2074 -0
  653. fortisapi/models/v_1_transactions_cc_refund_keyed_request.py +2218 -0
  654. fortisapi/models/v_1_transactions_cc_refund_prev_trxn_request.py +2124 -0
  655. fortisapi/models/v_1_transactions_cc_refund_taptopay_request.py +1869 -0
  656. fortisapi/models/v_1_transactions_cc_refund_terminal_request.py +2082 -0
  657. fortisapi/models/v_1_transactions_cc_refund_ticket_request.py +2050 -0
  658. fortisapi/models/v_1_transactions_cc_refund_token_request.py +2129 -0
  659. fortisapi/models/v_1_transactions_cc_refund_wallet_request.py +2062 -0
  660. fortisapi/models/v_1_transactions_cc_sale_keyed_request.py +2164 -0
  661. fortisapi/models/v_1_transactions_cc_sale_prev_trxn_request.py +2124 -0
  662. fortisapi/models/v_1_transactions_cc_sale_taptopay_request.py +1843 -0
  663. fortisapi/models/v_1_transactions_cc_sale_terminal_request.py +2082 -0
  664. fortisapi/models/v_1_transactions_cc_sale_ticket_request.py +2050 -0
  665. fortisapi/models/v_1_transactions_cc_sale_token_request.py +2129 -0
  666. fortisapi/models/v_1_transactions_cc_sale_wallet_request.py +2062 -0
  667. fortisapi/models/v_1_transactions_ebt_voucher_clear_refund_keyed_request.py +2190 -0
  668. fortisapi/models/v_1_transactions_ebt_voucher_clear_sale_keyed_request.py +2190 -0
  669. fortisapi/models/v_1_transactions_level_3_master_card_request.py +91 -0
  670. fortisapi/models/v_1_transactions_level_3_visa_request.py +91 -0
  671. fortisapi/models/v_1_transactions_partial_reversal_request.py +1462 -0
  672. fortisapi/models/v_1_transactions_refund_request.py +1448 -0
  673. fortisapi/models/v_1_transactions_tip_adjust_request.py +1973 -0
  674. fortisapi/models/v_1_transactions_void_request.py +130 -0
  675. fortisapi/models/v_1_wallet_provider_apple_pay_validate_merchant_request.py +127 -0
  676. fortisapi/models/v_1_wallet_provider_merchant_details_request.py +87 -0
  677. fortisapi/models/v_1_webhooks_apm_onboarding_request.py +421 -0
  678. fortisapi/models/v_1_webhooks_apm_onboarding_request_1.py +494 -0
  679. fortisapi/models/v_1_webhooks_batch_request.py +410 -0
  680. fortisapi/models/v_1_webhooks_batch_request_1.py +494 -0
  681. fortisapi/models/v_1_webhooks_contact_request.py +421 -0
  682. fortisapi/models/v_1_webhooks_contact_request_1.py +494 -0
  683. fortisapi/models/v_1_webhooks_transaction_request.py +410 -0
  684. fortisapi/models/v_1_webhooks_transaction_request_1.py +494 -0
  685. fortisapi/models/values_4_enum.py +59 -0
  686. fortisapi/models/values_50_enum.py +59 -0
  687. fortisapi/models/values_51_enum.py +62 -0
  688. fortisapi/models/values_58_enum.py +59 -0
  689. fortisapi/models/values_5_enum.py +59 -0
  690. fortisapi/models/values_6_enum.py +59 -0
  691. fortisapi/models/values_7_enum.py +59 -0
  692. fortisapi/models/values_99_enum.py +45 -0
  693. fortisapi/models/values_enum.py +51 -0
  694. fortisapi/models/wallet_provider_enum.py +47 -0
  695. fortisapi/models/wallet_type_enum.py +86 -0
  696. fortisapi/models/work_phone.py +130 -0
  697. fortisapi/utilities/__init__.py +6 -0
  698. fortisapi/utilities/file_wrapper.py +45 -0
  699. fortisapi/utilities/union_type_lookup.py +436 -0
@@ -0,0 +1,109 @@
1
+ """fortisapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: E501
7
+ from fortisapi.api_helper import APIHelper
8
+ from fortisapi.exceptions.api_exception import (
9
+ APIException,
10
+ )
11
+ from fortisapi.models.meta import Meta
12
+
13
+
14
+ class Response412Exception(APIException):
15
+ def __init__(self, reason, response):
16
+ """Initialize Response412Exception object.
17
+
18
+ Args:
19
+ reason (string): The reason (or error message) for the Exception
20
+ to be raised.
21
+ response (HttpResponse): The HttpResponse of the API call.
22
+
23
+ """
24
+ super(Response412Exception, self).__init__(reason, response)
25
+ dictionary = APIHelper.json_deserialize(self.response.text)
26
+ if isinstance(dictionary, dict):
27
+ self.unbox(dictionary)
28
+
29
+ def unbox(self, dictionary):
30
+ """Populate the properties of this object by extracting them from a dictionary.
31
+
32
+ Args:
33
+ dictionary (dictionary): A dictionary representation of the object as
34
+ obtained from the deserialization of the server's response. The keys
35
+ MUST match property names in the API description.
36
+
37
+ """
38
+ self.mtype =\
39
+ dictionary.get("type")\
40
+ if dictionary.get("type")\
41
+ else None
42
+ self.id =\
43
+ dictionary.get("id")\
44
+ if dictionary.get("id")\
45
+ else None
46
+ self.status_code =\
47
+ dictionary.get("statusCode")\
48
+ if dictionary.get("statusCode")\
49
+ else None
50
+ self.title =\
51
+ dictionary.get("title")\
52
+ if dictionary.get("title")\
53
+ else None
54
+ self.detail =\
55
+ dictionary.get("detail")\
56
+ if dictionary.get("detail")\
57
+ else None
58
+ self.meta =\
59
+ Meta.from_dictionary(
60
+ dictionary.get("meta"))\
61
+ if "meta" in dictionary.keys()\
62
+ else None
63
+
64
+
65
+ def __str__(self):
66
+ """Return a human-readable string representation."""
67
+ _mtype=(
68
+ self.mtype
69
+ if hasattr(self, "mtype")
70
+ else None
71
+ )
72
+ _id=(
73
+ self.id
74
+ if hasattr(self, "id")
75
+ else None
76
+ )
77
+ _status_code=(
78
+ self.status_code
79
+ if hasattr(self, "status_code")
80
+ else None
81
+ )
82
+ _title=(
83
+ self.title
84
+ if hasattr(self, "title")
85
+ else None
86
+ )
87
+ _detail=(
88
+ self.detail
89
+ if hasattr(self, "detail")
90
+ else None
91
+ )
92
+ _meta=(
93
+ self.meta
94
+ if hasattr(self, "meta")
95
+ else None
96
+ )
97
+ _base_str = super().__str__()
98
+ _base_str = _base_str[_base_str.find("(") + 1:-1]
99
+ return (
100
+ f"{self.__class__.__name__}("
101
+ f"base_str={_base_str!s}, "
102
+ f"mtype={_mtype!s}, "
103
+ f"id={_id!s}, "
104
+ f"status_code={_status_code!s}, "
105
+ f"title={_title!s}, "
106
+ f"detail={_detail!s}, "
107
+ f"meta={_meta!s}, "
108
+ f")"
109
+ )
@@ -0,0 +1,109 @@
1
+ """fortisapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: E501
7
+ from fortisapi.api_helper import APIHelper
8
+ from fortisapi.exceptions.api_exception import (
9
+ APIException,
10
+ )
11
+ from fortisapi.models.detail_1 import Detail1
12
+
13
+
14
+ class ResponseErrorException(APIException):
15
+ def __init__(self, reason, response):
16
+ """Initialize ResponseErrorException object.
17
+
18
+ Args:
19
+ reason (string): The reason (or error message) for the Exception
20
+ to be raised.
21
+ response (HttpResponse): The HttpResponse of the API call.
22
+
23
+ """
24
+ super(ResponseErrorException, self).__init__(reason, response)
25
+ dictionary = APIHelper.json_deserialize(self.response.text)
26
+ if isinstance(dictionary, dict):
27
+ self.unbox(dictionary)
28
+
29
+ def unbox(self, dictionary):
30
+ """Populate the properties of this object by extracting them from a dictionary.
31
+
32
+ Args:
33
+ dictionary (dictionary): A dictionary representation of the object as
34
+ obtained from the deserialization of the server's response. The keys
35
+ MUST match property names in the API description.
36
+
37
+ """
38
+ self.mtype =\
39
+ dictionary.get("type")\
40
+ if dictionary.get("type")\
41
+ else None
42
+ self.id =\
43
+ dictionary.get("id")\
44
+ if dictionary.get("id")\
45
+ else None
46
+ self.status_code =\
47
+ dictionary.get("statusCode")\
48
+ if dictionary.get("statusCode")\
49
+ else None
50
+ self.title =\
51
+ dictionary.get("title")\
52
+ if dictionary.get("title")\
53
+ else None
54
+ self.detail =\
55
+ Detail1.from_dictionary(
56
+ dictionary.get("detail"))\
57
+ if "detail" in dictionary.keys()\
58
+ else None
59
+ self.meta =\
60
+ dictionary.get("meta")\
61
+ if dictionary.get("meta")\
62
+ else None
63
+
64
+
65
+ def __str__(self):
66
+ """Return a human-readable string representation."""
67
+ _mtype=(
68
+ self.mtype
69
+ if hasattr(self, "mtype")
70
+ else None
71
+ )
72
+ _id=(
73
+ self.id
74
+ if hasattr(self, "id")
75
+ else None
76
+ )
77
+ _status_code=(
78
+ self.status_code
79
+ if hasattr(self, "status_code")
80
+ else None
81
+ )
82
+ _title=(
83
+ self.title
84
+ if hasattr(self, "title")
85
+ else None
86
+ )
87
+ _detail=(
88
+ self.detail
89
+ if hasattr(self, "detail")
90
+ else None
91
+ )
92
+ _meta=(
93
+ self.meta
94
+ if hasattr(self, "meta")
95
+ else None
96
+ )
97
+ _base_str = super().__str__()
98
+ _base_str = _base_str[_base_str.find("(") + 1:-1]
99
+ return (
100
+ f"{self.__class__.__name__}("
101
+ f"base_str={_base_str!s}, "
102
+ f"mtype={_mtype!s}, "
103
+ f"id={_id!s}, "
104
+ f"status_code={_status_code!s}, "
105
+ f"title={_title!s}, "
106
+ f"detail={_detail!s}, "
107
+ f"meta={_meta!s}, "
108
+ f")"
109
+ )
@@ -0,0 +1,360 @@
1
+ """fortisapi.
2
+
3
+ This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
4
+ """
5
+
6
+ # ruff: noqa: E501
7
+ from apimatic_core.configurations.global_configuration import (
8
+ GlobalConfiguration,
9
+ )
10
+ from apimatic_core.decorators.lazy_property import (
11
+ LazyProperty,
12
+ )
13
+
14
+ from fortisapi.configuration import (
15
+ Configuration,
16
+ Environment,
17
+ )
18
+ from fortisapi.controllers.apple_pay_validate_merchant_controller import (
19
+ ApplePayValidateMerchantController,
20
+ )
21
+ from fortisapi.controllers.async_processing_controller import (
22
+ AsyncProcessingController,
23
+ )
24
+ from fortisapi.controllers.base_controller import (
25
+ BaseController,
26
+ )
27
+ from fortisapi.controllers.batches_controller import (
28
+ BatchesController,
29
+ )
30
+ from fortisapi.controllers.calculate_surcharge_controller import (
31
+ CalculateSurchargeController,
32
+ )
33
+ from fortisapi.controllers.contacts_controller import (
34
+ ContactsController,
35
+ )
36
+ from fortisapi.controllers.declined_recurring_transactions_controller import (
37
+ DeclinedRecurringTransactionsController,
38
+ )
39
+ from fortisapi.controllers.device_terms_controller import (
40
+ DeviceTermsController,
41
+ )
42
+ from fortisapi.controllers.elements_controller import (
43
+ ElementsController,
44
+ )
45
+ from fortisapi.controllers.enterprise_link_redirect_controller import (
46
+ EnterpriseLinkRedirectController,
47
+ )
48
+ from fortisapi.controllers.full_boarding_controller import (
49
+ FullBoardingController,
50
+ )
51
+ from fortisapi.controllers.level_3_data_controller import (
52
+ Level3DataController,
53
+ )
54
+ from fortisapi.controllers.locations_controller import (
55
+ LocationsController,
56
+ )
57
+ from fortisapi.controllers.m_3_ds_authentication_controller import (
58
+ M3DSAuthenticationController,
59
+ )
60
+ from fortisapi.controllers.m_3_ds_transactions_controller import (
61
+ M3DSTransactionsController,
62
+ )
63
+ from fortisapi.controllers.merchant_deposits_controller import (
64
+ MerchantDepositsController,
65
+ )
66
+ from fortisapi.controllers.merchant_details_controller import (
67
+ MerchantDetailsController,
68
+ )
69
+ from fortisapi.controllers.on_boarding_controller import (
70
+ OnBoardingController,
71
+ )
72
+ from fortisapi.controllers.paylinks_controller import (
73
+ PaylinksController,
74
+ )
75
+ from fortisapi.controllers.payment_card_reader_token_controller import (
76
+ PaymentCardReaderTokenController,
77
+ )
78
+ from fortisapi.controllers.quick_invoices_controller import (
79
+ QuickInvoicesController,
80
+ )
81
+ from fortisapi.controllers.recurring_controller import (
82
+ RecurringController,
83
+ )
84
+ from fortisapi.controllers.reports_controller import (
85
+ ReportsController,
86
+ )
87
+ from fortisapi.controllers.signatures_controller import (
88
+ SignaturesController,
89
+ )
90
+ from fortisapi.controllers.tags_controller import (
91
+ TagsController,
92
+ )
93
+ from fortisapi.controllers.terminals_controller import (
94
+ TerminalsController,
95
+ )
96
+ from fortisapi.controllers.tickets_controller import (
97
+ TicketsController,
98
+ )
99
+ from fortisapi.controllers.tokens_controller import (
100
+ TokensController,
101
+ )
102
+ from fortisapi.controllers.transaction_ach_retries_controller import (
103
+ TransactionACHRetriesController,
104
+ )
105
+ from fortisapi.controllers.transactions_ach_controller import (
106
+ TransactionsACHController,
107
+ )
108
+ from fortisapi.controllers.transactions_cash_controller import (
109
+ TransactionsCashController,
110
+ )
111
+ from fortisapi.controllers.transactions_credit_card_controller import (
112
+ TransactionsCreditCardController,
113
+ )
114
+ from fortisapi.controllers.transactions_ebt_card_controller import (
115
+ TransactionsEBTCardController,
116
+ )
117
+ from fortisapi.controllers.transactions_read_controller import (
118
+ TransactionsReadController,
119
+ )
120
+ from fortisapi.controllers.transactions_updates_controller import (
121
+ TransactionsUpdatesController,
122
+ )
123
+ from fortisapi.controllers.webhooks_controller import (
124
+ WebhooksController,
125
+ )
126
+ from fortisapi.http.auth.access_token import (
127
+ AccessToken,
128
+ )
129
+ from fortisapi.http.auth.developer_id import (
130
+ DeveloperId,
131
+ )
132
+ from fortisapi.http.auth.user_api_key import (
133
+ UserApiKey,
134
+ )
135
+ from fortisapi.http.auth.user_id import UserId
136
+
137
+
138
+ class FortisapiClient(object):
139
+ """Client that provide access to the FortisapiClient APIs."""
140
+
141
+ @LazyProperty
142
+ def async_processing(self):
143
+ """Provide access to the AsyncProcessingController endpoints."""
144
+ return AsyncProcessingController(self.global_configuration)
145
+
146
+ @LazyProperty
147
+ def batches(self):
148
+ """Provide access to the BatchesController endpoints."""
149
+ return BatchesController(self.global_configuration)
150
+
151
+ @LazyProperty
152
+ def contacts(self):
153
+ """Provide access to the ContactsController endpoints."""
154
+ return ContactsController(self.global_configuration)
155
+
156
+ @LazyProperty
157
+ def declined_recurring_transactions(self):
158
+ """Provide access to the DeclinedRecurringTransactionsController endpoints."""
159
+ return DeclinedRecurringTransactionsController(self.global_configuration)
160
+
161
+ @LazyProperty
162
+ def device_terms(self):
163
+ """Provide access to the DeviceTermsController endpoints."""
164
+ return DeviceTermsController(self.global_configuration)
165
+
166
+ @LazyProperty
167
+ def elements(self):
168
+ """Provide access to the ElementsController endpoints."""
169
+ return ElementsController(self.global_configuration)
170
+
171
+ @LazyProperty
172
+ def full_boarding(self):
173
+ """Provide access to the FullBoardingController endpoints."""
174
+ return FullBoardingController(self.global_configuration)
175
+
176
+ @LazyProperty
177
+ def locations(self):
178
+ """Provide access to the LocationsController endpoints."""
179
+ return LocationsController(self.global_configuration)
180
+
181
+ @LazyProperty
182
+ def m3_ds_authentication(self):
183
+ """Provide access to the M3DSAuthenticationController endpoints."""
184
+ return M3DSAuthenticationController(self.global_configuration)
185
+
186
+ @LazyProperty
187
+ def m3_ds_transactions(self):
188
+ """Provide access to the M3DSTransactionsController endpoints."""
189
+ return M3DSTransactionsController(self.global_configuration)
190
+
191
+ @LazyProperty
192
+ def merchant_deposits(self):
193
+ """Provide access to the MerchantDepositsController endpoints."""
194
+ return MerchantDepositsController(self.global_configuration)
195
+
196
+ @LazyProperty
197
+ def enterprise_link_redirect(self):
198
+ """Provide access to the EnterpriseLinkRedirectController endpoints."""
199
+ return EnterpriseLinkRedirectController(self.global_configuration)
200
+
201
+ @LazyProperty
202
+ def on_boarding(self):
203
+ """Provide access to the OnBoardingController endpoints."""
204
+ return OnBoardingController(self.global_configuration)
205
+
206
+ @LazyProperty
207
+ def paylinks(self):
208
+ """Provide access to the PaylinksController endpoints."""
209
+ return PaylinksController(self.global_configuration)
210
+
211
+ @LazyProperty
212
+ def payment_card_reader_token(self):
213
+ """Provide access to the PaymentCardReaderTokenController endpoints."""
214
+ return PaymentCardReaderTokenController(self.global_configuration)
215
+
216
+ @LazyProperty
217
+ def calculate_surcharge(self):
218
+ """Provide access to the CalculateSurchargeController endpoints."""
219
+ return CalculateSurchargeController(self.global_configuration)
220
+
221
+ @LazyProperty
222
+ def quick_invoices(self):
223
+ """Provide access to the QuickInvoicesController endpoints."""
224
+ return QuickInvoicesController(self.global_configuration)
225
+
226
+ @LazyProperty
227
+ def recurring(self):
228
+ """Provide access to the RecurringController endpoints."""
229
+ return RecurringController(self.global_configuration)
230
+
231
+ @LazyProperty
232
+ def reports(self):
233
+ """Provide access to the ReportsController endpoints."""
234
+ return ReportsController(self.global_configuration)
235
+
236
+ @LazyProperty
237
+ def signatures(self):
238
+ """Provide access to the SignaturesController endpoints."""
239
+ return SignaturesController(self.global_configuration)
240
+
241
+ @LazyProperty
242
+ def tags(self):
243
+ """Provide access to the TagsController endpoints."""
244
+ return TagsController(self.global_configuration)
245
+
246
+ @LazyProperty
247
+ def terminals(self):
248
+ """Provide access to the TerminalsController endpoints."""
249
+ return TerminalsController(self.global_configuration)
250
+
251
+ @LazyProperty
252
+ def tickets(self):
253
+ """Provide access to the TicketsController endpoints."""
254
+ return TicketsController(self.global_configuration)
255
+
256
+ @LazyProperty
257
+ def tokens(self):
258
+ """Provide access to the TokensController endpoints."""
259
+ return TokensController(self.global_configuration)
260
+
261
+ @LazyProperty
262
+ def transaction_ach_retries(self):
263
+ """Provide access to the TransactionACHRetriesController endpoints."""
264
+ return TransactionACHRetriesController(self.global_configuration)
265
+
266
+ @LazyProperty
267
+ def transactions_ach(self):
268
+ """Provide access to the TransactionsACHController endpoints."""
269
+ return TransactionsACHController(self.global_configuration)
270
+
271
+ @LazyProperty
272
+ def transactions_cash(self):
273
+ """Provide access to the TransactionsCashController endpoints."""
274
+ return TransactionsCashController(self.global_configuration)
275
+
276
+ @LazyProperty
277
+ def transactions_credit_card(self):
278
+ """Provide access to the TransactionsCreditCardController endpoints."""
279
+ return TransactionsCreditCardController(self.global_configuration)
280
+
281
+ @LazyProperty
282
+ def transactions_ebt_card(self):
283
+ """Provide access to the TransactionsEBTCardController endpoints."""
284
+ return TransactionsEBTCardController(self.global_configuration)
285
+
286
+ @LazyProperty
287
+ def transactions_read(self):
288
+ """Provide access to the TransactionsReadController endpoints."""
289
+ return TransactionsReadController(self.global_configuration)
290
+
291
+ @LazyProperty
292
+ def level_3_data(self):
293
+ """Provide access to the Level3DataController endpoints."""
294
+ return Level3DataController(self.global_configuration)
295
+
296
+ @LazyProperty
297
+ def transactions_updates(self):
298
+ """Provide access to the TransactionsUpdatesController endpoints."""
299
+ return TransactionsUpdatesController(self.global_configuration)
300
+
301
+ @LazyProperty
302
+ def apple_pay_validate_merchant(self):
303
+ """Provide access to the ApplePayValidateMerchantController endpoints."""
304
+ return ApplePayValidateMerchantController(self.global_configuration)
305
+
306
+ @LazyProperty
307
+ def merchant_details(self):
308
+ """Provide access to the MerchantDetailsController endpoints."""
309
+ return MerchantDetailsController(self.global_configuration)
310
+
311
+ @LazyProperty
312
+ def webhooks(self):
313
+ """Provide access to the WebhooksController endpoints."""
314
+ return WebhooksController(self.global_configuration)
315
+
316
+ def __init__(self, http_client_instance=None,
317
+ override_http_client_configuration=False, http_call_back=None,
318
+ timeout=60, max_retries=0, backoff_factor=2,
319
+ retry_statuses=None, retry_methods=None, proxy_settings=None,
320
+ environment=Environment.SANDBOX, user_id_credentials=None,
321
+ user_api_key_credentials=None, developer_id_credentials=None,
322
+ access_token_credentials=None, config=None):
323
+ """Initialize a new instance of FortisapiClient."""
324
+ self.config = config or Configuration(
325
+ http_client_instance=http_client_instance,
326
+ override_http_client_configuration=override_http_client_configuration,
327
+ http_call_back=http_call_back, timeout=timeout,
328
+ max_retries=max_retries, backoff_factor=backoff_factor,
329
+ retry_statuses=retry_statuses, retry_methods=retry_methods,
330
+ proxy_settings=proxy_settings, environment=environment,
331
+ user_id_credentials=user_id_credentials,
332
+ user_api_key_credentials=user_api_key_credentials,
333
+ developer_id_credentials=developer_id_credentials,
334
+ access_token_credentials=access_token_credentials)
335
+
336
+ self.global_configuration = GlobalConfiguration(self.config)\
337
+ .global_errors(BaseController.global_errors())\
338
+ .base_uri_executor(self.config.get_base_uri)\
339
+ .user_agent(BaseController.user_agent(),
340
+ BaseController.user_agent_parameters())
341
+
342
+ self.auth_managers = {
343
+ "user-id": UserId(self.config.user_id_credentials),
344
+ "user-api-key": UserApiKey(self.config.user_api_key_credentials),
345
+ "developer-id": DeveloperId(self.config.developer_id_credentials),
346
+ "access-token": AccessToken(self.config.access_token_credentials),
347
+ }
348
+ self.global_configuration =\
349
+ self.global_configuration.auth_managers(self.auth_managers)
350
+
351
+ @classmethod
352
+ def from_environment(cls, dotenv_path=None, **overrides):
353
+ """Create a client instance using environment variables.
354
+
355
+ Returns:
356
+ FortisapiClient instance.
357
+
358
+ """
359
+ return cls(config=Configuration
360
+ .from_environment(dotenv_path=dotenv_path, **overrides))
@@ -0,0 +1,11 @@
1
+ # ruff: noqa: D104 | Missing docstring in public package
2
+ # ruff: noqa: RUF022 | `__all__` is not sorted
3
+ __all__ = [
4
+ "auth",
5
+ "http_call_back",
6
+ "http_client_provider",
7
+ "http_method_enum",
8
+ "http_request",
9
+ "http_response",
10
+ "proxy_settings",
11
+ ]
@@ -0,0 +1,8 @@
1
+ # ruff: noqa: D104 | Missing docstring in public package
2
+ # ruff: noqa: RUF022 | `__all__` is not sorted
3
+ __all__ = [
4
+ "access_token",
5
+ "developer_id",
6
+ "user_api_key",
7
+ "user_id",
8
+ ]
@@ -0,0 +1,100 @@
1
+
2
+ """
3
+ fortisapi
4
+
5
+ This file was automatically generated by APIMATIC v3.0 (
6
+ https://www.apimatic.io ).
7
+ """
8
+
9
+ import os
10
+
11
+ from apimatic_core.authentication.header_auth import HeaderAuth
12
+
13
+
14
+ class AccessToken(HeaderAuth):
15
+ """
16
+ An authentication handler that applies `CustomHeaderAuthentication` to
17
+ outgoing requests. It constructs the required credential values and integrates
18
+ with the core authentication framework.
19
+ """
20
+
21
+ @property
22
+ def error_message(self):
23
+ """Return reason about the authentication failure."""
24
+ return "AccessToken: access_token is undefined."
25
+
26
+ def __init__(self, auth_model):
27
+ """
28
+ Initialize the authentication handler with credential data.
29
+
30
+ Args:
31
+ auth_model: The credentials object used to generate the authorization
32
+ header.
33
+
34
+ """
35
+ auth_params = {}
36
+ if auth_model is not None \
37
+ and auth_model.access_token is not None:
38
+ auth_params["access-token"] = auth_model.access_token
39
+ super().__init__(auth_params=auth_params)
40
+
41
+
42
+ class AccessTokenCredentials:
43
+ """
44
+ A model for authentication credentials. Provides simple validation,
45
+ cloning support, and optional construction from environment variables.
46
+ Suitable as a pattern for other auth models.
47
+ """
48
+
49
+ @property
50
+ def access_token(self):
51
+ """
52
+ Access Token.
53
+ """
54
+ return self._access_token
55
+
56
+ def __init__(self, access_token):
57
+ """
58
+ Initialize the credentials.
59
+
60
+ Args:
61
+ access_token: The access_token property value to set.
62
+
63
+ Raises:
64
+ ValueError: If any required value is missing.
65
+
66
+ """
67
+ if access_token is None:
68
+ raise ValueError("access_token cannot be None")
69
+ self._access_token = access_token
70
+
71
+ def clone_with(self, access_token=None):
72
+ """
73
+ Return a new instance with optional value overrides.
74
+
75
+ Args:
76
+ access_token: The access_token property value to set.
77
+
78
+ """
79
+ return AccessTokenCredentials(access_token or self.access_token)
80
+
81
+ @classmethod
82
+ def from_environment(cls):
83
+ """
84
+ Create credentials from environment variables, if available.
85
+
86
+ Returns:
87
+ A credentials instance or ``None`` if values are missing.
88
+
89
+ """
90
+ access_token = os.getenv(
91
+ "ACCESS_TOKEN_ACCESS_TOKEN",
92
+ None,
93
+ )
94
+
95
+ if (access_token is None):
96
+ return None
97
+
98
+ return cls(
99
+ access_token=access_token,
100
+ )