first_data_gateway 1.0.3 → 1.1.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 (387) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -0
  3. data/README.md +144 -65
  4. data/Rakefile +2 -0
  5. data/docs/AVSResponse.md +9 -0
  6. data/docs/AccessTokenResponse.md +2 -3
  7. data/docs/AdditionalAmountRate.md +9 -0
  8. data/docs/AdditionalTransactionDetails.md +10 -0
  9. data/docs/Address.md +5 -5
  10. data/docs/Airline.md +14 -14
  11. data/docs/AirlineAncillaryServiceCategory.md +2 -2
  12. data/docs/AirlineTravelRoute.md +8 -8
  13. data/docs/AliPay.md +11 -0
  14. data/docs/Amount.md +2 -2
  15. data/docs/AmountComponents.md +8 -8
  16. data/docs/AuthenticationApi.md +19 -24
  17. data/docs/AuthenticationRequest.md +9 -0
  18. data/docs/AuthenticationResponseVerification.md +5 -4
  19. data/docs/AuthenticationResponseVerificationRequest.md +11 -0
  20. data/docs/BasicResponse.md +10 -0
  21. data/docs/BasketItem.md +2 -2
  22. data/docs/Billing.md +6 -5
  23. data/docs/BillingAddress.md +17 -0
  24. data/docs/BillingAddressPhone.md +9 -0
  25. data/docs/CarRental.md +9 -9
  26. data/docs/CarRentalExtraCharges.md +2 -2
  27. data/docs/Card.md +15 -0
  28. data/docs/CardInfo.md +13 -0
  29. data/docs/CardInfoLookupApi.md +68 -0
  30. data/docs/CardInfoLookupRequest.md +9 -0
  31. data/docs/CardInfoLookupResponse.md +12 -0
  32. data/docs/CardVerificationApi.md +68 -0
  33. data/docs/CardVerificationRequest.md +9 -0
  34. data/docs/CardVerificationsTransaction.md +2 -2
  35. data/docs/ChinaDomestic.md +15 -0
  36. data/docs/ClientLocale.md +3 -3
  37. data/docs/Contact.md +5 -5
  38. data/docs/CurrencyConversionApi.md +68 -0
  39. data/docs/Customer.md +19 -0
  40. data/docs/CustomerAddress.md +14 -0
  41. data/docs/CustomerAddressPhone.md +9 -0
  42. data/docs/Dcc.md +9 -0
  43. data/docs/Device.md +19 -0
  44. data/docs/DeviceNetworks.md +21 -0
  45. data/docs/Document.md +9 -0
  46. data/docs/Error.md +1 -1
  47. data/docs/ErrorDetails.md +1 -1
  48. data/docs/ErrorResponse.md +4 -4
  49. data/docs/ExchangeRateRequest.md +12 -0
  50. data/docs/ExchangeRateResponse.md +21 -0
  51. data/docs/Expiration.md +3 -3
  52. data/docs/FraudDetectApi.md +68 -0
  53. data/docs/FraudOrder.md +10 -0
  54. data/docs/FraudOrderItems.md +15 -0
  55. data/docs/FraudOrderShipToAddress.md +14 -0
  56. data/docs/Frequency.md +3 -3
  57. data/docs/IndustrySpecificExtensions.md +1 -1
  58. data/docs/InstallmentOptions.md +1 -1
  59. data/docs/Lodging.md +3 -3
  60. data/docs/LodgingExtraCharges.md +1 -1
  61. data/docs/Loyalty.md +10 -0
  62. data/docs/Merchant.md +11 -0
  63. data/docs/MerchantLocation.md +12 -0
  64. data/docs/MerchantLocationMerchantAddress.md +13 -0
  65. data/docs/Order.md +2 -2
  66. data/docs/OrderApi.md +107 -55
  67. data/docs/OrderErrorResponse.md +19 -0
  68. data/docs/OrderResponse.md +18 -0
  69. data/docs/PayPal.md +1 -1
  70. data/docs/Payment.md +18 -0
  71. data/docs/PaymentApi.md +164 -124
  72. data/docs/PaymentCard.md +10 -6
  73. data/docs/PaymentCardAuthenticationResult.md +1 -1
  74. data/docs/PaymentFacilitator.md +12 -0
  75. data/docs/PaymentIssuerResponse.md +10 -0
  76. data/docs/PaymentMethod.md +5 -2
  77. data/docs/PaymentPayMethod.md +13 -0
  78. data/docs/PaymentSchedulesApi.md +256 -0
  79. data/docs/PaymentSchedulesErrorResponse.md +14 -0
  80. data/docs/PaymentSchedulesRequest.md +10 -7
  81. data/docs/PaymentSchedulesResponse.md +7 -5
  82. data/docs/PaymentTokenApi.md +134 -0
  83. data/docs/PaymentTokenization.md +16 -0
  84. data/docs/PaymentTokenizationErrorResponse.md +19 -0
  85. data/docs/PaymentTokenizationRequest.md +11 -0
  86. data/docs/PaymentTokenizationResponse.md +18 -0
  87. data/docs/PaymentURLApi.md +68 -0
  88. data/docs/PaymentUrlErrorResponse.md +15 -0
  89. data/docs/PaymentUrlRequest.md +13 -3
  90. data/docs/PaymentUrlResponse.md +6 -5
  91. data/docs/PaymentVerification3ds.md +10 -0
  92. data/docs/PaymentVerificationAvs.md +10 -0
  93. data/docs/PaymentVerificationCvv.md +10 -0
  94. data/docs/PrimaryTransaction.md +7 -3
  95. data/docs/PrimaryTransactionAdditionalDetails.md +7 -5
  96. data/docs/ProcessorData.md +8 -4
  97. data/docs/PurchaseCards.md +9 -0
  98. data/docs/PurchaseCardsLevel2.md +12 -0
  99. data/docs/PurchaseCardsLevel3.md +8 -0
  100. data/docs/PurchaseCardsLevel3LineItems.md +16 -0
  101. data/docs/RecurringPaymentDetails.md +20 -0
  102. data/docs/RecurringPaymentDetailsResponse.md +19 -0
  103. data/docs/ReferencedOrder.md +9 -0
  104. data/docs/ResponseType.md +1 -1
  105. data/docs/ScoreOnlyRequest.md +21 -0
  106. data/docs/ScoreOnlyResponse.md +13 -0
  107. data/docs/ScoreOnlyResponseFraudScore.md +10 -0
  108. data/docs/ScoreOnlyResponseFraudScoreExplanations.md +10 -0
  109. data/docs/SecondaryTransaction.md +4 -1
  110. data/docs/SecondaryTransactionAdditionalDetails.md +8 -0
  111. data/docs/Secure3dResponse.md +8 -0
  112. data/docs/Sepa.md +1 -1
  113. data/docs/SepaMandate.md +3 -3
  114. data/docs/Shipping.md +1 -1
  115. data/docs/SoftDescriptor.md +9 -0
  116. data/docs/SplitShipment.md +3 -3
  117. data/docs/StoredCredential.md +4 -4
  118. data/docs/SubMerchantData.md +13 -0
  119. data/docs/Transaction.md +19 -0
  120. data/docs/TransactionErrorResponse.md +13 -11
  121. data/docs/TransactionOrigin.md +7 -0
  122. data/docs/TransactionResponse.md +13 -11
  123. data/docs/TransactionType.md +1 -1
  124. data/first_data_gateway.gemspec +9 -9
  125. data/git_push.sh +2 -2
  126. data/lib/openapi_client/.DS_Store +0 -0
  127. data/lib/{swagger_client → openapi_client}/api/authentication_api.rb +22 -27
  128. data/lib/openapi_client/api/card_info_lookup_api.rb +117 -0
  129. data/lib/openapi_client/api/card_verification_api.rb +117 -0
  130. data/lib/openapi_client/api/currency_conversion_api.rb +117 -0
  131. data/lib/openapi_client/api/fraud_detect_api.rb +122 -0
  132. data/lib/openapi_client/api/order_api.rb +327 -0
  133. data/lib/{swagger_client → openapi_client}/api/payment_api.rb +212 -111
  134. data/lib/openapi_client/api/payment_schedules_api.rb +411 -0
  135. data/lib/openapi_client/api/payment_token_api.rb +218 -0
  136. data/lib/openapi_client/api/payment_url_api.rb +117 -0
  137. data/lib/{swagger_client → openapi_client}/api_client.rb +50 -38
  138. data/lib/{swagger_client → openapi_client}/api_error.rb +6 -6
  139. data/lib/{swagger_client → openapi_client}/configuration.rb +49 -7
  140. data/lib/openapi_client/models/.DS_Store +0 -0
  141. data/lib/{swagger_client → openapi_client}/models/access_token_response.rb +20 -33
  142. data/lib/{swagger_client/models/secondary_transaction.rb → openapi_client/models/additional_amount_rate.rb} +25 -28
  143. data/lib/{swagger_client/models/primary_transaction_additional_details.rb → openapi_client/models/additional_transaction_details.rb} +68 -62
  144. data/lib/{swagger_client → openapi_client}/models/address.rb +33 -44
  145. data/lib/{swagger_client → openapi_client}/models/airline.rb +48 -47
  146. data/lib/{swagger_client → openapi_client}/models/airline_ancillary_service_category.rb +18 -21
  147. data/lib/{swagger_client → openapi_client}/models/airline_travel_route.rb +39 -42
  148. data/lib/openapi_client/models/ali_pay.rb +326 -0
  149. data/lib/{swagger_client → openapi_client}/models/amount.rb +18 -21
  150. data/lib/{swagger_client → openapi_client}/models/amount_components.rb +22 -19
  151. data/lib/{swagger_client/models/transaction_response_authentication_redirect.rb → openapi_client/models/authentication_request.rb} +33 -38
  152. data/lib/{swagger_client → openapi_client}/models/authentication_response_verification.rb +43 -30
  153. data/lib/{swagger_client/models/payment_url_request.rb → openapi_client/models/authentication_response_verification_request.rb} +35 -56
  154. data/lib/openapi_client/models/avs_response.rb +239 -0
  155. data/lib/openapi_client/models/basic_response.rb +209 -0
  156. data/lib/{swagger_client → openapi_client}/models/basket_item.rb +16 -20
  157. data/lib/{swagger_client → openapi_client}/models/billing.rb +65 -25
  158. data/lib/openapi_client/models/billing_address.rb +279 -0
  159. data/lib/{swagger_client/models/transaction_response_authentication_redirect_params.rb → openapi_client/models/billing_address_phone.rb} +31 -42
  160. data/lib/{swagger_client → openapi_client}/models/car_rental.rb +31 -31
  161. data/lib/{swagger_client → openapi_client}/models/car_rental_extra_charges.rb +18 -21
  162. data/lib/openapi_client/models/card.rb +254 -0
  163. data/lib/{swagger_client/models/payment_card.rb → openapi_client/models/card_info.rb} +68 -81
  164. data/lib/openapi_client/models/card_info_lookup_request.rb +214 -0
  165. data/lib/openapi_client/models/card_info_lookup_response.rb +265 -0
  166. data/lib/openapi_client/models/card_verification_request.rb +198 -0
  167. data/lib/{swagger_client → openapi_client}/models/card_verifications_transaction.rb +31 -20
  168. data/lib/openapi_client/models/china_domestic.rb +386 -0
  169. data/lib/{swagger_client → openapi_client}/models/client_locale.rb +19 -23
  170. data/lib/{swagger_client → openapi_client}/models/contact.rb +26 -31
  171. data/lib/openapi_client/models/customer.rb +333 -0
  172. data/lib/openapi_client/models/customer_address.rb +259 -0
  173. data/lib/openapi_client/models/customer_address_phone.rb +195 -0
  174. data/lib/openapi_client/models/dcc.rb +200 -0
  175. data/lib/openapi_client/models/device.rb +340 -0
  176. data/lib/openapi_client/models/device_networks.rb +353 -0
  177. data/lib/{swagger_client/models/payment_card_authentication_request.rb → openapi_client/models/document.rb} +62 -26
  178. data/lib/{swagger_client → openapi_client}/models/error.rb +14 -18
  179. data/lib/{swagger_client → openapi_client}/models/error_details.rb +14 -19
  180. data/lib/{swagger_client → openapi_client}/models/error_response.rb +22 -22
  181. data/lib/openapi_client/models/exchange_rate_request.rb +307 -0
  182. data/lib/openapi_client/models/exchange_rate_response.rb +319 -0
  183. data/lib/{swagger_client → openapi_client}/models/expiration.rb +18 -20
  184. data/lib/openapi_client/models/fraud_order.rb +206 -0
  185. data/lib/openapi_client/models/fraud_order_items.rb +253 -0
  186. data/lib/openapi_client/models/fraud_order_ship_to_address.rb +245 -0
  187. data/lib/{swagger_client → openapi_client}/models/frequency.rb +27 -30
  188. data/lib/{swagger_client → openapi_client}/models/industry_specific_extensions.rb +15 -19
  189. data/lib/{swagger_client → openapi_client}/models/installment_options.rb +22 -28
  190. data/lib/{swagger_client → openapi_client}/models/lodging.rb +19 -22
  191. data/lib/{swagger_client → openapi_client}/models/lodging_extra_charges.rb +17 -21
  192. data/lib/openapi_client/models/loyalty.rb +205 -0
  193. data/lib/openapi_client/models/merchant.rb +219 -0
  194. data/lib/openapi_client/models/merchant_location.rb +224 -0
  195. data/lib/openapi_client/models/merchant_location_merchant_address.rb +250 -0
  196. data/lib/{swagger_client/models/processor_data.rb → openapi_client/models/order.rb} +49 -47
  197. data/lib/openapi_client/models/order_error_response.rb +296 -0
  198. data/lib/openapi_client/models/order_response.rb +287 -0
  199. data/lib/{swagger_client → openapi_client}/models/pay_pal.rb +19 -23
  200. data/lib/openapi_client/models/payment.rb +346 -0
  201. data/lib/openapi_client/models/payment_card.rb +363 -0
  202. data/lib/{swagger_client → openapi_client}/models/payment_card_authentication_result.rb +32 -37
  203. data/lib/openapi_client/models/payment_facilitator.rb +292 -0
  204. data/lib/openapi_client/models/payment_issuer_response.rb +249 -0
  205. data/lib/openapi_client/models/payment_method.rb +278 -0
  206. data/lib/openapi_client/models/payment_pay_method.rb +278 -0
  207. data/lib/openapi_client/models/payment_schedules_error_response.rb +281 -0
  208. data/lib/{swagger_client → openapi_client}/models/payment_schedules_request.rb +83 -80
  209. data/lib/openapi_client/models/payment_schedules_response.rb +272 -0
  210. data/lib/openapi_client/models/payment_tokenization.rb +327 -0
  211. data/lib/openapi_client/models/payment_tokenization_error_response.rb +329 -0
  212. data/lib/{swagger_client/models/payment_method.rb → openapi_client/models/payment_tokenization_request.rb} +34 -37
  213. data/lib/openapi_client/models/payment_tokenization_response.rb +319 -0
  214. data/lib/openapi_client/models/payment_url_error_response.rb +292 -0
  215. data/lib/openapi_client/models/payment_url_request.rb +335 -0
  216. data/lib/{swagger_client → openapi_client}/models/payment_url_response.rb +35 -38
  217. data/lib/openapi_client/models/payment_verification3ds.rb +215 -0
  218. data/lib/openapi_client/models/payment_verification_avs.rb +215 -0
  219. data/lib/openapi_client/models/payment_verification_cvv.rb +215 -0
  220. data/lib/{swagger_client → openapi_client}/models/primary_transaction.rb +93 -31
  221. data/lib/openapi_client/models/primary_transaction_additional_details.rb +352 -0
  222. data/lib/openapi_client/models/processor_data.rb +272 -0
  223. data/lib/openapi_client/models/purchase_cards.rb +192 -0
  224. data/lib/openapi_client/models/purchase_cards_level2.rb +267 -0
  225. data/lib/openapi_client/models/purchase_cards_level3.rb +186 -0
  226. data/lib/openapi_client/models/purchase_cards_level3_line_items.rb +337 -0
  227. data/lib/openapi_client/models/recurring_payment_details.rb +399 -0
  228. data/lib/openapi_client/models/recurring_payment_details_response.rb +296 -0
  229. data/lib/{swagger_client/models/order.rb → openapi_client/models/referenced_order.rb} +23 -36
  230. data/lib/openapi_client/models/response_type.rb +37 -0
  231. data/lib/openapi_client/models/score_only_request.rb +389 -0
  232. data/lib/{swagger_client/models/payment_schedules_response.rb → openapi_client/models/score_only_response.rb} +56 -56
  233. data/lib/openapi_client/models/score_only_response_fraud_score.rb +208 -0
  234. data/lib/openapi_client/models/score_only_response_fraud_score_explanations.rb +201 -0
  235. data/lib/openapi_client/models/secondary_transaction.rb +220 -0
  236. data/lib/openapi_client/models/secondary_transaction_additional_details.rb +183 -0
  237. data/lib/openapi_client/models/secure3d_response.rb +184 -0
  238. data/lib/{swagger_client → openapi_client}/models/sepa.rb +30 -35
  239. data/lib/{swagger_client → openapi_client}/models/sepa_mandate.rb +32 -35
  240. data/lib/{swagger_client → openapi_client}/models/shipping.rb +17 -22
  241. data/lib/openapi_client/models/soft_descriptor.rb +215 -0
  242. data/lib/{swagger_client → openapi_client}/models/split_shipment.rb +17 -21
  243. data/lib/{swagger_client → openapi_client}/models/stored_credential.rb +28 -32
  244. data/lib/openapi_client/models/sub_merchant_data.rb +302 -0
  245. data/lib/openapi_client/models/transaction.rb +337 -0
  246. data/lib/{swagger_client → openapi_client}/models/transaction_error_response.rb +110 -80
  247. data/lib/openapi_client/models/transaction_origin.rb +32 -0
  248. data/lib/{swagger_client → openapi_client}/models/transaction_response.rb +112 -82
  249. data/lib/openapi_client/models/transaction_type.rb +36 -0
  250. data/lib/openapi_client/version.rb +15 -0
  251. data/lib/openapi_client.rb +158 -0
  252. data/lib/simple/client_context.rb +2 -2
  253. data/lib/simple/gateway.rb +274 -37
  254. data/spec/api/authentication_api_spec.rb +12 -12
  255. data/spec/api/card_info_lookup_api_spec.rb +53 -0
  256. data/spec/api/card_verification_api_spec.rb +53 -0
  257. data/spec/api/currency_conversion_api_spec.rb +53 -0
  258. data/spec/api/fraud_detect_api_spec.rb +53 -0
  259. data/spec/api/order_api_spec.rb +44 -23
  260. data/spec/api/payment_api_spec.rb +50 -26
  261. data/spec/api/payment_schedules_api_spec.rb +111 -0
  262. data/spec/api/payment_token_api_spec.rb +74 -0
  263. data/spec/api/payment_url_api_spec.rb +53 -0
  264. data/spec/api_client_spec.rb +66 -66
  265. data/spec/configuration_spec.rb +15 -15
  266. data/spec/models/access_token_response_spec.rb +16 -23
  267. data/spec/models/additional_amount_rate_spec.rb +47 -0
  268. data/spec/models/additional_transaction_details_spec.rb +53 -0
  269. data/spec/models/address_spec.rb +16 -17
  270. data/spec/models/airline_ancillary_service_category_spec.rb +14 -15
  271. data/spec/models/airline_spec.rb +27 -28
  272. data/spec/models/airline_travel_route_spec.rb +22 -23
  273. data/spec/models/ali_pay_spec.rb +63 -0
  274. data/spec/models/amount_components_spec.rb +16 -17
  275. data/spec/models/amount_spec.rb +12 -13
  276. data/spec/models/authentication_request_spec.rb +51 -0
  277. data/spec/models/authentication_response_verification_request_spec.rb +59 -0
  278. data/spec/models/authentication_response_verification_spec.rb +23 -18
  279. data/spec/models/avs_response_spec.rb +55 -0
  280. data/spec/models/basic_response_spec.rb +53 -0
  281. data/spec/models/basket_item_spec.rb +13 -14
  282. data/spec/models/billing_address_phone_spec.rb +47 -0
  283. data/spec/models/billing_address_spec.rb +95 -0
  284. data/spec/models/billing_spec.rb +25 -20
  285. data/spec/models/car_rental_extra_charges_spec.rb +14 -15
  286. data/spec/models/car_rental_spec.rb +17 -18
  287. data/spec/models/card_info_lookup_request_spec.rb +47 -0
  288. data/spec/models/card_info_lookup_response_spec.rb +69 -0
  289. data/spec/models/card_info_spec.rb +79 -0
  290. data/spec/models/card_spec.rb +83 -0
  291. data/spec/models/card_verification_request_spec.rb +47 -0
  292. data/spec/models/card_verifications_transaction_spec.rb +11 -12
  293. data/spec/models/china_domestic_spec.rb +83 -0
  294. data/spec/models/client_locale_spec.rb +11 -12
  295. data/spec/models/contact_spec.rb +13 -14
  296. data/spec/models/customer_address_phone_spec.rb +47 -0
  297. data/spec/models/customer_address_spec.rb +77 -0
  298. data/spec/models/customer_spec.rb +111 -0
  299. data/spec/models/dcc_spec.rb +47 -0
  300. data/spec/models/device_networks_spec.rb +123 -0
  301. data/spec/models/device_spec.rb +111 -0
  302. data/spec/models/document_spec.rb +51 -0
  303. data/spec/models/error_details_spec.rb +11 -12
  304. data/spec/models/error_response_spec.rb +13 -14
  305. data/spec/models/error_spec.rb +12 -13
  306. data/spec/models/exchange_rate_request_spec.rb +69 -0
  307. data/spec/models/exchange_rate_response_spec.rb +119 -0
  308. data/spec/models/expiration_spec.rb +11 -12
  309. data/spec/models/fraud_order_items_spec.rb +83 -0
  310. data/spec/models/fraud_order_ship_to_address_spec.rb +77 -0
  311. data/spec/models/fraud_order_spec.rb +53 -0
  312. data/spec/models/frequency_spec.rb +15 -16
  313. data/spec/models/industry_specific_extensions_spec.rb +12 -13
  314. data/spec/models/installment_options_spec.rb +12 -13
  315. data/spec/models/lodging_extra_charges_spec.rb +14 -15
  316. data/spec/models/lodging_spec.rb +14 -15
  317. data/spec/models/loyalty_spec.rb +53 -0
  318. data/spec/models/merchant_location_merchant_address_spec.rb +71 -0
  319. data/spec/models/merchant_location_spec.rb +65 -0
  320. data/spec/models/merchant_spec.rb +59 -0
  321. data/spec/models/order_error_response_spec.rb +107 -0
  322. data/spec/models/order_response_spec.rb +101 -0
  323. data/spec/models/order_spec.rb +12 -13
  324. data/spec/models/pay_pal_spec.rb +10 -11
  325. data/spec/models/payment_card_authentication_result_spec.rb +26 -27
  326. data/spec/models/payment_card_spec.rb +41 -22
  327. data/spec/models/payment_facilitator_spec.rb +65 -0
  328. data/spec/models/payment_issuer_response_spec.rb +57 -0
  329. data/spec/models/payment_method_spec.rb +35 -18
  330. data/spec/models/payment_pay_method_spec.rb +75 -0
  331. data/spec/models/payment_schedules_error_response_spec.rb +81 -0
  332. data/spec/models/payment_schedules_request_spec.rb +43 -30
  333. data/spec/models/payment_schedules_response_spec.rb +30 -19
  334. data/spec/models/payment_spec.rb +109 -0
  335. data/spec/models/payment_tokenization_error_response_spec.rb +111 -0
  336. data/spec/models/payment_tokenization_request_spec.rb +63 -0
  337. data/spec/models/payment_tokenization_response_spec.rb +105 -0
  338. data/spec/models/payment_tokenization_spec.rb +93 -0
  339. data/spec/models/payment_url_error_response_spec.rb +87 -0
  340. data/spec/models/payment_url_request_spec.rb +73 -14
  341. data/spec/models/payment_url_response_spec.rb +25 -20
  342. data/spec/models/payment_verification3ds_spec.rb +53 -0
  343. data/spec/models/payment_verification_avs_spec.rb +53 -0
  344. data/spec/models/payment_verification_cvv_spec.rb +53 -0
  345. data/spec/models/primary_transaction_additional_details_spec.rb +28 -17
  346. data/spec/models/primary_transaction_spec.rb +45 -22
  347. data/spec/models/processor_data_spec.rb +41 -14
  348. data/spec/models/purchase_cards_level2_spec.rb +65 -0
  349. data/spec/models/purchase_cards_level3_line_items_spec.rb +89 -0
  350. data/spec/models/purchase_cards_level3_spec.rb +41 -0
  351. data/spec/models/purchase_cards_spec.rb +47 -0
  352. data/spec/models/recurring_payment_details_response_spec.rb +107 -0
  353. data/spec/models/recurring_payment_details_spec.rb +117 -0
  354. data/spec/models/referenced_order_spec.rb +47 -0
  355. data/spec/models/response_type_spec.rb +9 -10
  356. data/spec/models/score_only_request_spec.rb +127 -0
  357. data/spec/models/score_only_response_fraud_score_explanations_spec.rb +53 -0
  358. data/spec/models/score_only_response_fraud_score_spec.rb +53 -0
  359. data/spec/models/score_only_response_spec.rb +75 -0
  360. data/spec/models/secondary_transaction_additional_details_spec.rb +41 -0
  361. data/spec/models/secondary_transaction_spec.rb +29 -12
  362. data/spec/models/secure3d_response_spec.rb +41 -0
  363. data/spec/models/sepa_mandate_spec.rb +17 -18
  364. data/spec/models/sepa_spec.rb +14 -15
  365. data/spec/models/shipping_spec.rb +12 -13
  366. data/spec/models/soft_descriptor_spec.rb +47 -0
  367. data/spec/models/split_shipment_spec.rb +11 -12
  368. data/spec/models/stored_credential_spec.rb +21 -22
  369. data/spec/models/sub_merchant_data_spec.rb +71 -0
  370. data/spec/models/transaction_error_response_spec.rb +62 -51
  371. data/spec/models/transaction_origin_spec.rb +35 -0
  372. data/spec/models/transaction_response_spec.rb +61 -50
  373. data/spec/models/transaction_spec.rb +115 -0
  374. data/spec/models/transaction_type_spec.rb +9 -10
  375. data/spec/spec_helper.rb +6 -6
  376. metadata +339 -69
  377. data/docs/PaymentCardAuthenticationRequest.md +0 -8
  378. data/docs/TransactionResponseAuthenticationRedirect.md +0 -10
  379. data/docs/TransactionResponseAuthenticationRedirectParams.md +0 -10
  380. data/lib/swagger_client/api/order_api.rb +0 -229
  381. data/lib/swagger_client/models/response_type.rb +0 -37
  382. data/lib/swagger_client/models/transaction_type.rb +0 -36
  383. data/lib/swagger_client/version.rb +0 -15
  384. data/lib/swagger_client.rb +0 -91
  385. data/spec/models/payment_card_authentication_request_spec.rb +0 -46
  386. data/spec/models/transaction_response_authentication_redirect_params_spec.rb +0 -54
  387. data/spec/models/transaction_response_authentication_redirect_spec.rb +0 -58
