hamza-payments-query-sdk 1.0.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 +7 -0
- data/LICENSE +28 -0
- data/README.md +136 -0
- data/lib/payments/api_helper.rb +10 -0
- data/lib/payments/client.rb +78 -0
- data/lib/payments/configuration.rb +145 -0
- data/lib/payments/controllers/base_controller.rb +60 -0
- data/lib/payments/controllers/m3_ds_actions_controller.rb +97 -0
- data/lib/payments/controllers/manage_payments_controller.rb +272 -0
- data/lib/payments/controllers/payment_controller.rb +51 -0
- data/lib/payments/controllers/payment_queries_controller.rb +134 -0
- data/lib/payments/exceptions/api_exception.rb +21 -0
- data/lib/payments/exceptions/error_response_exception.rb +51 -0
- data/lib/payments/exceptions/header_error_response_exception.rb +58 -0
- data/lib/payments/exceptions/pq_querybydaterange400_response_exception.rb +51 -0
- data/lib/payments/exceptions/pq_querybypaymentid404_response_error_exception.rb +51 -0
- data/lib/payments/exceptions/pq_queryhistoricalpayments400_response_exception.rb +51 -0
- data/lib/payments/exceptions/validation_error_response_exception.rb +58 -0
- data/lib/payments/http/auth/basic_auth.rb +50 -0
- data/lib/payments/http/http_call_back.rb +10 -0
- data/lib/payments/http/http_method_enum.rb +10 -0
- data/lib/payments/http/http_request.rb +10 -0
- data/lib/payments/http/http_response.rb +10 -0
- data/lib/payments/http/proxy_settings.rb +13 -0
- data/lib/payments/models/accept_enum.rb +21 -0
- data/lib/payments/models/account_history.rb +110 -0
- data/lib/payments/models/account_updater_message1_enum.rb +44 -0
- data/lib/payments/models/account_updater_message_enum.rb +41 -0
- data/lib/payments/models/advice.rb +62 -0
- data/lib/payments/models/applepay_payments_instruction.rb +151 -0
- data/lib/payments/models/authentication.rb +161 -0
- data/lib/payments/models/authorization_action_list.rb +90 -0
- data/lib/payments/models/authorization_failed.rb +103 -0
- data/lib/payments/models/authorization_refused.rb +124 -0
- data/lib/payments/models/authorization_requested.rb +94 -0
- data/lib/payments/models/authorization_succeeded.rb +104 -0
- data/lib/payments/models/authorization_timed_out.rb +94 -0
- data/lib/payments/models/authorization_type1_enum.rb +23 -0
- data/lib/payments/models/authorization_type_enum.rb +23 -0
- data/lib/payments/models/avs_not_matched_enum.rb +25 -0
- data/lib/payments/models/base_model.rb +110 -0
- data/lib/payments/models/billing_address.rb +147 -0
- data/lib/payments/models/browser_color_depth_enum.rb +41 -0
- data/lib/payments/models/cancel_response.rb +71 -0
- data/lib/payments/models/cancellation.rb +88 -0
- data/lib/payments/models/cancellation_failed.rb +94 -0
- data/lib/payments/models/cancellation_request_submitted.rb +94 -0
- data/lib/payments/models/cancellation_requested.rb +94 -0
- data/lib/payments/models/cancellation_timed_out.rb +94 -0
- data/lib/payments/models/card.rb +159 -0
- data/lib/payments/models/card1.rb +106 -0
- data/lib/payments/models/card3.rb +72 -0
- data/lib/payments/models/card_authorized_payment_response.rb +195 -0
- data/lib/payments/models/card_payment_instrument.rb +76 -0
- data/lib/payments/models/card_payments_instruction.rb +164 -0
- data/lib/payments/models/category_enum.rb +23 -0
- data/lib/payments/models/challenge.rb +100 -0
- data/lib/payments/models/challenge_info.rb +91 -0
- data/lib/payments/models/challenge_response201.rb +75 -0
- data/lib/payments/models/challenge_response202.rb +62 -0
- data/lib/payments/models/challenged_action_list.rb +65 -0
- data/lib/payments/models/challenged_response.rb +96 -0
- data/lib/payments/models/channel1_enum.rb +27 -0
- data/lib/payments/models/channel_enum.rb +24 -0
- data/lib/payments/models/conflict_payment_instrument.rb +104 -0
- data/lib/payments/models/content_type_enum.rb +20 -0
- data/lib/payments/models/custom.rb +241 -0
- data/lib/payments/models/customer.rb +146 -0
- data/lib/payments/models/customer_agreement.rb +120 -0
- data/lib/payments/models/cvc_not_matched_enum.rb +24 -0
- data/lib/payments/models/detail_enum.rb +23 -0
- data/lib/payments/models/device_data.rb +200 -0
- data/lib/payments/models/device_data_collection.rb +79 -0
- data/lib/payments/models/device_data_request.rb +71 -0
- data/lib/payments/models/device_data_required_action_list.rb +66 -0
- data/lib/payments/models/device_data_required_response.rb +89 -0
- data/lib/payments/models/device_data_response201.rb +95 -0
- data/lib/payments/models/embedded.rb +71 -0
- data/lib/payments/models/embedded1.rb +71 -0
- data/lib/payments/models/error.rb +81 -0
- data/lib/payments/models/exemption.rb +106 -0
- data/lib/payments/models/expiry_date.rb +90 -0
- data/lib/payments/models/expiry_date1.rb +84 -0
- data/lib/payments/models/fraud.rb +73 -0
- data/lib/payments/models/fraud_high_risk_response.rb +88 -0
- data/lib/payments/models/funding_type_enum.rb +32 -0
- data/lib/payments/models/googlepay_payments_instruction.rb +151 -0
- data/lib/payments/models/identifier_type_enum.rb +26 -0
- data/lib/payments/models/installment_plan.rb +76 -0
- data/lib/payments/models/installment_type_enum.rb +26 -0
- data/lib/payments/models/issuer.rb +63 -0
- data/lib/payments/models/issuer1.rb +76 -0
- data/lib/payments/models/issuer_response_enum.rb +23 -0
- data/lib/payments/models/last_event_enum.rb +95 -0
- data/lib/payments/models/links.rb +123 -0
- data/lib/payments/models/links1.rb +70 -0
- data/lib/payments/models/links2.rb +60 -0
- data/lib/payments/models/links3.rb +97 -0
- data/lib/payments/models/merchant.rb +88 -0
- data/lib/payments/models/message_enum.rb +34 -0
- data/lib/payments/models/method_enum.rb +38 -0
- data/lib/payments/models/mnext.rb +62 -0
- data/lib/payments/models/mself.rb +62 -0
- data/lib/payments/models/name_enum.rb +51 -0
- data/lib/payments/models/narrative.rb +86 -0
- data/lib/payments/models/narrative1.rb +87 -0
- data/lib/payments/models/narrative2.rb +71 -0
- data/lib/payments/models/number.rb +85 -0
- data/lib/payments/models/number3.rb +62 -0
- data/lib/payments/models/outcome16_enum.rb +21 -0
- data/lib/payments/models/outcome17_enum.rb +21 -0
- data/lib/payments/models/outcome6_enum.rb +42 -0
- data/lib/payments/models/outcome7_enum.rb +26 -0
- data/lib/payments/models/outcome_enum.rb +50 -0
- data/lib/payments/models/partial_refund_action_list.rb +64 -0
- data/lib/payments/models/partial_refund_response.rb +81 -0
- data/lib/payments/models/partial_settle_action_list.rb +102 -0
- data/lib/payments/models/partial_settle_response.rb +81 -0
- data/lib/payments/models/payment.rb +192 -0
- data/lib/payments/models/payment1.rb +86 -0
- data/lib/payments/models/payment_instrument.rb +62 -0
- data/lib/payments/models/payment_instrument4.rb +81 -0
- data/lib/payments/models/payment_instrument6.rb +71 -0
- data/lib/payments/models/payment_instrument7.rb +171 -0
- data/lib/payments/models/payment_refused_response.rb +187 -0
- data/lib/payments/models/payment_request.rb +96 -0
- data/lib/payments/models/payments_action_cancel.rb +71 -0
- data/lib/payments/models/payments_action_complete3ds_challenge.rb +72 -0
- data/lib/payments/models/payments_action_partial_refund.rb +71 -0
- data/lib/payments/models/payments_action_partial_settle.rb +73 -0
- data/lib/payments/models/payments_action_refund.rb +71 -0
- data/lib/payments/models/payments_action_settle.rb +71 -0
- data/lib/payments/models/payments_action_supply3ds_device_data.rb +73 -0
- data/lib/payments/models/payments_bank_account.rb +119 -0
- data/lib/payments/models/payments_cancel.rb +72 -0
- data/lib/payments/models/payments_card_account.rb +69 -0
- data/lib/payments/models/payments_card_on_file_customer_agreement.rb +85 -0
- data/lib/payments/models/payments_card_plain_payment_instrument.rb +149 -0
- data/lib/payments/models/payments_customer_agreement.rb +79 -0
- data/lib/payments/models/payments_email_account.rb +69 -0
- data/lib/payments/models/payments_events.rb +72 -0
- data/lib/payments/models/payments_exemption.rb +102 -0
- data/lib/payments/models/payments_fraud.rb +107 -0
- data/lib/payments/models/payments_funds_recipient.rb +139 -0
- data/lib/payments/models/payments_funds_sender.rb +120 -0
- data/lib/payments/models/payments_funds_transfer.rb +108 -0
- data/lib/payments/models/payments_gift_cards_purchase.rb +81 -0
- data/lib/payments/models/payments_installment_customer_agreement.rb +133 -0
- data/lib/payments/models/payments_instruction.rb +309 -0
- data/lib/payments/models/payments_link.rb +62 -0
- data/lib/payments/models/payments_network_token_payment_instrument.rb +126 -0
- data/lib/payments/models/payments_partial_refund_request.rb +68 -0
- data/lib/payments/models/payments_partial_settle.rb +72 -0
- data/lib/payments/models/payments_partial_settle_request.rb +81 -0
- data/lib/payments/models/payments_payment_facilitator.rb +88 -0
- data/lib/payments/models/payments_payment_instrument.rb +78 -0
- data/lib/payments/models/payments_phone_account.rb +69 -0
- data/lib/payments/models/payments_recipient.rb +110 -0
- data/lib/payments/models/payments_recipient_account.rb +81 -0
- data/lib/payments/models/payments_recipient_address.rb +72 -0
- data/lib/payments/models/payments_response.rb +69 -0
- data/lib/payments/models/payments_response202.rb +90 -0
- data/lib/payments/models/payments_response_payment_instrument.rb +158 -0
- data/lib/payments/models/payments_sequence.rb +69 -0
- data/lib/payments/models/payments_settle.rb +72 -0
- data/lib/payments/models/payments_shipping_address.rb +148 -0
- data/lib/payments/models/payments_social_network_account.rb +71 -0
- data/lib/payments/models/payments_sub_merchant.rb +108 -0
- data/lib/payments/models/payments_sub_merchant_address.rb +99 -0
- data/lib/payments/models/payments_subscription_customer_agreement.rb +106 -0
- data/lib/payments/models/payments_three_ds.rb +217 -0
- data/lib/payments/models/payments_transfer_address.rb +112 -0
- data/lib/payments/models/payments_unscheduled_customer_agreement.rb +87 -0
- data/lib/payments/models/payments_wallet_account.rb +70 -0
- data/lib/payments/models/placement_enum.rb +21 -0
- data/lib/payments/models/pq_querybydaterange200_response.rb +68 -0
- data/lib/payments/models/pq_querybypaymentid200_response.rb +230 -0
- data/lib/payments/models/pq_queryhistoricalpayments200_response.rb +72 -0
- data/lib/payments/models/preference_enum.rb +29 -0
- data/lib/payments/models/preferred_card_brand_enum.rb +51 -0
- data/lib/payments/models/purpose_enum.rb +78 -0
- data/lib/payments/models/query_action_list.rb +114 -0
- data/lib/payments/models/query_events_response.rb +71 -0
- data/lib/payments/models/reason_enum.rb +50 -0
- data/lib/payments/models/refund_failed.rb +94 -0
- data/lib/payments/models/refund_request_submitted.rb +94 -0
- data/lib/payments/models/refund_requested.rb +124 -0
- data/lib/payments/models/refund_response.rb +71 -0
- data/lib/payments/models/refund_timed_out.rb +94 -0
- data/lib/payments/models/result_enum.rb +29 -0
- data/lib/payments/models/reversal_failed.rb +94 -0
- data/lib/payments/models/reversal_request_submitted.rb +94 -0
- data/lib/payments/models/reversal_requested.rb +103 -0
- data/lib/payments/models/reversal_timed_out.rb +94 -0
- data/lib/payments/models/risk_enum.rb +29 -0
- data/lib/payments/models/risk_factor.rb +82 -0
- data/lib/payments/models/routing.rb +74 -0
- data/lib/payments/models/sale_failed.rb +103 -0
- data/lib/payments/models/sale_refused.rb +124 -0
- data/lib/payments/models/sale_requested.rb +94 -0
- data/lib/payments/models/sale_succeeded.rb +104 -0
- data/lib/payments/models/sale_timed_out.rb +94 -0
- data/lib/payments/models/scheme.rb +75 -0
- data/lib/payments/models/self1.rb +72 -0
- data/lib/payments/models/self2.rb +62 -0
- data/lib/payments/models/self3.rb +62 -0
- data/lib/payments/models/sent_for_cancellation_response.rb +185 -0
- data/lib/payments/models/sent_for_settlement_action_list.rb +76 -0
- data/lib/payments/models/sent_for_settlement_response.rb +195 -0
- data/lib/payments/models/session_payment_instrument.rb +119 -0
- data/lib/payments/models/settle_action_list.rb +76 -0
- data/lib/payments/models/settle_response.rb +81 -0
- data/lib/payments/models/settlement.rb +88 -0
- data/lib/payments/models/settlement_failed.rb +94 -0
- data/lib/payments/models/settlement_request_submitted.rb +94 -0
- data/lib/payments/models/settlement_requested.rb +125 -0
- data/lib/payments/models/settlement_timed_out.rb +94 -0
- data/lib/payments/models/shipping.rb +130 -0
- data/lib/payments/models/stored_card_usage1_enum.rb +24 -0
- data/lib/payments/models/stored_card_usage_enum.rb +24 -0
- data/lib/payments/models/time_frame_enum.rb +29 -0
- data/lib/payments/models/token.rb +168 -0
- data/lib/payments/models/token_creation.rb +95 -0
- data/lib/payments/models/token_payment_instrument.rb +118 -0
- data/lib/payments/models/token_response_conflicts.rb +90 -0
- data/lib/payments/models/transaction_history.rb +127 -0
- data/lib/payments/models/transaction_type1_enum.rb +26 -0
- data/lib/payments/models/transaction_type_enum.rb +26 -0
- data/lib/payments/models/type10_enum.rb +23 -0
- data/lib/payments/models/type12_enum.rb +35 -0
- data/lib/payments/models/type1_enum.rb +26 -0
- data/lib/payments/models/type2_enum.rb +23 -0
- data/lib/payments/models/type3_enum.rb +20 -0
- data/lib/payments/models/type4_enum.rb +20 -0
- data/lib/payments/models/type5_enum.rb +41 -0
- data/lib/payments/models/type6_enum.rb +29 -0
- data/lib/payments/models/type7_enum.rb +23 -0
- data/lib/payments/models/type8_enum.rb +23 -0
- data/lib/payments/models/type9_enum.rb +35 -0
- data/lib/payments/models/type_enum.rb +23 -0
- data/lib/payments/models/unsuccessful_authentication_response.rb +76 -0
- data/lib/payments/models/updated_payment_instrument.rb +159 -0
- data/lib/payments/models/updated_payment_instrument1.rb +93 -0
- data/lib/payments/models/user_type_enum.rb +35 -0
- data/lib/payments/models/value.rb +94 -0
- data/lib/payments/models/value1.rb +91 -0
- data/lib/payments/models/value2.rb +91 -0
- data/lib/payments/models/value3.rb +91 -0
- data/lib/payments/models/value4.rb +91 -0
- data/lib/payments/models/verification.rb +173 -0
- data/lib/payments/models/wallet_payment_instrument.rb +100 -0
- data/lib/payments/models/window_size_enum.rb +34 -0
- data/lib/payments/models/wp_api_version_enum.rb +20 -0
- data/lib/payments/utilities/date_time_helper.rb +11 -0
- data/lib/payments/utilities/file_wrapper.rb +28 -0
- data/lib/payments/utilities/union_type_lookup.rb +78 -0
- data/lib/payments.rb +280 -0
- data/test/controllers/controller_test_base.rb +29 -0
- data/test/controllers/test_payment_controller.rb +161 -0
- data/test/controllers/test_payment_queries_controller.rb +68 -0
- data/test/http_response_catcher.rb +19 -0
- metadata +374 -0
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# payments
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module Payments
|
|
7
|
+
# An object that contains payment amount and currency.
|
|
8
|
+
class Value4 < BaseModel
|
|
9
|
+
SKIP = Object.new
|
|
10
|
+
private_constant :SKIP
|
|
11
|
+
|
|
12
|
+
# This is a whole number including the currency exponent (e.g. GBP has an
|
|
13
|
+
# exponent of 2, so for £2.50 supply:`250`).
|
|
14
|
+
# @return [Integer]
|
|
15
|
+
attr_accessor :amount
|
|
16
|
+
|
|
17
|
+
# The 3 digit currency code.
|
|
18
|
+
# @return [String]
|
|
19
|
+
attr_accessor :currency
|
|
20
|
+
|
|
21
|
+
# A mapping from model property names to API property names.
|
|
22
|
+
def self.names
|
|
23
|
+
@_hash = {} if @_hash.nil?
|
|
24
|
+
@_hash['amount'] = 'amount'
|
|
25
|
+
@_hash['currency'] = 'currency'
|
|
26
|
+
@_hash
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
# An array for optional fields
|
|
30
|
+
def self.optionals
|
|
31
|
+
[]
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# An array for nullable fields
|
|
35
|
+
def self.nullables
|
|
36
|
+
[]
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def initialize(amount = nil, currency = nil)
|
|
40
|
+
@amount = amount
|
|
41
|
+
@currency = currency
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# Creates an instance of the object from a hash.
|
|
45
|
+
def self.from_hash(hash)
|
|
46
|
+
return nil unless hash
|
|
47
|
+
|
|
48
|
+
# Extract variables from the hash.
|
|
49
|
+
amount = Number.from_hash(hash['amount']) if hash['amount']
|
|
50
|
+
currency = hash.key?('currency') ? hash['currency'] : nil
|
|
51
|
+
|
|
52
|
+
# Create object from extracted values.
|
|
53
|
+
Value4.new(amount,
|
|
54
|
+
currency)
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
# Validates an instance of the object from a given value.
|
|
58
|
+
# @param [Value4 | Hash] The value against the validation is performed.
|
|
59
|
+
def self.validate(value)
|
|
60
|
+
if value.instance_of? self
|
|
61
|
+
return (
|
|
62
|
+
APIHelper.valid_type?(value.amount,
|
|
63
|
+
->(val) { val.instance_of? Integer }) and
|
|
64
|
+
APIHelper.valid_type?(value.currency,
|
|
65
|
+
->(val) { val.instance_of? String })
|
|
66
|
+
)
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
return false unless value.instance_of? Hash
|
|
70
|
+
|
|
71
|
+
(
|
|
72
|
+
APIHelper.valid_type?(value['amount'],
|
|
73
|
+
->(val) { val.instance_of? Integer }) and
|
|
74
|
+
APIHelper.valid_type?(value['currency'],
|
|
75
|
+
->(val) { val.instance_of? String })
|
|
76
|
+
)
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
# Provides a human-readable string representation of the object.
|
|
80
|
+
def to_s
|
|
81
|
+
class_name = self.class.name.split('::').last
|
|
82
|
+
"<#{class_name} amount: #{@amount}, currency: #{@currency}>"
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
86
|
+
def inspect
|
|
87
|
+
class_name = self.class.name.split('::').last
|
|
88
|
+
"<#{class_name} amount: #{@amount.inspect}, currency: #{@currency.inspect}>"
|
|
89
|
+
end
|
|
90
|
+
end
|
|
91
|
+
end
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
# payments
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module Payments
|
|
7
|
+
# Details of the outcome of the 3DS authentication
|
|
8
|
+
class Verification < BaseModel
|
|
9
|
+
SKIP = Object.new
|
|
10
|
+
private_constant :SKIP
|
|
11
|
+
|
|
12
|
+
# If the request was authenticated successfully or an authentication outage
|
|
13
|
+
# exemption was applied in authorization. See details on [Authentication
|
|
14
|
+
# Outage](/products/payments/enable-features/3ds-authentication#how-to-enabl
|
|
15
|
+
# e-authentication-outage-exemptions)
|
|
16
|
+
# @return [Outcome7Enum]
|
|
17
|
+
attr_accessor :outcome
|
|
18
|
+
|
|
19
|
+
# If the issuer decides to challenge the customer or proceed (frictionless)
|
|
20
|
+
# @return [IssuerResponseEnum]
|
|
21
|
+
attr_accessor :issuer_response
|
|
22
|
+
|
|
23
|
+
# The version of 3DS used to process the transaction.
|
|
24
|
+
# @return [String]
|
|
25
|
+
attr_accessor :version
|
|
26
|
+
|
|
27
|
+
# Electronic Commerce Indicator (ECI). Indicates the outcome of the 3DS
|
|
28
|
+
# authentication.
|
|
29
|
+
# | ECI | Meaning |
|
|
30
|
+
# | --- | --- |
|
|
31
|
+
# | 02 or 05 | Fully Authenticated Transaction
|
|
32
|
+
# | 01 or 06 | Attempted Authentication Transaction
|
|
33
|
+
# | 00 or 07 | Non 3-D Secure Transaction
|
|
34
|
+
# | Scheme | Value |
|
|
35
|
+
# | --- | --- |
|
|
36
|
+
# | Mastercard | 02, 01, 00 |
|
|
37
|
+
# | Visa | 05, 06, 07 |
|
|
38
|
+
# | Amex | 05, 06, 07 |
|
|
39
|
+
# | JCB | 05, 06, 07 |
|
|
40
|
+
# | Diners | 05, 06, 07 |
|
|
41
|
+
# @return [String]
|
|
42
|
+
attr_accessor :eci
|
|
43
|
+
|
|
44
|
+
# An identifier assigned by the Access Control Server (ACS) to identify a
|
|
45
|
+
# single transaction. Used primarily for Mastercard 3RI subsequent
|
|
46
|
+
# transactions to link the subsequent transaction back to a previous
|
|
47
|
+
# cardholder authentication. Can be disregarded unless otherwise needed.
|
|
48
|
+
# @return [String]
|
|
49
|
+
attr_accessor :acs_transaction_id
|
|
50
|
+
|
|
51
|
+
# Directory server transaction Id, if provided should be used in the payment
|
|
52
|
+
# authorization authentication object.
|
|
53
|
+
# @return [String]
|
|
54
|
+
attr_accessor :ds_transaction_id
|
|
55
|
+
|
|
56
|
+
# Indicates the outcome of the authentication or verification request.
|
|
57
|
+
# - `Y` - Successful authentication
|
|
58
|
+
# - `N` - Failed authentication
|
|
59
|
+
# - `U` - Unable to complete authentication
|
|
60
|
+
# - `A` - Successful attempts authentication
|
|
61
|
+
# - `C` - Challenged authentication
|
|
62
|
+
# - `R` - Authentication rejected (merchant _must not_ submit for
|
|
63
|
+
# authorization)
|
|
64
|
+
# - `I` - Exemption acknowledged
|
|
65
|
+
# @return [String]
|
|
66
|
+
attr_accessor :status
|
|
67
|
+
|
|
68
|
+
# Indicates the preferred challenge behavior. __Returned for Cartes
|
|
69
|
+
# Bancaires authentications only__ and must be applied in the following
|
|
70
|
+
# authorization request.
|
|
71
|
+
# - `noPreference`
|
|
72
|
+
# - `noChallengeRequested`
|
|
73
|
+
# - `challengeRequested`
|
|
74
|
+
# - `challengeMandated`
|
|
75
|
+
# - `noChallengeRequestedTRAPerformed`
|
|
76
|
+
# @return [String]
|
|
77
|
+
attr_accessor :challenge_preference
|
|
78
|
+
|
|
79
|
+
# A mapping from model property names to API property names.
|
|
80
|
+
def self.names
|
|
81
|
+
@_hash = {} if @_hash.nil?
|
|
82
|
+
@_hash['outcome'] = 'outcome'
|
|
83
|
+
@_hash['issuer_response'] = 'issuerResponse'
|
|
84
|
+
@_hash['version'] = 'version'
|
|
85
|
+
@_hash['eci'] = 'eci'
|
|
86
|
+
@_hash['acs_transaction_id'] = 'acsTransactionId'
|
|
87
|
+
@_hash['ds_transaction_id'] = 'dsTransactionId'
|
|
88
|
+
@_hash['status'] = 'status'
|
|
89
|
+
@_hash['challenge_preference'] = 'challengePreference'
|
|
90
|
+
@_hash
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
# An array for optional fields
|
|
94
|
+
def self.optionals
|
|
95
|
+
%w[
|
|
96
|
+
outcome
|
|
97
|
+
issuer_response
|
|
98
|
+
version
|
|
99
|
+
eci
|
|
100
|
+
acs_transaction_id
|
|
101
|
+
ds_transaction_id
|
|
102
|
+
status
|
|
103
|
+
challenge_preference
|
|
104
|
+
]
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
# An array for nullable fields
|
|
108
|
+
def self.nullables
|
|
109
|
+
[]
|
|
110
|
+
end
|
|
111
|
+
|
|
112
|
+
def initialize(outcome = Outcome7Enum::AUTHENTICATED,
|
|
113
|
+
issuer_response = SKIP, version = SKIP, eci = SKIP,
|
|
114
|
+
acs_transaction_id = SKIP, ds_transaction_id = SKIP,
|
|
115
|
+
status = SKIP, challenge_preference = SKIP)
|
|
116
|
+
@outcome = outcome unless outcome == SKIP
|
|
117
|
+
@issuer_response = issuer_response unless issuer_response == SKIP
|
|
118
|
+
@version = version unless version == SKIP
|
|
119
|
+
@eci = eci unless eci == SKIP
|
|
120
|
+
@acs_transaction_id = acs_transaction_id unless acs_transaction_id == SKIP
|
|
121
|
+
@ds_transaction_id = ds_transaction_id unless ds_transaction_id == SKIP
|
|
122
|
+
@status = status unless status == SKIP
|
|
123
|
+
@challenge_preference = challenge_preference unless challenge_preference == SKIP
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
# Creates an instance of the object from a hash.
|
|
127
|
+
def self.from_hash(hash)
|
|
128
|
+
return nil unless hash
|
|
129
|
+
|
|
130
|
+
# Extract variables from the hash.
|
|
131
|
+
outcome = hash['outcome'] ||= Outcome7Enum::AUTHENTICATED
|
|
132
|
+
issuer_response =
|
|
133
|
+
hash.key?('issuerResponse') ? hash['issuerResponse'] : SKIP
|
|
134
|
+
version = hash.key?('version') ? hash['version'] : SKIP
|
|
135
|
+
eci = hash.key?('eci') ? hash['eci'] : SKIP
|
|
136
|
+
acs_transaction_id =
|
|
137
|
+
hash.key?('acsTransactionId') ? hash['acsTransactionId'] : SKIP
|
|
138
|
+
ds_transaction_id =
|
|
139
|
+
hash.key?('dsTransactionId') ? hash['dsTransactionId'] : SKIP
|
|
140
|
+
status = hash.key?('status') ? hash['status'] : SKIP
|
|
141
|
+
challenge_preference =
|
|
142
|
+
hash.key?('challengePreference') ? hash['challengePreference'] : SKIP
|
|
143
|
+
|
|
144
|
+
# Create object from extracted values.
|
|
145
|
+
Verification.new(outcome,
|
|
146
|
+
issuer_response,
|
|
147
|
+
version,
|
|
148
|
+
eci,
|
|
149
|
+
acs_transaction_id,
|
|
150
|
+
ds_transaction_id,
|
|
151
|
+
status,
|
|
152
|
+
challenge_preference)
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
# Provides a human-readable string representation of the object.
|
|
156
|
+
def to_s
|
|
157
|
+
class_name = self.class.name.split('::').last
|
|
158
|
+
"<#{class_name} outcome: #{@outcome}, issuer_response: #{@issuer_response}, version:"\
|
|
159
|
+
" #{@version}, eci: #{@eci}, acs_transaction_id: #{@acs_transaction_id}, ds_transaction_id:"\
|
|
160
|
+
" #{@ds_transaction_id}, status: #{@status}, challenge_preference:"\
|
|
161
|
+
" #{@challenge_preference}>"
|
|
162
|
+
end
|
|
163
|
+
|
|
164
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
165
|
+
def inspect
|
|
166
|
+
class_name = self.class.name.split('::').last
|
|
167
|
+
"<#{class_name} outcome: #{@outcome.inspect}, issuer_response: #{@issuer_response.inspect},"\
|
|
168
|
+
" version: #{@version.inspect}, eci: #{@eci.inspect}, acs_transaction_id:"\
|
|
169
|
+
" #{@acs_transaction_id.inspect}, ds_transaction_id: #{@ds_transaction_id.inspect}, status:"\
|
|
170
|
+
" #{@status.inspect}, challenge_preference: #{@challenge_preference.inspect}>"
|
|
171
|
+
end
|
|
172
|
+
end
|
|
173
|
+
end
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
# payments
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module Payments
|
|
7
|
+
# WalletPaymentInstrument Model.
|
|
8
|
+
class WalletPaymentInstrument < BaseModel
|
|
9
|
+
SKIP = Object.new
|
|
10
|
+
private_constant :SKIP
|
|
11
|
+
|
|
12
|
+
# The type of instrument.
|
|
13
|
+
# @return [String]
|
|
14
|
+
attr_reader :type
|
|
15
|
+
|
|
16
|
+
# The type of instrument.
|
|
17
|
+
# @return [String]
|
|
18
|
+
attr_accessor :wallet_token
|
|
19
|
+
|
|
20
|
+
# Contains the billing address information.
|
|
21
|
+
# @return [BillingAddress]
|
|
22
|
+
attr_accessor :billing_address
|
|
23
|
+
|
|
24
|
+
# A mapping from model property names to API property names.
|
|
25
|
+
def self.names
|
|
26
|
+
@_hash = {} if @_hash.nil?
|
|
27
|
+
@_hash['type'] = 'type'
|
|
28
|
+
@_hash['wallet_token'] = 'walletToken'
|
|
29
|
+
@_hash['billing_address'] = 'billingAddress'
|
|
30
|
+
@_hash
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# An array for optional fields
|
|
34
|
+
def self.optionals
|
|
35
|
+
%w[
|
|
36
|
+
billing_address
|
|
37
|
+
]
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
# An array for nullable fields
|
|
41
|
+
def self.nullables
|
|
42
|
+
[]
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
def initialize(wallet_token = nil, billing_address = SKIP)
|
|
46
|
+
@type = 'encrypted'
|
|
47
|
+
@wallet_token = wallet_token
|
|
48
|
+
@billing_address = billing_address unless billing_address == SKIP
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
# Creates an instance of the object from a hash.
|
|
52
|
+
def self.from_hash(hash)
|
|
53
|
+
return nil unless hash
|
|
54
|
+
|
|
55
|
+
# Extract variables from the hash.
|
|
56
|
+
wallet_token = hash.key?('walletToken') ? hash['walletToken'] : nil
|
|
57
|
+
billing_address = BillingAddress.from_hash(hash['billingAddress']) if hash['billingAddress']
|
|
58
|
+
|
|
59
|
+
# Create object from extracted values.
|
|
60
|
+
WalletPaymentInstrument.new(wallet_token,
|
|
61
|
+
billing_address)
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
# Validates an instance of the object from a given value.
|
|
65
|
+
# @param [WalletPaymentInstrument | Hash] The value against the validation is performed.
|
|
66
|
+
def self.validate(value)
|
|
67
|
+
if value.instance_of? self
|
|
68
|
+
return (
|
|
69
|
+
APIHelper.valid_type?(value.type,
|
|
70
|
+
->(val) { val.instance_of? String }) and
|
|
71
|
+
APIHelper.valid_type?(value.wallet_token,
|
|
72
|
+
->(val) { val.instance_of? String })
|
|
73
|
+
)
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
return false unless value.instance_of? Hash
|
|
77
|
+
|
|
78
|
+
(
|
|
79
|
+
APIHelper.valid_type?(value['type'],
|
|
80
|
+
->(val) { val.instance_of? String }) and
|
|
81
|
+
APIHelper.valid_type?(value['walletToken'],
|
|
82
|
+
->(val) { val.instance_of? String })
|
|
83
|
+
)
|
|
84
|
+
end
|
|
85
|
+
|
|
86
|
+
# Provides a human-readable string representation of the object.
|
|
87
|
+
def to_s
|
|
88
|
+
class_name = self.class.name.split('::').last
|
|
89
|
+
"<#{class_name} type: #{@type}, wallet_token: #{@wallet_token}, billing_address:"\
|
|
90
|
+
" #{@billing_address}>"
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
94
|
+
def inspect
|
|
95
|
+
class_name = self.class.name.split('::').last
|
|
96
|
+
"<#{class_name} type: #{@type.inspect}, wallet_token: #{@wallet_token.inspect},"\
|
|
97
|
+
" billing_address: #{@billing_address.inspect}>"
|
|
98
|
+
end
|
|
99
|
+
end
|
|
100
|
+
end
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# payments
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module Payments
|
|
7
|
+
# Specify the challenge window size (width x height) that the issuer should
|
|
8
|
+
# use. This is to better tailor the experience to the customers device.
|
|
9
|
+
# Default is 390x400.
|
|
10
|
+
class WindowSizeEnum
|
|
11
|
+
WINDOW_SIZE_ENUM = [
|
|
12
|
+
# TODO: Write general description for ENUM_250X400
|
|
13
|
+
ENUM_250X400 = '250x400'.freeze,
|
|
14
|
+
|
|
15
|
+
# TODO: Write general description for ENUM_390X400
|
|
16
|
+
ENUM_390X400 = '390x400'.freeze,
|
|
17
|
+
|
|
18
|
+
# TODO: Write general description for ENUM_600X400
|
|
19
|
+
ENUM_600X400 = '600x400'.freeze,
|
|
20
|
+
|
|
21
|
+
# TODO: Write general description for ENUM_500X600
|
|
22
|
+
ENUM_500X600 = '500x600'.freeze,
|
|
23
|
+
|
|
24
|
+
# TODO: Write general description for FULLPAGE
|
|
25
|
+
FULLPAGE = 'fullPage'.freeze
|
|
26
|
+
].freeze
|
|
27
|
+
|
|
28
|
+
def self.validate(value)
|
|
29
|
+
return false if value.nil?
|
|
30
|
+
|
|
31
|
+
WINDOW_SIZE_ENUM.include?(value)
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# payments
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module Payments
|
|
7
|
+
# The API version
|
|
8
|
+
class WPApiVersionEnum
|
|
9
|
+
WP_API_VERSION_ENUM = [
|
|
10
|
+
# TODO: Write general description for ENUM_20240601
|
|
11
|
+
ENUM_20240601 = '2024-06-01'.freeze
|
|
12
|
+
].freeze
|
|
13
|
+
|
|
14
|
+
def self.validate(value)
|
|
15
|
+
return false if value.nil?
|
|
16
|
+
|
|
17
|
+
WP_API_VERSION_ENUM.include?(value)
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# payments
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
require 'date'
|
|
7
|
+
module Payments
|
|
8
|
+
# A utility that supports dateTime conversion to different formats
|
|
9
|
+
class DateTimeHelper < CoreLibrary::DateTimeHelper
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# payments
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module Payments
|
|
7
|
+
# A utility to allow users to set the content-type for files
|
|
8
|
+
class FileWrapper < CoreLibrary::FileWrapper
|
|
9
|
+
# The constructor.
|
|
10
|
+
# @param [File] file The file to be sent in the request.
|
|
11
|
+
# @param [string] content_type The content type of the provided file.
|
|
12
|
+
def initialize(file, content_type: 'application/octet-stream')
|
|
13
|
+
super
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
# Provides a human-readable string representation of the object.
|
|
17
|
+
def to_s
|
|
18
|
+
class_name = self.class.name.split('::').last
|
|
19
|
+
"<#{class_name} file: #{@file}, content_type: #{@content_type}>"
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
23
|
+
def to_inspect
|
|
24
|
+
class_name = self.class.name.split('::').last
|
|
25
|
+
"<#{class_name} file: #{@file.inspect}, content_type: #{@content_type.inspect}>"
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# payments
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module Payments
|
|
7
|
+
# The `UnionTypeLookUp` class serves as a utility class for
|
|
8
|
+
# storing and managing type combinator templates. It acts as a container for the templates
|
|
9
|
+
# used in handling various oneof/anyof instances within the sdk.
|
|
10
|
+
class UnionTypeLookUp
|
|
11
|
+
include CoreLibrary
|
|
12
|
+
# rubocop:disable Lint/RedundantCopDisableDirective, Style/HashSyntax, Layout/FirstArgumentIndentation
|
|
13
|
+
def self.union_types
|
|
14
|
+
{
|
|
15
|
+
:PaymentsInstructionPaymentInstrument => AnyOf.new(
|
|
16
|
+
[
|
|
17
|
+
LeafType.new(PaymentsCardPlainPaymentInstrument),
|
|
18
|
+
LeafType.new(SessionPaymentInstrument),
|
|
19
|
+
LeafType.new(TokenPaymentInstrument),
|
|
20
|
+
LeafType.new(WalletPaymentInstrument)
|
|
21
|
+
]
|
|
22
|
+
),
|
|
23
|
+
|
|
24
|
+
:PaymentsInstructionCustomerAgreement => AnyOf.new(
|
|
25
|
+
[
|
|
26
|
+
LeafType.new(PaymentsCardOnFileCustomerAgreement),
|
|
27
|
+
LeafType.new(PaymentsInstallmentCustomerAgreement),
|
|
28
|
+
LeafType.new(PaymentsSubscriptionCustomerAgreement),
|
|
29
|
+
LeafType.new(PaymentsUnscheduledCustomerAgreement)
|
|
30
|
+
],
|
|
31
|
+
UnionTypeContext.new(
|
|
32
|
+
is_optional: true
|
|
33
|
+
)
|
|
34
|
+
),
|
|
35
|
+
|
|
36
|
+
:PqQuerybypaymentid200ResponseEvents => OneOf.new(
|
|
37
|
+
[
|
|
38
|
+
LeafType.new(AuthorizationRequested),
|
|
39
|
+
LeafType.new(AuthorizationSucceeded),
|
|
40
|
+
LeafType.new(AuthorizationRefused),
|
|
41
|
+
LeafType.new(AuthorizationFailed),
|
|
42
|
+
LeafType.new(AuthorizationTimedOut),
|
|
43
|
+
LeafType.new(SaleRequested),
|
|
44
|
+
LeafType.new(SaleSucceeded),
|
|
45
|
+
LeafType.new(SaleRefused),
|
|
46
|
+
LeafType.new(SaleFailed),
|
|
47
|
+
LeafType.new(SaleTimedOut),
|
|
48
|
+
LeafType.new(SettlementRequested),
|
|
49
|
+
LeafType.new(SettlementRequestSubmitted),
|
|
50
|
+
LeafType.new(SettlementFailed),
|
|
51
|
+
LeafType.new(SettlementTimedOut),
|
|
52
|
+
LeafType.new(RefundRequested),
|
|
53
|
+
LeafType.new(RefundRequestSubmitted),
|
|
54
|
+
LeafType.new(RefundFailed),
|
|
55
|
+
LeafType.new(RefundTimedOut),
|
|
56
|
+
LeafType.new(CancellationRequested),
|
|
57
|
+
LeafType.new(CancellationRequestSubmitted),
|
|
58
|
+
LeafType.new(CancellationFailed),
|
|
59
|
+
LeafType.new(CancellationTimedOut),
|
|
60
|
+
LeafType.new(ReversalRequested),
|
|
61
|
+
LeafType.new(ReversalRequestSubmitted),
|
|
62
|
+
LeafType.new(ReversalFailed),
|
|
63
|
+
LeafType.new(ReversalTimedOut)
|
|
64
|
+
],
|
|
65
|
+
UnionTypeContext.new(
|
|
66
|
+
is_array: true,
|
|
67
|
+
is_optional: true
|
|
68
|
+
)
|
|
69
|
+
)
|
|
70
|
+
}
|
|
71
|
+
end
|
|
72
|
+
# rubocop:enable Lint/RedundantCopDisableDirective, Style/HashSyntax, Layout/FirstArgumentIndentation
|
|
73
|
+
|
|
74
|
+
def self.get(name)
|
|
75
|
+
UnionTypeLookUp.union_types[name]
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
end
|