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.
- checksums.yaml +4 -4
- data/AuthenticationSDK/Cybersource.gemspec +24 -23
- data/AuthenticationSDK/authentication/http/GetSignatureParameter.rb +64 -64
- data/AuthenticationSDK/authentication/http/HttpSignatureHeader.rb +52 -52
- data/AuthenticationSDK/authentication/jwt/JwtToken.rb +62 -62
- data/AuthenticationSDK/authentication/payloadDigest/digest.rb +10 -10
- data/AuthenticationSDK/core/Authorization.rb +24 -24
- data/AuthenticationSDK/core/ITokenGeneration.rb +4 -4
- data/AuthenticationSDK/core/Logger.rb +26 -26
- data/AuthenticationSDK/core/MerchantConfig.rb +181 -181
- data/AuthenticationSDK/resource/TRRReports.json +12 -0
- data/AuthenticationSDK/resource/cybs.yml +31 -0
- data/AuthenticationSDK/resource/request.json +54 -0
- data/AuthenticationSDK/resource/request_capture.json +11 -0
- data/AuthenticationSDK/resource/testrest.p12 +0 -0
- data/AuthenticationSDK/spec/Authorization_spec.rb +274 -0
- data/AuthenticationSDK/spec/MerchantConfigData.rb +59 -0
- data/AuthenticationSDK/spec/MerchantConfig_spec.rb +116 -0
- data/AuthenticationSDK/spec/PostRequestData.json +54 -0
- data/AuthenticationSDK/spec/PutRequestData.json +12 -0
- data/AuthenticationSDK/spec/ResponseCodeMessage_spec.rb +60 -0
- data/AuthenticationSDK/spec/spec_helper.rb +12 -0
- data/AuthenticationSDK/util/ApiException.rb +18 -18
- data/AuthenticationSDK/util/Cache.rb +36 -36
- data/AuthenticationSDK/util/Constants.rb +137 -137
- data/AuthenticationSDK/util/PropertiesUtil.rb +20 -21
- data/AuthenticationSDK/util/Utility.rb +30 -30
- data/lib/cybersource_rest_client/api/capture_api.rb +84 -84
- data/lib/cybersource_rest_client/api/credit_api.rb +78 -78
- data/lib/cybersource_rest_client/api/flex_token_api.rb +74 -74
- data/lib/cybersource_rest_client/api/instrument_identifier_api.rb +254 -254
- data/lib/cybersource_rest_client/api/instrument_identifiers_api.rb +91 -91
- data/lib/cybersource_rest_client/api/key_generation_api.rb +74 -74
- data/lib/cybersource_rest_client/api/notification_of_changes_api.rb +86 -86
- data/lib/cybersource_rest_client/api/payment_instruments_api.rb +414 -414
- data/lib/cybersource_rest_client/api/payments_api.rb +78 -78
- data/lib/cybersource_rest_client/api/process_a_payout_api.rb +77 -77
- data/lib/cybersource_rest_client/api/purchase_and_refund_details_api.rb +124 -129
- data/lib/cybersource_rest_client/api/refund_api.rb +144 -144
- data/lib/cybersource_rest_client/api/report_definitions_api.rb +147 -156
- data/lib/cybersource_rest_client/api/report_downloads_api.rb +96 -100
- data/lib/cybersource_rest_client/api/report_subscriptions_api.rb +254 -262
- data/lib/cybersource_rest_client/api/reports_api.rb +250 -258
- data/lib/cybersource_rest_client/api/reversal_api.rb +84 -84
- data/lib/cybersource_rest_client/api/search_transactions_api.rb +132 -132
- data/lib/cybersource_rest_client/api/secure_file_share_api.rb +161 -169
- data/lib/cybersource_rest_client/api/transaction_batch_api.rb +77 -77
- data/lib/cybersource_rest_client/api/transaction_batches_api.rb +86 -86
- data/lib/cybersource_rest_client/api/transaction_details_api.rb +78 -78
- data/lib/cybersource_rest_client/api/user_management_api.rb +84 -84
- data/lib/cybersource_rest_client/api/void_api.rb +264 -264
- data/lib/cybersource_rest_client/api_client.rb +449 -447
- data/lib/cybersource_rest_client/api_error.rb +38 -38
- data/lib/cybersource_rest_client/configuration.rb +202 -202
- data/lib/cybersource_rest_client/models/auth_reversal_request.rb +219 -219
- data/lib/cybersource_rest_client/models/body.rb +295 -295
- data/lib/cybersource_rest_client/models/body_1.rb +183 -183
- data/lib/cybersource_rest_client/models/body_2.rb +331 -331
- data/lib/cybersource_rest_client/models/body_3.rb +331 -331
- data/lib/cybersource_rest_client/models/capture_payment_request.rb +267 -267
- data/lib/cybersource_rest_client/models/card_info.rb +214 -214
- data/lib/cybersource_rest_client/models/create_credit_request.rb +267 -267
- data/lib/cybersource_rest_client/models/create_payment_request.rb +285 -285
- data/lib/cybersource_rest_client/models/der_public_key.rb +205 -205
- data/lib/cybersource_rest_client/models/error.rb +192 -192
- data/lib/cybersource_rest_client/models/error_links.rb +205 -205
- data/lib/cybersource_rest_client/models/error_response.rb +192 -192
- data/lib/cybersource_rest_client/models/flex_v1_keys_post200_response.rb +202 -202
- data/lib/cybersource_rest_client/models/flex_v1_keys_post200_response_der.rb +205 -205
- data/lib/cybersource_rest_client/models/flex_v1_keys_post200_response_jwk.rb +225 -225
- data/lib/cybersource_rest_client/models/flex_v1_tokens_post200_response.rb +255 -255
- data/lib/cybersource_rest_client/models/flexv1tokens_card_info.rb +214 -214
- data/lib/cybersource_rest_client/models/generate_public_key_request.rb +249 -249
- data/lib/cybersource_rest_client/models/inline_response_400.rb +202 -202
- data/lib/cybersource_rest_client/models/inline_response_default.rb +192 -192
- data/lib/cybersource_rest_client/models/inline_response_default__links.rb +205 -205
- data/lib/cybersource_rest_client/models/inline_response_default__links_next.rb +204 -204
- data/lib/cybersource_rest_client/models/inline_response_default_response_status.rb +225 -225
- data/lib/cybersource_rest_client/models/inline_response_default_response_status_details.rb +194 -194
- data/lib/cybersource_rest_client/models/json_web_key.rb +225 -225
- data/lib/cybersource_rest_client/models/key_parameters.rb +184 -184
- data/lib/cybersource_rest_client/models/key_result.rb +202 -202
- data/lib/cybersource_rest_client/models/link.rb +204 -204
- data/lib/cybersource_rest_client/models/links.rb +205 -205
- data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get200_response.rb +204 -204
- data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get200_response__links.rb +183 -183
- data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get200_response__links_self.rb +192 -192
- data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get200_response_transaction_batches.rb +277 -277
- data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get400_response.rb +193 -193
- data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get400_response_error_information.rb +203 -203
- data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get400_response_error_information_details.rb +194 -194
- data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get500_response.rb +193 -193
- data/lib/cybersource_rest_client/models/pts_v1_transaction_batches_get500_response_error_information.rb +194 -194
- data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response.rb +323 -323
- data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_credit_amount_details.rb +224 -224
- data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response.rb +314 -314
- data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response__links.rb +201 -201
- data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_order_information.rb +192 -192
- data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_order_information_amount_details.rb +224 -224
- data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_processor_information.rb +199 -199
- data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post400_response.rb +271 -271
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response.rb +341 -341
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response__links.rb +201 -201
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response__links_self.rb +194 -194
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_client_reference_information.rb +199 -199
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_error_information.rb +239 -239
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_error_information_details.rb +228 -228
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_order_information.rb +192 -192
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_order_information_amount_details.rb +249 -249
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_order_information_invoice_details.rb +184 -184
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information.rb +201 -201
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb +623 -623
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_card.rb +199 -199
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_tokenized_card.rb +349 -349
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_point_of_sale_information.rb +208 -208
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_point_of_sale_information_emv.rb +199 -199
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information.rb +642 -642
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_avs.rb +224 -224
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_card_verification.rb +224 -224
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_consumer_authentication_response.rb +224 -224
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_customer.rb +199 -199
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_electronic_verification_results.rb +474 -474
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_issuer.rb +224 -224
- data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_merchant_advice.rb +224 -224
- data/lib/cybersource_rest_client/models/pts_v2_payments_post400_response.rb +271 -271
- data/lib/cybersource_rest_client/models/pts_v2_payments_post502_response.rb +260 -260
- data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response.rb +323 -323
- data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response__links.rb +192 -192
- data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_order_information.rb +183 -183
- data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_processor_information.rb +224 -224
- data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_refund_amount_details.rb +224 -224
- data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post400_response.rb +271 -271
- data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response.rb +332 -332
- data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response__links.rb +183 -183
- data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_authorization_information.rb +224 -224
- data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_processor_information.rb +324 -324
- data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_reversal_amount_details.rb +249 -249
- data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post400_response.rb +271 -271
- data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post201_response.rb +280 -280
- data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post201_response_void_amount_details.rb +219 -219
- data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post400_response.rb +271 -271
- data/lib/cybersource_rest_client/models/pts_v2_payouts_post400_response.rb +259 -259
- data/lib/cybersource_rest_client/models/pts_v2_payouts_post_response.rb +237 -237
- data/lib/cybersource_rest_client/models/ptsv2credits_point_of_sale_information.rb +183 -183
- data/lib/cybersource_rest_client/models/ptsv2credits_point_of_sale_information_emv.rb +221 -221
- data/lib/cybersource_rest_client/models/ptsv2credits_processing_information.rb +383 -383
- data/lib/cybersource_rest_client/models/ptsv2payments_aggregator_information.rb +233 -233
- data/lib/cybersource_rest_client/models/ptsv2payments_aggregator_information_sub_merchant.rb +424 -424
- data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information.rb +285 -285
- data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information_personal_identification.rb +252 -252
- data/lib/cybersource_rest_client/models/ptsv2payments_client_reference_information.rb +219 -219
- data/lib/cybersource_rest_client/models/ptsv2payments_consumer_authentication_information.rb +374 -374
- data/lib/cybersource_rest_client/models/ptsv2payments_device_information.rb +249 -249
- data/lib/cybersource_rest_client/models/ptsv2payments_merchant_defined_information.rb +224 -224
- data/lib/cybersource_rest_client/models/ptsv2payments_merchant_information.rb +308 -308
- data/lib/cybersource_rest_client/models/ptsv2payments_merchant_information_merchant_descriptor.rb +365 -374
- data/lib/cybersource_rest_client/models/ptsv2payments_order_information.rb +230 -230
- data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details.rb +605 -605
- data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_amex_additional_amounts.rb +224 -224
- data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_surcharge.rb +209 -209
- data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_tax_details.rb +328 -328
- data/lib/cybersource_rest_client/models/ptsv2payments_order_information_bill_to.rb +618 -618
- data/lib/cybersource_rest_client/models/ptsv2payments_order_information_invoice_details.rb +360 -360
- data/lib/cybersource_rest_client/models/ptsv2payments_order_information_invoice_details_transaction_advice_addendum.rb +199 -199
- data/lib/cybersource_rest_client/models/ptsv2payments_order_information_line_items.rb +649 -649
- data/lib/cybersource_rest_client/models/ptsv2payments_order_information_ship_to.rb +474 -474
- data/lib/cybersource_rest_client/models/ptsv2payments_order_information_shipping_details.rb +234 -234
- data/lib/cybersource_rest_client/models/ptsv2payments_payment_information.rb +210 -210
- data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb +474 -474
- data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_customer.rb +190 -199
- data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_fluid_data.rb +259 -259
- data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_tokenized_card.rb +424 -424
- data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information.rb +440 -440
- data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information_emv.rb +256 -256
- data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +432 -432
- data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options.rb +361 -361
- data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options_initiator.rb +247 -247
- data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options_merchant_initiated_transaction.rb +224 -224
- data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_capture_options.rb +267 -267
- data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_issuer.rb +199 -199
- data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_recurring_options.rb +198 -198
- data/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb +249 -249
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_aggregator_information.rb +233 -233
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_aggregator_information_sub_merchant.rb +374 -374
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_buyer_information.rb +224 -224
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_merchant_information.rb +258 -258
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information.rb +230 -230
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_amount_details.rb +546 -546
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_bill_to.rb +449 -449
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_invoice_details.rb +320 -320
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_ship_to.rb +249 -249
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_order_information_shipping_details.rb +199 -199
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_payment_information.rb +183 -183
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_point_of_sale_information.rb +208 -208
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_point_of_sale_information_emv.rb +211 -211
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information.rb +351 -351
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_authorization_options.rb +249 -249
- data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_capture_options.rb +242 -242
- data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_merchant_information.rb +258 -258
- data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_order_information.rb +230 -230
- data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_order_information_line_items.rb +639 -639
- data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information.rb +183 -183
- data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information_card.rb +374 -374
- data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_point_of_sale_information.rb +183 -183
- data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_processing_information.rb +333 -333
- data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_processing_information_recurring_options.rb +186 -186
- data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_client_reference_information.rb +209 -209
- data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_order_information.rb +185 -185
- data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_order_information_line_items.rb +233 -233
- data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_point_of_sale_information.rb +183 -183
- data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_processing_information.rb +308 -308
- data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_reversal_information.rb +208 -208
- data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_reversal_information_amount_details.rb +224 -224
- data/lib/cybersource_rest_client/models/ptsv2payouts_merchant_information.rb +258 -258
- data/lib/cybersource_rest_client/models/ptsv2payouts_merchant_information_merchant_descriptor.rb +324 -324
- data/lib/cybersource_rest_client/models/ptsv2payouts_order_information.rb +192 -192
- data/lib/cybersource_rest_client/models/ptsv2payouts_order_information_amount_details.rb +233 -233
- data/lib/cybersource_rest_client/models/ptsv2payouts_order_information_amount_details_surcharge.rb +199 -199
- data/lib/cybersource_rest_client/models/ptsv2payouts_order_information_bill_to.rb +443 -443
- data/lib/cybersource_rest_client/models/ptsv2payouts_payment_information.rb +183 -183
- data/lib/cybersource_rest_client/models/ptsv2payouts_payment_information_card.rb +299 -299
- data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information.rb +283 -283
- data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information_payouts_options.rb +274 -274
- data/lib/cybersource_rest_client/models/ptsv2payouts_recipient_information.rb +433 -433
- data/lib/cybersource_rest_client/models/ptsv2payouts_sender_information.rb +517 -517
- data/lib/cybersource_rest_client/models/ptsv2payouts_sender_information_account.rb +233 -233
- data/lib/cybersource_rest_client/models/refund_capture_request.rb +267 -267
- data/lib/cybersource_rest_client/models/refund_payment_request.rb +267 -267
- data/lib/cybersource_rest_client/models/reporting_v3_notificationof_changes_get200_response.rb +186 -186
- data/lib/cybersource_rest_client/models/reporting_v3_notificationof_changes_get200_response_notification_of_changes.rb +255 -255
- data/lib/cybersource_rest_client/models/reporting_v3_notificationof_changes_get400_response.rb +247 -247
- data/lib/cybersource_rest_client/models/reporting_v3_notificationof_changes_get400_response_fields.rb +205 -205
- data/lib/cybersource_rest_client/models/reporting_v3_report_definitions_get200_response.rb +185 -185
- data/lib/cybersource_rest_client/models/reporting_v3_report_definitions_get200_response_report_definitions.rb +243 -243
- data/lib/cybersource_rest_client/models/reporting_v3_report_definitions_name_get200_response.rb +254 -254
- data/lib/cybersource_rest_client/models/reporting_v3_report_definitions_name_get200_response_attributes.rb +237 -237
- data/lib/cybersource_rest_client/models/reporting_v3_report_subscriptions_get200_response.rb +185 -185
- data/lib/cybersource_rest_client/models/reporting_v3_report_subscriptions_get200_response_report_preferences.rb +229 -229
- data/lib/cybersource_rest_client/models/reporting_v3_report_subscriptions_get200_response_subscriptions.rb +354 -354
- data/lib/cybersource_rest_client/models/reporting_v3_reports_get200_response.rb +185 -185
- data/lib/cybersource_rest_client/models/reporting_v3_reports_get200_response_reports.rb +373 -373
- data/lib/cybersource_rest_client/models/reporting_v3_reports_id_get200_response.rb +376 -376
- data/lib/cybersource_rest_client/models/request_body.rb +446 -463
- data/lib/cybersource_rest_client/models/request_body_1.rb +398 -415
- data/lib/cybersource_rest_client/models/response_status.rb +225 -225
- data/lib/cybersource_rest_client/models/response_status_details.rb +194 -194
- data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_delete409_response.rb +183 -183
- data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_delete409_response__links.rb +183 -183
- data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_delete409_response__links_payment_instruments.rb +183 -183
- data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_paymentinstruments_get200_response.rb +277 -277
- data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_paymentinstruments_get200_response__links.rb +219 -219
- data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_paymentinstruments_get200_response__links_first.rb +184 -184
- data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_paymentinstruments_get200_response__links_last.rb +184 -184
- data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_paymentinstruments_get200_response__links_next.rb +184 -184
- data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_paymentinstruments_get200_response__links_prev.rb +184 -184
- data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_paymentinstruments_get200_response__links_self.rb +184 -184
- data/lib/cybersource_rest_client/models/tms_v1_instrumentidentifiers_post200_response.rb +295 -295
- data/lib/cybersource_rest_client/models/tms_v1_paymentinstruments_post201_response.rb +331 -331
- data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers__links.rb +201 -201
- data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers__links_self.rb +183 -183
- data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_authorization_options_merchant_initiated_transaction.rb +184 -184
- data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_bank_account.rb +194 -194
- data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_card.rb +184 -184
- data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_details.rb +194 -194
- data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_metadata.rb +184 -184
- data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_processing_information.rb +183 -183
- data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_processing_information_authorization_options.rb +183 -183
- data/lib/cybersource_rest_client/models/tmsv1instrumentidentifiers_processing_information_authorization_options_initiator.rb +183 -183
- data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_bank_account.rb +184 -184
- data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_bill_to.rb +284 -284
- data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_buyer_information.rb +215 -215
- data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_buyer_information_issued_by.rb +184 -184
- data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_buyer_information_personal_identification.rb +203 -203
- data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_card.rb +278 -278
- data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_instrument_identifier.rb +295 -295
- data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_merchant_information.rb +183 -183
- data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_merchant_information_merchant_descriptor.rb +184 -184
- data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_processing_information.rb +193 -193
- data/lib/cybersource_rest_client/models/tmsv1paymentinstruments_processing_information_bank_transfer_options.rb +184 -184
- data/lib/cybersource_rest_client/models/tokenize_parameters.rb +193 -193
- data/lib/cybersource_rest_client/models/tokenize_request.rb +193 -193
- data/lib/cybersource_rest_client/models/tokenize_result.rb +255 -255
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response.rb +444 -444
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_application_information.rb +225 -225
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_application_information_applications.rb +254 -254
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_buyer_information.rb +224 -224
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_client_reference_information.rb +239 -239
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_consumer_authentication_information.rb +259 -259
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_device_information.rb +234 -234
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_error_information.rb +205 -205
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_fraud_marking_information.rb +184 -184
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_installment_information.rb +184 -184
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_merchant_defined_information.rb +224 -224
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_merchant_information.rb +183 -183
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_merchant_information_merchant_descriptor.rb +199 -199
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information.rb +222 -222
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_amount_details.rb +274 -274
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_bill_to.rb +524 -524
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_line_items.rb +343 -343
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_ship_to.rb +424 -424
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_order_information_shipping_details.rb +209 -209
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information.rb +228 -228
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_account_features.rb +249 -249
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_bank.rb +242 -242
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_bank_account.rb +244 -244
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_bank_mandate.rb +204 -204
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_card.rb +424 -424
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_invoice.rb +204 -204
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_payment_type.rb +244 -244
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_point_of_sale_information.rb +233 -233
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb +252 -252
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_authorization_options.rb +199 -199
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_bank_transfer_options.rb +184 -184
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +309 -309
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_ach_verification.rb +224 -224
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_card_verification.rb +199 -199
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_electronic_verification_results.rb +424 -424
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_processor.rb +199 -199
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_risk_information.rb +233 -233
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_risk_information_profile.rb +194 -194
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_risk_information_score.rb +196 -196
- data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_sender_information.rb +199 -199
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response.rb +317 -317
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded.rb +186 -186
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded__links.rb +183 -183
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_buyer_information.rb +199 -199
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_client_reference_information.rb +219 -219
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_consumer_authentication_information.rb +209 -209
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_device_information.rb +199 -199
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_merchant_information.rb +199 -199
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_order_information.rb +201 -201
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_order_information_bill_to.rb +299 -299
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_order_information_ship_to.rb +299 -299
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information.rb +201 -201
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information_card.rb +249 -249
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information_payment_method.rb +184 -184
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_point_of_sale_information.rb +228 -228
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_point_of_sale_information_partner.rb +199 -199
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processing_information.rb +209 -209
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processor_information.rb +183 -183
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_risk_information.rb +183 -183
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_risk_information_providers.rb +183 -183
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_risk_information_providers_fingerprint.rb +249 -249
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_transaction_summaries.rb +357 -357
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post400_response.rb +249 -249
- data/lib/cybersource_rest_client/models/tss_v2_transactions_post_response.rb +244 -244
- data/lib/cybersource_rest_client/models/ums_v1_users_get200_response.rb +185 -185
- data/lib/cybersource_rest_client/models/ums_v1_users_get200_response_account_information.rb +282 -282
- data/lib/cybersource_rest_client/models/ums_v1_users_get200_response_contact_information.rb +210 -210
- data/lib/cybersource_rest_client/models/ums_v1_users_get200_response_organization_information.rb +183 -183
- data/lib/cybersource_rest_client/models/ums_v1_users_get200_response_users.rb +201 -201
- data/lib/cybersource_rest_client/models/v1_file_details_get200_response.rb +194 -194
- data/lib/cybersource_rest_client/models/v1_file_details_get200_response__links.rb +194 -194
- data/lib/cybersource_rest_client/models/v1_file_details_get200_response__links_files.rb +202 -202
- data/lib/cybersource_rest_client/models/v1_file_details_get200_response__links_self.rb +192 -192
- data/lib/cybersource_rest_client/models/v1_file_details_get200_response_file_details.rb +278 -278
- data/lib/cybersource_rest_client/models/void_capture_request.rb +183 -183
- data/lib/cybersource_rest_client/models/void_credit_request.rb +183 -183
- data/lib/cybersource_rest_client/models/void_payment_request.rb +183 -183
- data/lib/cybersource_rest_client/models/void_refund_request.rb +183 -183
- data/lib/cybersource_rest_client/version.rb +15 -15
- data/lib/cybersource_rest_client.rb +369 -369
- metadata +14 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7b36ae784424eea24169fce754df396b11b9376f665d77535b98c2868d5f33b6
|
4
|
+
data.tar.gz: 479be29e3fb4c13eedec1c952f606d19b83ba83af7d9be245534dbbb1ec6c659
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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.
|
21
|
-
s.
|
22
|
-
s.
|
23
|
-
|
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
|