cybersource_rest_client 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (363) hide show
  1. checksums.yaml +4 -4
  2. data/AuthenticationSDK/Cybersource.gemspec +24 -23
  3. data/AuthenticationSDK/authentication/http/GetSignatureParameter.rb +64 -64
  4. data/AuthenticationSDK/authentication/http/HttpSignatureHeader.rb +52 -52
  5. data/AuthenticationSDK/authentication/jwt/JwtToken.rb +62 -62
  6. data/AuthenticationSDK/authentication/payloadDigest/digest.rb +10 -10
  7. data/AuthenticationSDK/core/Authorization.rb +24 -24
  8. data/AuthenticationSDK/core/ITokenGeneration.rb +4 -4
  9. data/AuthenticationSDK/core/Logger.rb +26 -26
  10. data/AuthenticationSDK/core/MerchantConfig.rb +181 -181
  11. data/AuthenticationSDK/resource/TRRReports.json +12 -0
  12. data/AuthenticationSDK/resource/cybs.yml +31 -0
  13. data/AuthenticationSDK/resource/request.json +54 -0
  14. data/AuthenticationSDK/resource/request_capture.json +11 -0
  15. data/AuthenticationSDK/resource/testrest.p12 +0 -0
  16. data/AuthenticationSDK/spec/Authorization_spec.rb +274 -0
  17. data/AuthenticationSDK/spec/MerchantConfigData.rb +59 -0
  18. data/AuthenticationSDK/spec/MerchantConfig_spec.rb +116 -0
  19. data/AuthenticationSDK/spec/PostRequestData.json +54 -0
  20. data/AuthenticationSDK/spec/PutRequestData.json +12 -0
  21. data/AuthenticationSDK/spec/ResponseCodeMessage_spec.rb +60 -0
  22. data/AuthenticationSDK/spec/spec_helper.rb +12 -0
  23. data/AuthenticationSDK/util/ApiException.rb +18 -18
  24. data/AuthenticationSDK/util/Cache.rb +36 -36
  25. data/AuthenticationSDK/util/Constants.rb +137 -137
  26. data/AuthenticationSDK/util/PropertiesUtil.rb +20 -21
  27. data/AuthenticationSDK/util/Utility.rb +30 -30
  28. data/lib/cybersource_rest_client/api/capture_api.rb +84 -84
  29. data/lib/cybersource_rest_client/api/credit_api.rb +78 -78
  30. data/lib/cybersource_rest_client/api/flex_token_api.rb +74 -74
  31. data/lib/cybersource_rest_client/api/instrument_identifier_api.rb +254 -254
  32. data/lib/cybersource_rest_client/api/instrument_identifiers_api.rb +91 -91
  33. data/lib/cybersource_rest_client/api/key_generation_api.rb +74 -74
  34. data/lib/cybersource_rest_client/api/notification_of_changes_api.rb +86 -86
  35. data/lib/cybersource_rest_client/api/payment_instruments_api.rb +414 -414
  36. data/lib/cybersource_rest_client/api/payments_api.rb +78 -78
  37. data/lib/cybersource_rest_client/api/process_a_payout_api.rb +77 -77
  38. data/lib/cybersource_rest_client/api/purchase_and_refund_details_api.rb +124 -129
  39. data/lib/cybersource_rest_client/api/refund_api.rb +144 -144
  40. data/lib/cybersource_rest_client/api/report_definitions_api.rb +147 -156
  41. data/lib/cybersource_rest_client/api/report_downloads_api.rb +96 -100
  42. data/lib/cybersource_rest_client/api/report_subscriptions_api.rb +254 -262
  43. data/lib/cybersource_rest_client/api/reports_api.rb +250 -258
  44. data/lib/cybersource_rest_client/api/reversal_api.rb +84 -84
  45. data/lib/cybersource_rest_client/api/search_transactions_api.rb +132 -132
  46. data/lib/cybersource_rest_client/api/secure_file_share_api.rb +161 -169
  47. data/lib/cybersource_rest_client/api/transaction_batch_api.rb +77 -77
  48. data/lib/cybersource_rest_client/api/transaction_batches_api.rb +86 -86
  49. data/lib/cybersource_rest_client/api/transaction_details_api.rb +78 -78
  50. data/lib/cybersource_rest_client/api/user_management_api.rb +84 -84
  51. data/lib/cybersource_rest_client/api/void_api.rb +264 -264
  52. data/lib/cybersource_rest_client/api_client.rb +449 -447
  53. data/lib/cybersource_rest_client/api_error.rb +38 -38
  54. data/lib/cybersource_rest_client/configuration.rb +202 -202
  55. data/lib/cybersource_rest_client/models/auth_reversal_request.rb +219 -219
  56. data/lib/cybersource_rest_client/models/body.rb +295 -295
  57. data/lib/cybersource_rest_client/models/body_1.rb +183 -183
  58. data/lib/cybersource_rest_client/models/body_2.rb +331 -331
  59. data/lib/cybersource_rest_client/models/body_3.rb +331 -331
  60. data/lib/cybersource_rest_client/models/capture_payment_request.rb +267 -267
  61. data/lib/cybersource_rest_client/models/card_info.rb +214 -214
  62. data/lib/cybersource_rest_client/models/create_credit_request.rb +267 -267
  63. data/lib/cybersource_rest_client/models/create_payment_request.rb +285 -285
  64. data/lib/cybersource_rest_client/models/der_public_key.rb +205 -205
  65. data/lib/cybersource_rest_client/models/error.rb +192 -192
  66. data/lib/cybersource_rest_client/models/error_links.rb +205 -205
  67. data/lib/cybersource_rest_client/models/error_response.rb +192 -192
  68. data/lib/cybersource_rest_client/models/flex_v1_keys_post200_response.rb +202 -202
  69. data/lib/cybersource_rest_client/models/flex_v1_keys_post200_response_der.rb +205 -205
  70. data/lib/cybersource_rest_client/models/flex_v1_keys_post200_response_jwk.rb +225 -225
  71. data/lib/cybersource_rest_client/models/flex_v1_tokens_post200_response.rb +255 -255
  72. data/lib/cybersource_rest_client/models/flexv1tokens_card_info.rb +214 -214
  73. data/lib/cybersource_rest_client/models/generate_public_key_request.rb +249 -249
  74. data/lib/cybersource_rest_client/models/inline_response_400.rb +202 -202
  75. data/lib/cybersource_rest_client/models/inline_response_default.rb +192 -192
  76. data/lib/cybersource_rest_client/models/inline_response_default__links.rb +205 -205
  77. data/lib/cybersource_rest_client/models/inline_response_default__links_next.rb +204 -204
  78. data/lib/cybersource_rest_client/models/inline_response_default_response_status.rb +225 -225
  79. data/lib/cybersource_rest_client/models/inline_response_default_response_status_details.rb +194 -194
  80. data/lib/cybersource_rest_client/models/json_web_key.rb +225 -225
  81. data/lib/cybersource_rest_client/models/key_parameters.rb +184 -184
  82. data/lib/cybersource_rest_client/models/key_result.rb +202 -202
  83. data/lib/cybersource_rest_client/models/link.rb +204 -204
  84. data/lib/cybersource_rest_client/models/links.rb +205 -205
  85. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get200_response.rb +204 -204
  86. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get200_response__links.rb +183 -183
  87. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get200_response__links_self.rb +192 -192
  88. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get200_response_transaction_batches.rb +277 -277
  89. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get400_response.rb +193 -193
  90. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get400_response_error_information.rb +203 -203
  91. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get400_response_error_information_details.rb +194 -194
  92. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get500_response.rb +193 -193
  93. data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get500_response_error_information.rb +194 -194
  94. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response.rb +323 -323
  95. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_credit_amount_details.rb +224 -224
  96. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response.rb +314 -314
  97. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response__links.rb +201 -201
  98. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_order_information.rb +192 -192
  99. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_order_information_amount_details.rb +224 -224
  100. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_processor_information.rb +199 -199
  101. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post400_response.rb +271 -271
  102. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response.rb +341 -341
  103. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response__links.rb +201 -201
  104. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response__links_self.rb +194 -194
  105. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_client_reference_information.rb +199 -199
  106. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_error_information.rb +239 -239
  107. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_error_information_details.rb +228 -228
  108. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_order_information.rb +192 -192
  109. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_order_information_amount_details.rb +249 -249
  110. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_order_information_invoice_details.rb +184 -184
  111. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information.rb +201 -201
  112. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb +623 -623
  113. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_card.rb +199 -199
  114. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_tokenized_card.rb +349 -349
  115. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_point_of_sale_information.rb +208 -208
  116. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_point_of_sale_information_emv.rb +199 -199
  117. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information.rb +642 -642
  118. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_avs.rb +224 -224
  119. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_card_verification.rb +224 -224
  120. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_consumer_authentication_response.rb +224 -224
  121. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_customer.rb +199 -199
  122. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_electronic_verification_results.rb +474 -474
  123. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_issuer.rb +224 -224
  124. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_merchant_advice.rb +224 -224
  125. data/lib/cybersource_rest_client/models/pts_v2_payments_post400_response.rb +271 -271
  126. data/lib/cybersource_rest_client/models/pts_v2_payments_post502_response.rb +260 -260
  127. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response.rb +323 -323
  128. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response__links.rb +192 -192
  129. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_order_information.rb +183 -183
  130. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_processor_information.rb +224 -224
  131. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_refund_amount_details.rb +224 -224
  132. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post400_response.rb +271 -271
  133. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response.rb +332 -332
  134. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response__links.rb +183 -183
  135. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_authorization_information.rb +224 -224
  136. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_processor_information.rb +324 -324
  137. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_reversal_amount_details.rb +249 -249
  138. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post400_response.rb +271 -271
  139. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post201_response.rb +280 -280
  140. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post201_response_void_amount_details.rb +219 -219
  141. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post400_response.rb +271 -271
  142. data/lib/cybersource_rest_client/models/pts_v2_payouts_post400_response.rb +259 -259
  143. data/lib/cybersource_rest_client/models/pts_v2_payouts_post_response.rb +237 -237
  144. data/lib/cybersource_rest_client/models/ptsv2credits_point_of_sale_information.rb +183 -183
  145. data/lib/cybersource_rest_client/models/ptsv2credits_point_of_sale_information_emv.rb +221 -221
  146. data/lib/cybersource_rest_client/models/ptsv2credits_processing_information.rb +383 -383
  147. data/lib/cybersource_rest_client/models/ptsv2payments_aggregator_information.rb +233 -233
  148. data/lib/cybersource_rest_client/models/ptsv2payments_aggregator_information_sub_merchant.rb +424 -424
  149. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information.rb +285 -285
  150. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information_personal_identification.rb +252 -252
  151. data/lib/cybersource_rest_client/models/ptsv2payments_client_reference_information.rb +219 -219
  152. data/lib/cybersource_rest_client/models/ptsv2payments_consumer_authentication_information.rb +374 -374
  153. data/lib/cybersource_rest_client/models/ptsv2payments_device_information.rb +249 -249
  154. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_defined_information.rb +224 -224
  155. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_information.rb +308 -308
  156. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_information_merchant_descriptor.rb +365 -374
  157. data/lib/cybersource_rest_client/models/ptsv2payments_order_information.rb +230 -230
  158. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details.rb +605 -605
  159. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_amex_additional_amounts.rb +224 -224
  160. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_surcharge.rb +209 -209
  161. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_tax_details.rb +328 -328
  162. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_bill_to.rb +618 -618
  163. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_invoice_details.rb +360 -360
  164. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_invoice_details_transaction_advice_addendum.rb +199 -199
  165. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_line_items.rb +649 -649
  166. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_ship_to.rb +474 -474
  167. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_shipping_details.rb +234 -234
  168. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information.rb +210 -210
  169. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb +474 -474
  170. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_customer.rb +190 -199
  171. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_fluid_data.rb +259 -259
  172. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_tokenized_card.rb +424 -424
  173. data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information.rb +440 -440
  174. data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information_emv.rb +256 -256
  175. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +432 -432
  176. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options.rb +361 -361
  177. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options_initiator.rb +247 -247
  178. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options_merchant_initiated_transaction.rb +224 -224
  179. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_capture_options.rb +267 -267
  180. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_issuer.rb +199 -199
  181. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_recurring_options.rb +198 -198
  182. data/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb +249 -249
  183. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_aggregator_information.rb +233 -233
  184. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_aggregator_information_sub_merchant.rb +374 -374
  185. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_buyer_information.rb +224 -224
  186. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_merchant_information.rb +258 -258
  187. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information.rb +230 -230
  188. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_amount_details.rb +546 -546
  189. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_bill_to.rb +449 -449
  190. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_invoice_details.rb +320 -320
  191. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_ship_to.rb +249 -249
  192. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_shipping_details.rb +199 -199
  193. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_payment_information.rb +183 -183
  194. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_point_of_sale_information.rb +208 -208
  195. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_point_of_sale_information_emv.rb +211 -211
  196. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information.rb +351 -351
  197. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_authorization_options.rb +249 -249
  198. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_capture_options.rb +242 -242
  199. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_merchant_information.rb +258 -258
  200. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_order_information.rb +230 -230
  201. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_order_information_line_items.rb +639 -639
  202. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information.rb +183 -183
  203. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information_card.rb +374 -374
  204. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_point_of_sale_information.rb +183 -183
  205. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_processing_information.rb +333 -333
  206. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_processing_information_recurring_options.rb +186 -186
  207. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_client_reference_information.rb +209 -209
  208. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_order_information.rb +185 -185
  209. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_order_information_line_items.rb +233 -233
  210. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_point_of_sale_information.rb +183 -183
  211. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_processing_information.rb +308 -308
  212. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_reversal_information.rb +208 -208
  213. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_reversal_information_amount_details.rb +224 -224
  214. data/lib/cybersource_rest_client/models/ptsv2payouts_merchant_information.rb +258 -258
  215. data/lib/cybersource_rest_client/models/ptsv2payouts_merchant_information_merchant_descriptor.rb +324 -324
  216. data/lib/cybersource_rest_client/models/ptsv2payouts_order_information.rb +192 -192
  217. data/lib/cybersource_rest_client/models/ptsv2payouts_order_information_amount_details.rb +233 -233
  218. data/lib/cybersource_rest_client/models/ptsv2payouts_order_information_amount_details_surcharge.rb +199 -199
  219. data/lib/cybersource_rest_client/models/ptsv2payouts_order_information_bill_to.rb +443 -443
  220. data/lib/cybersource_rest_client/models/ptsv2payouts_payment_information.rb +183 -183
  221. data/lib/cybersource_rest_client/models/ptsv2payouts_payment_information_card.rb +299 -299
  222. data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information.rb +283 -283
  223. data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information_payouts_options.rb +274 -274
  224. data/lib/cybersource_rest_client/models/ptsv2payouts_recipient_information.rb +433 -433
  225. data/lib/cybersource_rest_client/models/ptsv2payouts_sender_information.rb +517 -517
  226. data/lib/cybersource_rest_client/models/ptsv2payouts_sender_information_account.rb +233 -233
  227. data/lib/cybersource_rest_client/models/refund_capture_request.rb +267 -267
  228. data/lib/cybersource_rest_client/models/refund_payment_request.rb +267 -267
  229. data/lib/cybersource_rest_client/models/reporting_v3_notificationof_changes_get200_response.rb +186 -186
  230. data/lib/cybersource_rest_client/models/reporting_v3_notificationof_changes_get200_response_notification_of_changes.rb +255 -255
  231. data/lib/cybersource_rest_client/models/reporting_v3_notificationof_changes_get400_response.rb +247 -247
  232. data/lib/cybersource_rest_client/models/reporting_v3_notificationof_changes_get400_response_fields.rb +205 -205
  233. data/lib/cybersource_rest_client/models/reporting_v3_report_definitions_get200_response.rb +185 -185
  234. data/lib/cybersource_rest_client/models/reporting_v3_report_definitions_get200_response_report_definitions.rb +243 -243
  235. data/lib/cybersource_rest_client/models/reporting_v3_report_definitions_name_get200_response.rb +254 -254
  236. data/lib/cybersource_rest_client/models/reporting_v3_report_definitions_name_get200_response_attributes.rb +237 -237
  237. data/lib/cybersource_rest_client/models/reporting_v3_report_subscriptions_get200_response.rb +185 -185
  238. data/lib/cybersource_rest_client/models/reporting_v3_report_subscriptions_get200_response_report_preferences.rb +229 -229
  239. data/lib/cybersource_rest_client/models/reporting_v3_report_subscriptions_get200_response_subscriptions.rb +354 -354
  240. data/lib/cybersource_rest_client/models/reporting_v3_reports_get200_response.rb +185 -185
  241. data/lib/cybersource_rest_client/models/reporting_v3_reports_get200_response_reports.rb +373 -373
  242. data/lib/cybersource_rest_client/models/reporting_v3_reports_id_get200_response.rb +376 -376
  243. data/lib/cybersource_rest_client/models/request_body.rb +446 -463
  244. data/lib/cybersource_rest_client/models/request_body_1.rb +398 -415
  245. data/lib/cybersource_rest_client/models/response_status.rb +225 -225
  246. data/lib/cybersource_rest_client/models/response_status_details.rb +194 -194
  247. data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_delete409_response.rb +183 -183
  248. data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_delete409_response__links.rb +183 -183
  249. data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_delete409_response__links_payment_instruments.rb +183 -183
  250. data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_paymentinstruments_get200_response.rb +277 -277
  251. data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_paymentinstruments_get200_response__links.rb +219 -219
  252. data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_paymentinstruments_get200_response__links_first.rb +184 -184
  253. data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_paymentinstruments_get200_response__links_last.rb +184 -184
  254. data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_paymentinstruments_get200_response__links_next.rb +184 -184
  255. data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_paymentinstruments_get200_response__links_prev.rb +184 -184
  256. data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_paymentinstruments_get200_response__links_self.rb +184 -184
  257. data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_post200_response.rb +295 -295
  258. data/lib/cybersource_rest_client/models/tms_v1_paymentinstruments_post201_response.rb +331 -331
  259. data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers__links.rb +201 -201
  260. data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers__links_self.rb +183 -183
  261. data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_authorization_options_merchant_initiated_transaction.rb +184 -184
  262. data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_bank_account.rb +194 -194
  263. data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_card.rb +184 -184
  264. data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_details.rb +194 -194
  265. data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_metadata.rb +184 -184
  266. data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_processing_information.rb +183 -183
  267. data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_processing_information_authorization_options.rb +183 -183
  268. data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_processing_information_authorization_options_initiator.rb +183 -183
  269. data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_bank_account.rb +184 -184
  270. data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_bill_to.rb +284 -284
  271. data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_buyer_information.rb +215 -215
  272. data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_buyer_information_issued_by.rb +184 -184
  273. data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_buyer_information_personal_identification.rb +203 -203
  274. data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_card.rb +278 -278
  275. data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_instrument_identifier.rb +295 -295
  276. data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_merchant_information.rb +183 -183
  277. data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_merchant_information_merchant_descriptor.rb +184 -184
  278. data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_processing_information.rb +193 -193
  279. data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_processing_information_bank_transfer_options.rb +184 -184
  280. data/lib/cybersource_rest_client/models/tokenize_parameters.rb +193 -193
  281. data/lib/cybersource_rest_client/models/tokenize_request.rb +193 -193
  282. data/lib/cybersource_rest_client/models/tokenize_result.rb +255 -255
  283. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response.rb +444 -444
  284. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_application_information.rb +225 -225
  285. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_application_information_applications.rb +254 -254
  286. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_buyer_information.rb +224 -224
  287. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_client_reference_information.rb +239 -239
  288. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_consumer_authentication_information.rb +259 -259
  289. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_device_information.rb +234 -234
  290. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_error_information.rb +205 -205
  291. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_fraud_marking_information.rb +184 -184
  292. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_installment_information.rb +184 -184
  293. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_merchant_defined_information.rb +224 -224
  294. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_merchant_information.rb +183 -183
  295. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_merchant_information_merchant_descriptor.rb +199 -199
  296. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information.rb +222 -222
  297. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_amount_details.rb +274 -274
  298. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_bill_to.rb +524 -524
  299. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_line_items.rb +343 -343
  300. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_ship_to.rb +424 -424
  301. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_shipping_details.rb +209 -209
  302. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information.rb +228 -228
  303. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_account_features.rb +249 -249
  304. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_bank.rb +242 -242
  305. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_bank_account.rb +244 -244
  306. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_bank_mandate.rb +204 -204
  307. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_card.rb +424 -424
  308. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_invoice.rb +204 -204
  309. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_payment_type.rb +244 -244
  310. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_point_of_sale_information.rb +233 -233
  311. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb +252 -252
  312. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_authorization_options.rb +199 -199
  313. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_bank_transfer_options.rb +184 -184
  314. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +309 -309
  315. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_ach_verification.rb +224 -224
  316. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_card_verification.rb +199 -199
  317. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_electronic_verification_results.rb +424 -424
  318. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_processor.rb +199 -199
  319. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_risk_information.rb +233 -233
  320. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_risk_information_profile.rb +194 -194
  321. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_risk_information_score.rb +196 -196
  322. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_sender_information.rb +199 -199
  323. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response.rb +317 -317
  324. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded.rb +186 -186
  325. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded__links.rb +183 -183
  326. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_buyer_information.rb +199 -199
  327. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_client_reference_information.rb +219 -219
  328. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_consumer_authentication_information.rb +209 -209
  329. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_device_information.rb +199 -199
  330. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_merchant_information.rb +199 -199
  331. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_order_information.rb +201 -201
  332. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_order_information_bill_to.rb +299 -299
  333. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_order_information_ship_to.rb +299 -299
  334. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information.rb +201 -201
  335. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information_card.rb +249 -249
  336. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information_payment_method.rb +184 -184
  337. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_point_of_sale_information.rb +228 -228
  338. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_point_of_sale_information_partner.rb +199 -199
  339. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processing_information.rb +209 -209
  340. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processor_information.rb +183 -183
  341. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_risk_information.rb +183 -183
  342. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_risk_information_providers.rb +183 -183
  343. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_risk_information_providers_fingerprint.rb +249 -249
  344. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_transaction_summaries.rb +357 -357
  345. data/lib/cybersource_rest_client/models/tss_v2_transactions_post400_response.rb +249 -249
  346. data/lib/cybersource_rest_client/models/tss_v2_transactions_post_response.rb +244 -244
  347. data/lib/cybersource_rest_client/models/ums_v1_users_get200_response.rb +185 -185
  348. data/lib/cybersource_rest_client/models/ums_v1_users_get200_response_account_information.rb +282 -282
  349. data/lib/cybersource_rest_client/models/ums_v1_users_get200_response_contact_information.rb +210 -210
  350. data/lib/cybersource_rest_client/models/ums_v1_users_get200_response_organization_information.rb +183 -183
  351. data/lib/cybersource_rest_client/models/ums_v1_users_get200_response_users.rb +201 -201
  352. data/lib/cybersource_rest_client/models/v1_file_details_get200_response.rb +194 -194
  353. data/lib/cybersource_rest_client/models/v1_file_details_get200_response__links.rb +194 -194
  354. data/lib/cybersource_rest_client/models/v1_file_details_get200_response__links_files.rb +202 -202
  355. data/lib/cybersource_rest_client/models/v1_file_details_get200_response__links_self.rb +192 -192
  356. data/lib/cybersource_rest_client/models/v1_file_details_get200_response_file_details.rb +278 -278
  357. data/lib/cybersource_rest_client/models/void_capture_request.rb +183 -183
  358. data/lib/cybersource_rest_client/models/void_credit_request.rb +183 -183
  359. data/lib/cybersource_rest_client/models/void_payment_request.rb +183 -183
  360. data/lib/cybersource_rest_client/models/void_refund_request.rb +183 -183
  361. data/lib/cybersource_rest_client/version.rb +15 -15
  362. data/lib/cybersource_rest_client.rb +369 -369
  363. metadata +14 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1d3e55f9f37bed9235fe474c1d2b97765117c67211125317c4a333554debdad1
