onlinepayments-sdk-ruby 4.5.0 → 4.7.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/lib/onlinepayments/sdk/domain/calculate_surcharge_request.rb +38 -0
- data/lib/onlinepayments/sdk/domain/calculate_surcharge_response.rb +33 -0
- data/lib/onlinepayments/sdk/domain/capture_output.rb +8 -0
- data/lib/onlinepayments/sdk/domain/card_payment_method_specific_input.rb +4 -0
- data/lib/onlinepayments/sdk/domain/card_payment_method_specific_input_base.rb +4 -0
- data/lib/onlinepayments/sdk/domain/card_source.rb +42 -0
- data/lib/onlinepayments/sdk/domain/merchant_action.rb +8 -0
- data/lib/onlinepayments/sdk/domain/order.rb +8 -0
- data/lib/onlinepayments/sdk/domain/payment_output.rb +8 -0
- data/lib/onlinepayments/sdk/domain/payment_product5404.rb +30 -0
- data/lib/onlinepayments/sdk/domain/show_form_data.rb +30 -0
- data/lib/onlinepayments/sdk/domain/subsequent_card_payment_method_specific_input.rb +42 -0
- data/lib/onlinepayments/sdk/domain/subsequent_payment_request.rb +38 -0
- data/lib/onlinepayments/sdk/domain/subsequent_payment_response.rb +30 -0
- data/lib/onlinepayments/sdk/domain/surcharge.rb +60 -0
- data/lib/onlinepayments/sdk/domain/surcharge_calculation_card.rb +30 -0
- data/lib/onlinepayments/sdk/domain/surcharge_rate.rb +38 -0
- data/lib/onlinepayments/sdk/domain/surcharge_specific_input.rb +34 -0
- data/lib/onlinepayments/sdk/domain/surcharge_specific_output.rb +34 -0
- data/lib/onlinepayments/sdk/merchant/payments/payments_client.rb +35 -0
- data/lib/onlinepayments/sdk/merchant/services/services_client.rb +31 -0
- data/onlinepayments-sdk-ruby.gemspec +1 -1
- metadata +15 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3058e1bc5be34fcd5821976cbe1a3091e4eda958a0388c23743baae726e0a252
|
4
|
+
data.tar.gz: 614c6d7dd32e7e197ad9941ba8017918f0dcd6ba23db557a5c0e08323d4421df
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e566aa89af1e4987cb3e6ef2b77c9e668786c4396850d781f066426aac62247b3ba945676d889e6214a9286df1194c552223c773d62542e752e19c6c7d0d21bf
|
7
|
+
data.tar.gz: 43610a08ffcda453284db710ae40e84ace097f7878ac807c4df09c3ce28c6cf8817db3040ff92dcc986499410ff3c3c1c91d6b9fb67fbe745fced7ee29eac8ce
|
@@ -0,0 +1,38 @@
|
|
1
|
+
#
|
2
|
+
# This class was auto-generated.
|
3
|
+
#
|
4
|
+
require 'onlinepayments/sdk/data_object'
|
5
|
+
require 'onlinepayments/sdk/domain/amount_of_money'
|
6
|
+
require 'onlinepayments/sdk/domain/card_source'
|
7
|
+
|
8
|
+
module OnlinePayments::SDK
|
9
|
+
module Domain
|
10
|
+
|
11
|
+
# @attr [OnlinePayments::SDK::Domain::AmountOfMoney] amount_of_money
|
12
|
+
# @attr [OnlinePayments::SDK::Domain::CardSource] card_source
|
13
|
+
class CalculateSurchargeRequest < OnlinePayments::SDK::DataObject
|
14
|
+
attr_accessor :amount_of_money
|
15
|
+
attr_accessor :card_source
|
16
|
+
|
17
|
+
# @return (Hash)
|
18
|
+
def to_h
|
19
|
+
hash = super
|
20
|
+
hash['amountOfMoney'] = @amount_of_money.to_h if @amount_of_money
|
21
|
+
hash['cardSource'] = @card_source.to_h if @card_source
|
22
|
+
hash
|
23
|
+
end
|
24
|
+
|
25
|
+
def from_hash(hash)
|
26
|
+
super
|
27
|
+
if hash.key? 'amountOfMoney'
|
28
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['amountOfMoney']] unless hash['amountOfMoney'].is_a? Hash
|
29
|
+
@amount_of_money = OnlinePayments::SDK::Domain::AmountOfMoney.new_from_hash(hash['amountOfMoney'])
|
30
|
+
end
|
31
|
+
if hash.key? 'cardSource'
|
32
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['cardSource']] unless hash['cardSource'].is_a? Hash
|
33
|
+
@card_source = OnlinePayments::SDK::Domain::CardSource.new_from_hash(hash['cardSource'])
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
#
|
2
|
+
# This class was auto-generated.
|
3
|
+
#
|
4
|
+
require 'onlinepayments/sdk/data_object'
|
5
|
+
require 'onlinepayments/sdk/domain/surcharge'
|
6
|
+
|
7
|
+
module OnlinePayments::SDK
|
8
|
+
module Domain
|
9
|
+
|
10
|
+
# @attr [Array<OnlinePayments::SDK::Domain::Surcharge>] surcharges
|
11
|
+
class CalculateSurchargeResponse < OnlinePayments::SDK::DataObject
|
12
|
+
attr_accessor :surcharges
|
13
|
+
|
14
|
+
# @return (Hash)
|
15
|
+
def to_h
|
16
|
+
hash = super
|
17
|
+
hash['surcharges'] = @surcharges.collect(&:to_h) if @surcharges
|
18
|
+
hash
|
19
|
+
end
|
20
|
+
|
21
|
+
def from_hash(hash)
|
22
|
+
super
|
23
|
+
if hash.key? 'surcharges'
|
24
|
+
raise TypeError, "value '%s' is not an Array" % [hash['surcharges']] unless hash['surcharges'].is_a? Array
|
25
|
+
@surcharges = []
|
26
|
+
hash['surcharges'].each do |e|
|
27
|
+
@surcharges << OnlinePayments::SDK::Domain::Surcharge.new_from_hash(e)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -8,6 +8,7 @@ require 'onlinepayments/sdk/domain/mobile_payment_method_specific_output'
|
|
8
8
|
require 'onlinepayments/sdk/domain/payment_references'
|
9
9
|
require 'onlinepayments/sdk/domain/redirect_payment_method_specific_output'
|
10
10
|
require 'onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_output'
|
11
|
+
require 'onlinepayments/sdk/domain/surcharge_specific_output'
|
11
12
|
|
12
13
|
module OnlinePayments::SDK
|
13
14
|
module Domain
|
@@ -22,6 +23,7 @@ module OnlinePayments::SDK
|
|
22
23
|
# @attr [OnlinePayments::SDK::Domain::RedirectPaymentMethodSpecificOutput] redirect_payment_method_specific_output
|
23
24
|
# @attr [OnlinePayments::SDK::Domain::PaymentReferences] references
|
24
25
|
# @attr [OnlinePayments::SDK::Domain::SepaDirectDebitPaymentMethodSpecificOutput] sepa_direct_debit_payment_method_specific_output
|
26
|
+
# @attr [OnlinePayments::SDK::Domain::SurchargeSpecificOutput] surcharge_specific_output
|
25
27
|
class CaptureOutput < OnlinePayments::SDK::DataObject
|
26
28
|
attr_accessor :acquired_amount
|
27
29
|
attr_accessor :amount_of_money
|
@@ -33,6 +35,7 @@ module OnlinePayments::SDK
|
|
33
35
|
attr_accessor :redirect_payment_method_specific_output
|
34
36
|
attr_accessor :references
|
35
37
|
attr_accessor :sepa_direct_debit_payment_method_specific_output
|
38
|
+
attr_accessor :surcharge_specific_output
|
36
39
|
|
37
40
|
# @return (Hash)
|
38
41
|
def to_h
|
@@ -47,6 +50,7 @@ module OnlinePayments::SDK
|
|
47
50
|
hash['redirectPaymentMethodSpecificOutput'] = @redirect_payment_method_specific_output.to_h if @redirect_payment_method_specific_output
|
48
51
|
hash['references'] = @references.to_h if @references
|
49
52
|
hash['sepaDirectDebitPaymentMethodSpecificOutput'] = @sepa_direct_debit_payment_method_specific_output.to_h if @sepa_direct_debit_payment_method_specific_output
|
53
|
+
hash['surchargeSpecificOutput'] = @surcharge_specific_output.to_h if @surcharge_specific_output
|
50
54
|
hash
|
51
55
|
end
|
52
56
|
|
@@ -83,6 +87,10 @@ module OnlinePayments::SDK
|
|
83
87
|
raise TypeError, "value '%s' is not a Hash" % [hash['sepaDirectDebitPaymentMethodSpecificOutput']] unless hash['sepaDirectDebitPaymentMethodSpecificOutput'].is_a? Hash
|
84
88
|
@sepa_direct_debit_payment_method_specific_output = OnlinePayments::SDK::Domain::SepaDirectDebitPaymentMethodSpecificOutput.new_from_hash(hash['sepaDirectDebitPaymentMethodSpecificOutput'])
|
85
89
|
end
|
90
|
+
if hash.key? 'surchargeSpecificOutput'
|
91
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['surchargeSpecificOutput']] unless hash['surchargeSpecificOutput'].is_a? Hash
|
92
|
+
@surcharge_specific_output = OnlinePayments::SDK::Domain::SurchargeSpecificOutput.new_from_hash(hash['surchargeSpecificOutput'])
|
93
|
+
end
|
86
94
|
end
|
87
95
|
end
|
88
96
|
end
|
@@ -10,6 +10,7 @@ require 'onlinepayments/sdk/domain/three_d_secure'
|
|
10
10
|
module OnlinePayments::SDK
|
11
11
|
module Domain
|
12
12
|
|
13
|
+
# @attr [true/false] allow_dynamic_linking
|
13
14
|
# @attr [String] authorization_mode
|
14
15
|
# @attr [OnlinePayments::SDK::Domain::Card] card
|
15
16
|
# @attr [String] card_on_file_recurring_expiration
|
@@ -29,6 +30,7 @@ module OnlinePayments::SDK
|
|
29
30
|
# @attr [String] unscheduled_card_on_file_requestor
|
30
31
|
# @attr [String] unscheduled_card_on_file_sequence_indicator
|
31
32
|
class CardPaymentMethodSpecificInput < OnlinePayments::SDK::DataObject
|
33
|
+
attr_accessor :allow_dynamic_linking
|
32
34
|
attr_accessor :authorization_mode
|
33
35
|
attr_accessor :card
|
34
36
|
attr_accessor :card_on_file_recurring_expiration
|
@@ -51,6 +53,7 @@ module OnlinePayments::SDK
|
|
51
53
|
# @return (Hash)
|
52
54
|
def to_h
|
53
55
|
hash = super
|
56
|
+
hash['allowDynamicLinking'] = @allow_dynamic_linking unless @allow_dynamic_linking.nil?
|
54
57
|
hash['authorizationMode'] = @authorization_mode unless @authorization_mode.nil?
|
55
58
|
hash['card'] = @card.to_h if @card
|
56
59
|
hash['cardOnFileRecurringExpiration'] = @card_on_file_recurring_expiration unless @card_on_file_recurring_expiration.nil?
|
@@ -74,6 +77,7 @@ module OnlinePayments::SDK
|
|
74
77
|
|
75
78
|
def from_hash(hash)
|
76
79
|
super
|
80
|
+
@allow_dynamic_linking = hash['allowDynamicLinking'] if hash.key? 'allowDynamicLinking'
|
77
81
|
@authorization_mode = hash['authorizationMode'] if hash.key? 'authorizationMode'
|
78
82
|
if hash.key? 'card'
|
79
83
|
raise TypeError, "value '%s' is not a Hash" % [hash['card']] unless hash['card'].is_a? Hash
|
@@ -10,6 +10,7 @@ require 'onlinepayments/sdk/domain/three_d_secure_base'
|
|
10
10
|
module OnlinePayments::SDK
|
11
11
|
module Domain
|
12
12
|
|
13
|
+
# @attr [true/false] allow_dynamic_linking
|
13
14
|
# @attr [String] authorization_mode
|
14
15
|
# @attr [String] initial_scheme_transaction_id
|
15
16
|
# @attr [OnlinePayments::SDK::Domain::PaymentProduct130SpecificInput] payment_product130_specific_input
|
@@ -23,6 +24,7 @@ module OnlinePayments::SDK
|
|
23
24
|
# @attr [String] unscheduled_card_on_file_requestor
|
24
25
|
# @attr [String] unscheduled_card_on_file_sequence_indicator
|
25
26
|
class CardPaymentMethodSpecificInputBase < OnlinePayments::SDK::DataObject
|
27
|
+
attr_accessor :allow_dynamic_linking
|
26
28
|
attr_accessor :authorization_mode
|
27
29
|
attr_accessor :initial_scheme_transaction_id
|
28
30
|
attr_accessor :payment_product130_specific_input
|
@@ -39,6 +41,7 @@ module OnlinePayments::SDK
|
|
39
41
|
# @return (Hash)
|
40
42
|
def to_h
|
41
43
|
hash = super
|
44
|
+
hash['allowDynamicLinking'] = @allow_dynamic_linking unless @allow_dynamic_linking.nil?
|
42
45
|
hash['authorizationMode'] = @authorization_mode unless @authorization_mode.nil?
|
43
46
|
hash['initialSchemeTransactionId'] = @initial_scheme_transaction_id unless @initial_scheme_transaction_id.nil?
|
44
47
|
hash['paymentProduct130SpecificInput'] = @payment_product130_specific_input.to_h if @payment_product130_specific_input
|
@@ -56,6 +59,7 @@ module OnlinePayments::SDK
|
|
56
59
|
|
57
60
|
def from_hash(hash)
|
58
61
|
super
|
62
|
+
@allow_dynamic_linking = hash['allowDynamicLinking'] if hash.key? 'allowDynamicLinking'
|
59
63
|
@authorization_mode = hash['authorizationMode'] if hash.key? 'authorizationMode'
|
60
64
|
@initial_scheme_transaction_id = hash['initialSchemeTransactionId'] if hash.key? 'initialSchemeTransactionId'
|
61
65
|
if hash.key? 'paymentProduct130SpecificInput'
|
@@ -0,0 +1,42 @@
|
|
1
|
+
#
|
2
|
+
# This class was auto-generated.
|
3
|
+
#
|
4
|
+
require 'onlinepayments/sdk/data_object'
|
5
|
+
require 'onlinepayments/sdk/domain/surcharge_calculation_card'
|
6
|
+
|
7
|
+
module OnlinePayments::SDK
|
8
|
+
module Domain
|
9
|
+
|
10
|
+
# @attr [OnlinePayments::SDK::Domain::SurchargeCalculationCard] card
|
11
|
+
# @attr [String] encrypted_customer_input
|
12
|
+
# @attr [String] hosted_tokenization_id
|
13
|
+
# @attr [String] token
|
14
|
+
class CardSource < OnlinePayments::SDK::DataObject
|
15
|
+
attr_accessor :card
|
16
|
+
attr_accessor :encrypted_customer_input
|
17
|
+
attr_accessor :hosted_tokenization_id
|
18
|
+
attr_accessor :token
|
19
|
+
|
20
|
+
# @return (Hash)
|
21
|
+
def to_h
|
22
|
+
hash = super
|
23
|
+
hash['card'] = @card.to_h if @card
|
24
|
+
hash['encryptedCustomerInput'] = @encrypted_customer_input unless @encrypted_customer_input.nil?
|
25
|
+
hash['hostedTokenizationId'] = @hosted_tokenization_id unless @hosted_tokenization_id.nil?
|
26
|
+
hash['token'] = @token unless @token.nil?
|
27
|
+
hash
|
28
|
+
end
|
29
|
+
|
30
|
+
def from_hash(hash)
|
31
|
+
super
|
32
|
+
if hash.key? 'card'
|
33
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['card']] unless hash['card'].is_a? Hash
|
34
|
+
@card = OnlinePayments::SDK::Domain::SurchargeCalculationCard.new_from_hash(hash['card'])
|
35
|
+
end
|
36
|
+
@encrypted_customer_input = hash['encryptedCustomerInput'] if hash.key? 'encryptedCustomerInput'
|
37
|
+
@hosted_tokenization_id = hash['hostedTokenizationId'] if hash.key? 'hostedTokenizationId'
|
38
|
+
@token = hash['token'] if hash.key? 'token'
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
@@ -3,21 +3,25 @@
|
|
3
3
|
#
|
4
4
|
require 'onlinepayments/sdk/data_object'
|
5
5
|
require 'onlinepayments/sdk/domain/redirect_data'
|
6
|
+
require 'onlinepayments/sdk/domain/show_form_data'
|
6
7
|
|
7
8
|
module OnlinePayments::SDK
|
8
9
|
module Domain
|
9
10
|
|
10
11
|
# @attr [String] action_type
|
11
12
|
# @attr [OnlinePayments::SDK::Domain::RedirectData] redirect_data
|
13
|
+
# @attr [OnlinePayments::SDK::Domain::ShowFormData] show_form_data
|
12
14
|
class MerchantAction < OnlinePayments::SDK::DataObject
|
13
15
|
attr_accessor :action_type
|
14
16
|
attr_accessor :redirect_data
|
17
|
+
attr_accessor :show_form_data
|
15
18
|
|
16
19
|
# @return (Hash)
|
17
20
|
def to_h
|
18
21
|
hash = super
|
19
22
|
hash['actionType'] = @action_type unless @action_type.nil?
|
20
23
|
hash['redirectData'] = @redirect_data.to_h if @redirect_data
|
24
|
+
hash['showFormData'] = @show_form_data.to_h if @show_form_data
|
21
25
|
hash
|
22
26
|
end
|
23
27
|
|
@@ -28,6 +32,10 @@ module OnlinePayments::SDK
|
|
28
32
|
raise TypeError, "value '%s' is not a Hash" % [hash['redirectData']] unless hash['redirectData'].is_a? Hash
|
29
33
|
@redirect_data = OnlinePayments::SDK::Domain::RedirectData.new_from_hash(hash['redirectData'])
|
30
34
|
end
|
35
|
+
if hash.key? 'showFormData'
|
36
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['showFormData']] unless hash['showFormData'].is_a? Hash
|
37
|
+
@show_form_data = OnlinePayments::SDK::Domain::ShowFormData.new_from_hash(hash['showFormData'])
|
38
|
+
end
|
31
39
|
end
|
32
40
|
end
|
33
41
|
end
|
@@ -8,6 +8,7 @@ require 'onlinepayments/sdk/domain/customer'
|
|
8
8
|
require 'onlinepayments/sdk/domain/order_references'
|
9
9
|
require 'onlinepayments/sdk/domain/shipping'
|
10
10
|
require 'onlinepayments/sdk/domain/shopping_cart'
|
11
|
+
require 'onlinepayments/sdk/domain/surcharge_specific_input'
|
11
12
|
|
12
13
|
module OnlinePayments::SDK
|
13
14
|
module Domain
|
@@ -18,6 +19,7 @@ module OnlinePayments::SDK
|
|
18
19
|
# @attr [OnlinePayments::SDK::Domain::OrderReferences] references
|
19
20
|
# @attr [OnlinePayments::SDK::Domain::Shipping] shipping
|
20
21
|
# @attr [OnlinePayments::SDK::Domain::ShoppingCart] shopping_cart
|
22
|
+
# @attr [OnlinePayments::SDK::Domain::SurchargeSpecificInput] surcharge_specific_input
|
21
23
|
class Order < OnlinePayments::SDK::DataObject
|
22
24
|
attr_accessor :additional_input
|
23
25
|
attr_accessor :amount_of_money
|
@@ -25,6 +27,7 @@ module OnlinePayments::SDK
|
|
25
27
|
attr_accessor :references
|
26
28
|
attr_accessor :shipping
|
27
29
|
attr_accessor :shopping_cart
|
30
|
+
attr_accessor :surcharge_specific_input
|
28
31
|
|
29
32
|
# @return (Hash)
|
30
33
|
def to_h
|
@@ -35,6 +38,7 @@ module OnlinePayments::SDK
|
|
35
38
|
hash['references'] = @references.to_h if @references
|
36
39
|
hash['shipping'] = @shipping.to_h if @shipping
|
37
40
|
hash['shoppingCart'] = @shopping_cart.to_h if @shopping_cart
|
41
|
+
hash['surchargeSpecificInput'] = @surcharge_specific_input.to_h if @surcharge_specific_input
|
38
42
|
hash
|
39
43
|
end
|
40
44
|
|
@@ -64,6 +68,10 @@ module OnlinePayments::SDK
|
|
64
68
|
raise TypeError, "value '%s' is not a Hash" % [hash['shoppingCart']] unless hash['shoppingCart'].is_a? Hash
|
65
69
|
@shopping_cart = OnlinePayments::SDK::Domain::ShoppingCart.new_from_hash(hash['shoppingCart'])
|
66
70
|
end
|
71
|
+
if hash.key? 'surchargeSpecificInput'
|
72
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['surchargeSpecificInput']] unless hash['surchargeSpecificInput'].is_a? Hash
|
73
|
+
@surcharge_specific_input = OnlinePayments::SDK::Domain::SurchargeSpecificInput.new_from_hash(hash['surchargeSpecificInput'])
|
74
|
+
end
|
67
75
|
end
|
68
76
|
end
|
69
77
|
end
|
@@ -9,6 +9,7 @@ require 'onlinepayments/sdk/domain/mobile_payment_method_specific_output'
|
|
9
9
|
require 'onlinepayments/sdk/domain/payment_references'
|
10
10
|
require 'onlinepayments/sdk/domain/redirect_payment_method_specific_output'
|
11
11
|
require 'onlinepayments/sdk/domain/sepa_direct_debit_payment_method_specific_output'
|
12
|
+
require 'onlinepayments/sdk/domain/surcharge_specific_output'
|
12
13
|
|
13
14
|
module OnlinePayments::SDK
|
14
15
|
module Domain
|
@@ -24,6 +25,7 @@ module OnlinePayments::SDK
|
|
24
25
|
# @attr [OnlinePayments::SDK::Domain::RedirectPaymentMethodSpecificOutput] redirect_payment_method_specific_output
|
25
26
|
# @attr [OnlinePayments::SDK::Domain::PaymentReferences] references
|
26
27
|
# @attr [OnlinePayments::SDK::Domain::SepaDirectDebitPaymentMethodSpecificOutput] sepa_direct_debit_payment_method_specific_output
|
28
|
+
# @attr [OnlinePayments::SDK::Domain::SurchargeSpecificOutput] surcharge_specific_output
|
27
29
|
class PaymentOutput < OnlinePayments::SDK::DataObject
|
28
30
|
attr_accessor :acquired_amount
|
29
31
|
attr_accessor :amount_of_money
|
@@ -36,6 +38,7 @@ module OnlinePayments::SDK
|
|
36
38
|
attr_accessor :redirect_payment_method_specific_output
|
37
39
|
attr_accessor :references
|
38
40
|
attr_accessor :sepa_direct_debit_payment_method_specific_output
|
41
|
+
attr_accessor :surcharge_specific_output
|
39
42
|
|
40
43
|
# @return (Hash)
|
41
44
|
def to_h
|
@@ -51,6 +54,7 @@ module OnlinePayments::SDK
|
|
51
54
|
hash['redirectPaymentMethodSpecificOutput'] = @redirect_payment_method_specific_output.to_h if @redirect_payment_method_specific_output
|
52
55
|
hash['references'] = @references.to_h if @references
|
53
56
|
hash['sepaDirectDebitPaymentMethodSpecificOutput'] = @sepa_direct_debit_payment_method_specific_output.to_h if @sepa_direct_debit_payment_method_specific_output
|
57
|
+
hash['surchargeSpecificOutput'] = @surcharge_specific_output.to_h if @surcharge_specific_output
|
54
58
|
hash
|
55
59
|
end
|
56
60
|
|
@@ -91,6 +95,10 @@ module OnlinePayments::SDK
|
|
91
95
|
raise TypeError, "value '%s' is not a Hash" % [hash['sepaDirectDebitPaymentMethodSpecificOutput']] unless hash['sepaDirectDebitPaymentMethodSpecificOutput'].is_a? Hash
|
92
96
|
@sepa_direct_debit_payment_method_specific_output = OnlinePayments::SDK::Domain::SepaDirectDebitPaymentMethodSpecificOutput.new_from_hash(hash['sepaDirectDebitPaymentMethodSpecificOutput'])
|
93
97
|
end
|
98
|
+
if hash.key? 'surchargeSpecificOutput'
|
99
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['surchargeSpecificOutput']] unless hash['surchargeSpecificOutput'].is_a? Hash
|
100
|
+
@surcharge_specific_output = OnlinePayments::SDK::Domain::SurchargeSpecificOutput.new_from_hash(hash['surchargeSpecificOutput'])
|
101
|
+
end
|
94
102
|
end
|
95
103
|
end
|
96
104
|
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
#
|
2
|
+
# This class was auto-generated.
|
3
|
+
#
|
4
|
+
require 'onlinepayments/sdk/data_object'
|
5
|
+
|
6
|
+
module OnlinePayments::SDK
|
7
|
+
module Domain
|
8
|
+
|
9
|
+
# @attr [String] app_switch_link
|
10
|
+
# @attr [String] qr_code_url
|
11
|
+
class PaymentProduct5404 < OnlinePayments::SDK::DataObject
|
12
|
+
attr_accessor :app_switch_link
|
13
|
+
attr_accessor :qr_code_url
|
14
|
+
|
15
|
+
# @return (Hash)
|
16
|
+
def to_h
|
17
|
+
hash = super
|
18
|
+
hash['appSwitchLink'] = @app_switch_link unless @app_switch_link.nil?
|
19
|
+
hash['qrCodeUrl'] = @qr_code_url unless @qr_code_url.nil?
|
20
|
+
hash
|
21
|
+
end
|
22
|
+
|
23
|
+
def from_hash(hash)
|
24
|
+
super
|
25
|
+
@app_switch_link = hash['appSwitchLink'] if hash.key? 'appSwitchLink'
|
26
|
+
@qr_code_url = hash['qrCodeUrl'] if hash.key? 'qrCodeUrl'
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
#
|
2
|
+
# This class was auto-generated.
|
3
|
+
#
|
4
|
+
require 'onlinepayments/sdk/data_object'
|
5
|
+
require 'onlinepayments/sdk/domain/payment_product5404'
|
6
|
+
|
7
|
+
module OnlinePayments::SDK
|
8
|
+
module Domain
|
9
|
+
|
10
|
+
# @attr [OnlinePayments::SDK::Domain::PaymentProduct5404] payment_product5404
|
11
|
+
class ShowFormData < OnlinePayments::SDK::DataObject
|
12
|
+
attr_accessor :payment_product5404
|
13
|
+
|
14
|
+
# @return (Hash)
|
15
|
+
def to_h
|
16
|
+
hash = super
|
17
|
+
hash['paymentProduct5404'] = @payment_product5404.to_h if @payment_product5404
|
18
|
+
hash
|
19
|
+
end
|
20
|
+
|
21
|
+
def from_hash(hash)
|
22
|
+
super
|
23
|
+
if hash.key? 'paymentProduct5404'
|
24
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct5404']] unless hash['paymentProduct5404'].is_a? Hash
|
25
|
+
@payment_product5404 = OnlinePayments::SDK::Domain::PaymentProduct5404.new_from_hash(hash['paymentProduct5404'])
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
#
|
2
|
+
# This class was auto-generated.
|
3
|
+
#
|
4
|
+
require 'onlinepayments/sdk/data_object'
|
5
|
+
|
6
|
+
module OnlinePayments::SDK
|
7
|
+
module Domain
|
8
|
+
|
9
|
+
# @attr [String] authorization_mode
|
10
|
+
# @attr [String] scheme_reference_data
|
11
|
+
# @attr [String] subsequent_type
|
12
|
+
# @attr [String] token
|
13
|
+
# @attr [String] transaction_channel
|
14
|
+
class SubsequentCardPaymentMethodSpecificInput < OnlinePayments::SDK::DataObject
|
15
|
+
attr_accessor :authorization_mode
|
16
|
+
attr_accessor :scheme_reference_data
|
17
|
+
attr_accessor :subsequent_type
|
18
|
+
attr_accessor :token
|
19
|
+
attr_accessor :transaction_channel
|
20
|
+
|
21
|
+
# @return (Hash)
|
22
|
+
def to_h
|
23
|
+
hash = super
|
24
|
+
hash['authorizationMode'] = @authorization_mode unless @authorization_mode.nil?
|
25
|
+
hash['schemeReferenceData'] = @scheme_reference_data unless @scheme_reference_data.nil?
|
26
|
+
hash['subsequentType'] = @subsequent_type unless @subsequent_type.nil?
|
27
|
+
hash['token'] = @token unless @token.nil?
|
28
|
+
hash['transactionChannel'] = @transaction_channel unless @transaction_channel.nil?
|
29
|
+
hash
|
30
|
+
end
|
31
|
+
|
32
|
+
def from_hash(hash)
|
33
|
+
super
|
34
|
+
@authorization_mode = hash['authorizationMode'] if hash.key? 'authorizationMode'
|
35
|
+
@scheme_reference_data = hash['schemeReferenceData'] if hash.key? 'schemeReferenceData'
|
36
|
+
@subsequent_type = hash['subsequentType'] if hash.key? 'subsequentType'
|
37
|
+
@token = hash['token'] if hash.key? 'token'
|
38
|
+
@transaction_channel = hash['transactionChannel'] if hash.key? 'transactionChannel'
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
#
|
2
|
+
# This class was auto-generated.
|
3
|
+
#
|
4
|
+
require 'onlinepayments/sdk/data_object'
|
5
|
+
require 'onlinepayments/sdk/domain/order'
|
6
|
+
require 'onlinepayments/sdk/domain/subsequent_card_payment_method_specific_input'
|
7
|
+
|
8
|
+
module OnlinePayments::SDK
|
9
|
+
module Domain
|
10
|
+
|
11
|
+
# @attr [OnlinePayments::SDK::Domain::Order] order
|
12
|
+
# @attr [OnlinePayments::SDK::Domain::SubsequentCardPaymentMethodSpecificInput] subsequentcard_payment_method_specific_input
|
13
|
+
class SubsequentPaymentRequest < OnlinePayments::SDK::DataObject
|
14
|
+
attr_accessor :order
|
15
|
+
attr_accessor :subsequentcard_payment_method_specific_input
|
16
|
+
|
17
|
+
# @return (Hash)
|
18
|
+
def to_h
|
19
|
+
hash = super
|
20
|
+
hash['order'] = @order.to_h if @order
|
21
|
+
hash['subsequentcardPaymentMethodSpecificInput'] = @subsequentcard_payment_method_specific_input.to_h if @subsequentcard_payment_method_specific_input
|
22
|
+
hash
|
23
|
+
end
|
24
|
+
|
25
|
+
def from_hash(hash)
|
26
|
+
super
|
27
|
+
if hash.key? 'order'
|
28
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['order']] unless hash['order'].is_a? Hash
|
29
|
+
@order = OnlinePayments::SDK::Domain::Order.new_from_hash(hash['order'])
|
30
|
+
end
|
31
|
+
if hash.key? 'subsequentcardPaymentMethodSpecificInput'
|
32
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['subsequentcardPaymentMethodSpecificInput']] unless hash['subsequentcardPaymentMethodSpecificInput'].is_a? Hash
|
33
|
+
@subsequentcard_payment_method_specific_input = OnlinePayments::SDK::Domain::SubsequentCardPaymentMethodSpecificInput.new_from_hash(hash['subsequentcardPaymentMethodSpecificInput'])
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
#
|
2
|
+
# This class was auto-generated.
|
3
|
+
#
|
4
|
+
require 'onlinepayments/sdk/data_object'
|
5
|
+
require 'onlinepayments/sdk/domain/payment_response'
|
6
|
+
|
7
|
+
module OnlinePayments::SDK
|
8
|
+
module Domain
|
9
|
+
|
10
|
+
# @attr [OnlinePayments::SDK::Domain::PaymentResponse] payment
|
11
|
+
class SubsequentPaymentResponse < OnlinePayments::SDK::DataObject
|
12
|
+
attr_accessor :payment
|
13
|
+
|
14
|
+
# @return (Hash)
|
15
|
+
def to_h
|
16
|
+
hash = super
|
17
|
+
hash['payment'] = @payment.to_h if @payment
|
18
|
+
hash
|
19
|
+
end
|
20
|
+
|
21
|
+
def from_hash(hash)
|
22
|
+
super
|
23
|
+
if hash.key? 'payment'
|
24
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['payment']] unless hash['payment'].is_a? Hash
|
25
|
+
@payment = OnlinePayments::SDK::Domain::PaymentResponse.new_from_hash(hash['payment'])
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,60 @@
|
|
1
|
+
#
|
2
|
+
# This class was auto-generated.
|
3
|
+
#
|
4
|
+
require 'onlinepayments/sdk/data_object'
|
5
|
+
require 'onlinepayments/sdk/domain/amount_of_money'
|
6
|
+
require 'onlinepayments/sdk/domain/surcharge_rate'
|
7
|
+
|
8
|
+
module OnlinePayments::SDK
|
9
|
+
module Domain
|
10
|
+
|
11
|
+
# @attr [OnlinePayments::SDK::Domain::AmountOfMoney] net_amount
|
12
|
+
# @attr [Integer] payment_product_id
|
13
|
+
# @attr [String] result
|
14
|
+
# @attr [OnlinePayments::SDK::Domain::AmountOfMoney] surcharge_amount
|
15
|
+
# @attr [OnlinePayments::SDK::Domain::SurchargeRate] surcharge_rate
|
16
|
+
# @attr [OnlinePayments::SDK::Domain::AmountOfMoney] total_amount
|
17
|
+
class Surcharge < OnlinePayments::SDK::DataObject
|
18
|
+
attr_accessor :net_amount
|
19
|
+
attr_accessor :payment_product_id
|
20
|
+
attr_accessor :result
|
21
|
+
attr_accessor :surcharge_amount
|
22
|
+
attr_accessor :surcharge_rate
|
23
|
+
attr_accessor :total_amount
|
24
|
+
|
25
|
+
# @return (Hash)
|
26
|
+
def to_h
|
27
|
+
hash = super
|
28
|
+
hash['netAmount'] = @net_amount.to_h if @net_amount
|
29
|
+
hash['paymentProductId'] = @payment_product_id unless @payment_product_id.nil?
|
30
|
+
hash['result'] = @result unless @result.nil?
|
31
|
+
hash['surchargeAmount'] = @surcharge_amount.to_h if @surcharge_amount
|
32
|
+
hash['surchargeRate'] = @surcharge_rate.to_h if @surcharge_rate
|
33
|
+
hash['totalAmount'] = @total_amount.to_h if @total_amount
|
34
|
+
hash
|
35
|
+
end
|
36
|
+
|
37
|
+
def from_hash(hash)
|
38
|
+
super
|
39
|
+
if hash.key? 'netAmount'
|
40
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['netAmount']] unless hash['netAmount'].is_a? Hash
|
41
|
+
@net_amount = OnlinePayments::SDK::Domain::AmountOfMoney.new_from_hash(hash['netAmount'])
|
42
|
+
end
|
43
|
+
@payment_product_id = hash['paymentProductId'] if hash.key? 'paymentProductId'
|
44
|
+
@result = hash['result'] if hash.key? 'result'
|
45
|
+
if hash.key? 'surchargeAmount'
|
46
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['surchargeAmount']] unless hash['surchargeAmount'].is_a? Hash
|
47
|
+
@surcharge_amount = OnlinePayments::SDK::Domain::AmountOfMoney.new_from_hash(hash['surchargeAmount'])
|
48
|
+
end
|
49
|
+
if hash.key? 'surchargeRate'
|
50
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['surchargeRate']] unless hash['surchargeRate'].is_a? Hash
|
51
|
+
@surcharge_rate = OnlinePayments::SDK::Domain::SurchargeRate.new_from_hash(hash['surchargeRate'])
|
52
|
+
end
|
53
|
+
if hash.key? 'totalAmount'
|
54
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['totalAmount']] unless hash['totalAmount'].is_a? Hash
|
55
|
+
@total_amount = OnlinePayments::SDK::Domain::AmountOfMoney.new_from_hash(hash['totalAmount'])
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
#
|
2
|
+
# This class was auto-generated.
|
3
|
+
#
|
4
|
+
require 'onlinepayments/sdk/data_object'
|
5
|
+
|
6
|
+
module OnlinePayments::SDK
|
7
|
+
module Domain
|
8
|
+
|
9
|
+
# @attr [String] card_number
|
10
|
+
# @attr [Integer] payment_product_id
|
11
|
+
class SurchargeCalculationCard < OnlinePayments::SDK::DataObject
|
12
|
+
attr_accessor :card_number
|
13
|
+
attr_accessor :payment_product_id
|
14
|
+
|
15
|
+
# @return (Hash)
|
16
|
+
def to_h
|
17
|
+
hash = super
|
18
|
+
hash['cardNumber'] = @card_number unless @card_number.nil?
|
19
|
+
hash['paymentProductId'] = @payment_product_id unless @payment_product_id.nil?
|
20
|
+
hash
|
21
|
+
end
|
22
|
+
|
23
|
+
def from_hash(hash)
|
24
|
+
super
|
25
|
+
@card_number = hash['cardNumber'] if hash.key? 'cardNumber'
|
26
|
+
@payment_product_id = hash['paymentProductId'] if hash.key? 'paymentProductId'
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
#
|
2
|
+
# This class was auto-generated.
|
3
|
+
#
|
4
|
+
require 'onlinepayments/sdk/data_object'
|
5
|
+
|
6
|
+
module OnlinePayments::SDK
|
7
|
+
module Domain
|
8
|
+
|
9
|
+
# @attr [Float] ad_valorem_rate
|
10
|
+
# @attr [Integer] specific_rate
|
11
|
+
# @attr [String] surcharge_product_type_id
|
12
|
+
# @attr [String] surcharge_product_type_version
|
13
|
+
class SurchargeRate < OnlinePayments::SDK::DataObject
|
14
|
+
attr_accessor :ad_valorem_rate
|
15
|
+
attr_accessor :specific_rate
|
16
|
+
attr_accessor :surcharge_product_type_id
|
17
|
+
attr_accessor :surcharge_product_type_version
|
18
|
+
|
19
|
+
# @return (Hash)
|
20
|
+
def to_h
|
21
|
+
hash = super
|
22
|
+
hash['adValoremRate'] = @ad_valorem_rate unless @ad_valorem_rate.nil?
|
23
|
+
hash['specificRate'] = @specific_rate unless @specific_rate.nil?
|
24
|
+
hash['surchargeProductTypeId'] = @surcharge_product_type_id unless @surcharge_product_type_id.nil?
|
25
|
+
hash['surchargeProductTypeVersion'] = @surcharge_product_type_version unless @surcharge_product_type_version.nil?
|
26
|
+
hash
|
27
|
+
end
|
28
|
+
|
29
|
+
def from_hash(hash)
|
30
|
+
super
|
31
|
+
@ad_valorem_rate = hash['adValoremRate'] if hash.key? 'adValoremRate'
|
32
|
+
@specific_rate = hash['specificRate'] if hash.key? 'specificRate'
|
33
|
+
@surcharge_product_type_id = hash['surchargeProductTypeId'] if hash.key? 'surchargeProductTypeId'
|
34
|
+
@surcharge_product_type_version = hash['surchargeProductTypeVersion'] if hash.key? 'surchargeProductTypeVersion'
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
#
|
2
|
+
# This class was auto-generated.
|
3
|
+
#
|
4
|
+
require 'onlinepayments/sdk/data_object'
|
5
|
+
require 'onlinepayments/sdk/domain/amount_of_money'
|
6
|
+
|
7
|
+
module OnlinePayments::SDK
|
8
|
+
module Domain
|
9
|
+
|
10
|
+
# @attr [String] mode
|
11
|
+
# @attr [OnlinePayments::SDK::Domain::AmountOfMoney] surcharge_amount
|
12
|
+
class SurchargeSpecificInput < OnlinePayments::SDK::DataObject
|
13
|
+
attr_accessor :mode
|
14
|
+
attr_accessor :surcharge_amount
|
15
|
+
|
16
|
+
# @return (Hash)
|
17
|
+
def to_h
|
18
|
+
hash = super
|
19
|
+
hash['mode'] = @mode unless @mode.nil?
|
20
|
+
hash['surchargeAmount'] = @surcharge_amount.to_h if @surcharge_amount
|
21
|
+
hash
|
22
|
+
end
|
23
|
+
|
24
|
+
def from_hash(hash)
|
25
|
+
super
|
26
|
+
@mode = hash['mode'] if hash.key? 'mode'
|
27
|
+
if hash.key? 'surchargeAmount'
|
28
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['surchargeAmount']] unless hash['surchargeAmount'].is_a? Hash
|
29
|
+
@surcharge_amount = OnlinePayments::SDK::Domain::AmountOfMoney.new_from_hash(hash['surchargeAmount'])
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
#
|
2
|
+
# This class was auto-generated.
|
3
|
+
#
|
4
|
+
require 'onlinepayments/sdk/data_object'
|
5
|
+
require 'onlinepayments/sdk/domain/amount_of_money'
|
6
|
+
|
7
|
+
module OnlinePayments::SDK
|
8
|
+
module Domain
|
9
|
+
|
10
|
+
# @attr [String] mode
|
11
|
+
# @attr [OnlinePayments::SDK::Domain::AmountOfMoney] surcharge_amount
|
12
|
+
class SurchargeSpecificOutput < OnlinePayments::SDK::DataObject
|
13
|
+
attr_accessor :mode
|
14
|
+
attr_accessor :surcharge_amount
|
15
|
+
|
16
|
+
# @return (Hash)
|
17
|
+
def to_h
|
18
|
+
hash = super
|
19
|
+
hash['mode'] = @mode unless @mode.nil?
|
20
|
+
hash['surchargeAmount'] = @surcharge_amount.to_h if @surcharge_amount
|
21
|
+
hash
|
22
|
+
end
|
23
|
+
|
24
|
+
def from_hash(hash)
|
25
|
+
super
|
26
|
+
@mode = hash['mode'] if hash.key? 'mode'
|
27
|
+
if hash.key? 'surchargeAmount'
|
28
|
+
raise TypeError, "value '%s' is not a Hash" % [hash['surchargeAmount']] unless hash['surchargeAmount'].is_a? Hash
|
29
|
+
@surcharge_amount = OnlinePayments::SDK::Domain::AmountOfMoney.new_from_hash(hash['surchargeAmount'])
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -20,6 +20,8 @@ require 'onlinepayments/sdk/domain/refund_error_response'
|
|
20
20
|
require 'onlinepayments/sdk/domain/refund_request'
|
21
21
|
require 'onlinepayments/sdk/domain/refund_response'
|
22
22
|
require 'onlinepayments/sdk/domain/refunds_response'
|
23
|
+
require 'onlinepayments/sdk/domain/subsequent_payment_request'
|
24
|
+
require 'onlinepayments/sdk/domain/subsequent_payment_response'
|
23
25
|
|
24
26
|
module OnlinePayments::SDK
|
25
27
|
module Merchant
|
@@ -160,6 +162,39 @@ module OnlinePayments::SDK
|
|
160
162
|
raise create_exception(e.status_code, e.body, error_object, context)
|
161
163
|
end
|
162
164
|
|
165
|
+
# Resource /v2/!{merchantId}/payments/!{paymentId}/subsequent
|
166
|
+
# @param payment_id [String]
|
167
|
+
# @param body [OnlinePayments::SDK::Domain::SubsequentPaymentRequest]
|
168
|
+
# @param context [OnlinePayments::SDK::CallContext]
|
169
|
+
# @return [OnlinePayments::SDK::Domain::SubsequentPaymentResponse]
|
170
|
+
# @raise [OnlinePayments::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
|
171
|
+
# @raise [OnlinePayments::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
|
172
|
+
# @raise [OnlinePayments::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
|
173
|
+
# @raise [OnlinePayments::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
|
174
|
+
# or there was a conflict (HTTP status code 404, 409 or 410)
|
175
|
+
# @raise [OnlinePayments::SDK::PaymentPlatformException] if something went wrong at the payment platform,
|
176
|
+
# the payment platform was unable to process a message from a downstream partner/acquirer,
|
177
|
+
# or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
|
178
|
+
# @raise [OnlinePayments::SDK::ApiException]if the payment platform returned any other error
|
179
|
+
def subsequent_payment(payment_id, body, context = nil)
|
180
|
+
path_context = {
|
181
|
+
'paymentId'.freeze => payment_id,
|
182
|
+
}
|
183
|
+
uri = instantiate_uri('/v2/{merchantId}/payments/{paymentId}/subsequent', path_context)
|
184
|
+
@communicator.post(
|
185
|
+
uri,
|
186
|
+
client_headers,
|
187
|
+
nil,
|
188
|
+
body,
|
189
|
+
OnlinePayments::SDK::Domain::SubsequentPaymentResponse,
|
190
|
+
context
|
191
|
+
)
|
192
|
+
rescue ResponseException => e
|
193
|
+
error_type = OnlinePayments::SDK::Domain::PaymentErrorResponse
|
194
|
+
error_object = @communicator.marshaller.unmarshal(e.body, error_type)
|
195
|
+
raise create_exception(e.status_code, e.body, error_object, context)
|
196
|
+
end
|
197
|
+
|
163
198
|
# Resource /v2/!{merchantId}/payments/!{paymentId}/refund
|
164
199
|
# @param payment_id [String]
|
165
200
|
# @param body [OnlinePayments::SDK::Domain::RefundRequest]
|
@@ -3,6 +3,8 @@
|
|
3
3
|
#
|
4
4
|
require 'onlinepayments/sdk/api_resource'
|
5
5
|
require 'onlinepayments/sdk/response_exception'
|
6
|
+
require 'onlinepayments/sdk/domain/calculate_surcharge_request'
|
7
|
+
require 'onlinepayments/sdk/domain/calculate_surcharge_response'
|
6
8
|
require 'onlinepayments/sdk/domain/error_response'
|
7
9
|
require 'onlinepayments/sdk/domain/get_iin_details_request'
|
8
10
|
require 'onlinepayments/sdk/domain/get_iin_details_response'
|
@@ -23,6 +25,35 @@ module OnlinePayments::SDK
|
|
23
25
|
super(parent, path_context)
|
24
26
|
end
|
25
27
|
|
28
|
+
# Resource /v2/!{merchantId}/services/surchargecalculation
|
29
|
+
# @param body [OnlinePayments::SDK::Domain::CalculateSurchargeRequest]
|
30
|
+
# @param context [OnlinePayments::SDK::CallContext]
|
31
|
+
# @return [OnlinePayments::SDK::Domain::CalculateSurchargeResponse]
|
32
|
+
# @raise [OnlinePayments::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
|
33
|
+
# @raise [OnlinePayments::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
|
34
|
+
# @raise [OnlinePayments::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
|
35
|
+
# @raise [OnlinePayments::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
|
36
|
+
# or there was a conflict (HTTP status code 404, 409 or 410)
|
37
|
+
# @raise [OnlinePayments::SDK::PaymentPlatformException] if something went wrong at the payment platform,
|
38
|
+
# the payment platform was unable to process a message from a downstream partner/acquirer,
|
39
|
+
# or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
|
40
|
+
# @raise [OnlinePayments::SDK::ApiException]if the payment platform returned any other error
|
41
|
+
def surcharge_calculation(body, context = nil)
|
42
|
+
uri = instantiate_uri('/v2/{merchantId}/services/surchargecalculation')
|
43
|
+
@communicator.post(
|
44
|
+
uri,
|
45
|
+
client_headers,
|
46
|
+
nil,
|
47
|
+
body,
|
48
|
+
OnlinePayments::SDK::Domain::CalculateSurchargeResponse,
|
49
|
+
context
|
50
|
+
)
|
51
|
+
rescue ResponseException => e
|
52
|
+
error_type = OnlinePayments::SDK::Domain::ErrorResponse
|
53
|
+
error_object = @communicator.marshaller.unmarshal(e.body, error_type)
|
54
|
+
raise create_exception(e.status_code, e.body, error_object, context)
|
55
|
+
end
|
56
|
+
|
26
57
|
# Resource /v2/!{merchantId}/services/privacypolicy
|
27
58
|
# @param query [OnlinePayments::SDK::Merchant::Services::GetPrivacyPolicyParams]
|
28
59
|
# @param context [OnlinePayments::SDK::CallContext]
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |spec|
|
2
2
|
spec.name = 'onlinepayments-sdk-ruby'
|
3
|
-
spec.version = '4.
|
3
|
+
spec.version = '4.7.0'
|
4
4
|
spec.authors = ['Worldline Direct support team']
|
5
5
|
spec.email = ['82139942+worldline-direct-support-team@users.noreply.github.com']
|
6
6
|
spec.summary = %q{SDK to communicate with the Online Payments platform using the Online Payments Server API}
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: onlinepayments-sdk-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Worldline Direct support team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-04-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httpclient
|
@@ -161,6 +161,8 @@ files:
|
|
161
161
|
- lib/onlinepayments/sdk/domain/api_error.rb
|
162
162
|
- lib/onlinepayments/sdk/domain/bank_account_iban.rb
|
163
163
|
- lib/onlinepayments/sdk/domain/browser_data.rb
|
164
|
+
- lib/onlinepayments/sdk/domain/calculate_surcharge_request.rb
|
165
|
+
- lib/onlinepayments/sdk/domain/calculate_surcharge_response.rb
|
164
166
|
- lib/onlinepayments/sdk/domain/cancel_payment_request.rb
|
165
167
|
- lib/onlinepayments/sdk/domain/cancel_payment_response.rb
|
166
168
|
- lib/onlinepayments/sdk/domain/capture.rb
|
@@ -178,6 +180,7 @@ files:
|
|
178
180
|
- lib/onlinepayments/sdk/domain/card_payment_method_specific_output.rb
|
179
181
|
- lib/onlinepayments/sdk/domain/card_payout_method_specific_input.rb
|
180
182
|
- lib/onlinepayments/sdk/domain/card_recurrence_details.rb
|
183
|
+
- lib/onlinepayments/sdk/domain/card_source.rb
|
181
184
|
- lib/onlinepayments/sdk/domain/card_without_cvv.rb
|
182
185
|
- lib/onlinepayments/sdk/domain/company_information.rb
|
183
186
|
- lib/onlinepayments/sdk/domain/complete_payment_card_payment_method_specific_input.rb
|
@@ -266,6 +269,7 @@ files:
|
|
266
269
|
- lib/onlinepayments/sdk/domain/payment_product320_specific_data.rb
|
267
270
|
- lib/onlinepayments/sdk/domain/payment_product5100_specific_input.rb
|
268
271
|
- lib/onlinepayments/sdk/domain/payment_product5402_specific_output.rb
|
272
|
+
- lib/onlinepayments/sdk/domain/payment_product5404.rb
|
269
273
|
- lib/onlinepayments/sdk/domain/payment_product5500_specific_output.rb
|
270
274
|
- lib/onlinepayments/sdk/domain/payment_product771_specific_output.rb
|
271
275
|
- lib/onlinepayments/sdk/domain/payment_product840_customer_account.rb
|
@@ -326,6 +330,15 @@ files:
|
|
326
330
|
- lib/onlinepayments/sdk/domain/shipping_method.rb
|
327
331
|
- lib/onlinepayments/sdk/domain/shopping_cart.rb
|
328
332
|
- lib/onlinepayments/sdk/domain/shopping_cart_extension.rb
|
333
|
+
- lib/onlinepayments/sdk/domain/show_form_data.rb
|
334
|
+
- lib/onlinepayments/sdk/domain/subsequent_card_payment_method_specific_input.rb
|
335
|
+
- lib/onlinepayments/sdk/domain/subsequent_payment_request.rb
|
336
|
+
- lib/onlinepayments/sdk/domain/subsequent_payment_response.rb
|
337
|
+
- lib/onlinepayments/sdk/domain/surcharge.rb
|
338
|
+
- lib/onlinepayments/sdk/domain/surcharge_calculation_card.rb
|
339
|
+
- lib/onlinepayments/sdk/domain/surcharge_rate.rb
|
340
|
+
- lib/onlinepayments/sdk/domain/surcharge_specific_input.rb
|
341
|
+
- lib/onlinepayments/sdk/domain/surcharge_specific_output.rb
|
329
342
|
- lib/onlinepayments/sdk/domain/test_connection.rb
|
330
343
|
- lib/onlinepayments/sdk/domain/three_d_secure.rb
|
331
344
|
- lib/onlinepayments/sdk/domain/three_d_secure_base.rb
|