first_data_gateway 1.0.3 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile +1 -0
- data/README.md +144 -65
- data/Rakefile +2 -0
- data/docs/AVSResponse.md +9 -0
- data/docs/AccessTokenResponse.md +2 -3
- data/docs/AdditionalAmountRate.md +9 -0
- data/docs/AdditionalTransactionDetails.md +10 -0
- data/docs/Address.md +5 -5
- data/docs/Airline.md +14 -14
- data/docs/AirlineAncillaryServiceCategory.md +2 -2
- data/docs/AirlineTravelRoute.md +8 -8
- data/docs/AliPay.md +11 -0
- data/docs/Amount.md +2 -2
- data/docs/AmountComponents.md +8 -8
- data/docs/AuthenticationApi.md +19 -24
- data/docs/AuthenticationRequest.md +9 -0
- data/docs/AuthenticationResponseVerification.md +5 -4
- data/docs/AuthenticationResponseVerificationRequest.md +11 -0
- data/docs/BasicResponse.md +10 -0
- data/docs/BasketItem.md +2 -2
- data/docs/Billing.md +6 -5
- data/docs/BillingAddress.md +17 -0
- data/docs/BillingAddressPhone.md +9 -0
- data/docs/CarRental.md +9 -9
- data/docs/CarRentalExtraCharges.md +2 -2
- data/docs/Card.md +15 -0
- data/docs/CardInfo.md +13 -0
- data/docs/CardInfoLookupApi.md +68 -0
- data/docs/CardInfoLookupRequest.md +9 -0
- data/docs/CardInfoLookupResponse.md +12 -0
- data/docs/CardVerificationApi.md +68 -0
- data/docs/CardVerificationRequest.md +9 -0
- data/docs/CardVerificationsTransaction.md +2 -2
- data/docs/ChinaDomestic.md +15 -0
- data/docs/ClientLocale.md +3 -3
- data/docs/Contact.md +5 -5
- data/docs/CurrencyConversionApi.md +68 -0
- data/docs/Customer.md +19 -0
- data/docs/CustomerAddress.md +14 -0
- data/docs/CustomerAddressPhone.md +9 -0
- data/docs/Dcc.md +9 -0
- data/docs/Device.md +19 -0
- data/docs/DeviceNetworks.md +21 -0
- data/docs/Document.md +9 -0
- data/docs/Error.md +1 -1
- data/docs/ErrorDetails.md +1 -1
- data/docs/ErrorResponse.md +4 -4
- data/docs/ExchangeRateRequest.md +12 -0
- data/docs/ExchangeRateResponse.md +21 -0
- data/docs/Expiration.md +3 -3
- data/docs/FraudDetectApi.md +68 -0
- data/docs/FraudOrder.md +10 -0
- data/docs/FraudOrderItems.md +15 -0
- data/docs/FraudOrderShipToAddress.md +14 -0
- data/docs/Frequency.md +3 -3
- data/docs/IndustrySpecificExtensions.md +1 -1
- data/docs/InstallmentOptions.md +1 -1
- data/docs/Lodging.md +3 -3
- data/docs/LodgingExtraCharges.md +1 -1
- data/docs/Loyalty.md +10 -0
- data/docs/Merchant.md +11 -0
- data/docs/MerchantLocation.md +12 -0
- data/docs/MerchantLocationMerchantAddress.md +13 -0
- data/docs/Order.md +2 -2
- data/docs/OrderApi.md +107 -55
- data/docs/OrderErrorResponse.md +19 -0
- data/docs/OrderResponse.md +18 -0
- data/docs/PayPal.md +1 -1
- data/docs/Payment.md +18 -0
- data/docs/PaymentApi.md +164 -124
- data/docs/PaymentCard.md +10 -6
- data/docs/PaymentCardAuthenticationResult.md +1 -1
- data/docs/PaymentFacilitator.md +12 -0
- data/docs/PaymentIssuerResponse.md +10 -0
- data/docs/PaymentMethod.md +5 -2
- data/docs/PaymentPayMethod.md +13 -0
- data/docs/PaymentSchedulesApi.md +256 -0
- data/docs/PaymentSchedulesErrorResponse.md +14 -0
- data/docs/PaymentSchedulesRequest.md +10 -7
- data/docs/PaymentSchedulesResponse.md +7 -5
- data/docs/PaymentTokenApi.md +134 -0
- data/docs/PaymentTokenization.md +16 -0
- data/docs/PaymentTokenizationErrorResponse.md +19 -0
- data/docs/PaymentTokenizationRequest.md +11 -0
- data/docs/PaymentTokenizationResponse.md +18 -0
- data/docs/PaymentURLApi.md +68 -0
- data/docs/PaymentUrlErrorResponse.md +15 -0
- data/docs/PaymentUrlRequest.md +13 -3
- data/docs/PaymentUrlResponse.md +6 -5
- data/docs/PaymentVerification3ds.md +10 -0
- data/docs/PaymentVerificationAvs.md +10 -0
- data/docs/PaymentVerificationCvv.md +10 -0
- data/docs/PrimaryTransaction.md +7 -3
- data/docs/PrimaryTransactionAdditionalDetails.md +7 -5
- data/docs/ProcessorData.md +8 -4
- data/docs/PurchaseCards.md +9 -0
- data/docs/PurchaseCardsLevel2.md +12 -0
- data/docs/PurchaseCardsLevel3.md +8 -0
- data/docs/PurchaseCardsLevel3LineItems.md +16 -0
- data/docs/RecurringPaymentDetails.md +20 -0
- data/docs/RecurringPaymentDetailsResponse.md +19 -0
- data/docs/ReferencedOrder.md +9 -0
- data/docs/ResponseType.md +1 -1
- data/docs/ScoreOnlyRequest.md +21 -0
- data/docs/ScoreOnlyResponse.md +13 -0
- data/docs/ScoreOnlyResponseFraudScore.md +10 -0
- data/docs/ScoreOnlyResponseFraudScoreExplanations.md +10 -0
- data/docs/SecondaryTransaction.md +4 -1
- data/docs/SecondaryTransactionAdditionalDetails.md +8 -0
- data/docs/Secure3dResponse.md +8 -0
- data/docs/Sepa.md +1 -1
- data/docs/SepaMandate.md +3 -3
- data/docs/Shipping.md +1 -1
- data/docs/SoftDescriptor.md +9 -0
- data/docs/SplitShipment.md +3 -3
- data/docs/StoredCredential.md +4 -4
- data/docs/SubMerchantData.md +13 -0
- data/docs/Transaction.md +19 -0
- data/docs/TransactionErrorResponse.md +13 -11
- data/docs/TransactionOrigin.md +7 -0
- data/docs/TransactionResponse.md +13 -11
- data/docs/TransactionType.md +1 -1
- data/first_data_gateway.gemspec +9 -9
- data/git_push.sh +2 -2
- data/lib/openapi_client/.DS_Store +0 -0
- data/lib/{swagger_client → openapi_client}/api/authentication_api.rb +22 -27
- data/lib/openapi_client/api/card_info_lookup_api.rb +117 -0
- data/lib/openapi_client/api/card_verification_api.rb +117 -0
- data/lib/openapi_client/api/currency_conversion_api.rb +117 -0
- data/lib/openapi_client/api/fraud_detect_api.rb +122 -0
- data/lib/openapi_client/api/order_api.rb +327 -0
- data/lib/{swagger_client → openapi_client}/api/payment_api.rb +212 -111
- data/lib/openapi_client/api/payment_schedules_api.rb +411 -0
- data/lib/openapi_client/api/payment_token_api.rb +218 -0
- data/lib/openapi_client/api/payment_url_api.rb +117 -0
- data/lib/{swagger_client → openapi_client}/api_client.rb +50 -38
- data/lib/{swagger_client → openapi_client}/api_error.rb +6 -6
- data/lib/{swagger_client → openapi_client}/configuration.rb +49 -7
- data/lib/openapi_client/models/.DS_Store +0 -0
- data/lib/{swagger_client → openapi_client}/models/access_token_response.rb +20 -33
- data/lib/{swagger_client/models/secondary_transaction.rb → openapi_client/models/additional_amount_rate.rb} +25 -28
- data/lib/{swagger_client/models/primary_transaction_additional_details.rb → openapi_client/models/additional_transaction_details.rb} +68 -62
- data/lib/{swagger_client → openapi_client}/models/address.rb +33 -44
- data/lib/{swagger_client → openapi_client}/models/airline.rb +48 -47
- data/lib/{swagger_client → openapi_client}/models/airline_ancillary_service_category.rb +18 -21
- data/lib/{swagger_client → openapi_client}/models/airline_travel_route.rb +39 -42
- data/lib/openapi_client/models/ali_pay.rb +326 -0
- data/lib/{swagger_client → openapi_client}/models/amount.rb +18 -21
- data/lib/{swagger_client → openapi_client}/models/amount_components.rb +22 -19
- data/lib/{swagger_client/models/transaction_response_authentication_redirect.rb → openapi_client/models/authentication_request.rb} +33 -38
- data/lib/{swagger_client → openapi_client}/models/authentication_response_verification.rb +43 -30
- data/lib/{swagger_client/models/payment_url_request.rb → openapi_client/models/authentication_response_verification_request.rb} +35 -56
- data/lib/openapi_client/models/avs_response.rb +239 -0
- data/lib/openapi_client/models/basic_response.rb +209 -0
- data/lib/{swagger_client → openapi_client}/models/basket_item.rb +16 -20
- data/lib/{swagger_client → openapi_client}/models/billing.rb +65 -25
- data/lib/openapi_client/models/billing_address.rb +279 -0
- data/lib/{swagger_client/models/transaction_response_authentication_redirect_params.rb → openapi_client/models/billing_address_phone.rb} +31 -42
- data/lib/{swagger_client → openapi_client}/models/car_rental.rb +31 -31
- data/lib/{swagger_client → openapi_client}/models/car_rental_extra_charges.rb +18 -21
- data/lib/openapi_client/models/card.rb +254 -0
- data/lib/{swagger_client/models/payment_card.rb → openapi_client/models/card_info.rb} +68 -81
- data/lib/openapi_client/models/card_info_lookup_request.rb +214 -0
- data/lib/openapi_client/models/card_info_lookup_response.rb +265 -0
- data/lib/openapi_client/models/card_verification_request.rb +198 -0
- data/lib/{swagger_client → openapi_client}/models/card_verifications_transaction.rb +31 -20
- data/lib/openapi_client/models/china_domestic.rb +386 -0
- data/lib/{swagger_client → openapi_client}/models/client_locale.rb +19 -23
- data/lib/{swagger_client → openapi_client}/models/contact.rb +26 -31
- data/lib/openapi_client/models/customer.rb +333 -0
- data/lib/openapi_client/models/customer_address.rb +259 -0
- data/lib/openapi_client/models/customer_address_phone.rb +195 -0
- data/lib/openapi_client/models/dcc.rb +200 -0
- data/lib/openapi_client/models/device.rb +340 -0
- data/lib/openapi_client/models/device_networks.rb +353 -0
- data/lib/{swagger_client/models/payment_card_authentication_request.rb → openapi_client/models/document.rb} +62 -26
- data/lib/{swagger_client → openapi_client}/models/error.rb +14 -18
- data/lib/{swagger_client → openapi_client}/models/error_details.rb +14 -19
- data/lib/{swagger_client → openapi_client}/models/error_response.rb +22 -22
- data/lib/openapi_client/models/exchange_rate_request.rb +307 -0
- data/lib/openapi_client/models/exchange_rate_response.rb +319 -0
- data/lib/{swagger_client → openapi_client}/models/expiration.rb +18 -20
- data/lib/openapi_client/models/fraud_order.rb +206 -0
- data/lib/openapi_client/models/fraud_order_items.rb +253 -0
- data/lib/openapi_client/models/fraud_order_ship_to_address.rb +245 -0
- data/lib/{swagger_client → openapi_client}/models/frequency.rb +27 -30
- data/lib/{swagger_client → openapi_client}/models/industry_specific_extensions.rb +15 -19
- data/lib/{swagger_client → openapi_client}/models/installment_options.rb +22 -28
- data/lib/{swagger_client → openapi_client}/models/lodging.rb +19 -22
- data/lib/{swagger_client → openapi_client}/models/lodging_extra_charges.rb +17 -21
- data/lib/openapi_client/models/loyalty.rb +205 -0
- data/lib/openapi_client/models/merchant.rb +219 -0
- data/lib/openapi_client/models/merchant_location.rb +224 -0
- data/lib/openapi_client/models/merchant_location_merchant_address.rb +250 -0
- data/lib/{swagger_client/models/processor_data.rb → openapi_client/models/order.rb} +49 -47
- data/lib/openapi_client/models/order_error_response.rb +296 -0
- data/lib/openapi_client/models/order_response.rb +287 -0
- data/lib/{swagger_client → openapi_client}/models/pay_pal.rb +19 -23
- data/lib/openapi_client/models/payment.rb +346 -0
- data/lib/openapi_client/models/payment_card.rb +363 -0
- data/lib/{swagger_client → openapi_client}/models/payment_card_authentication_result.rb +32 -37
- data/lib/openapi_client/models/payment_facilitator.rb +292 -0
- data/lib/openapi_client/models/payment_issuer_response.rb +249 -0
- data/lib/openapi_client/models/payment_method.rb +278 -0
- data/lib/openapi_client/models/payment_pay_method.rb +278 -0
- data/lib/openapi_client/models/payment_schedules_error_response.rb +281 -0
- data/lib/{swagger_client → openapi_client}/models/payment_schedules_request.rb +83 -80
- data/lib/openapi_client/models/payment_schedules_response.rb +272 -0
- data/lib/openapi_client/models/payment_tokenization.rb +327 -0
- data/lib/openapi_client/models/payment_tokenization_error_response.rb +329 -0
- data/lib/{swagger_client/models/payment_method.rb → openapi_client/models/payment_tokenization_request.rb} +34 -37
- data/lib/openapi_client/models/payment_tokenization_response.rb +319 -0
- data/lib/openapi_client/models/payment_url_error_response.rb +292 -0
- data/lib/openapi_client/models/payment_url_request.rb +335 -0
- data/lib/{swagger_client → openapi_client}/models/payment_url_response.rb +35 -38
- data/lib/openapi_client/models/payment_verification3ds.rb +215 -0
- data/lib/openapi_client/models/payment_verification_avs.rb +215 -0
- data/lib/openapi_client/models/payment_verification_cvv.rb +215 -0
- data/lib/{swagger_client → openapi_client}/models/primary_transaction.rb +93 -31
- data/lib/openapi_client/models/primary_transaction_additional_details.rb +352 -0
- data/lib/openapi_client/models/processor_data.rb +272 -0
- data/lib/openapi_client/models/purchase_cards.rb +192 -0
- data/lib/openapi_client/models/purchase_cards_level2.rb +267 -0
- data/lib/openapi_client/models/purchase_cards_level3.rb +186 -0
- data/lib/openapi_client/models/purchase_cards_level3_line_items.rb +337 -0
- data/lib/openapi_client/models/recurring_payment_details.rb +399 -0
- data/lib/openapi_client/models/recurring_payment_details_response.rb +296 -0
- data/lib/{swagger_client/models/order.rb → openapi_client/models/referenced_order.rb} +23 -36
- data/lib/openapi_client/models/response_type.rb +37 -0
- data/lib/openapi_client/models/score_only_request.rb +389 -0
- data/lib/{swagger_client/models/payment_schedules_response.rb → openapi_client/models/score_only_response.rb} +56 -56
- data/lib/openapi_client/models/score_only_response_fraud_score.rb +208 -0
- data/lib/openapi_client/models/score_only_response_fraud_score_explanations.rb +201 -0
- data/lib/openapi_client/models/secondary_transaction.rb +220 -0
- data/lib/openapi_client/models/secondary_transaction_additional_details.rb +183 -0
- data/lib/openapi_client/models/secure3d_response.rb +184 -0
- data/lib/{swagger_client → openapi_client}/models/sepa.rb +30 -35
- data/lib/{swagger_client → openapi_client}/models/sepa_mandate.rb +32 -35
- data/lib/{swagger_client → openapi_client}/models/shipping.rb +17 -22
- data/lib/openapi_client/models/soft_descriptor.rb +215 -0
- data/lib/{swagger_client → openapi_client}/models/split_shipment.rb +17 -21
- data/lib/{swagger_client → openapi_client}/models/stored_credential.rb +28 -32
- data/lib/openapi_client/models/sub_merchant_data.rb +302 -0
- data/lib/openapi_client/models/transaction.rb +337 -0
- data/lib/{swagger_client → openapi_client}/models/transaction_error_response.rb +110 -80
- data/lib/openapi_client/models/transaction_origin.rb +32 -0
- data/lib/{swagger_client → openapi_client}/models/transaction_response.rb +112 -82
- data/lib/openapi_client/models/transaction_type.rb +36 -0
- data/lib/openapi_client/version.rb +15 -0
- data/lib/openapi_client.rb +158 -0
- data/lib/simple/client_context.rb +2 -2
- data/lib/simple/gateway.rb +274 -37
- data/spec/api/authentication_api_spec.rb +12 -12
- data/spec/api/card_info_lookup_api_spec.rb +53 -0
- data/spec/api/card_verification_api_spec.rb +53 -0
- data/spec/api/currency_conversion_api_spec.rb +53 -0
- data/spec/api/fraud_detect_api_spec.rb +53 -0
- data/spec/api/order_api_spec.rb +44 -23
- data/spec/api/payment_api_spec.rb +50 -26
- data/spec/api/payment_schedules_api_spec.rb +111 -0
- data/spec/api/payment_token_api_spec.rb +74 -0
- data/spec/api/payment_url_api_spec.rb +53 -0
- data/spec/api_client_spec.rb +66 -66
- data/spec/configuration_spec.rb +15 -15
- data/spec/models/access_token_response_spec.rb +16 -23
- data/spec/models/additional_amount_rate_spec.rb +47 -0
- data/spec/models/additional_transaction_details_spec.rb +53 -0
- data/spec/models/address_spec.rb +16 -17
- data/spec/models/airline_ancillary_service_category_spec.rb +14 -15
- data/spec/models/airline_spec.rb +27 -28
- data/spec/models/airline_travel_route_spec.rb +22 -23
- data/spec/models/ali_pay_spec.rb +63 -0
- data/spec/models/amount_components_spec.rb +16 -17
- data/spec/models/amount_spec.rb +12 -13
- data/spec/models/authentication_request_spec.rb +51 -0
- data/spec/models/authentication_response_verification_request_spec.rb +59 -0
- data/spec/models/authentication_response_verification_spec.rb +23 -18
- data/spec/models/avs_response_spec.rb +55 -0
- data/spec/models/basic_response_spec.rb +53 -0
- data/spec/models/basket_item_spec.rb +13 -14
- data/spec/models/billing_address_phone_spec.rb +47 -0
- data/spec/models/billing_address_spec.rb +95 -0
- data/spec/models/billing_spec.rb +25 -20
- data/spec/models/car_rental_extra_charges_spec.rb +14 -15
- data/spec/models/car_rental_spec.rb +17 -18
- data/spec/models/card_info_lookup_request_spec.rb +47 -0
- data/spec/models/card_info_lookup_response_spec.rb +69 -0
- data/spec/models/card_info_spec.rb +79 -0
- data/spec/models/card_spec.rb +83 -0
- data/spec/models/card_verification_request_spec.rb +47 -0
- data/spec/models/card_verifications_transaction_spec.rb +11 -12
- data/spec/models/china_domestic_spec.rb +83 -0
- data/spec/models/client_locale_spec.rb +11 -12
- data/spec/models/contact_spec.rb +13 -14
- data/spec/models/customer_address_phone_spec.rb +47 -0
- data/spec/models/customer_address_spec.rb +77 -0
- data/spec/models/customer_spec.rb +111 -0
- data/spec/models/dcc_spec.rb +47 -0
- data/spec/models/device_networks_spec.rb +123 -0
- data/spec/models/device_spec.rb +111 -0
- data/spec/models/document_spec.rb +51 -0
- data/spec/models/error_details_spec.rb +11 -12
- data/spec/models/error_response_spec.rb +13 -14
- data/spec/models/error_spec.rb +12 -13
- data/spec/models/exchange_rate_request_spec.rb +69 -0
- data/spec/models/exchange_rate_response_spec.rb +119 -0
- data/spec/models/expiration_spec.rb +11 -12
- data/spec/models/fraud_order_items_spec.rb +83 -0
- data/spec/models/fraud_order_ship_to_address_spec.rb +77 -0
- data/spec/models/fraud_order_spec.rb +53 -0
- data/spec/models/frequency_spec.rb +15 -16
- data/spec/models/industry_specific_extensions_spec.rb +12 -13
- data/spec/models/installment_options_spec.rb +12 -13
- data/spec/models/lodging_extra_charges_spec.rb +14 -15
- data/spec/models/lodging_spec.rb +14 -15
- data/spec/models/loyalty_spec.rb +53 -0
- data/spec/models/merchant_location_merchant_address_spec.rb +71 -0
- data/spec/models/merchant_location_spec.rb +65 -0
- data/spec/models/merchant_spec.rb +59 -0
- data/spec/models/order_error_response_spec.rb +107 -0
- data/spec/models/order_response_spec.rb +101 -0
- data/spec/models/order_spec.rb +12 -13
- data/spec/models/pay_pal_spec.rb +10 -11
- data/spec/models/payment_card_authentication_result_spec.rb +26 -27
- data/spec/models/payment_card_spec.rb +41 -22
- data/spec/models/payment_facilitator_spec.rb +65 -0
- data/spec/models/payment_issuer_response_spec.rb +57 -0
- data/spec/models/payment_method_spec.rb +35 -18
- data/spec/models/payment_pay_method_spec.rb +75 -0
- data/spec/models/payment_schedules_error_response_spec.rb +81 -0
- data/spec/models/payment_schedules_request_spec.rb +43 -30
- data/spec/models/payment_schedules_response_spec.rb +30 -19
- data/spec/models/payment_spec.rb +109 -0
- data/spec/models/payment_tokenization_error_response_spec.rb +111 -0
- data/spec/models/payment_tokenization_request_spec.rb +63 -0
- data/spec/models/payment_tokenization_response_spec.rb +105 -0
- data/spec/models/payment_tokenization_spec.rb +93 -0
- data/spec/models/payment_url_error_response_spec.rb +87 -0
- data/spec/models/payment_url_request_spec.rb +73 -14
- data/spec/models/payment_url_response_spec.rb +25 -20
- data/spec/models/payment_verification3ds_spec.rb +53 -0
- data/spec/models/payment_verification_avs_spec.rb +53 -0
- data/spec/models/payment_verification_cvv_spec.rb +53 -0
- data/spec/models/primary_transaction_additional_details_spec.rb +28 -17
- data/spec/models/primary_transaction_spec.rb +45 -22
- data/spec/models/processor_data_spec.rb +41 -14
- data/spec/models/purchase_cards_level2_spec.rb +65 -0
- data/spec/models/purchase_cards_level3_line_items_spec.rb +89 -0
- data/spec/models/purchase_cards_level3_spec.rb +41 -0
- data/spec/models/purchase_cards_spec.rb +47 -0
- data/spec/models/recurring_payment_details_response_spec.rb +107 -0
- data/spec/models/recurring_payment_details_spec.rb +117 -0
- data/spec/models/referenced_order_spec.rb +47 -0
- data/spec/models/response_type_spec.rb +9 -10
- data/spec/models/score_only_request_spec.rb +127 -0
- data/spec/models/score_only_response_fraud_score_explanations_spec.rb +53 -0
- data/spec/models/score_only_response_fraud_score_spec.rb +53 -0
- data/spec/models/score_only_response_spec.rb +75 -0
- data/spec/models/secondary_transaction_additional_details_spec.rb +41 -0
- data/spec/models/secondary_transaction_spec.rb +29 -12
- data/spec/models/secure3d_response_spec.rb +41 -0
- data/spec/models/sepa_mandate_spec.rb +17 -18
- data/spec/models/sepa_spec.rb +14 -15
- data/spec/models/shipping_spec.rb +12 -13
- data/spec/models/soft_descriptor_spec.rb +47 -0
- data/spec/models/split_shipment_spec.rb +11 -12
- data/spec/models/stored_credential_spec.rb +21 -22
- data/spec/models/sub_merchant_data_spec.rb +71 -0
- data/spec/models/transaction_error_response_spec.rb +62 -51
- data/spec/models/transaction_origin_spec.rb +35 -0
- data/spec/models/transaction_response_spec.rb +61 -50
- data/spec/models/transaction_spec.rb +115 -0
- data/spec/models/transaction_type_spec.rb +9 -10
- data/spec/spec_helper.rb +6 -6
- metadata +339 -69
- data/docs/PaymentCardAuthenticationRequest.md +0 -8
- data/docs/TransactionResponseAuthenticationRedirect.md +0 -10
- data/docs/TransactionResponseAuthenticationRedirectParams.md +0 -10
- data/lib/swagger_client/api/order_api.rb +0 -229
- data/lib/swagger_client/models/response_type.rb +0 -37
- data/lib/swagger_client/models/transaction_type.rb +0 -36
- data/lib/swagger_client/version.rb +0 -15
- data/lib/swagger_client.rb +0 -91
- data/spec/models/payment_card_authentication_request_spec.rb +0 -46
- data/spec/models/transaction_response_authentication_redirect_params_spec.rb +0 -54
- data/spec/models/transaction_response_authentication_redirect_spec.rb +0 -58
@@ -1,27 +1,29 @@
|
|
1
1
|
=begin
|
2
|
-
#Payment Gateway API Specification
|
2
|
+
#Payment Gateway API Specification.
|
3
3
|
|
4
|
-
#Payment Gateway API for payment processing.
|
4
|
+
#Payment Gateway API for payment processing. Version 6.4.0.20181018.001
|
5
5
|
|
6
|
-
OpenAPI spec version:
|
6
|
+
OpenAPI spec version: 6.4.0.20181018.001
|
7
7
|
|
8
|
-
Generated by: https://
|
9
|
-
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
OpenAPI Generator version: unset
|
10
10
|
|
11
11
|
=end
|
12
12
|
|
13
13
|
require 'date'
|
14
14
|
|
15
|
-
module
|
15
|
+
module OpenapiClient
|
16
16
|
# Model for primary financial transactions
|
17
17
|
class PrimaryTransaction
|
18
18
|
attr_accessor :transaction_type
|
19
19
|
|
20
|
-
# An optional
|
20
|
+
# An optional outlet ID for clients that support multiple stores in the same app.
|
21
21
|
attr_accessor :store_id
|
22
22
|
|
23
|
-
# The unique
|
24
|
-
attr_accessor :
|
23
|
+
# The unique merchant transaction ID from the Request header, if supplied.
|
24
|
+
attr_accessor :merchant_transaction_id
|
25
|
+
|
26
|
+
attr_accessor :transaction_origin
|
25
27
|
|
26
28
|
attr_accessor :amount
|
27
29
|
|
@@ -40,13 +42,19 @@ module SwaggerClient
|
|
40
42
|
|
41
43
|
attr_accessor :stored_credentials
|
42
44
|
|
45
|
+
attr_accessor :purchase_card
|
46
|
+
|
47
|
+
attr_accessor :payment_facilitator
|
48
|
+
|
49
|
+
attr_accessor :soft_descriptor
|
43
50
|
|
44
51
|
# Attribute mapping from ruby-style variable name to JSON key.
|
45
52
|
def self.attribute_map
|
46
53
|
{
|
47
54
|
:'transaction_type' => :'transactionType',
|
48
55
|
:'store_id' => :'storeId',
|
49
|
-
:'
|
56
|
+
:'merchant_transaction_id' => :'merchantTransactionId',
|
57
|
+
:'transaction_origin' => :'transactionOrigin',
|
50
58
|
:'amount' => :'amount',
|
51
59
|
:'payment_method' => :'paymentMethod',
|
52
60
|
:'order' => :'order',
|
@@ -54,16 +62,20 @@ module SwaggerClient
|
|
54
62
|
:'split_shipment' => :'splitShipment',
|
55
63
|
:'additional_details' => :'additionalDetails',
|
56
64
|
:'industry_specific_extensions' => :'industrySpecificExtensions',
|
57
|
-
:'stored_credentials' => :'storedCredentials'
|
65
|
+
:'stored_credentials' => :'storedCredentials',
|
66
|
+
:'purchase_card' => :'purchaseCard',
|
67
|
+
:'payment_facilitator' => :'paymentFacilitator',
|
68
|
+
:'soft_descriptor' => :'softDescriptor'
|
58
69
|
}
|
59
70
|
end
|
60
71
|
|
61
72
|
# Attribute type mapping.
|
62
|
-
def self.
|
73
|
+
def self.openapi_types
|
63
74
|
{
|
64
75
|
:'transaction_type' => :'TransactionType',
|
65
76
|
:'store_id' => :'String',
|
66
|
-
:'
|
77
|
+
:'merchant_transaction_id' => :'String',
|
78
|
+
:'transaction_origin' => :'TransactionOrigin',
|
67
79
|
:'amount' => :'Amount',
|
68
80
|
:'payment_method' => :'PaymentMethod',
|
69
81
|
:'order' => :'Order',
|
@@ -71,7 +83,10 @@ module SwaggerClient
|
|
71
83
|
:'split_shipment' => :'SplitShipment',
|
72
84
|
:'additional_details' => :'PrimaryTransactionAdditionalDetails',
|
73
85
|
:'industry_specific_extensions' => :'IndustrySpecificExtensions',
|
74
|
-
:'stored_credentials' => :'StoredCredential'
|
86
|
+
:'stored_credentials' => :'StoredCredential',
|
87
|
+
:'purchase_card' => :'PurchaseCards',
|
88
|
+
:'payment_facilitator' => :'PaymentFacilitator',
|
89
|
+
:'soft_descriptor' => :'SoftDescriptor'
|
75
90
|
}
|
76
91
|
end
|
77
92
|
|
@@ -81,7 +96,7 @@ module SwaggerClient
|
|
81
96
|
return unless attributes.is_a?(Hash)
|
82
97
|
|
83
98
|
# convert string to symbol for hash key
|
84
|
-
attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
|
99
|
+
attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
|
85
100
|
|
86
101
|
if attributes.has_key?(:'transactionType')
|
87
102
|
self.transaction_type = attributes[:'transactionType']
|
@@ -91,8 +106,12 @@ module SwaggerClient
|
|
91
106
|
self.store_id = attributes[:'storeId']
|
92
107
|
end
|
93
108
|
|
94
|
-
if attributes.has_key?(:'
|
95
|
-
self.
|
109
|
+
if attributes.has_key?(:'merchantTransactionId')
|
110
|
+
self.merchant_transaction_id = attributes[:'merchantTransactionId']
|
111
|
+
end
|
112
|
+
|
113
|
+
if attributes.has_key?(:'transactionOrigin')
|
114
|
+
self.transaction_origin = attributes[:'transactionOrigin']
|
96
115
|
end
|
97
116
|
|
98
117
|
if attributes.has_key?(:'amount')
|
@@ -129,6 +148,17 @@ module SwaggerClient
|
|
129
148
|
self.stored_credentials = attributes[:'storedCredentials']
|
130
149
|
end
|
131
150
|
|
151
|
+
if attributes.has_key?(:'purchaseCard')
|
152
|
+
self.purchase_card = attributes[:'purchaseCard']
|
153
|
+
end
|
154
|
+
|
155
|
+
if attributes.has_key?(:'paymentFacilitator')
|
156
|
+
self.payment_facilitator = attributes[:'paymentFacilitator']
|
157
|
+
end
|
158
|
+
|
159
|
+
if attributes.has_key?(:'softDescriptor')
|
160
|
+
self.soft_descriptor = attributes[:'softDescriptor']
|
161
|
+
end
|
132
162
|
end
|
133
163
|
|
134
164
|
# Show invalid properties with the reasons. Usually used together with valid?
|
@@ -136,27 +166,57 @@ module SwaggerClient
|
|
136
166
|
def list_invalid_properties
|
137
167
|
invalid_properties = Array.new
|
138
168
|
if @transaction_type.nil?
|
139
|
-
invalid_properties.push(
|
169
|
+
invalid_properties.push('invalid value for "transaction_type", transaction_type cannot be nil.')
|
170
|
+
end
|
171
|
+
|
172
|
+
if !@store_id.nil? && @store_id.to_s.length > 20
|
173
|
+
invalid_properties.push('invalid value for "store_id", the character length must be smaller than or equal to 20.')
|
174
|
+
end
|
175
|
+
|
176
|
+
if !@merchant_transaction_id.nil? && @merchant_transaction_id.to_s.length > 40
|
177
|
+
invalid_properties.push('invalid value for "merchant_transaction_id", the character length must be smaller than or equal to 40.')
|
140
178
|
end
|
141
179
|
|
142
180
|
if @amount.nil?
|
143
|
-
invalid_properties.push(
|
181
|
+
invalid_properties.push('invalid value for "amount", amount cannot be nil.')
|
144
182
|
end
|
145
183
|
|
146
184
|
if @payment_method.nil?
|
147
|
-
invalid_properties.push(
|
185
|
+
invalid_properties.push('invalid value for "payment_method", payment_method cannot be nil.')
|
148
186
|
end
|
149
187
|
|
150
|
-
|
188
|
+
invalid_properties
|
151
189
|
end
|
152
190
|
|
153
191
|
# Check to see if the all the properties in the model are valid
|
154
192
|
# @return true if the model is valid
|
155
193
|
def valid?
|
156
194
|
return false if @transaction_type.nil?
|
195
|
+
return false if !@store_id.nil? && @store_id.to_s.length > 20
|
196
|
+
return false if !@merchant_transaction_id.nil? && @merchant_transaction_id.to_s.length > 40
|
157
197
|
return false if @amount.nil?
|
158
198
|
return false if @payment_method.nil?
|
159
|
-
|
199
|
+
true
|
200
|
+
end
|
201
|
+
|
202
|
+
# Custom attribute writer method with validation
|
203
|
+
# @param [Object] store_id Value to be assigned
|
204
|
+
def store_id=(store_id)
|
205
|
+
if !store_id.nil? && store_id.to_s.length > 20
|
206
|
+
fail ArgumentError, 'invalid value for "store_id", the character length must be smaller than or equal to 20.'
|
207
|
+
end
|
208
|
+
|
209
|
+
@store_id = store_id
|
210
|
+
end
|
211
|
+
|
212
|
+
# Custom attribute writer method with validation
|
213
|
+
# @param [Object] merchant_transaction_id Value to be assigned
|
214
|
+
def merchant_transaction_id=(merchant_transaction_id)
|
215
|
+
if !merchant_transaction_id.nil? && merchant_transaction_id.to_s.length > 40
|
216
|
+
fail ArgumentError, 'invalid value for "merchant_transaction_id", the character length must be smaller than or equal to 40.'
|
217
|
+
end
|
218
|
+
|
219
|
+
@merchant_transaction_id = merchant_transaction_id
|
160
220
|
end
|
161
221
|
|
162
222
|
# Checks equality by comparing each attribute.
|
@@ -166,7 +226,8 @@ module SwaggerClient
|
|
166
226
|
self.class == o.class &&
|
167
227
|
transaction_type == o.transaction_type &&
|
168
228
|
store_id == o.store_id &&
|
169
|
-
|
229
|
+
merchant_transaction_id == o.merchant_transaction_id &&
|
230
|
+
transaction_origin == o.transaction_origin &&
|
170
231
|
amount == o.amount &&
|
171
232
|
payment_method == o.payment_method &&
|
172
233
|
order == o.order &&
|
@@ -174,7 +235,10 @@ module SwaggerClient
|
|
174
235
|
split_shipment == o.split_shipment &&
|
175
236
|
additional_details == o.additional_details &&
|
176
237
|
industry_specific_extensions == o.industry_specific_extensions &&
|
177
|
-
stored_credentials == o.stored_credentials
|
238
|
+
stored_credentials == o.stored_credentials &&
|
239
|
+
purchase_card == o.purchase_card &&
|
240
|
+
payment_facilitator == o.payment_facilitator &&
|
241
|
+
soft_descriptor == o.soft_descriptor
|
178
242
|
end
|
179
243
|
|
180
244
|
# @see the `==` method
|
@@ -186,7 +250,7 @@ module SwaggerClient
|
|
186
250
|
# Calculates hash code according to all attributes.
|
187
251
|
# @return [Fixnum] Hash code
|
188
252
|
def hash
|
189
|
-
[transaction_type, store_id,
|
253
|
+
[transaction_type, store_id, merchant_transaction_id, transaction_origin, amount, payment_method, order, basket_items, split_shipment, additional_details, industry_specific_extensions, stored_credentials, purchase_card, payment_facilitator, soft_descriptor].hash
|
190
254
|
end
|
191
255
|
|
192
256
|
# Builds the object from hash
|
@@ -194,12 +258,12 @@ module SwaggerClient
|
|
194
258
|
# @return [Object] Returns the model itself
|
195
259
|
def build_from_hash(attributes)
|
196
260
|
return nil unless attributes.is_a?(Hash)
|
197
|
-
self.class.
|
261
|
+
self.class.openapi_types.each_pair do |key, type|
|
198
262
|
if type =~ /\AArray<(.*)>/i
|
199
263
|
# check to ensure the input is an array given that the the attribute
|
200
264
|
# is documented as an array but the input is not
|
201
265
|
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
202
|
-
self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) }
|
266
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
203
267
|
end
|
204
268
|
elsif !attributes[self.class.attribute_map[key]].nil?
|
205
269
|
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
@@ -246,7 +310,7 @@ module SwaggerClient
|
|
246
310
|
end
|
247
311
|
end
|
248
312
|
else # model
|
249
|
-
temp_model =
|
313
|
+
temp_model = OpenapiClient.const_get(type).new
|
250
314
|
temp_model.build_from_hash(value)
|
251
315
|
end
|
252
316
|
end
|
@@ -281,7 +345,7 @@ module SwaggerClient
|
|
281
345
|
# @return [Hash] Returns the value in the form of hash
|
282
346
|
def _to_hash(value)
|
283
347
|
if value.is_a?(Array)
|
284
|
-
value.compact.map{ |v| _to_hash(v) }
|
348
|
+
value.compact.map { |v| _to_hash(v) }
|
285
349
|
elsif value.is_a?(Hash)
|
286
350
|
{}.tap do |hash|
|
287
351
|
value.each { |k, v| hash[k] = _to_hash(v) }
|
@@ -292,7 +356,5 @@ module SwaggerClient
|
|
292
356
|
value
|
293
357
|
end
|
294
358
|
end
|
295
|
-
|
296
359
|
end
|
297
|
-
|
298
360
|
end
|
@@ -0,0 +1,352 @@
|
|
1
|
+
=begin
|
2
|
+
#Payment Gateway API Specification.
|
3
|
+
|
4
|
+
#Payment Gateway API for payment processing. Version 6.4.0.20181018.001
|
5
|
+
|
6
|
+
OpenAPI spec version: 6.4.0.20181018.001
|
7
|
+
|
8
|
+
Generated by: https://openapi-generator.tech
|
9
|
+
OpenAPI Generator version: unset
|
10
|
+
|
11
|
+
=end
|
12
|
+
|
13
|
+
require 'date'
|
14
|
+
|
15
|
+
module OpenapiClient
|
16
|
+
class PrimaryTransactionAdditionalDetails
|
17
|
+
# For FORCED_TICKET only. Stores the six digit reference number you have received as the result of a successful external authorization (e.g. by phone). The Gateway needs this number for uniquely mapping a ForcedTicket transaction to a previously performed external authorization.]
|
18
|
+
attr_accessor :reference_number
|
19
|
+
|
20
|
+
# Comments for the payment
|
21
|
+
attr_accessor :comments
|
22
|
+
|
23
|
+
# The name of sub-merchant for the payment facilitator
|
24
|
+
attr_accessor :dynamic_merchant_name
|
25
|
+
|
26
|
+
# Invoice number
|
27
|
+
attr_accessor :invoice_number
|
28
|
+
|
29
|
+
# Purchase order number
|
30
|
+
attr_accessor :purchase_order_number
|
31
|
+
|
32
|
+
# Valid values are 'FIRST', 'REPEAT' and 'STANDING_INSTRUCTION'.
|
33
|
+
attr_accessor :recurring_type
|
34
|
+
|
35
|
+
attr_accessor :installment_options
|
36
|
+
|
37
|
+
# Use this field to override merchant configured MCC value
|
38
|
+
attr_accessor :mcc
|
39
|
+
|
40
|
+
attr_accessor :dcc
|
41
|
+
|
42
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
43
|
+
def self.attribute_map
|
44
|
+
{
|
45
|
+
:'reference_number' => :'referenceNumber',
|
46
|
+
:'comments' => :'comments',
|
47
|
+
:'dynamic_merchant_name' => :'dynamicMerchantName',
|
48
|
+
:'invoice_number' => :'invoiceNumber',
|
49
|
+
:'purchase_order_number' => :'purchaseOrderNumber',
|
50
|
+
:'recurring_type' => :'recurringType',
|
51
|
+
:'installment_options' => :'installmentOptions',
|
52
|
+
:'mcc' => :'mcc',
|
53
|
+
:'dcc' => :'dcc'
|
54
|
+
}
|
55
|
+
end
|
56
|
+
|
57
|
+
# Attribute type mapping.
|
58
|
+
def self.openapi_types
|
59
|
+
{
|
60
|
+
:'reference_number' => :'String',
|
61
|
+
:'comments' => :'String',
|
62
|
+
:'dynamic_merchant_name' => :'String',
|
63
|
+
:'invoice_number' => :'String',
|
64
|
+
:'purchase_order_number' => :'String',
|
65
|
+
:'recurring_type' => :'String',
|
66
|
+
:'installment_options' => :'InstallmentOptions',
|
67
|
+
:'mcc' => :'String',
|
68
|
+
:'dcc' => :'Dcc'
|
69
|
+
}
|
70
|
+
end
|
71
|
+
|
72
|
+
# Initializes the object
|
73
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
74
|
+
def initialize(attributes = {})
|
75
|
+
return unless attributes.is_a?(Hash)
|
76
|
+
|
77
|
+
# convert string to symbol for hash key
|
78
|
+
attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
|
79
|
+
|
80
|
+
if attributes.has_key?(:'referenceNumber')
|
81
|
+
self.reference_number = attributes[:'referenceNumber']
|
82
|
+
end
|
83
|
+
|
84
|
+
if attributes.has_key?(:'comments')
|
85
|
+
self.comments = attributes[:'comments']
|
86
|
+
end
|
87
|
+
|
88
|
+
if attributes.has_key?(:'dynamicMerchantName')
|
89
|
+
self.dynamic_merchant_name = attributes[:'dynamicMerchantName']
|
90
|
+
end
|
91
|
+
|
92
|
+
if attributes.has_key?(:'invoiceNumber')
|
93
|
+
self.invoice_number = attributes[:'invoiceNumber']
|
94
|
+
end
|
95
|
+
|
96
|
+
if attributes.has_key?(:'purchaseOrderNumber')
|
97
|
+
self.purchase_order_number = attributes[:'purchaseOrderNumber']
|
98
|
+
end
|
99
|
+
|
100
|
+
if attributes.has_key?(:'recurringType')
|
101
|
+
self.recurring_type = attributes[:'recurringType']
|
102
|
+
end
|
103
|
+
|
104
|
+
if attributes.has_key?(:'installmentOptions')
|
105
|
+
self.installment_options = attributes[:'installmentOptions']
|
106
|
+
end
|
107
|
+
|
108
|
+
if attributes.has_key?(:'mcc')
|
109
|
+
self.mcc = attributes[:'mcc']
|
110
|
+
end
|
111
|
+
|
112
|
+
if attributes.has_key?(:'dcc')
|
113
|
+
self.dcc = attributes[:'dcc']
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
118
|
+
# @return Array for valid properties with the reasons
|
119
|
+
def list_invalid_properties
|
120
|
+
invalid_properties = Array.new
|
121
|
+
if !@reference_number.nil? && @reference_number.to_s.length > 8
|
122
|
+
invalid_properties.push('invalid value for "reference_number", the character length must be smaller than or equal to 8.')
|
123
|
+
end
|
124
|
+
|
125
|
+
if !@comments.nil? && @comments.to_s.length > 1024
|
126
|
+
invalid_properties.push('invalid value for "comments", the character length must be smaller than or equal to 1024.')
|
127
|
+
end
|
128
|
+
|
129
|
+
if !@dynamic_merchant_name.nil? && @dynamic_merchant_name.to_s.length > 100
|
130
|
+
invalid_properties.push('invalid value for "dynamic_merchant_name", the character length must be smaller than or equal to 100.')
|
131
|
+
end
|
132
|
+
|
133
|
+
if !@invoice_number.nil? && @invoice_number.to_s.length > 48
|
134
|
+
invalid_properties.push('invalid value for "invoice_number", the character length must be smaller than or equal to 48.')
|
135
|
+
end
|
136
|
+
|
137
|
+
if !@purchase_order_number.nil? && @purchase_order_number.to_s.length > 128
|
138
|
+
invalid_properties.push('invalid value for "purchase_order_number", the character length must be smaller than or equal to 128.')
|
139
|
+
end
|
140
|
+
|
141
|
+
if !@mcc.nil? && @mcc.to_s.length > 4
|
142
|
+
invalid_properties.push('invalid value for "mcc", the character length must be smaller than or equal to 4.')
|
143
|
+
end
|
144
|
+
|
145
|
+
invalid_properties
|
146
|
+
end
|
147
|
+
|
148
|
+
# Check to see if the all the properties in the model are valid
|
149
|
+
# @return true if the model is valid
|
150
|
+
def valid?
|
151
|
+
return false if !@reference_number.nil? && @reference_number.to_s.length > 8
|
152
|
+
return false if !@comments.nil? && @comments.to_s.length > 1024
|
153
|
+
return false if !@dynamic_merchant_name.nil? && @dynamic_merchant_name.to_s.length > 100
|
154
|
+
return false if !@invoice_number.nil? && @invoice_number.to_s.length > 48
|
155
|
+
return false if !@purchase_order_number.nil? && @purchase_order_number.to_s.length > 128
|
156
|
+
return false if !@mcc.nil? && @mcc.to_s.length > 4
|
157
|
+
true
|
158
|
+
end
|
159
|
+
|
160
|
+
# Custom attribute writer method with validation
|
161
|
+
# @param [Object] reference_number Value to be assigned
|
162
|
+
def reference_number=(reference_number)
|
163
|
+
if !reference_number.nil? && reference_number.to_s.length > 8
|
164
|
+
fail ArgumentError, 'invalid value for "reference_number", the character length must be smaller than or equal to 8.'
|
165
|
+
end
|
166
|
+
|
167
|
+
@reference_number = reference_number
|
168
|
+
end
|
169
|
+
|
170
|
+
# Custom attribute writer method with validation
|
171
|
+
# @param [Object] comments Value to be assigned
|
172
|
+
def comments=(comments)
|
173
|
+
if !comments.nil? && comments.to_s.length > 1024
|
174
|
+
fail ArgumentError, 'invalid value for "comments", the character length must be smaller than or equal to 1024.'
|
175
|
+
end
|
176
|
+
|
177
|
+
@comments = comments
|
178
|
+
end
|
179
|
+
|
180
|
+
# Custom attribute writer method with validation
|
181
|
+
# @param [Object] dynamic_merchant_name Value to be assigned
|
182
|
+
def dynamic_merchant_name=(dynamic_merchant_name)
|
183
|
+
if !dynamic_merchant_name.nil? && dynamic_merchant_name.to_s.length > 100
|
184
|
+
fail ArgumentError, 'invalid value for "dynamic_merchant_name", the character length must be smaller than or equal to 100.'
|
185
|
+
end
|
186
|
+
|
187
|
+
@dynamic_merchant_name = dynamic_merchant_name
|
188
|
+
end
|
189
|
+
|
190
|
+
# Custom attribute writer method with validation
|
191
|
+
# @param [Object] invoice_number Value to be assigned
|
192
|
+
def invoice_number=(invoice_number)
|
193
|
+
if !invoice_number.nil? && invoice_number.to_s.length > 48
|
194
|
+
fail ArgumentError, 'invalid value for "invoice_number", the character length must be smaller than or equal to 48.'
|
195
|
+
end
|
196
|
+
|
197
|
+
@invoice_number = invoice_number
|
198
|
+
end
|
199
|
+
|
200
|
+
# Custom attribute writer method with validation
|
201
|
+
# @param [Object] purchase_order_number Value to be assigned
|
202
|
+
def purchase_order_number=(purchase_order_number)
|
203
|
+
if !purchase_order_number.nil? && purchase_order_number.to_s.length > 128
|
204
|
+
fail ArgumentError, 'invalid value for "purchase_order_number", the character length must be smaller than or equal to 128.'
|
205
|
+
end
|
206
|
+
|
207
|
+
@purchase_order_number = purchase_order_number
|
208
|
+
end
|
209
|
+
|
210
|
+
# Custom attribute writer method with validation
|
211
|
+
# @param [Object] mcc Value to be assigned
|
212
|
+
def mcc=(mcc)
|
213
|
+
if !mcc.nil? && mcc.to_s.length > 4
|
214
|
+
fail ArgumentError, 'invalid value for "mcc", the character length must be smaller than or equal to 4.'
|
215
|
+
end
|
216
|
+
|
217
|
+
@mcc = mcc
|
218
|
+
end
|
219
|
+
|
220
|
+
# Checks equality by comparing each attribute.
|
221
|
+
# @param [Object] Object to be compared
|
222
|
+
def ==(o)
|
223
|
+
return true if self.equal?(o)
|
224
|
+
self.class == o.class &&
|
225
|
+
reference_number == o.reference_number &&
|
226
|
+
comments == o.comments &&
|
227
|
+
dynamic_merchant_name == o.dynamic_merchant_name &&
|
228
|
+
invoice_number == o.invoice_number &&
|
229
|
+
purchase_order_number == o.purchase_order_number &&
|
230
|
+
recurring_type == o.recurring_type &&
|
231
|
+
installment_options == o.installment_options &&
|
232
|
+
mcc == o.mcc &&
|
233
|
+
dcc == o.dcc
|
234
|
+
end
|
235
|
+
|
236
|
+
# @see the `==` method
|
237
|
+
# @param [Object] Object to be compared
|
238
|
+
def eql?(o)
|
239
|
+
self == o
|
240
|
+
end
|
241
|
+
|
242
|
+
# Calculates hash code according to all attributes.
|
243
|
+
# @return [Fixnum] Hash code
|
244
|
+
def hash
|
245
|
+
[reference_number, comments, dynamic_merchant_name, invoice_number, purchase_order_number, recurring_type, installment_options, mcc, dcc].hash
|
246
|
+
end
|
247
|
+
|
248
|
+
# Builds the object from hash
|
249
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
250
|
+
# @return [Object] Returns the model itself
|
251
|
+
def build_from_hash(attributes)
|
252
|
+
return nil unless attributes.is_a?(Hash)
|
253
|
+
self.class.openapi_types.each_pair do |key, type|
|
254
|
+
if type =~ /\AArray<(.*)>/i
|
255
|
+
# check to ensure the input is an array given that the the attribute
|
256
|
+
# is documented as an array but the input is not
|
257
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
258
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
259
|
+
end
|
260
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
261
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
262
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
263
|
+
end
|
264
|
+
|
265
|
+
self
|
266
|
+
end
|
267
|
+
|
268
|
+
# Deserializes the data based on type
|
269
|
+
# @param string type Data type
|
270
|
+
# @param string value Value to be deserialized
|
271
|
+
# @return [Object] Deserialized data
|
272
|
+
def _deserialize(type, value)
|
273
|
+
case type.to_sym
|
274
|
+
when :DateTime
|
275
|
+
DateTime.parse(value)
|
276
|
+
when :Date
|
277
|
+
Date.parse(value)
|
278
|
+
when :String
|
279
|
+
value.to_s
|
280
|
+
when :Integer
|
281
|
+
value.to_i
|
282
|
+
when :Float
|
283
|
+
value.to_f
|
284
|
+
when :BOOLEAN
|
285
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
286
|
+
true
|
287
|
+
else
|
288
|
+
false
|
289
|
+
end
|
290
|
+
when :Object
|
291
|
+
# generic object (usually a Hash), return directly
|
292
|
+
value
|
293
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
294
|
+
inner_type = Regexp.last_match[:inner_type]
|
295
|
+
value.map { |v| _deserialize(inner_type, v) }
|
296
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
297
|
+
k_type = Regexp.last_match[:k_type]
|
298
|
+
v_type = Regexp.last_match[:v_type]
|
299
|
+
{}.tap do |hash|
|
300
|
+
value.each do |k, v|
|
301
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
302
|
+
end
|
303
|
+
end
|
304
|
+
else # model
|
305
|
+
temp_model = OpenapiClient.const_get(type).new
|
306
|
+
temp_model.build_from_hash(value)
|
307
|
+
end
|
308
|
+
end
|
309
|
+
|
310
|
+
# Returns the string representation of the object
|
311
|
+
# @return [String] String presentation of the object
|
312
|
+
def to_s
|
313
|
+
to_hash.to_s
|
314
|
+
end
|
315
|
+
|
316
|
+
# to_body is an alias to to_hash (backward compatibility)
|
317
|
+
# @return [Hash] Returns the object in the form of hash
|
318
|
+
def to_body
|
319
|
+
to_hash
|
320
|
+
end
|
321
|
+
|
322
|
+
# Returns the object in the form of hash
|
323
|
+
# @return [Hash] Returns the object in the form of hash
|
324
|
+
def to_hash
|
325
|
+
hash = {}
|
326
|
+
self.class.attribute_map.each_pair do |attr, param|
|
327
|
+
value = self.send(attr)
|
328
|
+
next if value.nil?
|
329
|
+
hash[param] = _to_hash(value)
|
330
|
+
end
|
331
|
+
hash
|
332
|
+
end
|
333
|
+
|
334
|
+
# Outputs non-array value in the form of hash
|
335
|
+
# For object, use to_hash. Otherwise, just return the value
|
336
|
+
# @param [Object] value Any valid value
|
337
|
+
# @return [Hash] Returns the value in the form of hash
|
338
|
+
def _to_hash(value)
|
339
|
+
if value.is_a?(Array)
|
340
|
+
value.compact.map { |v| _to_hash(v) }
|
341
|
+
elsif value.is_a?(Hash)
|
342
|
+
{}.tap do |hash|
|
343
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
344
|
+
end
|
345
|
+
elsif value.respond_to? :to_hash
|
346
|
+
value.to_hash
|
347
|
+
else
|
348
|
+
value
|
349
|
+
end
|
350
|
+
end
|
351
|
+
end
|
352
|
+
end
|