4
- data.tar.gz: ee378140c0311e5fcbd16d5094c341705df3811af31ba5ca11def7304ec0754e
3
+ metadata.gz: 7b36ae784424eea24169fce754df396b11b9376f665d77535b98c2868d5f33b6
4
+ data.tar.gz: 479be29e3fb4c13eedec1c952f606d19b83ba83af7d9be245534dbbb1ec6c659
5
5
  SHA512:
6
- metadata.gz: 57612869e3cbe0c9033f31b4f00910f0bb3656665f66306a99ee30d33c8f725316decf9fafd95a40fd2704aa1e46d8b713ce704ece8a17fa41a51cc90fba00e8
7
- data.tar.gz: 3ae8d800e3dd2c61d09bdf8d510f02202f05351bd7483164cf778446291cc096944ed314b428c515002b6cd59687d541ea11b36b38299081b883ae30ec937c3d
6
+ metadata.gz: 3723f869fc59dae02ac74caf0f7bf2a615dbda399a03c730f422dc78800aed940e392e84bba96c9a803c4900c844f0ab75c14cad3d80c33ef91d3b3799116818
7
+ data.tar.gz: 2096e4bc809a19ae5eeedec1748e976f98e333154ccdfeb42c4b8473ed6764955b91f9844f439ab3173008387dfbdbf7749d61ecd2a980521367575e42a01efc
@@ -1,24 +1,25 @@
1
- Gem::Specification.new do |s|
2
- s.name = "authenticationSDK"
3
- s.version = "0.0.1"
4
- s.platform = Gem::Platform::RUBY
5
- s.date = "2018-07-17"
6
- s.summary = "Cybersource Payments REST API Ruby Gem"
7
- s.description = "Move your business forward with the Cybersource Payments REST API"
8
- s.authors = ["cybersource"]
9
- s.email = ""
10
- s.files = Dir.glob("{lib}/**/*")
11
-
12
- s.required_ruby_version = '>= 2.2.2'
13
- s.required_rubygems_version = '>= 1.3.6'
14
-
15
- s.add_runtime_dependency 'activesupport', '~> 5.2', '>= 5.2.0'
16
- s.add_runtime_dependency 'json', '~> 2.1.0', '>= 1.8.1'
17
- s.add_runtime_dependency 'interface','~> 1.0', '>= 1.0.4'
18
- s.add_runtime_dependency 'jwt', '~> 2.1.0'
19
-
20
- s.add_development_dependency 'rspec', '~> 2.1'
21
- s.add_development_dependency 'simplecov'
22
- s.add_development_dependency 'rubocop', '~> 0.57.2'
23
- end
1
+ Gem::Specification.new do |s|
2
+ s.name = "authenticationSDK"
3
+ s.version = "0.0.1"
4
+ s.platform = Gem::Platform::RUBY
5
+ s.date = "2018-07-17"
6
+ s.summary = "Cybersource Payments REST API Ruby Gem"
7
+ s.description = "Move your business forward with the Cybersource Payments REST API"
8
+ s.authors = ["cybersource"]
9
+ s.email = ""
10
+ s.files = Dir.glob("{lib}/**/*")
11
+
12
+ s.required_ruby_version = '>= 2.2.2'
13
+ s.required_rubygems_version = '>= 1.3.6'
14
+
15
+ s.add_runtime_dependency 'activesupport', '~> 5.2', '>= 5.2.0'
16
+ s.add_runtime_dependency 'json', '~> 2.1.0', '>= 1.8.1'
17
+ s.add_runtime_dependency 'interface','~> 1.0', '>= 1.0.4'
18
+ s.add_runtime_dependency 'jwt', '~> 2.1.0'
19
+
20
+ s.add_runtime_dependency 'rspec', '~> 2.1'
21
+ s.add_runtime_dependency 'simplecov'
22
+ s.add_runtime_dependency 'simplecov-json'
23
+ s.add_development_dependency 'rubocop', '~> 0.57.2'
24
+ end
24
25
 
