first_data_gateway 1.1.0 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +79 -0
- data/README.md +69 -39
- data/docs/AVSResponse.md +2 -2
- data/docs/AccessTokenResponse.md +2 -2
- data/docs/AccountUpdaterResponse.md +12 -0
- data/docs/AdditionalAmountRate.md +2 -2
- data/docs/AdditionalDetails.md +10 -0
- data/docs/AdditionalTransactionDetails.md +3 -3
- data/docs/Address.md +7 -7
- data/docs/Airline.md +12 -12
- data/docs/AirlineAncillaryServiceCategory.md +1 -1
- data/docs/AirlineTravelRoute.md +4 -4
- data/docs/AliPay.md +2 -2
- data/docs/{SecondaryTransactionAdditionalDetails.md → AliPayPaymentMethod.md} +2 -2
- data/docs/AliPaySaleTransaction.md +14 -0
- data/docs/Amount.md +2 -2
- data/docs/AmountComponents.md +6 -7
- data/docs/Authentication.md +8 -0
- data/docs/AuthenticationApi.md +12 -12
- data/docs/AuthenticationRedirect.md +10 -0
- data/docs/AuthenticationRedirectParams.md +10 -0
- data/docs/AuthenticationVerificationRequest.md +11 -0
- data/docs/BasicResponse.md +1 -1
- data/docs/Billing.md +3 -5
- data/docs/BillingAddress.md +4 -4
- data/docs/BillingAddressPhone.md +1 -1
- data/docs/CarRental.md +6 -6
- data/docs/CarRentalExtraCharges.md +1 -1
- data/docs/Card.md +6 -6
- data/docs/CardFunction.md +7 -0
- data/docs/CardInfo.md +2 -2
- data/docs/CardInfoLookupApi.md +14 -14
- data/docs/CardInfoLookupResponse.md +1 -1
- data/docs/CardVerificationApi.md +12 -12
- data/docs/CardVerificationRequest.md +1 -0
- data/docs/ChinaDomesticPaymentMethod.md +9 -0
- data/docs/ChinaPnRSaleTransaction.md +14 -0
- data/docs/ClientLocale.md +2 -2
- data/docs/Contact.md +4 -4
- data/docs/CreatePaymentToken.md +10 -0
- data/docs/CurrencyConversion.md +9 -0
- data/docs/CurrencyConversionApi.md +15 -15
- data/docs/Customer.md +6 -6
- data/docs/CustomerAddress.md +3 -3
- data/docs/CustomerAddressPhone.md +1 -1
- data/docs/DCCExchangeRateRequest.md +11 -0
- data/docs/Dcc.md +2 -1
- data/docs/Device.md +2 -2
- data/docs/DeviceNetworks.md +1 -1
- data/docs/Document.md +2 -2
- data/docs/DynamicPricing.md +11 -0
- data/docs/DynamicPricingExchangeRateRequest.md +11 -0
- data/docs/ErrorResponse.md +1 -1
- data/docs/ExchangeRateRequest.md +2 -4
- data/docs/ExchangeRateResponse.md +11 -11
- data/docs/Expiration.md +2 -2
- data/docs/FraudDetectApi.md +12 -12
- data/docs/FraudOrderItems.md +1 -1
- data/docs/FraudOrderShipToAddress.md +6 -6
- data/docs/Frequency.md +2 -2
- data/docs/InstallmentOptions.md +5 -3
- data/docs/Lodging.md +5 -5
- data/docs/MerchantLocationMerchantAddress.md +6 -6
- data/docs/Order.md +5 -0
- data/docs/OrderApi.md +36 -102
- data/docs/OrderErrorResponse.md +4 -5
- data/docs/OrderResponse.md +4 -5
- data/docs/PayPal.md +1 -1
- data/docs/PayPalPaymentMethod.md +8 -0
- data/docs/PaymentApi.md +67 -193
- data/docs/PaymentCard.md +8 -11
- data/docs/PaymentCardCreditTransaction.md +15 -0
- data/docs/PaymentCardForcedTicketTransaction.md +15 -0
- data/docs/PaymentCardPayerAuthTransaction.md +15 -0
- data/docs/PaymentCardPaymentMethod.md +9 -0
- data/docs/PaymentCardPaymentTokenizationRequest.md +13 -0
- data/docs/PaymentCardPreAuthTransaction.md +18 -0
- data/docs/PaymentCardSaleTransaction.md +18 -0
- data/docs/PaymentFacilitator.md +4 -4
- data/docs/PaymentMethod.md +0 -7
- data/docs/PaymentMethodDetails.md +9 -0
- data/docs/PaymentMethodPaymentSchedulesRequest.md +24 -0
- data/docs/PaymentMethodType.md +7 -0
- data/docs/PaymentPayMethod.md +1 -1
- data/docs/PaymentSchedulesApi.md +58 -58
- data/docs/PaymentSchedulesErrorResponse.md +1 -1
- data/docs/PaymentSchedulesRequest.md +5 -6
- data/docs/PaymentSchedulesResponse.md +1 -1
- data/docs/PaymentTokenApi.md +23 -23
- data/docs/PaymentTokenCreditTransaction.md +15 -0
- data/docs/PaymentTokenDetails.md +14 -0
- data/docs/PaymentTokenPaymentMethod.md +9 -0
- data/docs/PaymentTokenPreAuthTransaction.md +17 -0
- data/docs/PaymentTokenSaleTransaction.md +17 -0
- data/docs/PaymentTokenizationErrorResponse.md +8 -8
- data/docs/PaymentTokenizationRequest.md +4 -3
- data/docs/PaymentTokenizationResponse.md +8 -8
- data/docs/PaymentURLApi.md +12 -12
- data/docs/PaymentUrlErrorResponse.md +3 -3
- data/docs/PaymentUrlRequest.md +3 -3
- data/docs/PaymentUrlResponse.md +3 -3
- data/docs/PaymentVerification3ds.md +3 -3
- data/docs/PaymentVerificationAvs.md +3 -3
- data/docs/PaymentVerificationCvv.md +3 -3
- data/docs/PaypalCreditTransaction.md +14 -0
- data/docs/PostAuthTransaction.md +14 -0
- data/docs/PrimaryTransaction.md +3 -12
- data/docs/ProcessorData.md +8 -6
- data/docs/PurchaseCardsLevel2.md +3 -3
- data/docs/PurchaseCardsLevel3.md +1 -1
- data/docs/PurchaseCardsLevel3LineItems.md +8 -8
- data/docs/RecurringPaymentDetails.md +2 -2
- data/docs/RecurringPaymentDetailsResponse.md +4 -5
- data/docs/ReferencedOrderPaymentSchedulesRequest.md +24 -0
- data/docs/ReferencedOrderPaymentTokenizationRequest.md +13 -0
- data/docs/ResponseAmountComponents.md +14 -0
- data/docs/ReturnTransaction.md +13 -0
- data/docs/ScoreOnlyRequest.md +1 -1
- data/docs/ScoreOnlyResponse.md +3 -3
- data/docs/ScoreOnlyResponseFraudScore.md +1 -1
- data/docs/ScoreOnlyResponseFraudScoreExplanations.md +3 -3
- data/docs/SecondaryTransaction.md +3 -5
- data/docs/Secure3dAuthenticationRequest.md +8 -0
- data/docs/Secure3dAuthenticationResult.md +12 -0
- data/docs/Secure3dAuthenticationVerificationRequest.md +13 -0
- data/docs/Secure3dResponse.md +1 -1
- data/docs/Sepa.md +4 -4
- data/docs/SepaMandate.md +2 -2
- data/docs/SepaPaymentMethod.md +8 -0
- data/docs/SepaSaleTransaction.md +14 -0
- data/docs/Shipping.md +1 -1
- data/docs/SoftDescriptor.md +2 -2
- data/docs/SplitShipment.md +1 -1
- data/docs/StoredCredential.md +4 -4
- data/docs/SubMerchantData.md +4 -4
- data/docs/SubMerchantSplit.md +9 -0
- data/docs/Transaction.md +4 -4
- data/docs/TransactionErrorResponse.md +11 -10
- data/docs/TransactionResponse.md +11 -10
- data/docs/UnionPayAuthenticationRequest.md +9 -0
- data/docs/UnionPayAuthenticationVerificationRequest.md +12 -0
- data/docs/UsePaymentToken.md +10 -0
- data/docs/VoidTransaction.md +10 -0
- data/first_data_gateway.gemspec +3 -2
- data/lib/openapi_client/api/authentication_api.rb +18 -18
- data/lib/openapi_client/api/card_info_lookup_api.rb +15 -15
- data/lib/openapi_client/api/card_verification_api.rb +13 -13
- data/lib/openapi_client/api/currency_conversion_api.rb +17 -17
- data/lib/openapi_client/api/fraud_detect_api.rb +13 -17
- data/lib/openapi_client/api/order_api.rb +45 -153
- data/lib/openapi_client/api/payment_api.rb +88 -287
- data/lib/openapi_client/api/payment_schedules_api.rb +61 -63
- data/lib/openapi_client/api/payment_token_api.rb +24 -24
- data/lib/openapi_client/api/payment_url_api.rb +13 -13
- data/lib/openapi_client/api_client.rb +2 -2
- data/lib/openapi_client/api_error.rb +2 -2
- data/lib/openapi_client/configuration.rb +4 -4
- data/lib/openapi_client/models/access_token_response.rb +5 -5
- data/lib/openapi_client/models/account_updater_response.rb +225 -0
- data/lib/openapi_client/models/additional_amount_rate.rb +15 -4
- data/lib/openapi_client/models/{primary_transaction_additional_details.rb → additional_details.rb} +11 -113
- data/lib/openapi_client/models/additional_transaction_details.rb +6 -6
- data/lib/openapi_client/models/address.rb +9 -9
- data/lib/openapi_client/models/airline.rb +15 -15
- data/lib/openapi_client/models/airline_ancillary_service_category.rb +7 -2
- data/lib/openapi_client/models/airline_travel_route.rb +7 -6
- data/lib/openapi_client/models/ali_pay.rb +4 -4
- data/lib/openapi_client/models/{referenced_order.rb → ali_pay_payment_method.rb} +16 -20
- data/lib/openapi_client/models/ali_pay_sale_transaction.rb +286 -0
- data/lib/openapi_client/models/amount.rb +5 -5
- data/lib/openapi_client/models/amount_components.rb +13 -23
- data/lib/openapi_client/models/authentication.rb +190 -0
- data/lib/openapi_client/models/{authentication_request.rb → authentication_redirect.rb} +24 -20
- data/lib/openapi_client/models/authentication_redirect_params.rb +205 -0
- data/lib/openapi_client/models/authentication_verification_request.rb +234 -0
- data/lib/openapi_client/models/avs_response.rb +4 -2
- data/lib/openapi_client/models/basic_response.rb +2 -7
- data/lib/openapi_client/models/billing.rb +7 -76
- data/lib/openapi_client/models/billing_address.rb +7 -7
- data/lib/openapi_client/models/billing_address_phone.rb +4 -4
- data/lib/openapi_client/models/car_rental.rb +9 -9
- data/lib/openapi_client/models/car_rental_extra_charges.rb +3 -3
- data/lib/openapi_client/models/card.rb +9 -8
- data/lib/openapi_client/models/card_function.rb +33 -0
- data/lib/openapi_client/models/card_info.rb +4 -17
- data/lib/openapi_client/models/card_info_lookup_request.rb +3 -3
- data/lib/openapi_client/models/card_info_lookup_response.rb +2 -7
- data/lib/openapi_client/models/card_verification_request.rb +32 -7
- data/lib/openapi_client/models/china_domestic.rb +2 -2
- data/lib/openapi_client/models/{authentication_response_verification.rb → china_domestic_payment_method.rb} +33 -48
- data/lib/openapi_client/models/china_pn_r_sale_transaction.rb +286 -0
- data/lib/openapi_client/models/client_locale.rb +5 -5
- data/lib/openapi_client/models/contact.rb +7 -6
- data/lib/openapi_client/models/create_payment_token.rb +209 -0
- data/lib/openapi_client/models/{authentication_response_verification_request.rb → currency_conversion.rb} +29 -35
- data/lib/openapi_client/models/customer.rb +9 -9
- data/lib/openapi_client/models/customer_address.rb +6 -6
- data/lib/openapi_client/models/customer_address_phone.rb +4 -4
- data/lib/openapi_client/models/dcc.rb +24 -4
- data/lib/openapi_client/models/dcc_exchange_rate_request.rb +273 -0
- data/lib/openapi_client/models/device.rb +4 -3
- data/lib/openapi_client/models/device_networks.rb +4 -3
- data/lib/openapi_client/models/document.rb +4 -4
- data/lib/openapi_client/models/dynamic_pricing.rb +235 -0
- data/lib/openapi_client/models/dynamic_pricing_exchange_rate_request.rb +273 -0
- data/lib/openapi_client/models/error.rb +2 -2
- data/lib/openapi_client/models/error_details.rb +2 -2
- data/lib/openapi_client/models/error_response.rb +2 -7
- data/lib/openapi_client/models/exchange_rate_request.rb +26 -103
- data/lib/openapi_client/models/exchange_rate_response.rb +20 -25
- data/lib/openapi_client/models/expiration.rb +5 -5
- data/lib/openapi_client/models/fraud_order.rb +2 -2
- data/lib/openapi_client/models/fraud_order_items.rb +4 -2
- data/lib/openapi_client/models/fraud_order_ship_to_address.rb +8 -8
- data/lib/openapi_client/models/frequency.rb +5 -5
- data/lib/openapi_client/models/industry_specific_extensions.rb +3 -3
- data/lib/openapi_client/models/installment_options.rb +63 -9
- data/lib/openapi_client/models/lodging.rb +8 -8
- data/lib/openapi_client/models/lodging_extra_charges.rb +2 -2
- data/lib/openapi_client/models/loyalty.rb +2 -2
- data/lib/openapi_client/models/merchant.rb +2 -2
- data/lib/openapi_client/models/merchant_location.rb +2 -2
- data/lib/openapi_client/models/merchant_location_merchant_address.rb +9 -9
- data/lib/openapi_client/models/order.rb +52 -7
- data/lib/openapi_client/models/order_error_response.rb +6 -21
- data/lib/openapi_client/models/order_response.rb +7 -22
- data/lib/openapi_client/models/pay_pal.rb +3 -3
- data/lib/openapi_client/models/pay_pal_payment_method.rb +189 -0
- data/lib/openapi_client/models/payment.rb +2 -2
- data/lib/openapi_client/models/payment_card.rb +38 -58
- data/lib/openapi_client/models/payment_card_credit_transaction.rb +295 -0
- data/lib/openapi_client/models/payment_card_forced_ticket_transaction.rb +320 -0
- data/lib/openapi_client/models/payment_card_payer_auth_transaction.rb +295 -0
- data/lib/openapi_client/models/payment_card_payment_method.rb +198 -0
- data/lib/openapi_client/models/payment_card_payment_tokenization_request.rb +264 -0
- data/lib/openapi_client/models/payment_card_pre_auth_transaction.rb +325 -0
- data/lib/openapi_client/models/payment_card_sale_transaction.rb +325 -0
- data/lib/openapi_client/models/payment_facilitator.rb +7 -7
- data/lib/openapi_client/models/payment_issuer_response.rb +2 -2
- data/lib/openapi_client/models/payment_method.rb +5 -108
- data/lib/openapi_client/models/{basket_item.rb → payment_method_details.rb} +17 -38
- data/lib/openapi_client/models/payment_method_payment_schedules_request.rb +426 -0
- data/lib/openapi_client/models/payment_method_type.rb +47 -0
- data/lib/openapi_client/models/payment_pay_method.rb +4 -4
- data/lib/openapi_client/models/payment_schedules_error_response.rb +2 -7
- data/lib/openapi_client/models/payment_schedules_request.rb +41 -30
- data/lib/openapi_client/models/payment_schedules_response.rb +2 -7
- data/lib/openapi_client/models/payment_token_credit_transaction.rb +295 -0
- data/lib/openapi_client/models/{payment_tokenization.rb → payment_token_details.rb} +18 -96
- data/lib/openapi_client/models/payment_token_payment_method.rb +198 -0
- data/lib/openapi_client/models/payment_token_pre_auth_transaction.rb +316 -0
- data/lib/openapi_client/models/payment_token_sale_transaction.rb +316 -0
- data/lib/openapi_client/models/payment_tokenization_error_response.rb +10 -15
- data/lib/openapi_client/models/payment_tokenization_request.rb +60 -61
- data/lib/openapi_client/models/payment_tokenization_response.rb +10 -15
- data/lib/openapi_client/models/payment_url_error_response.rb +4 -9
- data/lib/openapi_client/models/payment_url_request.rb +11 -16
- data/lib/openapi_client/models/payment_url_response.rb +4 -9
- data/lib/openapi_client/models/payment_verification3ds.rb +5 -5
- data/lib/openapi_client/models/payment_verification_avs.rb +5 -5
- data/lib/openapi_client/models/payment_verification_cvv.rb +5 -5
- data/lib/openapi_client/models/paypal_credit_transaction.rb +286 -0
- data/lib/openapi_client/models/post_auth_transaction.rb +266 -0
- data/lib/openapi_client/models/primary_transaction.rb +30 -118
- data/lib/openapi_client/models/processor_data.rb +48 -7
- data/lib/openapi_client/models/purchase_cards.rb +3 -2
- data/lib/openapi_client/models/purchase_cards_level2.rb +6 -5
- data/lib/openapi_client/models/purchase_cards_level3.rb +9 -3
- data/lib/openapi_client/models/purchase_cards_level3_line_items.rb +16 -16
- data/lib/openapi_client/models/recurring_payment_details.rb +15 -15
- data/lib/openapi_client/models/recurring_payment_details_response.rb +6 -21
- data/lib/openapi_client/models/referenced_order_payment_schedules_request.rb +427 -0
- data/lib/openapi_client/models/referenced_order_payment_tokenization_request.rb +265 -0
- data/lib/openapi_client/models/response_amount_components.rb +245 -0
- data/lib/openapi_client/models/response_type.rb +2 -2
- data/lib/openapi_client/models/return_transaction.rb +257 -0
- data/lib/openapi_client/models/score_only_request.rb +4 -4
- data/lib/openapi_client/models/score_only_response.rb +6 -5
- data/lib/openapi_client/models/score_only_response_fraud_score.rb +4 -3
- data/lib/openapi_client/models/score_only_response_fraud_score_explanations.rb +5 -2
- data/lib/openapi_client/models/secondary_transaction.rb +45 -40
- data/lib/openapi_client/models/secure3d_authentication_request.rb +190 -0
- data/lib/openapi_client/models/{payment_card_authentication_result.rb → secure3d_authentication_result.rb} +34 -41
- data/lib/openapi_client/models/secure3d_authentication_verification_request.rb +264 -0
- data/lib/openapi_client/models/secure3d_response.rb +4 -3
- data/lib/openapi_client/models/sepa.rb +6 -6
- data/lib/openapi_client/models/sepa_mandate.rb +5 -5
- data/lib/openapi_client/models/{secondary_transaction_additional_details.rb → sepa_payment_method.rb} +16 -10
- data/lib/openapi_client/models/sepa_sale_transaction.rb +286 -0
- data/lib/openapi_client/models/shipping.rb +4 -3
- data/lib/openapi_client/models/soft_descriptor.rb +15 -15
- data/lib/openapi_client/models/split_shipment.rb +4 -4
- data/lib/openapi_client/models/stored_credential.rb +7 -7
- data/lib/openapi_client/models/sub_merchant_data.rb +7 -7
- data/lib/openapi_client/models/sub_merchant_split.rb +233 -0
- data/lib/openapi_client/models/transaction.rb +18 -18
- data/lib/openapi_client/models/transaction_error_response.rb +28 -24
- data/lib/openapi_client/models/transaction_origin.rb +2 -2
- data/lib/openapi_client/models/transaction_response.rb +32 -28
- data/lib/openapi_client/models/transaction_type.rb +2 -2
- data/lib/openapi_client/models/union_pay_authentication_request.rb +224 -0
- data/lib/openapi_client/models/union_pay_authentication_verification_request.rb +249 -0
- data/lib/openapi_client/models/use_payment_token.rb +233 -0
- data/lib/openapi_client/models/{card_verifications_transaction.rb → void_transaction.rb} +28 -17
- data/lib/openapi_client/version.rb +3 -3
- data/lib/openapi_client.rb +50 -12
- data/lib/simple/gateway.rb +8 -59
- data/lib/simple_client.rb +4 -4
- data/spec/api/authentication_api_spec.rb +7 -7
- data/spec/api/card_info_lookup_api_spec.rb +8 -8
- data/spec/api/card_verification_api_spec.rb +7 -7
- data/spec/api/currency_conversion_api_spec.rb +9 -9
- data/spec/api/fraud_detect_api_spec.rb +7 -7
- data/spec/api/order_api_spec.rb +19 -40
- data/spec/api/payment_api_spec.rb +33 -72
- data/spec/api/payment_schedules_api_spec.rb +29 -29
- data/spec/api/payment_token_api_spec.rb +12 -12
- data/spec/api/payment_url_api_spec.rb +7 -7
- data/spec/api_client_spec.rb +2 -2
- data/spec/configuration_spec.rb +5 -5
- data/spec/models/access_token_response_spec.rb +2 -2
- data/spec/models/account_updater_response_spec.rb +65 -0
- data/spec/models/additional_amount_rate_spec.rb +2 -2
- data/spec/models/additional_details_spec.rb +53 -0
- data/spec/models/additional_transaction_details_spec.rb +2 -2
- data/spec/models/address_spec.rb +2 -2
- data/spec/models/airline_ancillary_service_category_spec.rb +2 -2
- data/spec/models/airline_spec.rb +2 -2
- data/spec/models/airline_travel_route_spec.rb +2 -2
- data/spec/models/ali_pay_payment_method_spec.rb +41 -0
- data/spec/models/ali_pay_sale_transaction_spec.rb +77 -0
- data/spec/models/ali_pay_spec.rb +2 -2
- data/spec/models/amount_components_spec.rb +2 -8
- data/spec/models/amount_spec.rb +2 -2
- data/spec/models/authentication_redirect_params_spec.rb +53 -0
- data/spec/models/{authentication_response_verification_spec.rb → authentication_redirect_spec.rb} +11 -17
- data/spec/models/authentication_spec.rb +41 -0
- data/spec/models/{authentication_response_verification_request_spec.rb → authentication_verification_request_spec.rb} +11 -11
- data/spec/models/avs_response_spec.rb +2 -2
- data/spec/models/basic_response_spec.rb +2 -2
- data/spec/models/billing_address_phone_spec.rb +2 -2
- data/spec/models/billing_address_spec.rb +2 -2
- data/spec/models/billing_spec.rb +2 -18
- data/spec/models/car_rental_extra_charges_spec.rb +2 -2
- data/spec/models/car_rental_spec.rb +2 -2
- data/spec/models/card_function_spec.rb +35 -0
- data/spec/models/card_info_lookup_request_spec.rb +2 -2
- data/spec/models/card_info_lookup_response_spec.rb +2 -2
- data/spec/models/card_info_spec.rb +2 -6
- data/spec/models/card_spec.rb +2 -2
- data/spec/models/card_verification_request_spec.rb +8 -2
- data/spec/models/china_domestic_payment_method_spec.rb +51 -0
- data/spec/models/china_domestic_spec.rb +2 -2
- data/spec/models/china_pn_r_sale_transaction_spec.rb +77 -0
- data/spec/models/client_locale_spec.rb +2 -2
- data/spec/models/contact_spec.rb +2 -2
- data/spec/models/create_payment_token_spec.rb +53 -0
- data/spec/models/currency_conversion_spec.rb +47 -0
- data/spec/models/customer_address_phone_spec.rb +2 -2
- data/spec/models/customer_address_spec.rb +2 -2
- data/spec/models/customer_spec.rb +2 -2
- data/spec/models/dcc_exchange_rate_request_spec.rb +59 -0
- data/spec/models/dcc_spec.rb +8 -2
- data/spec/models/device_networks_spec.rb +2 -2
- data/spec/models/device_spec.rb +2 -2
- data/spec/models/document_spec.rb +2 -2
- data/spec/models/dynamic_pricing_exchange_rate_request_spec.rb +59 -0
- data/spec/models/{basket_item_spec.rb → dynamic_pricing_spec.rb} +12 -12
- data/spec/models/error_details_spec.rb +2 -2
- data/spec/models/error_response_spec.rb +2 -2
- data/spec/models/error_spec.rb +2 -2
- data/spec/models/exchange_rate_request_spec.rb +4 -20
- data/spec/models/exchange_rate_response_spec.rb +3 -3
- data/spec/models/expiration_spec.rb +2 -2
- data/spec/models/fraud_order_items_spec.rb +2 -2
- data/spec/models/fraud_order_ship_to_address_spec.rb +2 -2
- data/spec/models/fraud_order_spec.rb +2 -2
- data/spec/models/frequency_spec.rb +2 -2
- data/spec/models/industry_specific_extensions_spec.rb +2 -2
- data/spec/models/installment_options_spec.rb +18 -2
- data/spec/models/lodging_extra_charges_spec.rb +2 -2
- data/spec/models/lodging_spec.rb +2 -2
- data/spec/models/loyalty_spec.rb +2 -2
- data/spec/models/merchant_location_merchant_address_spec.rb +2 -2
- data/spec/models/merchant_location_spec.rb +2 -2
- data/spec/models/merchant_spec.rb +2 -2
- data/spec/models/order_error_response_spec.rb +2 -8
- data/spec/models/order_response_spec.rb +2 -8
- data/spec/models/order_spec.rb +32 -2
- data/spec/models/pay_pal_payment_method_spec.rb +41 -0
- data/spec/models/pay_pal_spec.rb +2 -2
- data/spec/models/payment_card_credit_transaction_spec.rb +83 -0
- data/spec/models/{primary_transaction_additional_details_spec.rb → payment_card_forced_ticket_transaction_spec.rb} +16 -22
- data/spec/models/payment_card_payer_auth_transaction_spec.rb +83 -0
- data/spec/models/payment_card_payment_method_spec.rb +47 -0
- data/spec/models/payment_card_payment_tokenization_request_spec.rb +71 -0
- data/spec/models/payment_card_pre_auth_transaction_spec.rb +101 -0
- data/spec/models/payment_card_sale_transaction_spec.rb +101 -0
- data/spec/models/payment_card_spec.rb +3 -21
- data/spec/models/payment_facilitator_spec.rb +2 -2
- data/spec/models/payment_issuer_response_spec.rb +2 -2
- data/spec/models/payment_method_details_spec.rb +47 -0
- data/spec/models/payment_method_payment_schedules_request_spec.rb +137 -0
- data/spec/models/payment_method_spec.rb +2 -48
- data/spec/models/payment_method_type_spec.rb +35 -0
- data/spec/models/payment_pay_method_spec.rb +2 -2
- data/spec/models/payment_schedules_error_response_spec.rb +2 -2
- data/spec/models/payment_schedules_request_spec.rb +5 -11
- data/spec/models/payment_schedules_response_spec.rb +2 -2
- data/spec/models/payment_spec.rb +2 -2
- data/spec/models/payment_token_credit_transaction_spec.rb +83 -0
- data/spec/models/{payment_tokenization_spec.rb → payment_token_details_spec.rb} +9 -25
- data/spec/models/payment_token_payment_method_spec.rb +47 -0
- data/spec/models/payment_token_pre_auth_transaction_spec.rb +95 -0
- data/spec/models/payment_token_sale_transaction_spec.rb +95 -0
- data/spec/models/payment_tokenization_error_response_spec.rb +2 -2
- data/spec/models/payment_tokenization_request_spec.rb +12 -10
- data/spec/models/payment_tokenization_response_spec.rb +2 -2
- data/spec/models/payment_url_error_response_spec.rb +2 -2
- data/spec/models/payment_url_request_spec.rb +3 -3
- data/spec/models/payment_url_response_spec.rb +2 -2
- data/spec/models/payment_verification3ds_spec.rb +2 -2
- data/spec/models/payment_verification_avs_spec.rb +2 -2
- data/spec/models/payment_verification_cvv_spec.rb +2 -2
- data/spec/models/paypal_credit_transaction_spec.rb +77 -0
- data/spec/models/post_auth_transaction_spec.rb +77 -0
- data/spec/models/primary_transaction_spec.rb +5 -59
- data/spec/models/processor_data_spec.rb +14 -2
- data/spec/models/purchase_cards_level2_spec.rb +2 -2
- data/spec/models/purchase_cards_level3_line_items_spec.rb +3 -3
- data/spec/models/purchase_cards_level3_spec.rb +2 -2
- data/spec/models/purchase_cards_spec.rb +2 -2
- data/spec/models/recurring_payment_details_response_spec.rb +2 -8
- data/spec/models/recurring_payment_details_spec.rb +4 -4
- data/spec/models/referenced_order_payment_schedules_request_spec.rb +137 -0
- data/spec/models/referenced_order_payment_tokenization_request_spec.rb +71 -0
- data/spec/models/response_amount_components_spec.rb +77 -0
- data/spec/models/response_type_spec.rb +2 -2
- data/spec/models/return_transaction_spec.rb +71 -0
- data/spec/models/score_only_request_spec.rb +2 -2
- data/spec/models/score_only_response_fraud_score_explanations_spec.rb +2 -2
- data/spec/models/score_only_response_fraud_score_spec.rb +2 -2
- data/spec/models/score_only_response_spec.rb +2 -2
- data/spec/models/secondary_transaction_spec.rb +5 -17
- data/spec/models/secure3d_authentication_request_spec.rb +41 -0
- data/spec/models/{payment_card_authentication_result_spec.rb → secure3d_authentication_result_spec.rb} +11 -15
- data/spec/models/secure3d_authentication_verification_request_spec.rb +71 -0
- data/spec/models/secure3d_response_spec.rb +2 -2
- data/spec/models/sepa_mandate_spec.rb +2 -2
- data/spec/models/sepa_payment_method_spec.rb +41 -0
- data/spec/models/sepa_sale_transaction_spec.rb +77 -0
- data/spec/models/sepa_spec.rb +2 -2
- data/spec/models/shipping_spec.rb +2 -2
- data/spec/models/soft_descriptor_spec.rb +3 -3
- data/spec/models/split_shipment_spec.rb +2 -2
- data/spec/models/stored_credential_spec.rb +2 -2
- data/spec/models/sub_merchant_data_spec.rb +2 -2
- data/spec/models/{card_verifications_transaction_spec.rb → sub_merchant_split_spec.rb} +10 -10
- data/spec/models/transaction_error_response_spec.rb +10 -4
- data/spec/models/transaction_origin_spec.rb +2 -2
- data/spec/models/transaction_response_spec.rb +10 -4
- data/spec/models/transaction_spec.rb +4 -4
- data/spec/models/transaction_type_spec.rb +2 -2
- data/spec/models/{authentication_request_spec.rb → union_pay_authentication_request_spec.rb} +9 -13
- data/spec/models/union_pay_authentication_verification_request_spec.rb +65 -0
- data/spec/models/use_payment_token_spec.rb +53 -0
- data/spec/models/void_transaction_spec.rb +53 -0
- data/spec/spec_helper.rb +2 -2
- metadata +195 -42
- data/docs/AuthenticationRequest.md +0 -9
- data/docs/AuthenticationResponseVerification.md +0 -11
- data/docs/AuthenticationResponseVerificationRequest.md +0 -11
- data/docs/BasketItem.md +0 -11
- data/docs/CardVerificationsTransaction.md +0 -9
- data/docs/PaymentCardAuthenticationResult.md +0 -12
- data/docs/PaymentTokenization.md +0 -16
- data/docs/PrimaryTransactionAdditionalDetails.md +0 -16
- data/docs/ReferencedOrder.md +0 -9
- data/spec/models/referenced_order_spec.rb +0 -47
- data/spec/models/secondary_transaction_additional_details_spec.rb +0 -41
@@ -1,9 +1,9 @@
|
|
1
1
|
=begin
|
2
2
|
#Payment Gateway API Specification.
|
3
3
|
|
4
|
-
#
|
4
|
+
#The documentation here is designed to provide all of the technical guidance required to consume and integrate with our APIs for payment processing. To learn more about our APIs please visit https://docs.firstdata.com/org/gateway.
|
5
5
|
|
6
|
-
OpenAPI spec version: 6.
|
6
|
+
OpenAPI spec version: 6.6.0.20190329.001
|
7
7
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
9
|
OpenAPI Generator version: unset
|
@@ -13,7 +13,7 @@ OpenAPI Generator version: unset
|
|
13
13
|
require 'date'
|
14
14
|
|
15
15
|
module OpenapiClient
|
16
|
-
#
|
16
|
+
# Common object for primary and secondary payment request responses.
|
17
17
|
class TransactionResponse
|
18
18
|
# Echoes back the value in the request header for tracking.
|
19
19
|
attr_accessor :client_request_id
|
@@ -23,10 +23,10 @@ module OpenapiClient
|
|
23
23
|
|
24
24
|
attr_accessor :response_type
|
25
25
|
|
26
|
-
# The
|
26
|
+
# The response transaction ID.
|
27
27
|
attr_accessor :ipg_transaction_id
|
28
28
|
|
29
|
-
# Client
|
29
|
+
# Client order ID if supplied by client, otherwise the order ID.
|
30
30
|
attr_accessor :order_id
|
31
31
|
|
32
32
|
attr_accessor :transaction_type
|
@@ -35,18 +35,18 @@ module OpenapiClient
|
|
35
35
|
|
36
36
|
attr_accessor :transaction_origin
|
37
37
|
|
38
|
-
attr_accessor :
|
38
|
+
attr_accessor :payment_method_details
|
39
39
|
|
40
|
-
# Country of the card issuer
|
40
|
+
# Country of the card issuer.
|
41
41
|
attr_accessor :country
|
42
42
|
|
43
|
-
# The terminal that is processing the transaction
|
43
|
+
# The terminal that is processing the transaction.
|
44
44
|
attr_accessor :terminal_id
|
45
45
|
|
46
|
-
# The unique merchant
|
46
|
+
# The unique merchant transaction ID from the request header, if supplied.
|
47
47
|
attr_accessor :merchant_transaction_id
|
48
48
|
|
49
|
-
# The transaction time in seconds since
|
49
|
+
# The transaction time in seconds since epoch.
|
50
50
|
attr_accessor :transaction_time
|
51
51
|
|
52
52
|
attr_accessor :approved_amount
|
@@ -71,6 +71,8 @@ module OpenapiClient
|
|
71
71
|
|
72
72
|
attr_accessor :additional_details
|
73
73
|
|
74
|
+
attr_accessor :account_updater_response
|
75
|
+
|
74
76
|
class EnumAttributeValidator
|
75
77
|
attr_reader :datatype
|
76
78
|
attr_reader :allowable_values
|
@@ -104,7 +106,7 @@ module OpenapiClient
|
|
104
106
|
:'transaction_type' => :'transactionType',
|
105
107
|
:'payment_token' => :'paymentToken',
|
106
108
|
:'transaction_origin' => :'transactionOrigin',
|
107
|
-
:'
|
109
|
+
:'payment_method_details' => :'paymentMethodDetails',
|
108
110
|
:'country' => :'country',
|
109
111
|
:'terminal_id' => :'terminalId',
|
110
112
|
:'merchant_transaction_id' => :'merchantTransactionId',
|
@@ -117,7 +119,8 @@ module OpenapiClient
|
|
117
119
|
:'authentication_redirect' => :'authenticationRedirect',
|
118
120
|
:'scheme_transaction_id' => :'schemeTransactionId',
|
119
121
|
:'processor' => :'processor',
|
120
|
-
:'additional_details' => :'additionalDetails'
|
122
|
+
:'additional_details' => :'additionalDetails',
|
123
|
+
:'account_updater_response' => :'accountUpdaterResponse'
|
121
124
|
}
|
122
125
|
end
|
123
126
|
|
@@ -130,9 +133,9 @@ module OpenapiClient
|
|
130
133
|
:'ipg_transaction_id' => :'String',
|
131
134
|
:'order_id' => :'String',
|
132
135
|
:'transaction_type' => :'TransactionType',
|
133
|
-
:'payment_token' => :'
|
136
|
+
:'payment_token' => :'PaymentTokenDetails',
|
134
137
|
:'transaction_origin' => :'TransactionOrigin',
|
135
|
-
:'
|
138
|
+
:'payment_method_details' => :'PaymentMethodDetails',
|
136
139
|
:'country' => :'String',
|
137
140
|
:'terminal_id' => :'String',
|
138
141
|
:'merchant_transaction_id' => :'String',
|
@@ -142,10 +145,11 @@ module OpenapiClient
|
|
142
145
|
:'transaction_state' => :'String',
|
143
146
|
:'secure3d_response' => :'Secure3dResponse',
|
144
147
|
:'redirect_url' => :'String',
|
145
|
-
:'authentication_redirect' => :'
|
148
|
+
:'authentication_redirect' => :'AuthenticationRedirect',
|
146
149
|
:'scheme_transaction_id' => :'String',
|
147
150
|
:'processor' => :'ProcessorData',
|
148
|
-
:'additional_details' => :'AdditionalTransactionDetails'
|
151
|
+
:'additional_details' => :'AdditionalTransactionDetails',
|
152
|
+
:'account_updater_response' => :'AccountUpdaterResponse'
|
149
153
|
}
|
150
154
|
end
|
151
155
|
|
@@ -189,8 +193,8 @@ module OpenapiClient
|
|
189
193
|
self.transaction_origin = attributes[:'transactionOrigin']
|
190
194
|
end
|
191
195
|
|
192
|
-
if attributes.has_key?(:'
|
193
|
-
self.
|
196
|
+
if attributes.has_key?(:'paymentMethodDetails')
|
197
|
+
self.payment_method_details = attributes[:'paymentMethodDetails']
|
194
198
|
end
|
195
199
|
|
196
200
|
if attributes.has_key?(:'country')
|
@@ -244,16 +248,16 @@ module OpenapiClient
|
|
244
248
|
if attributes.has_key?(:'additionalDetails')
|
245
249
|
self.additional_details = attributes[:'additionalDetails']
|
246
250
|
end
|
251
|
+
|
252
|
+
if attributes.has_key?(:'accountUpdaterResponse')
|
253
|
+
self.account_updater_response = attributes[:'accountUpdaterResponse']
|
254
|
+
end
|
247
255
|
end
|
248
256
|
|
249
257
|
# Show invalid properties with the reasons. Usually used together with valid?
|
250
258
|
# @return Array for valid properties with the reasons
|
251
259
|
def list_invalid_properties
|
252
260
|
invalid_properties = Array.new
|
253
|
-
if @response_type.nil?
|
254
|
-
invalid_properties.push('invalid value for "response_type", response_type cannot be nil.')
|
255
|
-
end
|
256
|
-
|
257
261
|
if !@merchant_transaction_id.nil? && @merchant_transaction_id.to_s.length > 40
|
258
262
|
invalid_properties.push('invalid value for "merchant_transaction_id", the character length must be smaller than or equal to 40.')
|
259
263
|
end
|
@@ -268,11 +272,10 @@ module OpenapiClient
|
|
268
272
|
# Check to see if the all the properties in the model are valid
|
269
273
|
# @return true if the model is valid
|
270
274
|
def valid?
|
271
|
-
return false if @response_type.nil?
|
272
275
|
return false if !@merchant_transaction_id.nil? && @merchant_transaction_id.to_s.length > 40
|
273
276
|
transaction_status_validator = EnumAttributeValidator.new('String', ['APPROVED', 'WAITING', 'VALIDATION_FAILED', 'PROCESSING_FAILED', 'DECLINED'])
|
274
277
|
return false unless transaction_status_validator.valid?(@transaction_status)
|
275
|
-
transaction_state_validator = EnumAttributeValidator.new('String', ['AUTHORIZED', 'CAPTURED', 'DECLINED', 'CHECKED', 'INITIALIZED', 'PENDING', 'READY', 'SETTLED', 'VOIDED', 'WAITING'])
|
278
|
+
transaction_state_validator = EnumAttributeValidator.new('String', ['AUTHORIZED', 'CAPTURED', 'DECLINED', 'CHECKED', 'COMPLETED_GET', 'INITIALIZED', 'PENDING', 'READY', 'TEMPLATE', 'SETTLED', 'VOIDED', 'WAITING'])
|
276
279
|
return false unless transaction_state_validator.valid?(@transaction_state)
|
277
280
|
return false if !@scheme_transaction_id.nil? && @scheme_transaction_id.to_s.length > 40
|
278
281
|
true
|
@@ -301,7 +304,7 @@ module OpenapiClient
|
|
301
304
|
# Custom attribute writer method checking allowed values (enum).
|
302
305
|
# @param [Object] transaction_state Object to be assigned
|
303
306
|
def transaction_state=(transaction_state)
|
304
|
-
validator = EnumAttributeValidator.new('String', ['AUTHORIZED', 'CAPTURED', 'DECLINED', 'CHECKED', 'INITIALIZED', 'PENDING', 'READY', 'SETTLED', 'VOIDED', 'WAITING'])
|
307
|
+
validator = EnumAttributeValidator.new('String', ['AUTHORIZED', 'CAPTURED', 'DECLINED', 'CHECKED', 'COMPLETED_GET', 'INITIALIZED', 'PENDING', 'READY', 'TEMPLATE', 'SETTLED', 'VOIDED', 'WAITING'])
|
305
308
|
unless validator.valid?(transaction_state)
|
306
309
|
fail ArgumentError, 'invalid value for "transaction_state", must be one of #{validator.allowable_values}.'
|
307
310
|
end
|
@@ -331,7 +334,7 @@ module OpenapiClient
|
|
331
334
|
transaction_type == o.transaction_type &&
|
332
335
|
payment_token == o.payment_token &&
|
333
336
|
transaction_origin == o.transaction_origin &&
|
334
|
-
|
337
|
+
payment_method_details == o.payment_method_details &&
|
335
338
|
country == o.country &&
|
336
339
|
terminal_id == o.terminal_id &&
|
337
340
|
merchant_transaction_id == o.merchant_transaction_id &&
|
@@ -344,7 +347,8 @@ module OpenapiClient
|
|
344
347
|
authentication_redirect == o.authentication_redirect &&
|
345
348
|
scheme_transaction_id == o.scheme_transaction_id &&
|
346
349
|
processor == o.processor &&
|
347
|
-
additional_details == o.additional_details
|
350
|
+
additional_details == o.additional_details &&
|
351
|
+
account_updater_response == o.account_updater_response
|
348
352
|
end
|
349
353
|
|
350
354
|
# @see the `==` method
|
@@ -356,7 +360,7 @@ module OpenapiClient
|
|
356
360
|
# Calculates hash code according to all attributes.
|
357
361
|
# @return [Fixnum] Hash code
|
358
362
|
def hash
|
359
|
-
[client_request_id, api_trace_id, response_type, ipg_transaction_id, order_id, transaction_type, payment_token, transaction_origin,
|
363
|
+
[client_request_id, api_trace_id, response_type, ipg_transaction_id, order_id, transaction_type, payment_token, transaction_origin, payment_method_details, country, terminal_id, merchant_transaction_id, transaction_time, approved_amount, transaction_status, transaction_state, secure3d_response, redirect_url, authentication_redirect, scheme_transaction_id, processor, additional_details, account_updater_response].hash
|
360
364
|
end
|
361
365
|
|
362
366
|
# Builds the object from hash
|
@@ -1,9 +1,9 @@
|
|
1
1
|
=begin
|
2
2
|
#Payment Gateway API Specification.
|
3
3
|
|
4
|
-
#
|
4
|
+
#The documentation here is designed to provide all of the technical guidance required to consume and integrate with our APIs for payment processing. To learn more about our APIs please visit https://docs.firstdata.com/org/gateway.
|
5
5
|
|
6
|
-
OpenAPI spec version: 6.
|
6
|
+
OpenAPI spec version: 6.6.0.20190329.001
|
7
7
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
9
9
|
OpenAPI Generator version: unset
|
@@ -0,0 +1,224 @@
|
|
1
|
+
=begin
|
2
|
+
#Payment Gateway API Specification.
|
3
|
+
|
4
|
+
#The documentation here is designed to provide all of the technical guidance required to consume and integrate with our APIs for payment processing. To learn more about our APIs please visit https://docs.firstdata.com/org/gateway.
|
5
|
+
|
6
|
+
OpenAPI spec version: 6.6.0.20190329.001
|
7
|
+
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
OpenAPI Generator version: unset
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'date'
|
14
|
+
|
15
|
+
module OpenapiClient
|
16
|
+
# Request authentication of the payment card using the UnionPay SMS scheme.
|
17
|
+
class UnionPayAuthenticationRequest
|
18
|
+
# Indicates what kind of authentication scheme the merchant wants to use on the card.
|
19
|
+
attr_accessor :request_type
|
20
|
+
|
21
|
+
# Mobile number for SMS verification.
|
22
|
+
attr_accessor :sms_phone_number
|
23
|
+
|
24
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
25
|
+
def self.attribute_map
|
26
|
+
{
|
27
|
+
:'request_type' => :'requestType',
|
28
|
+
:'sms_phone_number' => :'smsPhoneNumber'
|
29
|
+
}
|
30
|
+
end
|
31
|
+
|
32
|
+
# Attribute type mapping.
|
33
|
+
def self.openapi_types
|
34
|
+
{
|
35
|
+
:'request_type' => :'String',
|
36
|
+
:'sms_phone_number' => :'String'
|
37
|
+
}
|
38
|
+
end
|
39
|
+
|
40
|
+
# Initializes the object
|
41
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
42
|
+
def initialize(attributes = {})
|
43
|
+
return unless attributes.is_a?(Hash)
|
44
|
+
|
45
|
+
# convert string to symbol for hash key
|
46
|
+
attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
|
47
|
+
|
48
|
+
if attributes.has_key?(:'requestType')
|
49
|
+
self.request_type = attributes[:'requestType']
|
50
|
+
end
|
51
|
+
|
52
|
+
if attributes.has_key?(:'smsPhoneNumber')
|
53
|
+
self.sms_phone_number = attributes[:'smsPhoneNumber']
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
58
|
+
# @return Array for valid properties with the reasons
|
59
|
+
def list_invalid_properties
|
60
|
+
invalid_properties = Array.new
|
61
|
+
if @request_type.nil?
|
62
|
+
invalid_properties.push('invalid value for "request_type", request_type cannot be nil.')
|
63
|
+
end
|
64
|
+
|
65
|
+
if @sms_phone_number.nil?
|
66
|
+
invalid_properties.push('invalid value for "sms_phone_number", sms_phone_number cannot be nil.')
|
67
|
+
end
|
68
|
+
|
69
|
+
if @sms_phone_number.to_s.length < 7
|
70
|
+
invalid_properties.push('invalid value for "sms_phone_number", the character length must be great than or equal to 7.')
|
71
|
+
end
|
72
|
+
|
73
|
+
invalid_properties
|
74
|
+
end
|
75
|
+
|
76
|
+
# Check to see if the all the properties in the model are valid
|
77
|
+
# @return true if the model is valid
|
78
|
+
def valid?
|
79
|
+
return false if @request_type.nil?
|
80
|
+
return false if @sms_phone_number.nil?
|
81
|
+
return false if @sms_phone_number.to_s.length < 7
|
82
|
+
true
|
83
|
+
end
|
84
|
+
|
85
|
+
# Custom attribute writer method with validation
|
86
|
+
# @param [Object] sms_phone_number Value to be assigned
|
87
|
+
def sms_phone_number=(sms_phone_number)
|
88
|
+
if sms_phone_number.nil?
|
89
|
+
fail ArgumentError, 'sms_phone_number cannot be nil'
|
90
|
+
end
|
91
|
+
|
92
|
+
if sms_phone_number.to_s.length < 7
|
93
|
+
fail ArgumentError, 'invalid value for "sms_phone_number", the character length must be great than or equal to 7.'
|
94
|
+
end
|
95
|
+
|
96
|
+
@sms_phone_number = sms_phone_number
|
97
|
+
end
|
98
|
+
|
99
|
+
# Checks equality by comparing each attribute.
|
100
|
+
# @param [Object] Object to be compared
|
101
|
+
def ==(o)
|
102
|
+
return true if self.equal?(o)
|
103
|
+
self.class == o.class &&
|
104
|
+
request_type == o.request_type &&
|
105
|
+
sms_phone_number == o.sms_phone_number
|
106
|
+
end
|
107
|
+
|
108
|
+
# @see the `==` method
|
109
|
+
# @param [Object] Object to be compared
|
110
|
+
def eql?(o)
|
111
|
+
self == o
|
112
|
+
end
|
113
|
+
|
114
|
+
# Calculates hash code according to all attributes.
|
115
|
+
# @return [Fixnum] Hash code
|
116
|
+
def hash
|
117
|
+
[request_type, sms_phone_number].hash
|
118
|
+
end
|
119
|
+
|
120
|
+
# Builds the object from hash
|
121
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
122
|
+
# @return [Object] Returns the model itself
|
123
|
+
def build_from_hash(attributes)
|
124
|
+
return nil unless attributes.is_a?(Hash)
|
125
|
+
self.class.openapi_types.each_pair do |key, type|
|
126
|
+
if type =~ /\AArray<(.*)>/i
|
127
|
+
# check to ensure the input is an array given that the the attribute
|
128
|
+
# is documented as an array but the input is not
|
129
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
130
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
131
|
+
end
|
132
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
133
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
134
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
135
|
+
end
|
136
|
+
|
137
|
+
self
|
138
|
+
end
|
139
|
+
|
140
|
+
# Deserializes the data based on type
|
141
|
+
# @param string type Data type
|
142
|
+
# @param string value Value to be deserialized
|
143
|
+
# @return [Object] Deserialized data
|
144
|
+
def _deserialize(type, value)
|
145
|
+
case type.to_sym
|
146
|
+
when :DateTime
|
147
|
+
DateTime.parse(value)
|
148
|
+
when :Date
|
149
|
+
Date.parse(value)
|
150
|
+
when :String
|
151
|
+
value.to_s
|
152
|
+
when :Integer
|
153
|
+
value.to_i
|
154
|
+
when :Float
|
155
|
+
value.to_f
|
156
|
+
when :BOOLEAN
|
157
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
158
|
+
true
|
159
|
+
else
|
160
|
+
false
|
161
|
+
end
|
162
|
+
when :Object
|
163
|
+
# generic object (usually a Hash), return directly
|
164
|
+
value
|
165
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
166
|
+
inner_type = Regexp.last_match[:inner_type]
|
167
|
+
value.map { |v| _deserialize(inner_type, v) }
|
168
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
169
|
+
k_type = Regexp.last_match[:k_type]
|
170
|
+
v_type = Regexp.last_match[:v_type]
|
171
|
+
{}.tap do |hash|
|
172
|
+
value.each do |k, v|
|
173
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
174
|
+
end
|
175
|
+
end
|
176
|
+
else # model
|
177
|
+
temp_model = OpenapiClient.const_get(type).new
|
178
|
+
temp_model.build_from_hash(value)
|
179
|
+
end
|
180
|
+
end
|
181
|
+
|
182
|
+
# Returns the string representation of the object
|
183
|
+
# @return [String] String presentation of the object
|
184
|
+
def to_s
|
185
|
+
to_hash.to_s
|
186
|
+
end
|
187
|
+
|
188
|
+
# to_body is an alias to to_hash (backward compatibility)
|
189
|
+
# @return [Hash] Returns the object in the form of hash
|
190
|
+
def to_body
|
191
|
+
to_hash
|
192
|
+
end
|
193
|
+
|
194
|
+
# Returns the object in the form of hash
|
195
|
+
# @return [Hash] Returns the object in the form of hash
|
196
|
+
def to_hash
|
197
|
+
hash = {}
|
198
|
+
self.class.attribute_map.each_pair do |attr, param|
|
199
|
+
value = self.send(attr)
|
200
|
+
next if value.nil?
|
201
|
+
hash[param] = _to_hash(value)
|
202
|
+
end
|
203
|
+
hash
|
204
|
+
end
|
205
|
+
|
206
|
+
# Outputs non-array value in the form of hash
|
207
|
+
# For object, use to_hash. Otherwise, just return the value
|
208
|
+
# @param [Object] value Any valid value
|
209
|
+
# @return [Hash] Returns the value in the form of hash
|
210
|
+
def _to_hash(value)
|
211
|
+
if value.is_a?(Array)
|
212
|
+
value.compact.map { |v| _to_hash(v) }
|
213
|
+
elsif value.is_a?(Hash)
|
214
|
+
{}.tap do |hash|
|
215
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
216
|
+
end
|
217
|
+
elsif value.respond_to? :to_hash
|
218
|
+
value.to_hash
|
219
|
+
else
|
220
|
+
value
|
221
|
+
end
|
222
|
+
end
|
223
|
+
end
|
224
|
+
end
|
@@ -0,0 +1,249 @@
|
|
1
|
+
=begin
|
2
|
+
#Payment Gateway API Specification.
|
3
|
+
|
4
|
+
#The documentation here is designed to provide all of the technical guidance required to consume and integrate with our APIs for payment processing. To learn more about our APIs please visit https://docs.firstdata.com/org/gateway.
|
5
|
+
|
6
|
+
OpenAPI spec version: 6.6.0.20190329.001
|
7
|
+
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
OpenAPI Generator version: unset
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'date'
|
14
|
+
|
15
|
+
module OpenapiClient
|
16
|
+
# Authentication verification request specific to UnionPay transactions.
|
17
|
+
class UnionPayAuthenticationVerificationRequest
|
18
|
+
# An optional Outlet ID for clients that support multiple stores in the same developer app.
|
19
|
+
attr_accessor :store_id
|
20
|
+
|
21
|
+
# Object name of the authentication verification request.
|
22
|
+
attr_accessor :request_type
|
23
|
+
|
24
|
+
# Card security code if required by merchant.
|
25
|
+
attr_accessor :security_code
|
26
|
+
|
27
|
+
attr_accessor :billing_address
|
28
|
+
|
29
|
+
# Customer mobile number for SMS verification.
|
30
|
+
attr_accessor :sms_verification_code
|
31
|
+
|
32
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
33
|
+
def self.attribute_map
|
34
|
+
{
|
35
|
+
:'store_id' => :'storeId',
|
36
|
+
:'request_type' => :'requestType',
|
37
|
+
:'security_code' => :'securityCode',
|
38
|
+
:'billing_address' => :'billingAddress',
|
39
|
+
:'sms_verification_code' => :'smsVerificationCode'
|
40
|
+
}
|
41
|
+
end
|
42
|
+
|
43
|
+
# Attribute type mapping.
|
44
|
+
def self.openapi_types
|
45
|
+
{
|
46
|
+
:'store_id' => :'String',
|
47
|
+
:'request_type' => :'String',
|
48
|
+
:'security_code' => :'String',
|
49
|
+
:'billing_address' => :'Address',
|
50
|
+
:'sms_verification_code' => :'String'
|
51
|
+
}
|
52
|
+
end
|
53
|
+
|
54
|
+
# Initializes the object
|
55
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
56
|
+
def initialize(attributes = {})
|
57
|
+
return unless attributes.is_a?(Hash)
|
58
|
+
|
59
|
+
# convert string to symbol for hash key
|
60
|
+
attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
|
61
|
+
|
62
|
+
if attributes.has_key?(:'storeId')
|
63
|
+
self.store_id = attributes[:'storeId']
|
64
|
+
end
|
65
|
+
|
66
|
+
if attributes.has_key?(:'requestType')
|
67
|
+
self.request_type = attributes[:'requestType']
|
68
|
+
end
|
69
|
+
|
70
|
+
if attributes.has_key?(:'securityCode')
|
71
|
+
self.security_code = attributes[:'securityCode']
|
72
|
+
end
|
73
|
+
|
74
|
+
if attributes.has_key?(:'billingAddress')
|
75
|
+
self.billing_address = attributes[:'billingAddress']
|
76
|
+
end
|
77
|
+
|
78
|
+
if attributes.has_key?(:'smsVerificationCode')
|
79
|
+
self.sms_verification_code = attributes[:'smsVerificationCode']
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
84
|
+
# @return Array for valid properties with the reasons
|
85
|
+
def list_invalid_properties
|
86
|
+
invalid_properties = Array.new
|
87
|
+
if !@store_id.nil? && @store_id.to_s.length > 20
|
88
|
+
invalid_properties.push('invalid value for "store_id", the character length must be smaller than or equal to 20.')
|
89
|
+
end
|
90
|
+
|
91
|
+
if @request_type.nil?
|
92
|
+
invalid_properties.push('invalid value for "request_type", request_type cannot be nil.')
|
93
|
+
end
|
94
|
+
|
95
|
+
if @sms_verification_code.nil?
|
96
|
+
invalid_properties.push('invalid value for "sms_verification_code", sms_verification_code cannot be nil.')
|
97
|
+
end
|
98
|
+
|
99
|
+
invalid_properties
|
100
|
+
end
|
101
|
+
|
102
|
+
# Check to see if the all the properties in the model are valid
|
103
|
+
# @return true if the model is valid
|
104
|
+
def valid?
|
105
|
+
return false if !@store_id.nil? && @store_id.to_s.length > 20
|
106
|
+
return false if @request_type.nil?
|
107
|
+
return false if @sms_verification_code.nil?
|
108
|
+
true
|
109
|
+
end
|
110
|
+
|
111
|
+
# Custom attribute writer method with validation
|
112
|
+
# @param [Object] store_id Value to be assigned
|
113
|
+
def store_id=(store_id)
|
114
|
+
if !store_id.nil? && store_id.to_s.length > 20
|
115
|
+
fail ArgumentError, 'invalid value for "store_id", the character length must be smaller than or equal to 20.'
|
116
|
+
end
|
117
|
+
|
118
|
+
@store_id = store_id
|
119
|
+
end
|
120
|
+
|
121
|
+
# Checks equality by comparing each attribute.
|
122
|
+
# @param [Object] Object to be compared
|
123
|
+
def ==(o)
|
124
|
+
return true if self.equal?(o)
|
125
|
+
self.class == o.class &&
|
126
|
+
store_id == o.store_id &&
|
127
|
+
request_type == o.request_type &&
|
128
|
+
security_code == o.security_code &&
|
129
|
+
billing_address == o.billing_address &&
|
130
|
+
sms_verification_code == o.sms_verification_code
|
131
|
+
end
|
132
|
+
|
133
|
+
# @see the `==` method
|
134
|
+
# @param [Object] Object to be compared
|
135
|
+
def eql?(o)
|
136
|
+
self == o
|
137
|
+
end
|
138
|
+
|
139
|
+
# Calculates hash code according to all attributes.
|
140
|
+
# @return [Fixnum] Hash code
|
141
|
+
def hash
|
142
|
+
[store_id, request_type, security_code, billing_address, sms_verification_code].hash
|
143
|
+
end
|
144
|
+
|
145
|
+
# Builds the object from hash
|
146
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
147
|
+
# @return [Object] Returns the model itself
|
148
|
+
def build_from_hash(attributes)
|
149
|
+
return nil unless attributes.is_a?(Hash)
|
150
|
+
self.class.openapi_types.each_pair do |key, type|
|
151
|
+
if type =~ /\AArray<(.*)>/i
|
152
|
+
# check to ensure the input is an array given that the the attribute
|
153
|
+
# is documented as an array but the input is not
|
154
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
155
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
156
|
+
end
|
157
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
158
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
159
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
160
|
+
end
|
161
|
+
|
162
|
+
self
|
163
|
+
end
|
164
|
+
|
165
|
+
# Deserializes the data based on type
|
166
|
+
# @param string type Data type
|
167
|
+
# @param string value Value to be deserialized
|
168
|
+
# @return [Object] Deserialized data
|
169
|
+
def _deserialize(type, value)
|
170
|
+
case type.to_sym
|
171
|
+
when :DateTime
|
172
|
+
DateTime.parse(value)
|
173
|
+
when :Date
|
174
|
+
Date.parse(value)
|
175
|
+
when :String
|
176
|
+
value.to_s
|
177
|
+
when :Integer
|
178
|
+
value.to_i
|
179
|
+
when :Float
|
180
|
+
value.to_f
|
181
|
+
when :BOOLEAN
|
182
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
183
|
+
true
|
184
|
+
else
|
185
|
+
false
|
186
|
+
end
|
187
|
+
when :Object
|
188
|
+
# generic object (usually a Hash), return directly
|
189
|
+
value
|
190
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
191
|
+
inner_type = Regexp.last_match[:inner_type]
|
192
|
+
value.map { |v| _deserialize(inner_type, v) }
|
193
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
194
|
+
k_type = Regexp.last_match[:k_type]
|
195
|
+
v_type = Regexp.last_match[:v_type]
|
196
|
+
{}.tap do |hash|
|
197
|
+
value.each do |k, v|
|
198
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
199
|
+
end
|
200
|
+
end
|
201
|
+
else # model
|
202
|
+
temp_model = OpenapiClient.const_get(type).new
|
203
|
+
temp_model.build_from_hash(value)
|
204
|
+
end
|
205
|
+
end
|
206
|
+
|
207
|
+
# Returns the string representation of the object
|
208
|
+
# @return [String] String presentation of the object
|
209
|
+
def to_s
|
210
|
+
to_hash.to_s
|
211
|
+
end
|
212
|
+
|
213
|
+
# to_body is an alias to to_hash (backward compatibility)
|
214
|
+
# @return [Hash] Returns the object in the form of hash
|
215
|
+
def to_body
|
216
|
+
to_hash
|
217
|
+
end
|
218
|
+
|
219
|
+
# Returns the object in the form of hash
|
220
|
+
# @return [Hash] Returns the object in the form of hash
|
221
|
+
def to_hash
|
222
|
+
hash = {}
|
223
|
+
self.class.attribute_map.each_pair do |attr, param|
|
224
|
+
value = self.send(attr)
|
225
|
+
next if value.nil?
|
226
|
+
hash[param] = _to_hash(value)
|
227
|
+
end
|
228
|
+
hash
|
229
|
+
end
|
230
|
+
|
231
|
+
# Outputs non-array value in the form of hash
|
232
|
+
# For object, use to_hash. Otherwise, just return the value
|
233
|
+
# @param [Object] value Any valid value
|
234
|
+
# @return [Hash] Returns the value in the form of hash
|
235
|
+
def _to_hash(value)
|
236
|
+
if value.is_a?(Array)
|
237
|
+
value.compact.map { |v| _to_hash(v) }
|
238
|
+
elsif value.is_a?(Hash)
|
239
|
+
{}.tap do |hash|
|
240
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
241
|
+
end
|
242
|
+
elsif value.respond_to? :to_hash
|
243
|
+
value.to_hash
|
244
|
+
else
|
245
|
+
value
|
246
|
+
end
|
247
|
+
end
|
248
|
+
end
|
249
|
+
end
|