@@ -0,0 +1,411 @@
1
+ =begin
2
+ #Payment Gateway API Specification.
3
+
4
+ #Payment Gateway API for payment processing. Version 6.4.0.20181018.001
5
+
6
+ OpenAPI spec version: 6.4.0.20181018.001
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: unset
10
+
11
+ =end
12
+
13
+ require 'uri'
14
+
15
+ module OpenapiClient
16
+ class PaymentSchedulesApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Cancel a gateway payment schedule.
23
+ # Use this to cancel an existing gateway payment schedule.
24
+ # @param content_type content type
25
+ # @param client_request_id A client-generated ID for request tracking and signature creation, unique per request. This is also used for idempotency control. We recommend 128-bit UUID format.
26
+ # @param api_key
27
+ # @param timestamp Epoch timestamp in milliseconds in the request from a client system. Used for Message Signature generation and time limit (5 mins).
28
+ # @param order_id Gateway order identifier as returned in the parameter orderId
29
+ # @param [Hash] opts the optional parameters
30
+ # @option opts [String] :message_signature Used to ensure the request has not been tampered with during transmission. The Message-Signature is the Base64 encoded HMAC hash (SHA256 algorithm with the API Secret as the key.) For more information, refer to the supporting documentation on the Developer Portal.
31
+ # @option opts [String] :region The region where client wants to process the transaction
32
+ # @option opts [String] :store_id An optional outlet ID for clients that support multiple stores in the same developer app
33
+ # @return [PaymentSchedulesResponse]
34
+ def cancel_payment_schedule(content_type, client_request_id, api_key, timestamp, order_id, opts = {})
35
+ data, _status_code, _headers = cancel_payment_schedule_with_http_info(content_type, client_request_id, api_key, timestamp, order_id, opts)
36
+ data
37
+ end
38
+
39
+ # Cancel a gateway payment schedule.
40
+ # Use this to cancel an existing gateway payment schedule.
41
+ # @param content_type content type
42
+ # @param client_request_id A client-generated ID for request tracking and signature creation, unique per request. This is also used for idempotency control. We recommend 128-bit UUID format.
43
+ # @param api_key
44
+ # @param timestamp Epoch timestamp in milliseconds in the request from a client system. Used for Message Signature generation and time limit (5 mins).
45
+ # @param order_id Gateway order identifier as returned in the parameter orderId
46
+ # @param [Hash] opts the optional parameters
47
+ # @option opts [String] :message_signature Used to ensure the request has not been tampered with during transmission. The Message-Signature is the Base64 encoded HMAC hash (SHA256 algorithm with the API Secret as the key.) For more information, refer to the supporting documentation on the Developer Portal.
48
+ # @option opts [String] :region The region where client wants to process the transaction
49
+ # @option opts [String] :store_id An optional outlet ID for clients that support multiple stores in the same developer app
50
+ # @return [Array<(PaymentSchedulesResponse, Fixnum, Hash)>] PaymentSchedulesResponse data, response status code and response headers
51
+ def cancel_payment_schedule_with_http_info(content_type, client_request_id, api_key, timestamp, order_id, opts = {})
52
+ if @api_client.config.debugging
53
+ @api_client.config.logger.debug 'Calling API: PaymentSchedulesApi.cancel_payment_schedule ...'
54
+ end
55
+ # verify the required parameter 'content_type' is set
56
+ if @api_client.config.client_side_validation && content_type.nil?
57
+ fail ArgumentError, "Missing the required parameter 'content_type' when calling PaymentSchedulesApi.cancel_payment_schedule"
58
+ end
59
+ # verify enum value
60
+ if @api_client.config.client_side_validation && !['application/json'].include?(content_type)
61
+ fail ArgumentError, "invalid value for 'content_type', must be one of application/json"
62
+ end
63
+ # verify the required parameter 'client_request_id' is set
64
+ if @api_client.config.client_side_validation && client_request_id.nil?
65
+ fail ArgumentError, "Missing the required parameter 'client_request_id' when calling PaymentSchedulesApi.cancel_payment_schedule"
66
+ end
67
+ # verify the required parameter 'api_key' is set
68
+ if @api_client.config.client_side_validation && api_key.nil?
69
+ fail ArgumentError, "Missing the required parameter 'api_key' when calling PaymentSchedulesApi.cancel_payment_schedule"
70
+ end
71
+ # verify the required parameter 'timestamp' is set
72
+ if @api_client.config.client_side_validation && timestamp.nil?
73
+ fail ArgumentError, "Missing the required parameter 'timestamp' when calling PaymentSchedulesApi.cancel_payment_schedule"
74
+ end
75
+ # verify the required parameter 'order_id' is set
76
+ if @api_client.config.client_side_validation && order_id.nil?
77
+ fail ArgumentError, "Missing the required parameter 'order_id' when calling PaymentSchedulesApi.cancel_payment_schedule"
78
+ end
79
+ # resource path
80
+ local_var_path = '/v1/payment-schedules/{order-id}'.sub('{' + 'order-id' + '}', order_id.to_s)
81
+
82
+ # query parameters
83
+ query_params = {}
84
+ query_params[:'storeId'] = opts[:'store_id'] if !opts[:'store_id'].nil?
85
+
86
+ # header parameters
87
+ header_params = {}
88
+ # HTTP header 'Accept' (if needed)
89
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
90
+ # header_params[:'Content-Type'] = content_type
91
+ header_params[:'Client-Request-Id'] = client_request_id
92
+ header_params[:'Api-Key'] = api_key
93
+ header_params[:'Timestamp'] = timestamp
94
+ header_params[:'Message-Signature'] = opts[:'message_signature'] if !opts[:'message_signature'].nil?
95
+ header_params[:'Region'] = opts[:'region'] if !opts[:'region'].nil?
96
+
97
+ # form parameters
98
+ form_params = {}
99
+
100
+ # http body (model)
101
+ post_body = nil
102
+ auth_names = []
103
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
104
+ :header_params => header_params,
105
+ :query_params => query_params,
106
+ :form_params => form_params,
107
+ :body => post_body,
108
+ :auth_names => auth_names,
109
+ :return_type => 'PaymentSchedulesResponse',
110
+ :default_error_type => 'ErrorResponse')
111
+ if @api_client.config.debugging
112
+ @api_client.config.logger.debug "API called: PaymentSchedulesApi#cancel_payment_schedule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
113
+ end
114
+ return data, status_code, headers
115
+ end
116
+
117
+ # Use this to create a gateway payment schedule.
118
+ # This can be used to create a gateway payment schedule.
119
+ # @param content_type content type
120
+ # @param client_request_id A client-generated ID for request tracking and signature creation, unique per request. This is also used for idempotency control. We recommend 128-bit UUID format.
121
+ # @param api_key
122
+ # @param timestamp Epoch timestamp in milliseconds in the request from a client system. Used for Message Signature generation and time limit (5 mins).
123
+ # @param payment_schedules_request
124
+ # @param [Hash] opts the optional parameters
125
+ # @option opts [String] :message_signature Used to ensure the request has not been tampered with during transmission. The Message-Signature is the Base64 encoded HMAC hash (SHA256 algorithm with the API Secret as the key.) For more information, refer to the supporting documentation on the Developer Portal.
126
+ # @option opts [String] :region The region where client wants to process the transaction
127
+ # @return [PaymentSchedulesResponse]
128
+ def create_payment_schedule(content_type, client_request_id, api_key, timestamp, payment_schedules_request, opts = {})
129
+ data, _status_code, _headers = create_payment_schedule_with_http_info(content_type, client_request_id, api_key, timestamp, payment_schedules_request, opts)
130
+ data
131
+ end
132
+
133
+ # Use this to create a gateway payment schedule.
134
+ # This can be used to create a gateway payment schedule.
135
+ # @param content_type content type
136
+ # @param client_request_id A client-generated ID for request tracking and signature creation, unique per request. This is also used for idempotency control. We recommend 128-bit UUID format.
137
+ # @param api_key
138
+ # @param timestamp Epoch timestamp in milliseconds in the request from a client system. Used for Message Signature generation and time limit (5 mins).
139
+ # @param payment_schedules_request
140
+ # @param [Hash] opts the optional parameters
141
+ # @option opts [String] :message_signature Used to ensure the request has not been tampered with during transmission. The Message-Signature is the Base64 encoded HMAC hash (SHA256 algorithm with the API Secret as the key.) For more information, refer to the supporting documentation on the Developer Portal.
142
+ # @option opts [String] :region The region where client wants to process the transaction
143
+ # @return [Array<(PaymentSchedulesResponse, Fixnum, Hash)>] PaymentSchedulesResponse data, response status code and response headers
144
+ def create_payment_schedule_with_http_info(content_type, client_request_id, api_key, timestamp, payment_schedules_request, opts = {})
145
+ if @api_client.config.debugging
146
+ @api_client.config.logger.debug 'Calling API: PaymentSchedulesApi.create_payment_schedule ...'
147
+ end
148
+ # verify the required parameter 'content_type' is set
149
+ if @api_client.config.client_side_validation && content_type.nil?
150
+ fail ArgumentError, "Missing the required parameter 'content_type' when calling PaymentSchedulesApi.create_payment_schedule"
151
+ end
152
+ # verify enum value
153
+ if @api_client.config.client_side_validation && !['application/json'].include?(content_type)
154
+ fail ArgumentError, "invalid value for 'content_type', must be one of application/json"
155
+ end
156
+ # verify the required parameter 'client_request_id' is set
157
+ if @api_client.config.client_side_validation && client_request_id.nil?
158
+ fail ArgumentError, "Missing the required parameter 'client_request_id' when calling PaymentSchedulesApi.create_payment_schedule"
159
+ end
160
+ # verify the required parameter 'api_key' is set
161
+ if @api_client.config.client_side_validation && api_key.nil?
162
+ fail ArgumentError, "Missing the required parameter 'api_key' when calling PaymentSchedulesApi.create_payment_schedule"
163
+ end
164
+ # verify the required parameter 'timestamp' is set
165
+ if @api_client.config.client_side_validation && timestamp.nil?
166
+ fail ArgumentError, "Missing the required parameter 'timestamp' when calling PaymentSchedulesApi.create_payment_schedule"
167
+ end
168
+ # verify the required parameter 'payment_schedules_request' is set
169
+ if @api_client.config.client_side_validation && payment_schedules_request.nil?
170
+ fail ArgumentError, "Missing the required parameter 'payment_schedules_request' when calling PaymentSchedulesApi.create_payment_schedule"
171
+ end
172
+ # resource path
173
+ local_var_path = '/v1/payment-schedules'
174
+
175
+ # query parameters
176
+ query_params = {}
177
+
178
+ # header parameters
179
+ header_params = {}
180
+ # HTTP header 'Accept' (if needed)
181
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
182
+ # HTTP header 'Content-Type'
183
+ # header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
184
+ # header_params[:'Content-Type'] = content_type
185
+ header_params[:'Client-Request-Id'] = client_request_id
186
+ header_params[:'Api-Key'] = api_key
187
+ header_params[:'Timestamp'] = timestamp
188
+ header_params[:'Message-Signature'] = opts[:'message_signature'] if !opts[:'message_signature'].nil?
189
+ header_params[:'Region'] = opts[:'region'] if !opts[:'region'].nil?
190
+
191
+ # form parameters
192
+ form_params = {}
193
+
194
+ # http body (model)
195
+ post_body = @api_client.object_to_http_body(payment_schedules_request)
196
+ auth_names = []
197
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
198
+ :header_params => header_params,
199
+ :query_params => query_params,
200
+ :form_params => form_params,
201
+ :body => post_body,
202
+ :auth_names => auth_names,
203
+ :return_type => 'PaymentSchedulesResponse',
204
+ :default_error_type => 'ErrorResponse',
205
+ :error_type => 'PaymentSchedulesErrorResponse')
206
+ if @api_client.config.debugging
207
+ @api_client.config.logger.debug "API called: PaymentSchedulesApi#create_payment_schedule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
208
+ end
209
+ return data, status_code, headers
210
+ end
211
+
212
+ # View a gateway payment schedule.
213
+ # This can be used to view an existing gateway payment schedule.
214
+ # @param content_type content type
215
+ # @param client_request_id A client-generated ID for request tracking and signature creation, unique per request. This is also used for idempotency control. We recommend 128-bit UUID format.
216
+ # @param api_key
217
+ # @param timestamp Epoch timestamp in milliseconds in the request from a client system. Used for Message Signature generation and time limit (5 mins).
218
+ # @param order_id Gateway order identifier as returned in the parameter orderId
219
+ # @param [Hash] opts the optional parameters
220
+ # @option opts [String] :message_signature Used to ensure the request has not been tampered with during transmission. The Message-Signature is the Base64 encoded HMAC hash (SHA256 algorithm with the API Secret as the key.) For more information, refer to the supporting documentation on the Developer Portal.
221
+ # @option opts [String] :region The region where client wants to process the transaction
222
+ # @option opts [String] :store_id An optional outlet ID for clients that support multiple stores in the same developer app
223
+ # @return [RecurringPaymentDetailsResponse]
224
+ def inquiry_payment_schedule(content_type, client_request_id, api_key, timestamp, order_id, opts = {})
225
+ data, _status_code, _headers = inquiry_payment_schedule_with_http_info(content_type, client_request_id, api_key, timestamp, order_id, opts)
226
+ data
227
+ end
228
+
229
+ # View a gateway payment schedule.
230
+ # This can be used to view an existing gateway payment schedule.
231
+ # @param content_type content type
232
+ # @param client_request_id A client-generated ID for request tracking and signature creation, unique per request. This is also used for idempotency control. We recommend 128-bit UUID format.
233
+ # @param api_key
234
+ # @param timestamp Epoch timestamp in milliseconds in the request from a client system. Used for Message Signature generation and time limit (5 mins).
235
+ # @param order_id Gateway order identifier as returned in the parameter orderId
236
+ # @param [Hash] opts the optional parameters
237
+ # @option opts [String] :message_signature Used to ensure the request has not been tampered with during transmission. The Message-Signature is the Base64 encoded HMAC hash (SHA256 algorithm with the API Secret as the key.) For more information, refer to the supporting documentation on the Developer Portal.
238
+ # @option opts [String] :region The region where client wants to process the transaction
239
+ # @option opts [String] :store_id An optional outlet ID for clients that support multiple stores in the same developer app
240
+ # @return [Array<(RecurringPaymentDetailsResponse, Fixnum, Hash)>] RecurringPaymentDetailsResponse data, response status code and response headers
241
+ def inquiry_payment_schedule_with_http_info(content_type, client_request_id, api_key, timestamp, order_id, opts = {})
242
+ if @api_client.config.debugging
243
+ @api_client.config.logger.debug 'Calling API: PaymentSchedulesApi.inquiry_payment_schedule ...'
244
+ end
245
+ # verify the required parameter 'content_type' is set
246
+ if @api_client.config.client_side_validation && content_type.nil?
247
+ fail ArgumentError, "Missing the required parameter 'content_type' when calling PaymentSchedulesApi.inquiry_payment_schedule"
248
+ end
249
+ # verify enum value
250
+ if @api_client.config.client_side_validation && !['application/json'].include?(content_type)
251
+ fail ArgumentError, "invalid value for 'content_type', must be one of application/json"
252
+ end
253
+ # verify the required parameter 'client_request_id' is set
254
+ if @api_client.config.client_side_validation && client_request_id.nil?
255
+ fail ArgumentError, "Missing the required parameter 'client_request_id' when calling PaymentSchedulesApi.inquiry_payment_schedule"
256
+ end
257
+ # verify the required parameter 'api_key' is set
258
+ if @api_client.config.client_side_validation && api_key.nil?
259
+ fail ArgumentError, "Missing the required parameter 'api_key' when calling PaymentSchedulesApi.inquiry_payment_schedule"
260
+ end
261
+ # verify the required parameter 'timestamp' is set
262
+ if @api_client.config.client_side_validation && timestamp.nil?
263
+ fail ArgumentError, "Missing the required parameter 'timestamp' when calling PaymentSchedulesApi.inquiry_payment_schedule"
264
+ end
265
+ # verify the required parameter 'order_id' is set
266
+ if @api_client.config.client_side_validation && order_id.nil?
267
+ fail ArgumentError, "Missing the required parameter 'order_id' when calling PaymentSchedulesApi.inquiry_payment_schedule"
268
+ end
269
+ # resource path
270
+ local_var_path = '/v1/payment-schedules/{order-id}'.sub('{' + 'order-id' + '}', order_id.to_s)
271
+
272
+ # query parameters
273
+ query_params = {}
274
+ query_params[:'storeId'] = opts[:'store_id'] if !opts[:'store_id'].nil?
275
+
276
+ # header parameters
277
+ header_params = {}
278
+ # HTTP header 'Accept' (if needed)
279
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
280
+ # header_params[:'Content-Type'] = content_type
281
+ header_params[:'Client-Request-Id'] = client_request_id
282
+ header_params[:'Api-Key'] = api_key
283
+ header_params[:'Timestamp'] = timestamp
284
+ header_params[:'Message-Signature'] = opts[:'message_signature'] if !opts[:'message_signature'].nil?
285
+ header_params[:'Region'] = opts[:'region'] if !opts[:'region'].nil?
286
+
287
+ # form parameters
288
+ form_params = {}
289
+
290
+ # http body (model)
291
+ post_body = nil
292
+ auth_names = []
293
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
294
+ :header_params => header_params,
295
+ :query_params => query_params,
296
+ :form_params => form_params,
297
+ :body => post_body,
298
+ :auth_names => auth_names,
299
+ :return_type => 'RecurringPaymentDetailsResponse',
300
+ :default_error_type => 'ErrorResponse')
301
+ if @api_client.config.debugging
302
+ @api_client.config.logger.debug "API called: PaymentSchedulesApi#inquiry_payment_schedule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
303
+ end
304
+ return data, status_code, headers
305
+ end
306
+
307
+ # Update a gateway payment schedule.
308
+ # This can be used to update a gateway payment schedule.
309
+ # @param content_type content type
310
+ # @param client_request_id A client-generated ID for request tracking and signature creation, unique per request. This is also used for idempotency control. We recommend 128-bit UUID format.
311
+ # @param api_key
312
+ # @param timestamp Epoch timestamp in milliseconds in the request from a client system. Used for Message Signature generation and time limit (5 mins).
313
+ # @param order_id Gateway order identifier as returned in the parameter orderId
314
+ # @param payment_schedules_request
315
+ # @param [Hash] opts the optional parameters
316
+ # @option opts [String] :message_signature Used to ensure the request has not been tampered with during transmission. The Message-Signature is the Base64 encoded HMAC hash (SHA256 algorithm with the API Secret as the key.) For more information, refer to the supporting documentation on the Developer Portal.
317
+ # @option opts [String] :region The region where client wants to process the transaction
318
+ # @option opts [String] :store_id An optional outlet ID for clients that support multiple stores in the same developer app
319
+ # @return [PaymentSchedulesResponse]
320
+ def update_payment_schedule(content_type, client_request_id, api_key, timestamp, order_id, payment_schedules_request, opts = {})
321
+ data, _status_code, _headers = update_payment_schedule_with_http_info(content_type, client_request_id, api_key, timestamp, order_id, payment_schedules_request, opts)
322
+ data
323
+ end
324
+
325
+ # Update a gateway payment schedule.
326
+ # This can be used to update a gateway payment schedule.
327
+ # @param content_type content type
328
+ # @param client_request_id A client-generated ID for request tracking and signature creation, unique per request. This is also used for idempotency control. We recommend 128-bit UUID format.
329
+ # @param api_key
330
+ # @param timestamp Epoch timestamp in milliseconds in the request from a client system. Used for Message Signature generation and time limit (5 mins).
331
+ # @param order_id Gateway order identifier as returned in the parameter orderId
332
+ # @param payment_schedules_request
333
+ # @param [Hash] opts the optional parameters
334
+ # @option opts [String] :message_signature Used to ensure the request has not been tampered with during transmission. The Message-Signature is the Base64 encoded HMAC hash (SHA256 algorithm with the API Secret as the key.) For more information, refer to the supporting documentation on the Developer Portal.
335
+ # @option opts [String] :region The region where client wants to process the transaction
336
+ # @option opts [String] :store_id An optional outlet ID for clients that support multiple stores in the same developer app
337
+ # @return [Array<(PaymentSchedulesResponse, Fixnum, Hash)>] PaymentSchedulesResponse data, response status code and response headers
338
+ def update_payment_schedule_with_http_info(content_type, client_request_id, api_key, timestamp, order_id, payment_schedules_request, opts = {})
339
+ if @api_client.config.debugging
340
+ @api_client.config.logger.debug 'Calling API: PaymentSchedulesApi.update_payment_schedule ...'
341
+ end
342
+ # verify the required parameter 'content_type' is set
343
+ if @api_client.config.client_side_validation && content_type.nil?
344
+ fail ArgumentError, "Missing the required parameter 'content_type' when calling PaymentSchedulesApi.update_payment_schedule"
345
+ end
346
+ # verify enum value
347
+ if @api_client.config.client_side_validation && !['application/json'].include?(content_type)
348
+ fail ArgumentError, "invalid value for 'content_type', must be one of application/json"
349
+ end
350
+ # verify the required parameter 'client_request_id' is set
351
+ if @api_client.config.client_side_validation && client_request_id.nil?
352
+ fail ArgumentError, "Missing the required parameter 'client_request_id' when calling PaymentSchedulesApi.update_payment_schedule"
353
+ end
354
+ # verify the required parameter 'api_key' is set
355
+ if @api_client.config.client_side_validation && api_key.nil?
356
+ fail ArgumentError, "Missing the required parameter 'api_key' when calling PaymentSchedulesApi.update_payment_schedule"
357
+ end
358
+ # verify the required parameter 'timestamp' is set
359
+ if @api_client.config.client_side_validation && timestamp.nil?
360
+ fail ArgumentError, "Missing the required parameter 'timestamp' when calling PaymentSchedulesApi.update_payment_schedule"
361
+ end
362
+ # verify the required parameter 'order_id' is set
363
+ if @api_client.config.client_side_validation && order_id.nil?
364
+ fail ArgumentError, "Missing the required parameter 'order_id' when calling PaymentSchedulesApi.update_payment_schedule"
365
+ end
366
+ # verify the required parameter 'payment_schedules_request' is set
367
+ if @api_client.config.client_side_validation && payment_schedules_request.nil?
368
+ fail ArgumentError, "Missing the required parameter 'payment_schedules_request' when calling PaymentSchedulesApi.update_payment_schedule"
369
+ end
370
+ # resource path
371
+ local_var_path = '/v1/payment-schedules/{order-id}'.sub('{' + 'order-id' + '}', order_id.to_s)
372
+
373
+ # query parameters
374
+ query_params = {}
375
+ query_params[:'storeId'] = opts[:'store_id'] if !opts[:'store_id'].nil?
376
+
377
+ # header parameters
378
+ header_params = {}
379
+ # HTTP header 'Accept' (if needed)
380
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
381
+ # HTTP header 'Content-Type'
382
+ # header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
383
+ # header_params[:'Content-Type'] = content_type
384
+ header_params[:'Client-Request-Id'] = client_request_id
385
+ header_params[:'Api-Key'] = api_key
386
+ header_params[:'Timestamp'] = timestamp
387
+ header_params[:'Message-Signature'] = opts[:'message_signature'] if !opts[:'message_signature'].nil?
388
+ header_params[:'Region'] = opts[:'region'] if !opts[:'region'].nil?
389
+
390
+ # form parameters
391
+ form_params = {}
392
+
393
+ # http body (model)
394
+ post_body = @api_client.object_to_http_body(payment_schedules_request)
395
+ auth_names = []
396
+ data, status_code, headers = @api_client.call_api(:PATCH, local_var_path,
397
+ :header_params => header_params,
398
+ :query_params => query_params,
399
+ :form_params => form_params,
400
+ :body => post_body,
401
+ :auth_names => auth_names,
402
+ :return_type => 'PaymentSchedulesResponse',
403
+ :default_error_type => 'ErrorResponse')
404
+ if @api_client.config.debugging
405
+ @api_client.config.logger.debug "API called: PaymentSchedulesApi#update_payment_schedule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
406
+ end
407
+ return data, status_code, headers
408
+ end
409
+
410
+ end
411
+ end
@@ -0,0 +1,218 @@
1
+ =begin
2
+ #Payment Gateway API Specification.
3
+
4
+ #Payment Gateway API for payment processing. Version 6.4.0.20181018.001
5
+
6
+ OpenAPI spec version: 6.4.0.20181018.001
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: unset
10
+
11
+ =end
12
+
13
+ require 'uri'
14
+
15
+ module OpenapiClient
16
+ class PaymentTokenApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Create a payment token from a payment card.
23
+ # Use this to create a payment token from a payment card.
24
+ # @param content_type content type
25
+ # @param client_request_id A client-generated ID for request tracking and signature creation, unique per request. This is also used for idempotency control. We recommend 128-bit UUID format.
26
+ # @param api_key
27
+ # @param timestamp Epoch timestamp in milliseconds in the request from a client system. Used for Message Signature generation and time limit (5 mins).
28
+ # @param payment_tokenization_request
29
+ # @param [Hash] opts the optional parameters
30
+ # @option opts [String] :message_signature Used to ensure the request has not been tampered with during transmission. The Message-Signature is the Base64 encoded HMAC hash (SHA256 algorithm with the API Secret as the key.) For more information, refer to the supporting documentation on the Developer Portal.
31
+ # @option opts [String] :authorization The access token previously generated with the access-tokens call. Use the format &#39;Bearer {access-token}&#39;.
32
+ # @option opts [String] :region The region where client wants to process the transaction
33
+ # @return [PaymentTokenizationResponse]
34
+ def create_payment_token(content_type, client_request_id, api_key, timestamp, payment_tokenization_request, opts = {})
35
+ data, _status_code, _headers = create_payment_token_with_http_info(content_type, client_request_id, api_key, timestamp, payment_tokenization_request, opts)
36
+ data
37
+ end
38
+
39
+ # Create a payment token from a payment card.
40
+ # Use this to create a payment token from a payment card.
41
+ # @param content_type content type
42
+ # @param client_request_id A client-generated ID for request tracking and signature creation, unique per request. This is also used for idempotency control. We recommend 128-bit UUID format.
43
+ # @param api_key
44
+ # @param timestamp Epoch timestamp in milliseconds in the request from a client system. Used for Message Signature generation and time limit (5 mins).
45
+ # @param payment_tokenization_request
46
+ # @param [Hash] opts the optional parameters
47
+ # @option opts [String] :message_signature Used to ensure the request has not been tampered with during transmission. The Message-Signature is the Base64 encoded HMAC hash (SHA256 algorithm with the API Secret as the key.) For more information, refer to the supporting documentation on the Developer Portal.
48
+ # @option opts [String] :authorization The access token previously generated with the access-tokens call. Use the format &#39;Bearer {access-token}&#39;.
49
+ # @option opts [String] :region The region where client wants to process the transaction
50
+ # @return [Array<(PaymentTokenizationResponse, Fixnum, Hash)>] PaymentTokenizationResponse data, response status code and response headers
51
+ def create_payment_token_with_http_info(content_type, client_request_id, api_key, timestamp, payment_tokenization_request, opts = {})
52
+ if @api_client.config.debugging
53
+ @api_client.config.logger.debug 'Calling API: PaymentTokenApi.create_payment_token ...'
54
+ end
55
+ # verify the required parameter 'content_type' is set
56
+ if @api_client.config.client_side_validation && content_type.nil?
57
+ fail ArgumentError, "Missing the required parameter 'content_type' when calling PaymentTokenApi.create_payment_token"
58
+ end
59
+ # verify enum value
60
+ if @api_client.config.client_side_validation && !['application/json'].include?(content_type)
61
+ fail ArgumentError, "invalid value for 'content_type', must be one of application/json"
62
+ end
63
+ # verify the required parameter 'client_request_id' is set
64
+ if @api_client.config.client_side_validation && client_request_id.nil?
65
+ fail ArgumentError, "Missing the required parameter 'client_request_id' when calling PaymentTokenApi.create_payment_token"
66
+ end
67
+ # verify the required parameter 'api_key' is set
68
+ if @api_client.config.client_side_validation && api_key.nil?
69
+ fail ArgumentError, "Missing the required parameter 'api_key' when calling PaymentTokenApi.create_payment_token"
70
+ end
71
+ # verify the required parameter 'timestamp' is set
72
+ if @api_client.config.client_side_validation && timestamp.nil?
73
+ fail ArgumentError, "Missing the required parameter 'timestamp' when calling PaymentTokenApi.create_payment_token"
74
+ end
75
+ # verify the required parameter 'payment_tokenization_request' is set
76
+ if @api_client.config.client_side_validation && payment_tokenization_request.nil?
77
+ fail ArgumentError, "Missing the required parameter 'payment_tokenization_request' when calling PaymentTokenApi.create_payment_token"
78
+ end
79
+ # resource path
80
+ local_var_path = '/v1/payment-tokens'
81
+
82
+ # query parameters
83
+ query_params = {}
84
+
85
+ # header parameters
86
+ header_params = {}
87
+ # HTTP header 'Accept' (if needed)
88
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
89
+ # HTTP header 'Content-Type'
90
+ # header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
91
+ # header_params[:'Content-Type'] = content_type
92
+ header_params[:'Client-Request-Id'] = client_request_id
93
+ header_params[:'Api-Key'] = api_key
94
+ header_params[:'Timestamp'] = timestamp
95
+ header_params[:'Message-Signature'] = opts[:'message_signature'] if !opts[:'message_signature'].nil?
96
+ header_params[:'Authorization'] = opts[:'authorization'] if !opts[:'authorization'].nil?
97
+ header_params[:'Region'] = opts[:'region'] if !opts[:'region'].nil?
98
+
99
+ # form parameters
100
+ form_params = {}
101
+
102
+ # http body (model)
103
+ post_body = @api_client.object_to_http_body(payment_tokenization_request)
104
+ auth_names = []
105
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
106
+ :header_params => header_params,
107
+ :query_params => query_params,
108
+ :form_params => form_params,
109
+ :body => post_body,
110
+ :auth_names => auth_names,
111
+ :return_type => 'PaymentTokenizationResponse',
112
+ :default_error_type => 'ErrorResponse')
113
+ if @api_client.config.debugging
114
+ @api_client.config.logger.debug "API called: PaymentTokenApi#create_payment_token\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
115
+ end
116
+ return data, status_code, headers
117
+ end
118
+
119
+ # Delete a payment token.
120
+ # Use this to delete a payment token.
121
+ # @param content_type content type
122
+ # @param client_request_id A client-generated ID for request tracking and signature creation, unique per request. This is also used for idempotency control. We recommend 128-bit UUID format.
123
+ # @param api_key
124
+ # @param timestamp Epoch timestamp in milliseconds in the request from a client system. Used for Message Signature generation and time limit (5 mins).
125
+ # @param token_id Identifies a payment token
126
+ # @param [Hash] opts the optional parameters
127
+ # @option opts [String] :message_signature Used to ensure the request has not been tampered with during transmission. The Message-Signature is the Base64 encoded HMAC hash (SHA256 algorithm with the API Secret as the key.) For more information, refer to the supporting documentation on the Developer Portal.
128
+ # @option opts [String] :authorization The access token previously generated with the access-tokens call. Use the format &#39;Bearer {access-token}&#39;.
129
+ # @option opts [String] :region The region where client wants to process the transaction
130
+ # @option opts [String] :store_id
131
+ # @return [PaymentTokenizationResponse]
132
+ def delete_payment_token(content_type, client_request_id, api_key, timestamp, token_id, opts = {})
133
+ data, _status_code, _headers = delete_payment_token_with_http_info(content_type, client_request_id, api_key, timestamp, token_id, opts)
134
+ data
135
+ end
136
+
137
+ # Delete a payment token.
138
+ # Use this to delete a payment token.
139
+ # @param content_type content type
140
+ # @param client_request_id A client-generated ID for request tracking and signature creation, unique per request. This is also used for idempotency control. We recommend 128-bit UUID format.
141
+ # @param api_key
142
+ # @param timestamp Epoch timestamp in milliseconds in the request from a client system. Used for Message Signature generation and time limit (5 mins).
143
+ # @param token_id Identifies a payment token
144
+ # @param [Hash] opts the optional parameters
145
+ # @option opts [String] :message_signature Used to ensure the request has not been tampered with during transmission. The Message-Signature is the Base64 encoded HMAC hash (SHA256 algorithm with the API Secret as the key.) For more information, refer to the supporting documentation on the Developer Portal.
146
+ # @option opts [String] :authorization The access token previously generated with the access-tokens call. Use the format &#39;Bearer {access-token}&#39;.
147
+ # @option opts [String] :region The region where client wants to process the transaction
148
+ # @option opts [String] :store_id
149
+ # @return [Array<(PaymentTokenizationResponse, Fixnum, Hash)>] PaymentTokenizationResponse data, response status code and response headers
150
+ def delete_payment_token_with_http_info(content_type, client_request_id, api_key, timestamp, token_id, opts = {})
151
+ if @api_client.config.debugging
152
+ @api_client.config.logger.debug 'Calling API: PaymentTokenApi.delete_payment_token ...'
153
+ end
154
+ # verify the required parameter 'content_type' is set
155
+ if @api_client.config.client_side_validation && content_type.nil?
156
+ fail ArgumentError, "Missing the required parameter 'content_type' when calling PaymentTokenApi.delete_payment_token"
157
+ end
158
+ # verify enum value
159
+ if @api_client.config.client_side_validation && !['application/json'].include?(content_type)
160
+ fail ArgumentError, "invalid value for 'content_type', must be one of application/json"
161
+ end
162
+ # verify the required parameter 'client_request_id' is set
163
+ if @api_client.config.client_side_validation && client_request_id.nil?
164
+ fail ArgumentError, "Missing the required parameter 'client_request_id' when calling PaymentTokenApi.delete_payment_token"
165
+ end
166
+ # verify the required parameter 'api_key' is set
167
+ if @api_client.config.client_side_validation && api_key.nil?
168
+ fail ArgumentError, "Missing the required parameter 'api_key' when calling PaymentTokenApi.delete_payment_token"
169
+ end
170
+ # verify the required parameter 'timestamp' is set
171
+ if @api_client.config.client_side_validation && timestamp.nil?
172
+ fail ArgumentError, "Missing the required parameter 'timestamp' when calling PaymentTokenApi.delete_payment_token"
173
+ end
174
+ # verify the required parameter 'token_id' is set
175
+ if @api_client.config.client_side_validation && token_id.nil?
176
+ fail ArgumentError, "Missing the required parameter 'token_id' when calling PaymentTokenApi.delete_payment_token"
177
+ end
178
+ # resource path
179
+ local_var_path = '/v1/payment-tokens/{token-id}'.sub('{' + 'token-id' + '}', token_id.to_s)
180
+
181
+ # query parameters
182
+ query_params = {}
183
+ query_params[:'storeId'] = opts[:'store_id'] if !opts[:'store_id'].nil?
184
+
185
+ # header parameters
186
+ header_params = {}
187
+ # HTTP header 'Accept' (if needed)
188
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
189
+ # header_params[:'Content-Type'] = content_type
190
+ header_params[:'Client-Request-Id'] = client_request_id
191
+ header_params[:'Api-Key'] = api_key
192
+ header_params[:'Timestamp'] = timestamp
193
+ header_params[:'Message-Signature'] = opts[:'message_signature'] if !opts[:'message_signature'].nil?
194
+ header_params[:'Authorization'] = opts[:'authorization'] if !opts[:'authorization'].nil?
195
+ header_params[:'Region'] = opts[:'region'] if !opts[:'region'].nil?
196
+
197
+ # form parameters
198
+ form_params = {}
199
+
200
+ # http body (model)
201
+ post_body = nil
202
+ auth_names = []
203
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
204
+ :header_params => header_params,
205
+ :query_params => query_params,
206
+ :form_params => form_params,
207
+ :body => post_body,
208
+ :auth_names => auth_names,
209
+ :return_type => 'PaymentTokenizationResponse',
210
+ :default_error_type => 'ErrorResponse')
211
+ if @api_client.config.debugging
212
+ @api_client.config.logger.debug "API called: PaymentTokenApi#delete_payment_token\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
213
+ end
214
+ return data, status_code, headers
215
+ end
216
+
217
+ end
218
+ end