@@ -1,64 +1,64 @@
1
- require_relative '../../util/Constants.rb'
2
- require_relative '.././payloadDigest/digest.rb'
3
- require 'openssl'
4
- # This function returns value for paramter Signature which is then passed to Signature header
5
- # paramter 'Signature' is calucated based on below key values and then signed with SECRET KEY -
6
- # host: Sandbox (apitest.cybersource.com) or Production (api.cybersource.com) hostname
7
- # date: "HTTP-date" format as defined by RFC7231.
8
- # (request-target): Should be in format of httpMethod: path
9
- # Example: "post /pts/v2/payments"
10
- # Digest: Only needed for POST calls.
11
- # digestString = BASE64( HMAC-SHA256 ( Payload ));
12
- # Digest: “SHA-256=“ + digestString;
13
- # v-c-merchant-id: set value to Cybersource Merchant ID
14
- # This ID can be found on EBC portal*/
15
- class SignatureParameter
16
- def generateSignatureParameter(merchantconfig_obj, gmtdatetime, log_obj)
17
- request_type = merchantconfig_obj.requestType.upcase
18
- merchantSecretKey = merchantconfig_obj.merchantSecretKey
19
- signatureString = Constants::HOST + ': ' + merchantconfig_obj.requestHost
20
- signatureString << "\n"+ Constants::DATE + ': ' + gmtdatetime
21
- signatureString << "\n(request-target): "
22
- if request_type == Constants::GET_REQUEST_TYPE || request_type == Constants::DELETE_REQUEST_TYPE
23
- targetUrl=gettargetUrlForGetDelete(request_type,merchantconfig_obj)
24
- signatureString << targetUrl + "\n"
25
- elsif request_type == Constants::POST_REQUEST_TYPE || request_type == Constants::PUT_REQUEST_TYPE || request_type == Constants::PATCH_REQUEST_TYPE
26
- targetUrl=gettargetUrlForPutPost(request_type,merchantconfig_obj)
27
- signatureString << targetUrl + "\n"
28
- payload = merchantconfig_obj.requestJsonData
29
- digest = DigestGeneration.new.generateDigest(payload, log_obj)
30
- digest_payload = Constants::SHA256 + digest
31
- signatureString << Constants::DIGEST + ': ' + digest_payload + "\n"
32
- end
33
- signatureString << Constants::V_C_MERCHANT_ID + ': ' + merchantconfig_obj.merchantId
34
- encodedSignatureString = signatureString.force_encoding(Encoding::UTF_8)
35
- decodedKey = Base64.decode64(merchantSecretKey)
36
- base64EncodedSignature = Base64.strict_encode64(OpenSSL::HMAC.digest('sha256', decodedKey, encodedSignatureString))
37
- return base64EncodedSignature
38
- rescue StandardError => err
39
- log_obj.logger.error(err.message)
40
- log_obj.logger.error(err.backtrace)
41
- puts 'Check log for more details.'
42
- exit!
43
- end
44
- def gettargetUrlForGetDelete(request_type, merchantconfig_obj)
45
- targetUrlForGetDelete = ''
46
- if request_type == Constants::DELETE_REQUEST_TYPE
47
- targetUrlForGetDelete = Constants::DELETE_REQUEST_TYPE_LOWER + ' ' + merchantconfig_obj.requestTarget
48
- elsif request_type == Constants::GET_REQUEST_TYPE
49
- targetUrlForGetDelete = Constants::GET_REQUEST_TYPE_LOWER + ' ' + merchantconfig_obj.requestTarget
50
- end
51
- return targetUrlForGetDelete
52
- end
53
- def gettargetUrlForPutPost(request_type, merchantconfig_obj)
54
- targetUrlForPutPost = ''
55
- if request_type == Constants::POST_REQUEST_TYPE
56
- targetUrlForPutPost = Constants::POST_REQUEST_TYPE_LOWER + ' ' + merchantconfig_obj.requestTarget
57
- elsif request_type == Constants::PUT_REQUEST_TYPE
58
- targetUrlForPutPost = Constants::PUT_REQUEST_TYPE_LOWER + ' ' + merchantconfig_obj.requestTarget
59
- elsif request_type == Constants::PATCH_REQUEST_TYPE
60
- targetUrlForPutPost = Constants::PATCH_REQUEST_TYPE_LOWER + ' ' + merchantconfig_obj.requestTarget
61
- end
62
- return targetUrlForPutPost
63
- end
64
- end
1
+ require_relative '../../util/Constants.rb'
2
+ require_relative '.././payloadDigest/digest.rb'
3
+ require 'openssl'
4
+ # This function returns value for paramter Signature which is then passed to Signature header
5
+ # paramter 'Signature' is calucated based on below key values and then signed with SECRET KEY -
6
+ # host: Sandbox (apitest.cybersource.com) or Production (api.cybersource.com) hostname
7
+ # date: "HTTP-date" format as defined by RFC7231.
8
+ # (request-target): Should be in format of httpMethod: path
9
+ # Example: "post /pts/v2/payments"
10
+ # Digest: Only needed for POST calls.
11
+ # digestString = BASE64( HMAC-SHA256 ( Payload ));
12
+ # Digest: “SHA-256=“ + digestString;
13
+ # v-c-merchant-id: set value to Cybersource Merchant ID
14
+ # This ID can be found on EBC portal*/
15
+ class SignatureParameter
16
+ def generateSignatureParameter(merchantconfig_obj, gmtdatetime, log_obj)
17
+ request_type = merchantconfig_obj.requestType.upcase
18
+ merchantSecretKey = merchantconfig_obj.merchantSecretKey
19
+ signatureString = Constants::HOST + ': ' + merchantconfig_obj.requestHost
20
+ signatureString << "\n"+ Constants::DATE + ': ' + gmtdatetime
21
+ signatureString << "\n(request-target): "
22
+ if request_type == Constants::GET_REQUEST_TYPE || request_type == Constants::DELETE_REQUEST_TYPE
23
+ targetUrl=gettargetUrlForGetDelete(request_type,merchantconfig_obj)
24
+ signatureString << targetUrl + "\n"
25
+ elsif request_type == Constants::POST_REQUEST_TYPE || request_type == Constants::PUT_REQUEST_TYPE || request_type == Constants::PATCH_REQUEST_TYPE
26
+ targetUrl=gettargetUrlForPutPost(request_type,merchantconfig_obj)
27
+ signatureString << targetUrl + "\n"
28
+ payload = merchantconfig_obj.requestJsonData
29
+ digest = DigestGeneration.new.generateDigest(payload, log_obj)
30
+ digest_payload = Constants::SHA256 + digest
31
+ signatureString << Constants::DIGEST + ': ' + digest_payload + "\n"
32
+ end
33
+ signatureString << Constants::V_C_MERCHANT_ID + ': ' + merchantconfig_obj.merchantId
34
+ encodedSignatureString = signatureString.force_encoding(Encoding::UTF_8)
35
+ decodedKey = Base64.decode64(merchantSecretKey)
36
+ base64EncodedSignature = Base64.strict_encode64(OpenSSL::HMAC.digest('sha256', decodedKey, encodedSignatureString))
37
+ return base64EncodedSignature
38
+ rescue StandardError => err
39
+ log_obj.logger.error(err.message)
40
+ log_obj.logger.error(err.backtrace)
41
+ puts 'Check log for more details.'
42
+ exit!
43
+ end
44
+ def gettargetUrlForGetDelete(request_type, merchantconfig_obj)
45
+ targetUrlForGetDelete = ''
46
+ if request_type == Constants::DELETE_REQUEST_TYPE
47
+ targetUrlForGetDelete = Constants::DELETE_REQUEST_TYPE_LOWER + ' ' + merchantconfig_obj.requestTarget
48
+ elsif request_type == Constants::GET_REQUEST_TYPE
49
+ targetUrlForGetDelete = Constants::GET_REQUEST_TYPE_LOWER + ' ' + merchantconfig_obj.requestTarget
50
+ end
51
+ return targetUrlForGetDelete
52
+ end
53
+ def gettargetUrlForPutPost(request_type, merchantconfig_obj)
54
+ targetUrlForPutPost = ''
55
+ if request_type == Constants::POST_REQUEST_TYPE
56
+ targetUrlForPutPost = Constants::POST_REQUEST_TYPE_LOWER + ' ' + merchantconfig_obj.requestTarget
57
+ elsif request_type == Constants::PUT_REQUEST_TYPE
58
+ targetUrlForPutPost = Constants::PUT_REQUEST_TYPE_LOWER + ' ' + merchantconfig_obj.requestTarget
59
+ elsif request_type == Constants::PATCH_REQUEST_TYPE
60
+ targetUrlForPutPost = Constants::PATCH_REQUEST_TYPE_LOWER + ' ' + merchantconfig_obj.requestTarget
61
+ end
62
+ return targetUrlForPutPost
63
+ end
64
+ end
@@ -1,52 +1,52 @@
1
- require 'base64'
2
- require_relative '../../core/ITokenGeneration.rb'
3
- require_relative '../../util/Constants.rb'
4
- require_relative '../../util/ApiException.rb'
5
- require_relative '.././payloadDigest/digest.rb'
6
- require_relative '.././http/GetSignatureParameter.rb'
7
- public
8
- # SignatureHeader return SignatureHeader Value that contains following paramters
9
- # * keyid -- Merchant ID obtained from EBC portal
10
- # * algorithm -- Should have value as "HmacSHA256"
11
- # * headers -- List of all header name passed in the Signature paramter below
12
- # String getHeaders = "host date (request-target)" + " " + "v-c-merchant-id";
13
- # String postHeaders = "host date (request-target) digest v-c-merchant-id";
14
- # Note: Digest is not passed for GET calls
15
- # * signature -- Signature header has paramter called signature
16
- # Paramter 'Signature' must contain all the paramters mentioned in header above in given order
17
- class GenerateHttpSignature
18
- # Generates Signature based on the requestType
19
- def getToken(merchantconfig_obj, gmtdatetime, log_obj)
20
- request_type = merchantconfig_obj.requestType.upcase
21
- signatureHeaderValue =''
22
- signatureHeaderValue << Constants::KEY_ID + merchantconfig_obj.merchantKeyId + "\""
23
- # Algorithm should be always HmacSHA256 for http signature
24
- signatureHeaderValue << ', ' + Constants::ALGORITHM + Constants::SIGNATURE_ALGORITHM + "\""
25
- # Headers - list is choosen based on HTTP method
26
- signatureheader=getsignatureHeader(request_type)
27
- signatureHeaderValue << ', ' + Constants::HEADERS_PARAM + signatureheader + "\""
28
- # Get Value for parameter 'Signature' to be passed to Signature Header
29
- signature_value = SignatureParameter.new.generateSignatureParameter(merchantconfig_obj, gmtdatetime, log_obj)
30
- signatureHeaderValue << ', ' + Constants::SIGNATURE_PARAM + signature_value + "\""
31
- return signatureHeaderValue
32
- rescue StandardError => err
33
- ApiException.new.apiexception(err,log_obj)
34
- exit!
35
- end
36
- def getsignatureHeader(request_type)
37
- headers = ''
38
- if request_type == Constants::POST_REQUEST_TYPE
39
- headers = 'host date (request-target) digest ' + Constants::V_C_MERCHANT_ID
40
- elsif request_type == Constants::GET_REQUEST_TYPE || request_type == Constants::DELETE_REQUEST_TYPE
41
- headers = 'host date (request-target)' + ' ' + Constants::V_C_MERCHANT_ID
42
- elsif request_type == Constants::PUT_REQUEST_TYPE
43
- headers = 'host date (request-target) digest ' + Constants::V_C_MERCHANT_ID
44
- elsif request_type == Constants::PATCH_REQUEST_TYPE
45
- headers = 'host date (request-target) digest ' + Constants::V_C_MERCHANT_ID
46
- else
47
- raise StandardError.new(Constants::ERROR_PREFIX + Constants::INVALID_REQUEST_TYPE_METHOD)
48
- end
49
- return headers
50
- end
51
- implements TokenInterface
52
- end
1
+ require 'base64'
2
+ require_relative '../../core/ITokenGeneration.rb'
3
+ require_relative '../../util/Constants.rb'
4
+ require_relative '../../util/ApiException.rb'
5
+ require_relative '.././payloadDigest/digest.rb'
6
+ require_relative '.././http/GetSignatureParameter.rb'
7
+ public
8
+ # SignatureHeader return SignatureHeader Value that contains following paramters
9
+ # * keyid -- Merchant ID obtained from EBC portal
10
+ # * algorithm -- Should have value as "HmacSHA256"
11
+ # * headers -- List of all header name passed in the Signature paramter below
12
+ # String getHeaders = "host date (request-target)" + " " + "v-c-merchant-id";
13
+ # String postHeaders = "host date (request-target) digest v-c-merchant-id";
14
+ # Note: Digest is not passed for GET calls
15
+ # * signature -- Signature header has paramter called signature
16
+ # Paramter 'Signature' must contain all the paramters mentioned in header above in given order
17
+ class GenerateHttpSignature
18
+ # Generates Signature based on the requestType
19
+ def getToken(merchantconfig_obj, gmtdatetime, log_obj)
20
+ request_type = merchantconfig_obj.requestType.upcase
21
+ signatureHeaderValue =''
22
+ signatureHeaderValue << Constants::KEY_ID + merchantconfig_obj.merchantKeyId + "\""
23
+ # Algorithm should be always HmacSHA256 for http signature
24
+ signatureHeaderValue << ', ' + Constants::ALGORITHM + Constants::SIGNATURE_ALGORITHM + "\""
25
+ # Headers - list is choosen based on HTTP method
26
+ signatureheader=getsignatureHeader(request_type)
27
+ signatureHeaderValue << ', ' + Constants::HEADERS_PARAM + signatureheader + "\""
28
+ # Get Value for parameter 'Signature' to be passed to Signature Header
29
+ signature_value = SignatureParameter.new.generateSignatureParameter(merchantconfig_obj, gmtdatetime, log_obj)
30
+ signatureHeaderValue << ', ' + Constants::SIGNATURE_PARAM + signature_value + "\""
31
+ return signatureHeaderValue
32
+ rescue StandardError => err
33
+ ApiException.new.apiexception(err,log_obj)
34
+ exit!
35
+ end
36
+ def getsignatureHeader(request_type)
37
+ headers = ''
38
+ if request_type == Constants::POST_REQUEST_TYPE
39
+ headers = 'host date (request-target) digest ' + Constants::V_C_MERCHANT_ID
40
+ elsif request_type == Constants::GET_REQUEST_TYPE || request_type == Constants::DELETE_REQUEST_TYPE
41
+ headers = 'host date (request-target)' + ' ' + Constants::V_C_MERCHANT_ID
42
+ elsif request_type == Constants::PUT_REQUEST_TYPE
43
+ headers = 'host date (request-target) digest ' + Constants::V_C_MERCHANT_ID
44
+ elsif request_type == Constants::PATCH_REQUEST_TYPE
45
+ headers = 'host date (request-target) digest ' + Constants::V_C_MERCHANT_ID
46
+ else
47
+ raise StandardError.new(Constants::ERROR_PREFIX + Constants::INVALID_REQUEST_TYPE_METHOD)
48
+ end
49
+ return headers
50
+ end
51
+ implements TokenInterface
52
+ end
@@ -1,62 +1,62 @@
1
- require 'base64'
2
- require 'openssl'
3
- require 'jwt'
4
- require 'json'
5
- require 'active_support'
6
- require_relative '../../core/ITokenGeneration.rb'
7
- require_relative '../../util/Constants.rb'
8
- require_relative '../../util/ApiException.rb'
9
- require_relative '../../util/Cache.rb'
10
- require_relative '../../authentication/payloadDigest/digest.rb'
11
- public
12
- #JWT Token-generated based on the Request type
13
- class GenerateJwtToken
14
- def getToken(merchantconfig_obj,gmtDatetime,log_obj)
15
- jwtBody = ''
16
- request_type = merchantconfig_obj.requestType.upcase
17
- filePath = merchantconfig_obj.keysDirectory + '/' + merchantconfig_obj.keyFilename + '.p12'
18
- if (!File.exist?(filePath))
19
- raise Constants::ERROR_PREFIX + Constants::FILE_NOT_FOUND + File.expand_path(filePath)
20
- end
21
- p12File = File.binread(filePath)
22
- jwtBody=getJwtBody(request_type, gmtDatetime, merchantconfig_obj, log_obj)
23
- claimSet = JSON.parse(jwtBody)
24
- p12FilePath = OpenSSL::PKCS12.new(p12File, merchantconfig_obj.keyPass)
25
- # Generating certificate.
26
- cacheObj = ActiveSupport::Cache::MemoryStore.new
27
- x5Cert = Cache.new.fetchCachedCertificate(filePath, p12File, merchantconfig_obj.keyPass, cacheObj)
28
- # Generating Public key.
29
- publicKey = OpenSSL::PKey::RSA.new(p12FilePath.key.public_key)
30
- #Generating Private Key
31
- privateKey = OpenSSL::PKey::RSA.new(p12FilePath.key)
32
- # JWT token-Generates using RS256 algorithm only
33
- x5clist = [x5Cert]
34
- customHeaders = {}
35
- customHeaders['v-c-merchant-id'] = merchantconfig_obj.keyAlias
36
- customHeaders['x5c'] = x5clist
37
- # Generating JWT token
38
- token = JWT.encode(claimSet, privateKey, 'RS256', customHeaders)
39
- return token
40
- rescue StandardError => err
41
- if err.message.include? 'PKCS12_parse: mac verify failure'
42
- ApiException.new.customerror(Constants::ERROR_PREFIX + Constants::INCORRECT_KEY_PASS,log_obj)
43
- exit!
44
- else
45
- ApiException.new.apiexception(err,log_obj)
46
- exit!
47
- end
48
- end
49
- def getJwtBody(request_type, gmtDatetime, merchantconfig_obj,log_obj)
50
- if request_type == Constants::POST_REQUEST_TYPE || request_type == Constants::PUT_REQUEST_TYPE || request_type == Constants::PATCH_REQUEST_TYPE
51
- payload = merchantconfig_obj.requestJsonData
52
- # Note: Digest is not passed for GET calls
53
- digest = DigestGeneration.new.generateDigest(payload, log_obj)
54
- jwtBody = "{\n \"digest\":\"" + digest + "\", \"digestAlgorithm\":\"SHA-256\", \"iat\":\"" + gmtDatetime + "\"}"
55
- elsif request_type == Constants::GET_REQUEST_TYPE || request_type == Constants::DELETE_REQUEST_TYPE
56
- jwtBody = "{\n \"iat\":\"" + gmtDatetime + "\"\n} \n\n"
57
- else
58
- raise StandardError.new(Constants::ERROR_PREFIX + Constants::INVALID_REQUEST_TYPE_METHOD)
59
- end
60
- end
61
- implements TokenInterface
62
- end
1
+ require 'base64'
2
+ require 'openssl'
3
+ require 'jwt'
4
+ require 'json'
5
+ require 'active_support'
6
+ require_relative '../../core/ITokenGeneration.rb'
7
+ require_relative '../../util/Constants.rb'
8
+ require_relative '../../util/ApiException.rb'
9
+ require_relative '../../util/Cache.rb'
10
+ require_relative '../../authentication/payloadDigest/digest.rb'
11
+ public
12
+ #JWT Token-generated based on the Request type
13
+ class GenerateJwtToken
14
+ def getToken(merchantconfig_obj,gmtDatetime,log_obj)
15
+ jwtBody = ''
16
+ request_type = merchantconfig_obj.requestType.upcase
17
+ filePath = merchantconfig_obj.keysDirectory + '/' + merchantconfig_obj.keyFilename + '.p12'
18
+ if (!File.exist?(filePath))
19
+ raise Constants::ERROR_PREFIX + Constants::FILE_NOT_FOUND + File.expand_path(filePath)
20
+ end
21
+ p12File = File.binread(filePath)
22
+ jwtBody=getJwtBody(request_type, gmtDatetime, merchantconfig_obj, log_obj)
23
+ claimSet = JSON.parse(jwtBody)
24
+ p12FilePath = OpenSSL::PKCS12.new(p12File, merchantconfig_obj.keyPass)
25
+ # Generating certificate.
26
+ cacheObj = ActiveSupport::Cache::MemoryStore.new
27
+ x5Cert = Cache.new.fetchCachedCertificate(filePath, p12File, merchantconfig_obj.keyPass, cacheObj)
28
+ # Generating Public key.
29
+ publicKey = OpenSSL::PKey::RSA.new(p12FilePath.key.public_key)
30
+ #Generating Private Key
31
+ privateKey = OpenSSL::PKey::RSA.new(p12FilePath.key)
32
+ # JWT token-Generates using RS256 algorithm only
33
+ x5clist = [x5Cert]
34
+ customHeaders = {}
35
+ customHeaders['v-c-merchant-id'] = merchantconfig_obj.keyAlias
36
+ customHeaders['x5c'] = x5clist
37
+ # Generating JWT token
38
+ token = JWT.encode(claimSet, privateKey, 'RS256', customHeaders)
39
+ return token
40
+ rescue StandardError => err
41
+ if err.message.include? 'PKCS12_parse: mac verify failure'
42
+ ApiException.new.customerror(Constants::ERROR_PREFIX + Constants::INCORRECT_KEY_PASS,log_obj)
43
+ exit!
44
+ else
45
+ ApiException.new.apiexception(err,log_obj)
46
+ exit!
47
+ end
48
+ end
49
+ def getJwtBody(request_type, gmtDatetime, merchantconfig_obj,log_obj)
50
+ if request_type == Constants::POST_REQUEST_TYPE || request_type == Constants::PUT_REQUEST_TYPE || request_type == Constants::PATCH_REQUEST_TYPE
51
+ payload = merchantconfig_obj.requestJsonData
52
+ # Note: Digest is not passed for GET calls
53
+ digest = DigestGeneration.new.generateDigest(payload, log_obj)
54
+ jwtBody = "{\n \"digest\":\"" + digest + "\", \"digestAlgorithm\":\"SHA-256\", \"iat\":\"" + gmtDatetime + "\"}"
55
+ elsif request_type == Constants::GET_REQUEST_TYPE || request_type == Constants::DELETE_REQUEST_TYPE
56
+ jwtBody = "{\n \"iat\":\"" + gmtDatetime + "\"\n} \n\n"
57
+ else
58
+ raise StandardError.new(Constants::ERROR_PREFIX + Constants::INVALID_REQUEST_TYPE_METHOD)
59
+ end
60
+ end
61
+ implements TokenInterface
62
+ end
@@ -1,10 +1,10 @@
1
- require 'digest'
2
- public
3
- # This method return Digest value which is SHA-256
4
- # hash of payload that is BASE64 encoded
5
- class DigestGeneration
6
- def generateDigest(payload, log_obj)
7
- digest = Digest::SHA256.base64digest(payload)
8
- return digest
9
- end
10
- end
1
+ require 'digest'
2
+ public
3
+ # This method return Digest value which is SHA-256
4
+ # hash of payload that is BASE64 encoded
5
+ class DigestGeneration
6
+ def generateDigest(payload, log_obj)
7
+ digest = Digest::SHA256.base64digest(payload)
8
+ return digest
9
+ end
10
+ end
@@ -1,24 +1,24 @@
1
- require_relative '../authentication/http/HttpSignatureHeader.rb'
2
- require_relative '../authentication/jwt/JwtToken.rb'
3
- require_relative '../util/Constants.rb'
4
- require_relative '../util/ApiException.rb'
5
- public
6
- # This function calls for the generation of Signature message depending on the authentication type.
7
- class Authorization
8
- def getToken(merchantconfig_obj, gmtdatetime, log_obj)
9
- authenticationType = merchantconfig_obj.authenticationType.upcase
10
- if merchantconfig_obj.requestType.to_s.empty?
11
- raise StandardError.new(Constants::ERROR_PREFIX + Constants::REQUEST_TYPE_EMPTY)
12
- end
13
- if authenticationType == Constants::AUTH_TYPE_HTTP
14
- token = GenerateHttpSignature.new.getToken(merchantconfig_obj, gmtdatetime, log_obj)
15
- elsif authenticationType == Constants::AUTH_TYPE_JWT
16
- token = GenerateJwtToken.new.getToken(merchantconfig_obj, gmtdatetime, log_obj)
17
- elsif authenticationType != Constants::AUTH_TYPE_HTTP || authenticationType != Constants::AUTH_TYPE_JWT
18
- raise StandardError.ner(Constants::ERROR_PREFIX + Constants::AUTH_ERROR)
19
- end
20
- rescue StandardError => err
21
- ApiException.new.apiexception(err,log_obj)
22
- exit!
23
- end
24
- end
1
+ require_relative '../authentication/http/HttpSignatureHeader.rb'
2
+ require_relative '../authentication/jwt/JwtToken.rb'
3
+ require_relative '../util/Constants.rb'
4
+ require_relative '../util/ApiException.rb'
5
+ public
6
+ # This function calls for the generation of Signature message depending on the authentication type.
7
+ class Authorization
8
+ def getToken(merchantconfig_obj, gmtdatetime, log_obj)
9
+ authenticationType = merchantconfig_obj.authenticationType.upcase
10
+ if merchantconfig_obj.requestType.to_s.empty?
11
+ raise StandardError.new(Constants::ERROR_PREFIX + Constants::REQUEST_TYPE_EMPTY)
12
+ end
13
+ if authenticationType == Constants::AUTH_TYPE_HTTP
14
+ token = GenerateHttpSignature.new.getToken(merchantconfig_obj, gmtdatetime, log_obj)
15
+ elsif authenticationType == Constants::AUTH_TYPE_JWT
16
+ token = GenerateJwtToken.new.getToken(merchantconfig_obj, gmtdatetime, log_obj)
17
+ elsif authenticationType != Constants::AUTH_TYPE_HTTP || authenticationType != Constants::AUTH_TYPE_JWT
18
+ raise StandardError.ner(Constants::ERROR_PREFIX + Constants::AUTH_ERROR)
19
+ end
20
+ rescue StandardError => err
21
+ ApiException.new.apiexception(err,log_obj)
22
+ exit!
23
+ end
24
+ end