hamza-payments-query-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 (262) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +136 -0
  4. data/lib/payments/api_helper.rb +10 -0
  5. data/lib/payments/client.rb +78 -0
  6. data/lib/payments/configuration.rb +145 -0
  7. data/lib/payments/controllers/base_controller.rb +60 -0
  8. data/lib/payments/controllers/m3_ds_actions_controller.rb +97 -0
  9. data/lib/payments/controllers/manage_payments_controller.rb +272 -0
  10. data/lib/payments/controllers/payment_controller.rb +51 -0
  11. data/lib/payments/controllers/payment_queries_controller.rb +134 -0
  12. data/lib/payments/exceptions/api_exception.rb +21 -0
  13. data/lib/payments/exceptions/error_response_exception.rb +51 -0
  14. data/lib/payments/exceptions/header_error_response_exception.rb +58 -0
  15. data/lib/payments/exceptions/pq_querybydaterange400_response_exception.rb +51 -0
  16. data/lib/payments/exceptions/pq_querybypaymentid404_response_error_exception.rb +51 -0
  17. data/lib/payments/exceptions/pq_queryhistoricalpayments400_response_exception.rb +51 -0
  18. data/lib/payments/exceptions/validation_error_response_exception.rb +58 -0
  19. data/lib/payments/http/auth/basic_auth.rb +50 -0
  20. data/lib/payments/http/http_call_back.rb +10 -0
  21. data/lib/payments/http/http_method_enum.rb +10 -0
  22. data/lib/payments/http/http_request.rb +10 -0
  23. data/lib/payments/http/http_response.rb +10 -0
  24. data/lib/payments/http/proxy_settings.rb +13 -0
  25. data/lib/payments/models/accept_enum.rb +21 -0
  26. data/lib/payments/models/account_history.rb +110 -0
  27. data/lib/payments/models/account_updater_message1_enum.rb +44 -0
  28. data/lib/payments/models/account_updater_message_enum.rb +41 -0
  29. data/lib/payments/models/advice.rb +62 -0
  30. data/lib/payments/models/applepay_payments_instruction.rb +151 -0
  31. data/lib/payments/models/authentication.rb +161 -0
  32. data/lib/payments/models/authorization_action_list.rb +90 -0
  33. data/lib/payments/models/authorization_failed.rb +103 -0
  34. data/lib/payments/models/authorization_refused.rb +124 -0
  35. data/lib/payments/models/authorization_requested.rb +94 -0
  36. data/lib/payments/models/authorization_succeeded.rb +104 -0
  37. data/lib/payments/models/authorization_timed_out.rb +94 -0
  38. data/lib/payments/models/authorization_type1_enum.rb +23 -0
  39. data/lib/payments/models/authorization_type_enum.rb +23 -0
  40. data/lib/payments/models/avs_not_matched_enum.rb +25 -0
  41. data/lib/payments/models/base_model.rb +110 -0
  42. data/lib/payments/models/billing_address.rb +147 -0
  43. data/lib/payments/models/browser_color_depth_enum.rb +41 -0
  44. data/lib/payments/models/cancel_response.rb +71 -0
  45. data/lib/payments/models/cancellation.rb +88 -0
  46. data/lib/payments/models/cancellation_failed.rb +94 -0
  47. data/lib/payments/models/cancellation_request_submitted.rb +94 -0
  48. data/lib/payments/models/cancellation_requested.rb +94 -0
  49. data/lib/payments/models/cancellation_timed_out.rb +94 -0
  50. data/lib/payments/models/card.rb +159 -0
  51. data/lib/payments/models/card1.rb +106 -0
  52. data/lib/payments/models/card3.rb +72 -0
  53. data/lib/payments/models/card_authorized_payment_response.rb +195 -0
  54. data/lib/payments/models/card_payment_instrument.rb +76 -0
  55. data/lib/payments/models/card_payments_instruction.rb +164 -0
  56. data/lib/payments/models/category_enum.rb +23 -0
  57. data/lib/payments/models/challenge.rb +100 -0
  58. data/lib/payments/models/challenge_info.rb +91 -0
  59. data/lib/payments/models/challenge_response201.rb +75 -0
  60. data/lib/payments/models/challenge_response202.rb +62 -0
  61. data/lib/payments/models/challenged_action_list.rb +65 -0
  62. data/lib/payments/models/challenged_response.rb +96 -0
  63. data/lib/payments/models/channel1_enum.rb +27 -0
  64. data/lib/payments/models/channel_enum.rb +24 -0
  65. data/lib/payments/models/conflict_payment_instrument.rb +104 -0
  66. data/lib/payments/models/content_type_enum.rb +20 -0
  67. data/lib/payments/models/custom.rb +241 -0
  68. data/lib/payments/models/customer.rb +146 -0
  69. data/lib/payments/models/customer_agreement.rb +120 -0
  70. data/lib/payments/models/cvc_not_matched_enum.rb +24 -0
  71. data/lib/payments/models/detail_enum.rb +23 -0
  72. data/lib/payments/models/device_data.rb +200 -0
  73. data/lib/payments/models/device_data_collection.rb +79 -0
  74. data/lib/payments/models/device_data_request.rb +71 -0
  75. data/lib/payments/models/device_data_required_action_list.rb +66 -0
  76. data/lib/payments/models/device_data_required_response.rb +89 -0
  77. data/lib/payments/models/device_data_response201.rb +95 -0
  78. data/lib/payments/models/embedded.rb +71 -0
  79. data/lib/payments/models/embedded1.rb +71 -0
  80. data/lib/payments/models/error.rb +81 -0
  81. data/lib/payments/models/exemption.rb +106 -0
  82. data/lib/payments/models/expiry_date.rb +90 -0
  83. data/lib/payments/models/expiry_date1.rb +84 -0
  84. data/lib/payments/models/fraud.rb +73 -0
  85. data/lib/payments/models/fraud_high_risk_response.rb +88 -0
  86. data/lib/payments/models/funding_type_enum.rb +32 -0
  87. data/lib/payments/models/googlepay_payments_instruction.rb +151 -0
  88. data/lib/payments/models/identifier_type_enum.rb +26 -0
  89. data/lib/payments/models/installment_plan.rb +76 -0
  90. data/lib/payments/models/installment_type_enum.rb +26 -0
  91. data/lib/payments/models/issuer.rb +63 -0
  92. data/lib/payments/models/issuer1.rb +76 -0
  93. data/lib/payments/models/issuer_response_enum.rb +23 -0
  94. data/lib/payments/models/last_event_enum.rb +95 -0
  95. data/lib/payments/models/links.rb +123 -0
  96. data/lib/payments/models/links1.rb +70 -0
  97. data/lib/payments/models/links2.rb +60 -0
  98. data/lib/payments/models/links3.rb +97 -0
  99. data/lib/payments/models/merchant.rb +88 -0
  100. data/lib/payments/models/message_enum.rb +34 -0
  101. data/lib/payments/models/method_enum.rb +38 -0
  102. data/lib/payments/models/mnext.rb +62 -0
  103. data/lib/payments/models/mself.rb +62 -0
  104. data/lib/payments/models/name_enum.rb +51 -0
  105. data/lib/payments/models/narrative.rb +86 -0
  106. data/lib/payments/models/narrative1.rb +87 -0
  107. data/lib/payments/models/narrative2.rb +71 -0
  108. data/lib/payments/models/number.rb +85 -0
  109. data/lib/payments/models/number3.rb +62 -0
  110. data/lib/payments/models/outcome16_enum.rb +21 -0
  111. data/lib/payments/models/outcome17_enum.rb +21 -0
  112. data/lib/payments/models/outcome6_enum.rb +42 -0
  113. data/lib/payments/models/outcome7_enum.rb +26 -0
  114. data/lib/payments/models/outcome_enum.rb +50 -0
  115. data/lib/payments/models/partial_refund_action_list.rb +64 -0
  116. data/lib/payments/models/partial_refund_response.rb +81 -0
  117. data/lib/payments/models/partial_settle_action_list.rb +102 -0
  118. data/lib/payments/models/partial_settle_response.rb +81 -0
  119. data/lib/payments/models/payment.rb +192 -0
  120. data/lib/payments/models/payment1.rb +86 -0
  121. data/lib/payments/models/payment_instrument.rb +62 -0
  122. data/lib/payments/models/payment_instrument4.rb +81 -0
  123. data/lib/payments/models/payment_instrument6.rb +71 -0
  124. data/lib/payments/models/payment_instrument7.rb +171 -0
  125. data/lib/payments/models/payment_refused_response.rb +187 -0
  126. data/lib/payments/models/payment_request.rb +96 -0
  127. data/lib/payments/models/payments_action_cancel.rb +71 -0
  128. data/lib/payments/models/payments_action_complete3ds_challenge.rb +72 -0
  129. data/lib/payments/models/payments_action_partial_refund.rb +71 -0
  130. data/lib/payments/models/payments_action_partial_settle.rb +73 -0
  131. data/lib/payments/models/payments_action_refund.rb +71 -0
  132. data/lib/payments/models/payments_action_settle.rb +71 -0
  133. data/lib/payments/models/payments_action_supply3ds_device_data.rb +73 -0
  134. data/lib/payments/models/payments_bank_account.rb +119 -0
  135. data/lib/payments/models/payments_cancel.rb +72 -0
  136. data/lib/payments/models/payments_card_account.rb +69 -0
  137. data/lib/payments/models/payments_card_on_file_customer_agreement.rb +85 -0
  138. data/lib/payments/models/payments_card_plain_payment_instrument.rb +149 -0
  139. data/lib/payments/models/payments_customer_agreement.rb +79 -0
  140. data/lib/payments/models/payments_email_account.rb +69 -0
  141. data/lib/payments/models/payments_events.rb +72 -0
  142. data/lib/payments/models/payments_exemption.rb +102 -0
  143. data/lib/payments/models/payments_fraud.rb +107 -0
  144. data/lib/payments/models/payments_funds_recipient.rb +139 -0
  145. data/lib/payments/models/payments_funds_sender.rb +120 -0
  146. data/lib/payments/models/payments_funds_transfer.rb +108 -0
  147. data/lib/payments/models/payments_gift_cards_purchase.rb +81 -0
  148. data/lib/payments/models/payments_installment_customer_agreement.rb +133 -0
  149. data/lib/payments/models/payments_instruction.rb +309 -0
  150. data/lib/payments/models/payments_link.rb +62 -0
  151. data/lib/payments/models/payments_network_token_payment_instrument.rb +126 -0
  152. data/lib/payments/models/payments_partial_refund_request.rb +68 -0
  153. data/lib/payments/models/payments_partial_settle.rb +72 -0
  154. data/lib/payments/models/payments_partial_settle_request.rb +81 -0
  155. data/lib/payments/models/payments_payment_facilitator.rb +88 -0
  156. data/lib/payments/models/payments_payment_instrument.rb +78 -0
  157. data/lib/payments/models/payments_phone_account.rb +69 -0
  158. data/lib/payments/models/payments_recipient.rb +110 -0
  159. data/lib/payments/models/payments_recipient_account.rb +81 -0
  160. data/lib/payments/models/payments_recipient_address.rb +72 -0
  161. data/lib/payments/models/payments_response.rb +69 -0
  162. data/lib/payments/models/payments_response202.rb +90 -0
  163. data/lib/payments/models/payments_response_payment_instrument.rb +158 -0
  164. data/lib/payments/models/payments_sequence.rb +69 -0
  165. data/lib/payments/models/payments_settle.rb +72 -0
  166. data/lib/payments/models/payments_shipping_address.rb +148 -0
  167. data/lib/payments/models/payments_social_network_account.rb +71 -0
  168. data/lib/payments/models/payments_sub_merchant.rb +108 -0
  169. data/lib/payments/models/payments_sub_merchant_address.rb +99 -0
  170. data/lib/payments/models/payments_subscription_customer_agreement.rb +106 -0
  171. data/lib/payments/models/payments_three_ds.rb +217 -0
  172. data/lib/payments/models/payments_transfer_address.rb +112 -0
  173. data/lib/payments/models/payments_unscheduled_customer_agreement.rb +87 -0
  174. data/lib/payments/models/payments_wallet_account.rb +70 -0
  175. data/lib/payments/models/placement_enum.rb +21 -0
  176. data/lib/payments/models/pq_querybydaterange200_response.rb +68 -0
  177. data/lib/payments/models/pq_querybypaymentid200_response.rb +230 -0
  178. data/lib/payments/models/pq_queryhistoricalpayments200_response.rb +72 -0
  179. data/lib/payments/models/preference_enum.rb +29 -0
  180. data/lib/payments/models/preferred_card_brand_enum.rb +51 -0
  181. data/lib/payments/models/purpose_enum.rb +78 -0
  182. data/lib/payments/models/query_action_list.rb +114 -0
  183. data/lib/payments/models/query_events_response.rb +71 -0
  184. data/lib/payments/models/reason_enum.rb +50 -0
  185. data/lib/payments/models/refund_failed.rb +94 -0
  186. data/lib/payments/models/refund_request_submitted.rb +94 -0
  187. data/lib/payments/models/refund_requested.rb +124 -0
  188. data/lib/payments/models/refund_response.rb +71 -0
  189. data/lib/payments/models/refund_timed_out.rb +94 -0
  190. data/lib/payments/models/result_enum.rb +29 -0
  191. data/lib/payments/models/reversal_failed.rb +94 -0
  192. data/lib/payments/models/reversal_request_submitted.rb +94 -0
  193. data/lib/payments/models/reversal_requested.rb +103 -0
  194. data/lib/payments/models/reversal_timed_out.rb +94 -0
  195. data/lib/payments/models/risk_enum.rb +29 -0
  196. data/lib/payments/models/risk_factor.rb +82 -0
  197. data/lib/payments/models/routing.rb +74 -0
  198. data/lib/payments/models/sale_failed.rb +103 -0
  199. data/lib/payments/models/sale_refused.rb +124 -0
  200. data/lib/payments/models/sale_requested.rb +94 -0
  201. data/lib/payments/models/sale_succeeded.rb +104 -0
  202. data/lib/payments/models/sale_timed_out.rb +94 -0
  203. data/lib/payments/models/scheme.rb +75 -0
  204. data/lib/payments/models/self1.rb +72 -0
  205. data/lib/payments/models/self2.rb +62 -0
  206. data/lib/payments/models/self3.rb +62 -0
  207. data/lib/payments/models/sent_for_cancellation_response.rb +185 -0
  208. data/lib/payments/models/sent_for_settlement_action_list.rb +76 -0
  209. data/lib/payments/models/sent_for_settlement_response.rb +195 -0
  210. data/lib/payments/models/session_payment_instrument.rb +119 -0
  211. data/lib/payments/models/settle_action_list.rb +76 -0
  212. data/lib/payments/models/settle_response.rb +81 -0
  213. data/lib/payments/models/settlement.rb +88 -0
  214. data/lib/payments/models/settlement_failed.rb +94 -0
  215. data/lib/payments/models/settlement_request_submitted.rb +94 -0
  216. data/lib/payments/models/settlement_requested.rb +125 -0
  217. data/lib/payments/models/settlement_timed_out.rb +94 -0
  218. data/lib/payments/models/shipping.rb +130 -0
  219. data/lib/payments/models/stored_card_usage1_enum.rb +24 -0
  220. data/lib/payments/models/stored_card_usage_enum.rb +24 -0
  221. data/lib/payments/models/time_frame_enum.rb +29 -0
  222. data/lib/payments/models/token.rb +168 -0
  223. data/lib/payments/models/token_creation.rb +95 -0
  224. data/lib/payments/models/token_payment_instrument.rb +118 -0
  225. data/lib/payments/models/token_response_conflicts.rb +90 -0
  226. data/lib/payments/models/transaction_history.rb +127 -0
  227. data/lib/payments/models/transaction_type1_enum.rb +26 -0
  228. data/lib/payments/models/transaction_type_enum.rb +26 -0
  229. data/lib/payments/models/type10_enum.rb +23 -0
  230. data/lib/payments/models/type12_enum.rb +35 -0
  231. data/lib/payments/models/type1_enum.rb +26 -0
  232. data/lib/payments/models/type2_enum.rb +23 -0
  233. data/lib/payments/models/type3_enum.rb +20 -0
  234. data/lib/payments/models/type4_enum.rb +20 -0
  235. data/lib/payments/models/type5_enum.rb +41 -0
  236. data/lib/payments/models/type6_enum.rb +29 -0
  237. data/lib/payments/models/type7_enum.rb +23 -0
  238. data/lib/payments/models/type8_enum.rb +23 -0
  239. data/lib/payments/models/type9_enum.rb +35 -0
  240. data/lib/payments/models/type_enum.rb +23 -0
  241. data/lib/payments/models/unsuccessful_authentication_response.rb +76 -0
  242. data/lib/payments/models/updated_payment_instrument.rb +159 -0
  243. data/lib/payments/models/updated_payment_instrument1.rb +93 -0
  244. data/lib/payments/models/user_type_enum.rb +35 -0
  245. data/lib/payments/models/value.rb +94 -0
  246. data/lib/payments/models/value1.rb +91 -0
  247. data/lib/payments/models/value2.rb +91 -0
  248. data/lib/payments/models/value3.rb +91 -0
  249. data/lib/payments/models/value4.rb +91 -0
  250. data/lib/payments/models/verification.rb +173 -0
  251. data/lib/payments/models/wallet_payment_instrument.rb +100 -0
  252. data/lib/payments/models/window_size_enum.rb +34 -0
  253. data/lib/payments/models/wp_api_version_enum.rb +20 -0
  254. data/lib/payments/utilities/date_time_helper.rb +11 -0
  255. data/lib/payments/utilities/file_wrapper.rb +28 -0
  256. data/lib/payments/utilities/union_type_lookup.rb +78 -0
  257. data/lib/payments.rb +280 -0
  258. data/test/controllers/controller_test_base.rb +29 -0
  259. data/test/controllers/test_payment_controller.rb +161 -0
  260. data/test/controllers/test_payment_queries_controller.rb +68 -0
  261. data/test/http_response_catcher.rb +19 -0
  262. metadata +374 -0
data/lib/payments.rb ADDED
@@ -0,0 +1,280 @@
1
+ # payments
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ require 'date'
7
+ require 'json'
8
+
9
+ require 'apimatic_core_interfaces'
10
+ require 'apimatic_core'
11
+ require 'apimatic_faraday_client_adapter'
12
+
13
+ require_relative 'payments/api_helper'
14
+ require_relative 'payments/client'
15
+
16
+ # Utilities
17
+ require_relative 'payments/utilities/file_wrapper'
18
+ require_relative 'payments/utilities/date_time_helper'
19
+ require_relative 'payments/utilities/union_type_lookup'
20
+
21
+ # Http
22
+ require_relative 'payments/http/http_call_back'
23
+ require_relative 'payments/http/http_method_enum'
24
+ require_relative 'payments/http/http_request'
25
+ require_relative 'payments/http/http_response'
26
+ require_relative 'payments/http/proxy_settings'
27
+
28
+
29
+ require_relative 'payments/http/auth/basic_auth'
30
+
31
+ # Models
32
+ require_relative 'payments/models/base_model'
33
+ require_relative 'payments/models/payments_action_partial_refund'
34
+ require_relative 'payments/models/payments_action_refund'
35
+ require_relative 'payments/models/payments_link'
36
+ require_relative 'payments/models/mself'
37
+ require_relative 'payments/models/settle_action_list'
38
+ require_relative 'payments/models/settle_response'
39
+ require_relative 'payments/models/refund_response'
40
+ require_relative 'payments/models/payments_partial_settle_request'
41
+ require_relative 'payments/models/payments_sequence'
42
+ require_relative 'payments/models/value'
43
+ require_relative 'payments/models/partial_settle_action_list'
44
+ require_relative 'payments/models/partial_settle_response'
45
+ require_relative 'payments/models/payments_action_cancel'
46
+ require_relative 'payments/models/payments_action_partial_settle'
47
+ require_relative 'payments/models/payments_partial_refund_request'
48
+ require_relative 'payments/models/partial_refund_action_list'
49
+ require_relative 'payments/models/partial_refund_response'
50
+ require_relative 'payments/models/cancel_response'
51
+ require_relative 'payments/models/device_data_request'
52
+ require_relative 'payments/models/advice'
53
+ require_relative 'payments/models/authentication'
54
+ require_relative 'payments/models/authorization_action_list'
55
+ require_relative 'payments/models/billing_address'
56
+ require_relative 'payments/models/card_authorized_payment_response'
57
+ require_relative 'payments/models/challenge_info'
58
+ require_relative 'payments/models/challenged_action_list'
59
+ require_relative 'payments/models/challenged_response'
60
+ require_relative 'payments/models/conflict_payment_instrument'
61
+ require_relative 'payments/models/device_data_response201'
62
+ require_relative 'payments/models/expiry_date'
63
+ require_relative 'payments/models/fraud'
64
+ require_relative 'payments/models/issuer'
65
+ require_relative 'payments/models/payment_refused_response'
66
+ require_relative 'payments/models/payments_action_complete3ds_challenge'
67
+ require_relative 'payments/models/payments_action_settle'
68
+ require_relative 'payments/models/payments_exemption'
69
+ require_relative 'payments/models/payments_response'
70
+ require_relative 'payments/models/payments_response_payment_instrument'
71
+ require_relative 'payments/models/risk_factor'
72
+ require_relative 'payments/models/token'
73
+ require_relative 'payments/models/token_response_conflicts'
74
+ require_relative 'payments/models/unsuccessful_authentication_response'
75
+ require_relative 'payments/models/updated_payment_instrument'
76
+ require_relative 'payments/models/verification'
77
+ require_relative 'payments/models/sent_for_cancellation_response'
78
+ require_relative 'payments/models/sent_for_settlement_action_list'
79
+ require_relative 'payments/models/sent_for_settlement_response'
80
+ require_relative 'payments/models/challenge_response202'
81
+ require_relative 'payments/models/challenge_response201'
82
+ require_relative 'payments/models/account_history'
83
+ require_relative 'payments/models/applepay_payments_instruction'
84
+ require_relative 'payments/models/cancellation'
85
+ require_relative 'payments/models/card_payment_instrument'
86
+ require_relative 'payments/models/card_payments_instruction'
87
+ require_relative 'payments/models/payment_instrument'
88
+ require_relative 'payments/models/challenge'
89
+ require_relative 'payments/models/custom'
90
+ require_relative 'payments/models/customer'
91
+ require_relative 'payments/models/device_data'
92
+ require_relative 'payments/models/exemption'
93
+ require_relative 'payments/models/googlepay_payments_instruction'
94
+ require_relative 'payments/models/installment_plan'
95
+ require_relative 'payments/models/merchant'
96
+ require_relative 'payments/models/narrative'
97
+ require_relative 'payments/models/payment_request'
98
+ require_relative 'payments/models/payments_bank_account'
99
+ require_relative 'payments/models/payments_card_account'
100
+ require_relative 'payments/models/payments_card_on_file_customer_agreement'
101
+ require_relative 'payments/models/payments_card_plain_payment_instrument'
102
+ require_relative 'payments/models/payments_customer_agreement'
103
+ require_relative 'payments/models/payments_email_account'
104
+ require_relative 'payments/models/payments_fraud'
105
+ require_relative 'payments/models/payments_funds_recipient'
106
+ require_relative 'payments/models/payments_funds_sender'
107
+ require_relative 'payments/models/payments_funds_transfer'
108
+ require_relative 'payments/models/payments_gift_cards_purchase'
109
+ require_relative 'payments/models/payments_installment_customer_agreement'
110
+ require_relative 'payments/models/payments_instruction'
111
+ require_relative 'payments/models/payments_network_token_payment_instrument'
112
+ require_relative 'payments/models/payments_payment_facilitator'
113
+ require_relative 'payments/models/payments_payment_instrument'
114
+ require_relative 'payments/models/payments_phone_account'
115
+ require_relative 'payments/models/payments_recipient'
116
+ require_relative 'payments/models/payments_recipient_account'
117
+ require_relative 'payments/models/payments_recipient_address'
118
+ require_relative 'payments/models/payments_shipping_address'
119
+ require_relative 'payments/models/payments_social_network_account'
120
+ require_relative 'payments/models/payments_sub_merchant'
121
+ require_relative 'payments/models/payments_sub_merchant_address'
122
+ require_relative 'payments/models/payments_subscription_customer_agreement'
123
+ require_relative 'payments/models/payments_three_ds'
124
+ require_relative 'payments/models/payments_transfer_address'
125
+ require_relative 'payments/models/payments_unscheduled_customer_agreement'
126
+ require_relative 'payments/models/payments_wallet_account'
127
+ require_relative 'payments/models/routing'
128
+ require_relative 'payments/models/session_payment_instrument'
129
+ require_relative 'payments/models/settlement'
130
+ require_relative 'payments/models/shipping'
131
+ require_relative 'payments/models/token_creation'
132
+ require_relative 'payments/models/token_payment_instrument'
133
+ require_relative 'payments/models/transaction_history'
134
+ require_relative 'payments/models/wallet_payment_instrument'
135
+ require_relative 'payments/models/payments_response202'
136
+ require_relative 'payments/models/device_data_collection'
137
+ require_relative 'payments/models/device_data_required_action_list'
138
+ require_relative 'payments/models/device_data_required_response'
139
+ require_relative 'payments/models/fraud_high_risk_response'
140
+ require_relative 'payments/models/payments_action_supply3ds_device_data'
141
+ require_relative 'payments/models/query_action_list'
142
+ require_relative 'payments/models/query_events_response'
143
+ require_relative 'payments/models/authorization_requested'
144
+ require_relative 'payments/models/authorization_succeeded'
145
+ require_relative 'payments/models/authorization_refused'
146
+ require_relative 'payments/models/authorization_failed'
147
+ require_relative 'payments/models/authorization_timed_out'
148
+ require_relative 'payments/models/sale_requested'
149
+ require_relative 'payments/models/sale_succeeded'
150
+ require_relative 'payments/models/sale_refused'
151
+ require_relative 'payments/models/sale_failed'
152
+ require_relative 'payments/models/sale_timed_out'
153
+ require_relative 'payments/models/settlement_requested'
154
+ require_relative 'payments/models/settlement_request_submitted'
155
+ require_relative 'payments/models/settlement_failed'
156
+ require_relative 'payments/models/settlement_timed_out'
157
+ require_relative 'payments/models/refund_requested'
158
+ require_relative 'payments/models/refund_request_submitted'
159
+ require_relative 'payments/models/refund_failed'
160
+ require_relative 'payments/models/refund_timed_out'
161
+ require_relative 'payments/models/cancellation_requested'
162
+ require_relative 'payments/models/cancellation_request_submitted'
163
+ require_relative 'payments/models/cancellation_failed'
164
+ require_relative 'payments/models/cancellation_timed_out'
165
+ require_relative 'payments/models/reversal_requested'
166
+ require_relative 'payments/models/reversal_request_submitted'
167
+ require_relative 'payments/models/reversal_failed'
168
+ require_relative 'payments/models/reversal_timed_out'
169
+ require_relative 'payments/models/pq_querybypaymentid200_response'
170
+ require_relative 'payments/models/pq_querybydaterange200_response'
171
+ require_relative 'payments/models/pq_queryhistoricalpayments200_response'
172
+ require_relative 'payments/models/card'
173
+ require_relative 'payments/models/card1'
174
+ require_relative 'payments/models/card3'
175
+ require_relative 'payments/models/customer_agreement'
176
+ require_relative 'payments/models/embedded'
177
+ require_relative 'payments/models/embedded1'
178
+ require_relative 'payments/models/error'
179
+ require_relative 'payments/models/expiry_date1'
180
+ require_relative 'payments/models/issuer1'
181
+ require_relative 'payments/models/links'
182
+ require_relative 'payments/models/links1'
183
+ require_relative 'payments/models/links2'
184
+ require_relative 'payments/models/links3'
185
+ require_relative 'payments/models/narrative1'
186
+ require_relative 'payments/models/narrative2'
187
+ require_relative 'payments/models/mnext'
188
+ require_relative 'payments/models/number'
189
+ require_relative 'payments/models/number3'
190
+ require_relative 'payments/models/payment'
191
+ require_relative 'payments/models/payment1'
192
+ require_relative 'payments/models/payment_instrument4'
193
+ require_relative 'payments/models/payment_instrument6'
194
+ require_relative 'payments/models/payment_instrument7'
195
+ require_relative 'payments/models/payments_cancel'
196
+ require_relative 'payments/models/payments_events'
197
+ require_relative 'payments/models/payments_partial_settle'
198
+ require_relative 'payments/models/payments_settle'
199
+ require_relative 'payments/models/scheme'
200
+ require_relative 'payments/models/self1'
201
+ require_relative 'payments/models/self2'
202
+ require_relative 'payments/models/self3'
203
+ require_relative 'payments/models/updated_payment_instrument1'
204
+ require_relative 'payments/models/value1'
205
+ require_relative 'payments/models/value2'
206
+ require_relative 'payments/models/value3'
207
+ require_relative 'payments/models/value4'
208
+ require_relative 'payments/models/last_event_enum'
209
+ require_relative 'payments/models/accept_enum'
210
+ require_relative 'payments/models/account_updater_message_enum'
211
+ require_relative 'payments/models/account_updater_message1_enum'
212
+ require_relative 'payments/models/authorization_type_enum'
213
+ require_relative 'payments/models/authorization_type1_enum'
214
+ require_relative 'payments/models/avs_not_matched_enum'
215
+ require_relative 'payments/models/browser_color_depth_enum'
216
+ require_relative 'payments/models/category_enum'
217
+ require_relative 'payments/models/channel_enum'
218
+ require_relative 'payments/models/channel1_enum'
219
+ require_relative 'payments/models/content_type_enum'
220
+ require_relative 'payments/models/cvc_not_matched_enum'
221
+ require_relative 'payments/models/detail_enum'
222
+ require_relative 'payments/models/funding_type_enum'
223
+ require_relative 'payments/models/identifier_type_enum'
224
+ require_relative 'payments/models/installment_type_enum'
225
+ require_relative 'payments/models/issuer_response_enum'
226
+ require_relative 'payments/models/message_enum'
227
+ require_relative 'payments/models/method_enum'
228
+ require_relative 'payments/models/name_enum'
229
+ require_relative 'payments/models/outcome_enum'
230
+ require_relative 'payments/models/outcome6_enum'
231
+ require_relative 'payments/models/outcome7_enum'
232
+ require_relative 'payments/models/outcome16_enum'
233
+ require_relative 'payments/models/outcome17_enum'
234
+ require_relative 'payments/models/placement_enum'
235
+ require_relative 'payments/models/preference_enum'
236
+ require_relative 'payments/models/preferred_card_brand_enum'
237
+ require_relative 'payments/models/purpose_enum'
238
+ require_relative 'payments/models/reason_enum'
239
+ require_relative 'payments/models/result_enum'
240
+ require_relative 'payments/models/risk_enum'
241
+ require_relative 'payments/models/stored_card_usage_enum'
242
+ require_relative 'payments/models/stored_card_usage1_enum'
243
+ require_relative 'payments/models/time_frame_enum'
244
+ require_relative 'payments/models/transaction_type_enum'
245
+ require_relative 'payments/models/transaction_type1_enum'
246
+ require_relative 'payments/models/type_enum'
247
+ require_relative 'payments/models/type1_enum'
248
+ require_relative 'payments/models/type2_enum'
249
+ require_relative 'payments/models/type3_enum'
250
+ require_relative 'payments/models/type4_enum'
251
+ require_relative 'payments/models/type5_enum'
252
+ require_relative 'payments/models/type6_enum'
253
+ require_relative 'payments/models/type7_enum'
254
+ require_relative 'payments/models/type8_enum'
255
+ require_relative 'payments/models/type9_enum'
256
+ require_relative 'payments/models/type10_enum'
257
+ require_relative 'payments/models/type12_enum'
258
+ require_relative 'payments/models/user_type_enum'
259
+ require_relative 'payments/models/window_size_enum'
260
+ require_relative 'payments/models/wp_api_version_enum'
261
+
262
+ # Exceptions
263
+ require_relative 'payments/exceptions/api_exception'
264
+ require_relative 'payments/exceptions/error_response_exception'
265
+ require_relative 'payments/exceptions/header_error_response_exception'
266
+ require_relative 'payments/exceptions/validation_error_response_exception'
267
+ require_relative 'payments/exceptions/pq_querybydaterange400_response_exception'
268
+ require_relative 'payments/exceptions/' \
269
+ 'pq_queryhistoricalpayments400_response_exception'
270
+ require_relative 'payments/exceptions/' \
271
+ 'pq_querybypaymentid404_response_error_exception'
272
+
273
+ require_relative 'payments/configuration'
274
+
275
+ # Controllers
276
+ require_relative 'payments/controllers/base_controller'
277
+ require_relative 'payments/controllers/payment_controller'
278
+ require_relative 'payments/controllers/m3_ds_actions_controller'
279
+ require_relative 'payments/controllers/manage_payments_controller'
280
+ require_relative 'payments/controllers/payment_queries_controller'
@@ -0,0 +1,29 @@
1
+ # payments
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ require 'json'
7
+ require 'minitest/autorun'
8
+ require 'minitest/hell'
9
+ require 'minitest/pride'
10
+ require 'minitest/proveit'
11
+ require 'payments'
12
+ require_relative '../http_response_catcher'
13
+
14
+ class ControllerTestBase < Minitest::Test
15
+ parallelize_me!
16
+ include Payments
17
+ include CoreLibrary
18
+
19
+ # Create configuration and set any test parameters
20
+ def create_configuration
21
+ Configuration.new(http_callback: HttpResponseCatcher.new)
22
+ end
23
+
24
+ # Initializes the base test controller
25
+ def setup_class
26
+ _config = create_configuration
27
+ @client = Client.new(config: _config)
28
+ end
29
+ end
@@ -0,0 +1,161 @@
1
+ # payments
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 PaymentControllerTest < ControllerTestBase
9
+ # Called only once for the class before any test has executed
10
+ def setup
11
+ setup_class
12
+ @controller = @client.payment
13
+ @response_catcher = @controller.http_call_back
14
+ end
15
+
16
+ # Initiate Payment. Take merchant entity as default if not provided
17
+ def test_payment
18
+ # Parameters for the API call
19
+ wp_api_version = '2024-06-01'
20
+ body = PaymentRequest.from_hash(APIHelper.json_deserialize(
21
+ '{"transactionReference":"Memory265-13/08/1876","merchant":{"entity":"de'\
22
+ 'fault"},"instruction":{"method":"card","paymentInstrument":{"type":"pla'\
23
+ 'in","cardHolderName":"Sherlock Holmes","cardNumber":"4000000000001091",'\
24
+ '"expiryDate":{"month":5,"year":2035},"billingAddress":{"address1":"221B'\
25
+ ' Baker Street","address2":"Marylebone","address3":"Westminster","postal'\
26
+ 'Code":"SW1 1AA","city":"London","state":"Greater London","countryCode":'\
27
+ '"GB"},"cvc":"123"},"narrative":{"line1":"trading name"},"value":{"curre'\
28
+ 'ncy":"GBP","amount":42}}}', false))
29
+
30
+ # Perform the API call through the SDK function
31
+ result = @controller.payment(wp_api_version, body)
32
+
33
+ # Test response code
34
+ assert_equal(201, @response_catcher.response.status_code)
35
+ # Test headers
36
+ expected_headers = {}
37
+ expected_headers['content-type'] = 'application/json; charset=utf-8'
38
+
39
+ assert(ComparisonHelper.match_headers(expected_headers, @response_catcher.response.headers))
40
+
41
+ # Test whether the captured response is as we expected
42
+ refute_nil(result)
43
+ expected_body = JSON.parse(
44
+ '{"outcome":"authorized","transactionReference":"Memory265-13/08/1876","'\
45
+ 'schemeReference":"060720116005060","issuer":{"authorizationCode":"67572'\
46
+ '5"},"riskFactors":[{"risk":"notChecked","type":"cvc"},{"risk":"notCheck'\
47
+ 'ed","detail":"address","type":"avs"},{"risk":"notChecked","detail":"pos'\
48
+ 'tcode","type":"avs"}],"paymentInstrument":{"type":"card/plain+masked","'\
49
+ 'cardBin":"400000","lastFour":"1000","countryCode":"GB","expiryDate":{"y'\
50
+ 'ear":2035,"month":5},"cardBrand":"mastercard","fundingType":"debit","ca'\
51
+ 'tegory":"consumer","issuerName":"BANK LIMITED","paymentAccountReference'\
52
+ '":"3001DBT34Q41D6J7PFC5W0UACOT4C"},"_links":{"self":{"href":"https://tr'\
53
+ 'y.access.worldpay.com/api/payments/eyJrIjoiazNhYjYzMiIsImxpbmtWZXJzaW9u'\
54
+ 'IjoiNS4wLjAifQ%3D%3D.sN%3Ag8wd64bwkbrp0md%2BbPxcanBnk2zLdsIqSa1pR99GeDr'\
55
+ 'CwEtsymFb5gQw9WlrStDTK3eIWPy93y%3A7njc4649JSrU7%2BvFDl1J36%2BcwOkX0lW4Z'\
56
+ '%2BfnZKMutoUGX3m1%3AmZ%2BxHZ9nDpadu%2BBh7pRyJwnWeiSFTlqKvbrBxNm3HV0xann'\
57
+ '55pFjZ7qi4DNGZtx9zW6eOLVNOsPL6ecsn3Dp377s7pWRQKSZJKSFIJvAisP8cBzFPzqire'\
58
+ 'uqfCu5ojcm60gRSsqS3glurO24RJkg5SrpRjgY6g7ca8uoA7tKDk9OVOIwORF5sGPHSSGMa'\
59
+ '2bEl2lMUkAANoWclQHiGzxWQQ%3AAwSoo6RsrBugbhEp0K8HxZkfVrqy4oVlW8FdQ7kIuZO'\
60
+ 'H78i6pPLzArc%2BOtMdnU%3ArZ%3AVhRHFzbbwymcuTiRbNw%3D"}},"_actions":{"can'\
61
+ 'celPayment":{"href":"https://try.access.worldpay.com/api/payments/eyJrI'\
62
+ 'joiazNhYjYzMiIsImxpbmtWZXJzaW9uIjoiNS4wLjAifQ%3D%3D.sN%3Ag8wd64bwkbrp0m'\
63
+ 'd%2BbPxcanBnk2zLdsIqSa1pR99GeDrCwEtsymFb5gQw9WlrStDTK3eIWPy93y%3A7njc46'\
64
+ '49JSrU7%2BvFDl1J36%2BcwOkX0lW4Z%2BfnZKMutoUGX3m1%3AmZ%2BxHZ9nDpadu%2BBh'\
65
+ '7pRyJwnWeiSFTlqKvbrBxNm3HV0xann55pFjZ7qi4DNGZtx9zW6eOLVNOsPL6ecsn3Dp377'\
66
+ 's7pWRQKSZJKSFIJvAisP8cBzFPzqireuqfCu5ojcm60gRSsqS3glurO24RJkg5SrpRjgY6g'\
67
+ '7ca8uoA7tKDk9OVOIwORF5sGPHSSGMa2bEl2lMUkAANoWclQHiGzxWQQ%3AAwSoo6RsrBug'\
68
+ 'bhEp0K8HxZkfVrqy4oVlW8FdQ7kIuZOH78i6pPLzArc%2BOtMdnU%3ArZ%3AVhRHFzbbwym'\
69
+ 'cuTiRbNw%3D/cancellations","method":"POST"},"settlePayment":{"href":"ht'\
70
+ 'tps://try.access.worldpay.com/api/payments/eyJrIjoiazNhYjYzMiIsImxpbmtW'\
71
+ 'ZXJzaW9uIjoiNS4wLjAifQ%3D%3D.sN%3Ag8wd64bwkbrp0md%2BbPxcanBnk2zLdsIqSa1'\
72
+ 'pR99GeDrCwEtsymFb5gQw9WlrStDTK3eIWPy93y%3A7njc4649JSrU7%2BvFDl1J36%2Bcw'\
73
+ 'OkX0lW4Z%2BfnZKMutoUGX3m1%3AmZ%2BxHZ9nDpadu%2BBh7pRyJwnWeiSFTlqKvbrBxNm'\
74
+ '3HV0xann55pFjZ7qi4DNGZtx9zW6eOLVNOsPL6ecsn3Dp377s7pWRQKSZJKSFIJvAisP8cB'\
75
+ 'zFPzqireuqfCu5ojcm60gRSsqS3glurO24RJkg5SrpRjgY6g7ca8uoA7tKDk9OVOIwORF5s'\
76
+ 'GPHSSGMa2bEl2lMUkAANoWclQHiGzxWQQ%3AAwSoo6RsrBugbhEp0K8HxZkfVrqy4oVlW8F'\
77
+ 'dQ7kIuZOH78i6pPLzArc%2BOtMdnU%3ArZ%3AVhRHFzbbwymcuTiRbNw%3D/settlements'\
78
+ '","method":"POST"},"partiallySettlePayment":{"href":"https://try.access'\
79
+ '.worldpay.com/api/payments/eyJrIjoiazNhYjYzMiIsImxpbmtWZXJzaW9uIjoiNS4w'\
80
+ 'LjAifQ%3D%3D.sN%3Ag8wd64bwkbrp0md%2BbPxcanBnk2zLdsIqSa1pR99GeDrCwEtsymF'\
81
+ 'b5gQw9WlrStDTK3eIWPy93y%3A7njc4649JSrU7%2BvFDl1J36%2BcwOkX0lW4Z%2BfnZKM'\
82
+ 'utoUGX3m1%3AmZ%2BxHZ9nDpadu%2BBh7pRyJwnWeiSFTlqKvbrBxNm3HV0xann55pFjZ7q'\
83
+ 'i4DNGZtx9zW6eOLVNOsPL6ecsn3Dp377s7pWRQKSZJKSFIJvAisP8cBzFPzqireuqfCu5oj'\
84
+ 'cm60gRSsqS3glurO24RJkg5SrpRjgY6g7ca8uoA7tKDk9OVOIwORF5sGPHSSGMa2bEl2lMU'\
85
+ 'kAANoWclQHiGzxWQQ%3AAwSoo6RsrBugbhEp0K8HxZkfVrqy4oVlW8FdQ7kIuZOH78i6pPL'\
86
+ 'zArc%2BOtMdnU%3ArZ%3AVhRHFzbbwymcuTiRbNw%3D/partialSettlements","method'\
87
+ '":"POST"}}}'
88
+ )
89
+ received_body = JSON.parse(@response_catcher.response.raw_body)
90
+ assert(ComparisonHelper.match_body(expected_body, received_body))
91
+ end
92
+
93
+ # Initiate Payment. Take merchant entity as default if not provided
94
+ def test_payment1
95
+ # Parameters for the API call
96
+ wp_api_version = '2024-06-01'
97
+ body = PaymentRequest.from_hash(APIHelper.json_deserialize(
98
+ '{"transactionReference":"Memory265-13/08/1876","merchant":{"entity":"de'\
99
+ 'fault"},"instruction":{"method":"card","paymentInstrument":{"type":"pla'\
100
+ 'in","cardHolderName":"Sherlock Holmes","cardNumber":"4000000000001091",'\
101
+ '"expiryDate":{"month":5,"year":2035},"billingAddress":{"address1":"221B'\
102
+ ' Baker Street","address2":"Marylebone","address3":"Westminster","postal'\
103
+ 'Code":"SW1 1AA","city":"London","state":"Greater London","countryCode":'\
104
+ '"GB"},"cvc":"123"},"narrative":{"line1":"trading name"},"value":{"curre'\
105
+ 'ncy":"GBP","amount":42}}}', false))
106
+
107
+ # Perform the API call through the SDK function
108
+ result = @controller.payment(wp_api_version, body)
109
+
110
+ # Test response code
111
+ assert_equal(202, @response_catcher.response.status_code)
112
+ # Test headers
113
+ expected_headers = {}
114
+ expected_headers['content-type'] = 'application/json; charset=utf-8'
115
+
116
+ assert(ComparisonHelper.match_headers(expected_headers, @response_catcher.response.headers))
117
+
118
+ # Test whether the captured response is as we expected
119
+ refute_nil(result)
120
+ expected_body = JSON.parse(
121
+ '{"outcome":"sentForSettlement","transactionReference":"Memory265-13/08/'\
122
+ '1876","schemeReference":"060720116005060","issuer":{"authorizationCode"'\
123
+ ':"675725"},"riskFactors":[{"risk":"notChecked","type":"cvc"},{"risk":"n'\
124
+ 'otChecked","detail":"address","type":"avs"},{"risk":"notChecked","detai'\
125
+ 'l":"postcode","type":"avs"}],"paymentInstrument":{"type":"card/plain+ma'\
126
+ 'sked","cardBin":"400000","lastFour":"1000","countryCode":"GB","expiryDa'\
127
+ 'te":{"year":2035,"month":5},"cardBrand":"mastercard","fundingType":"deb'\
128
+ 'it","category":"consumer","issuerName":"BANK LIMITED","paymentAccountRe'\
129
+ 'ference":"3001DBT34Q41D6J7PFC5W0UACOT4C"},"_links":{"self":{"href":"htt'\
130
+ 'ps://try.access.worldpay.com/api/payments/eyJrIjoiazNhYjYzMiIsImxpbmtWZ'\
131
+ 'XJzaW9uIjoiNS4wLjAifQ%3D%3D.sN%3Ag8wd64bwkbrp0md%2BbPxcanBnk2zLdsIqSa1p'\
132
+ 'R99GeDrCwEtsymFb5gQw9WlrStDTK3eIWPy93y%3A7njc4649JSrU7%2BvFDl1J36%2BcwO'\
133
+ 'kX0lW4Z%2BfnZKMutoUGX3m1%3AmUCGmlXGGNqJmZcIdZa%3Aufi8N9Y8uwrkGtx1suHsSF'\
134
+ 'nXn2PMsm%3AcRBXHzZt3giUlFW6eOLVNOsPL6ecsn3Dp377s7pWRQKSZJKSFIJvAisP8cBz'\
135
+ 'FPzqireuqfCu5ojcm60gRSsqS3glurO24RJkg5SrpRjgY6g7ca8uoA7tKDk9OVOIwORF5sG'\
136
+ 'PHSSGMa2bEl2lMUkAANoWclQHiGzxWQQ2hKYh1GAhFAwfPvBamw%3AisDwI2AuXQ9KT%3AM'\
137
+ 't9SY%3AfYERqcZ58SBNT3Gkwn1j%2Bkd7LZ%3AVhRHFzbbwymcuTiRbNw%3D"}},"_actio'\
138
+ 'ns":{"refundPayment":{"href":"https://try.access.worldpay.com/api/payme'\
139
+ 'nts/eyJrIjoiazNhYjYzMiIsImxpbmtWZXJzaW9uIjoiNS4wLjAifQ%3D%3D.sN%3Ag8wd6'\
140
+ '4bwkbrp0md%2BbPxcanBnk2zLdsIqSa1pR99GeDrCwEtsymFb5gQw9WlrStDTK3eIWPy93y'\
141
+ '%3A7njc4649JSrU7%2BvFDl1J36%2BcwOkX0lW4Z%2BfnZKMutoUGX3m1%3AmUCGmlXGGNq'\
142
+ 'JmZcIdZa%3Aufi8N9Y8uwrkGtx1suHsSFnXn2PMsm%3AcRBXHzZt3giUlFW6eOLVNOsPL6e'\
143
+ 'csn3Dp377s7pWRQKSZJKSFIJvAisP8cBzFPzqireuqfCu5ojcm60gRSsqS3glurO24RJkg5'\
144
+ 'SrpRjgY6g7ca8uoA7tKDk9OVOIwORF5sGPHSSGMa2bEl2lMUkAANoWclQHiGzxWQQ2hKYh1'\
145
+ 'GAhFAwfPvBamw%3AisDwI2AuXQ9KT%3AMt9SY%3AfYERqcZ58SBNT3Gkwn1j%2Bkd7LZ%3A'\
146
+ 'VhRHFzbbwymcuTiRbNw%3D/refunds","method":"POST"},"partiallyRefundPaymen'\
147
+ 't":{"href":"https://try.access.worldpay.com/api/payments/eyJrIjoiazNhYj'\
148
+ 'YzMiIsImxpbmtWZXJzaW9uIjoiNS4wLjAifQ%3D%3D.sN%3Ag8wd64bwkbrp0md%2BbPxca'\
149
+ 'nBnk2zLdsIqSa1pR99GeDrCwEtsymFb5gQw9WlrStDTK3eIWPy93y%3A7njc4649JSrU7%2'\
150
+ 'BvFDl1J36%2BcwOkX0lW4Z%2BfnZKMutoUGX3m1%3AmUCGmlXGGNqJmZcIdZa%3Aufi8N9Y'\
151
+ '8uwrkGtx1suHsSFnXn2PMsm%3AcRBXHzZt3giUlFW6eOLVNOsPL6ecsn3Dp377s7pWRQKSZ'\
152
+ 'JKSFIJvAisP8cBzFPzqireuqfCu5ojcm60gRSsqS3glurO24RJkg5SrpRjgY6g7ca8uoA7t'\
153
+ 'KDk9OVOIwORF5sGPHSSGMa2bEl2lMUkAANoWclQHiGzxWQQ2hKYh1GAhFAwfPvBamw%3Ais'\
154
+ 'DwI2AuXQ9KT%3AMt9SY%3AfYERqcZ58SBNT3Gkwn1j%2Bkd7LZ%3AVhRHFzbbwymcuTiRbN'\
155
+ 'w%3D/partialRefunds","method":"POST"}}}'
156
+ )
157
+ received_body = JSON.parse(@response_catcher.response.raw_body)
158
+ assert(ComparisonHelper.match_body(expected_body, received_body))
159
+ end
160
+
161
+ end
@@ -0,0 +1,68 @@
1
+ # payments
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 PaymentQueriesControllerTest < ControllerTestBase
9
+ # Called only once for the class before any test has executed
10
+ def setup
11
+ setup_class
12
+ @controller = @client.payment_queries
13
+ @response_catcher = @controller.http_call_back
14
+ end
15
+
16
+ # Retrieve a single payment by payment ID.
17
+ #
18
+ #The API returns detailed data for payments processed after 25 June 2024. For payments processed before then use our [query for historical payments](/products/payment-queries/@v1/query-archive.md).
19
+ def test_retrieve_by_payment_id
20
+ # Parameters for the API call
21
+ accept = 'application/vnd.worldpay.payment-queries-v1.hal+json'
22
+ payment_id = 'payv0A4Hx2eY1-5P2_CpV7qy0'
23
+
24
+ # Perform the API call through the SDK function
25
+ result = @controller.retrieve_by_payment_id(accept, payment_id)
26
+
27
+ # Test response code
28
+ assert_equal(200, @response_catcher.response.status_code)
29
+ # Test headers
30
+ expected_headers = {}
31
+ expected_headers['content-type'] = 'application/vnd.worldpay.payment-queries-v1.hal+json'
32
+
33
+ assert(ComparisonHelper.match_headers(expected_headers, @response_catcher.response.headers))
34
+
35
+ # Test whether the captured response is as we expected
36
+ refute_nil(result)
37
+ expected_body = JSON.parse(
38
+ '{"timestamp":"2025-06-08T16:11:13.164Z","paymentId":"payVGX28GOT7iDY5qa'\
39
+ 'nttPWF0","transactionReference":"89197aeb-c94a-456e-8014-1272fbcb64eb",'\
40
+ '"narrative":{"line1":"trading name","line2":"order number"},"transactio'\
41
+ 'nType":"oneTime","authorizationType":"authorization","entity":"default"'\
42
+ ',"lastEvent":"authorizationSucceeded","issuer":{"authorizationCode":"T3'\
43
+ '1306"},"scheme":{"reference":"MCCOLXT1C0104 "},"paymentInstrument":{"t'\
44
+ 'ype":"card/plain+masked","card":{"number":{"last4Digits":"1111","cardBi'\
45
+ 'n":"444433"},"brand":"visa","expiryDate":{"month":5,"year":2030},"count'\
46
+ 'ryCode":"GB","fundingType":"credit","issuerName":"AN ISSUING BANK LTD",'\
47
+ '"paymentAccountReference":"Q1HJZ28RKA1EBL470G9XYG90R5D3E","category":"c'\
48
+ 'onsumer"}},"value":{"currency":"GBP","amount":1200},"events":[{"eventNa'\
49
+ 'me":"authorizationRequested","timestamp":"2025-06-08T16:11:13.164Z","co'\
50
+ 'mmandId":"cmd0-IiS92BsJR8VaJ10V_420"},{"eventName":"authorizationSuccee'\
51
+ 'ded","timestamp":"2025-06-08T16:11:14.229Z","outcome":"authorized","com'\
52
+ 'mandId":"cmd0-IiS92BsJR8VaJ10V_420"}],"_links":{"self":{"href":"/paymen'\
53
+ 'tQueries/payments/payv0A4Hx2eY1-5P2_CpV7qy0"},"cardPayments:cancel":{"h'\
54
+ 'ref":"https://access.worldpay.com/payments/authorizations/cancellations'\
55
+ '/{linkData}"},"cardPayments:settle":{"href":"https://access.worldpay.co'\
56
+ 'm/payments/settlements/full/{linkData}"},"cardPayments:partialSettle":{'\
57
+ '"href":"https://access.worldpay.com/payments/settlements/partials/{link'\
58
+ 'Data}"},"cardPayments:events":{"href":"https://access.worldpay.com/paym'\
59
+ 'ents/events/{linkData}"},"cardPayments:partialCancel":{"href":"https://'\
60
+ 'access.worldpay.com/payments/authorizations/cancellations/partials/{lin'\
61
+ 'kData}"},"cardPayments:reverse":{"href":"https://access.worldpay.com/pa'\
62
+ 'yments/authorizations/reversals/{linkData}"}}}'
63
+ )
64
+ received_body = JSON.parse(@response_catcher.response.raw_body)
65
+ assert(ComparisonHelper.match_body(expected_body, received_body))
66
+ end
67
+
68
+ end
@@ -0,0 +1,19 @@
1
+ # payments
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ class HttpResponseCatcher < Payments::HttpCallBack
7
+ attr_reader :response
8
+
9
+ def on_before_request(request)
10
+ end
11
+
12
+ # Catching the response
13
+ def on_after_response(response)
14
+ @response = response
15
+ end
16
+ end
17
+
18
+
19
+