connect-sdk-ruby 2.22.0 → 2.26.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cd9456adb9b4baf2b7f80f4fc96d3735929a1b898d142ce011a959f51c1a4307
4
- data.tar.gz: 9eac7d96809ada5e0400facf432ce81020ad32a889657e5549d155bfeab2330a
3
+ metadata.gz: a02706ec5b92c4aef370fa8a669581eaafc9cfec56c79969986656d71d73094d
4
+ data.tar.gz: 751da15e062dda64a8fe59cd64c5b4c98ad2786f43c657aedd301d6cd8954483
5
5
  SHA512:
6
- metadata.gz: d11f7518e42e278611cdfb0b8661847e0b6a7d17e09fe2190d9e1f2776091d6cfb17187989694804f2652a13f39fe355edd8ca48a068b53520640f3418b11642
7
- data.tar.gz: e4983a30b14a9abaa600bfaef7796903a009b203040c14386fcd4a7ac7b19b4e3fa3e404c26c3ae0ddf232a719fd9fc0882447075311bf992e865bc704ed391f
6
+ metadata.gz: 879ed4b786ddbb83969554bf6bf5a784931d18c31dceec8c39e0efe4862b5d3dbb6118ee3354638f780e13509784f84904977aef2704d504e83a77b524c7ef93
7
+ data.tar.gz: 48d48bfb9e023058d252dc3dd9c6b1246d693720a727e3f951ec0142598e6ca043cb24c57aa90b429dc4953c3ff57c3aec7aa2489919d021be1eb99a0a42716f
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |spec|
2
2
  spec.name = 'connect-sdk-ruby'
3
- spec.version = '2.22.0'
3
+ spec.version = '2.26.0'
4
4
  spec.authors = ['Ingenico ePayments']
5
5
  spec.email = ['github@epay.ingenico.com']
6
6
  spec.summary = %q{SDK to communicate with the Ingenico ePayments platform using the Ingenico Connect Server API}
@@ -0,0 +1,22 @@
1
+ #
2
+ # This class was auto-generated from the API references found at
3
+ # https://epayments-api.developer-ingenico.com/s2sapi/v1/
4
+ #
5
+ require 'ingenico/connect/sdk/factory'
6
+
7
+
8
+ def example
9
+ get_client do |client|
10
+ client.merchant('merchantId').hostedcheckouts.delete('hostedCheckoutId')
11
+ end
12
+ end
13
+
14
+ def get_client
15
+ api_key_id = ENV.fetch('connect.api.apiKeyId', 'someKey')
16
+ secret_api_key = ENV.fetch('connect.api.secretApiKey', 'someSecret')
17
+ configuration_file_name = File.join(__FILE__, '..', '..', 'example_configuration.yml')
18
+ yield client = Ingenico::Connect::SDK::Factory.create_client_from_file(configuration_file_name, api_key_id, secret_api_key)
19
+ ensure
20
+ # Free networking resources when done
21
+ client.close unless client.nil?
22
+ end
@@ -14,6 +14,7 @@ require 'ingenico/connect/sdk/domain/payment/personal_name'
14
14
  require 'ingenico/connect/sdk/domain/payout/bank_transfer_payout_method_specific_input'
15
15
  require 'ingenico/connect/sdk/domain/payout/create_payout_request'
16
16
  require 'ingenico/connect/sdk/domain/payout/payout_customer'
17
+ require 'ingenico/connect/sdk/domain/payout/payout_details'
17
18
  require 'ingenico/connect/sdk/domain/payout/payout_references'
18
19
 
19
20
  Definitions = Ingenico::Connect::SDK::Domain::Definitions
@@ -22,14 +23,20 @@ Payout = Ingenico::Connect::SDK::Domain::Payout
22
23
 
23
24
  def example
24
25
  get_client do |client|
25
- amount_of_money = Definitions::AmountOfMoney.new
26
- amount_of_money.amount = 2345
27
- amount_of_money.currency_code = 'EUR'
28
-
29
26
  bank_account_iban = Definitions::BankAccountIban.new
30
27
  bank_account_iban.account_holder_name = 'Wile E. Coyote'
31
28
  bank_account_iban.iban = 'IT60X0542811101000000123456'
32
29
 
30
+ bank_transfer_payout_method_specific_input = Payout::BankTransferPayoutMethodSpecificInput.new
31
+ bank_transfer_payout_method_specific_input.bank_account_iban = bank_account_iban
32
+ bank_transfer_payout_method_specific_input.payout_date = '20150102'
33
+ bank_transfer_payout_method_specific_input.payout_text = 'Payout Acme'
34
+ bank_transfer_payout_method_specific_input.swift_code = 'swift'
35
+
36
+ amount_of_money = Definitions::AmountOfMoney.new
37
+ amount_of_money.amount = 2345
38
+ amount_of_money.currency_code = 'EUR'
39
+
33
40
  address = Definitions::Address.new
34
41
  address.city = 'Burbank'
35
42
  address.country_code = 'US'
@@ -56,20 +63,17 @@ def example
56
63
  customer.contact_details = contact_details
57
64
  customer.name = name
58
65
 
59
- bank_transfer_payout_method_specific_input = Payout::BankTransferPayoutMethodSpecificInput.new
60
- bank_transfer_payout_method_specific_input.bank_account_iban = bank_account_iban
61
- bank_transfer_payout_method_specific_input.customer = customer
62
- bank_transfer_payout_method_specific_input.payout_date = '20150102'
63
- bank_transfer_payout_method_specific_input.payout_text = 'Payout Acme'
64
- bank_transfer_payout_method_specific_input.swift_code = 'swift'
65
-
66
66
  references = Payout::PayoutReferences.new
67
67
  references.merchant_reference = 'AcmeOrder001'
68
68
 
69
+ payout_details = Payout::PayoutDetails.new
70
+ payout_details.amount_of_money = amount_of_money
71
+ payout_details.customer = customer
72
+ payout_details.references = references
73
+
69
74
  body = Payout::CreatePayoutRequest.new
70
- body.amount_of_money = amount_of_money
71
75
  body.bank_transfer_payout_method_specific_input = bank_transfer_payout_method_specific_input
72
- body.references = references
76
+ body.payout_details = payout_details
73
77
 
74
78
  begin
75
79
  response = client.merchant('merchantId').payouts.create(body)
@@ -5,6 +5,7 @@
5
5
  require 'ingenico/connect/sdk/domain/definitions/fraud_results'
6
6
  require 'ingenico/connect/sdk/domain/definitions/fraud_results_retail_decisions'
7
7
  require 'ingenico/connect/sdk/domain/definitions/fraugster_results'
8
+ require 'ingenico/connect/sdk/domain/definitions/microsoft_fraud_results'
8
9
 
9
10
  module Ingenico::Connect::SDK
10
11
  module Domain
@@ -13,6 +14,7 @@ module Ingenico::Connect::SDK
13
14
  # @attr [String] avs_result
14
15
  # @attr [String] cvv_result
15
16
  # @attr [Ingenico::Connect::SDK::Domain::Definitions::FraugsterResults] fraugster
17
+ # @attr [Ingenico::Connect::SDK::Domain::Definitions::MicrosoftFraudResults] microsoft_fraud_protection
16
18
  # @attr [Ingenico::Connect::SDK::Domain::Definitions::FraudResultsRetailDecisions] retail_decisions
17
19
  class CardFraudResults < Ingenico::Connect::SDK::Domain::Definitions::FraudResults
18
20
 
@@ -22,6 +24,8 @@ module Ingenico::Connect::SDK
22
24
 
23
25
  attr_accessor :fraugster
24
26
 
27
+ attr_accessor :microsoft_fraud_protection
28
+
25
29
  attr_accessor :retail_decisions
26
30
 
27
31
  # @return (Hash)
@@ -30,6 +34,7 @@ module Ingenico::Connect::SDK
30
34
  hash['avsResult'] = @avs_result unless @avs_result.nil?
31
35
  hash['cvvResult'] = @cvv_result unless @cvv_result.nil?
32
36
  hash['fraugster'] = @fraugster.to_h unless @fraugster.nil?
37
+ hash['microsoftFraudProtection'] = @microsoft_fraud_protection.to_h unless @microsoft_fraud_protection.nil?
33
38
  hash['retailDecisions'] = @retail_decisions.to_h unless @retail_decisions.nil?
34
39
  hash
35
40
  end
@@ -46,6 +51,10 @@ module Ingenico::Connect::SDK
46
51
  raise TypeError, "value '%s' is not a Hash" % [hash['fraugster']] unless hash['fraugster'].is_a? Hash
47
52
  @fraugster = Ingenico::Connect::SDK::Domain::Definitions::FraugsterResults.new_from_hash(hash['fraugster'])
48
53
  end
54
+ if hash.has_key? 'microsoftFraudProtection'
55
+ raise TypeError, "value '%s' is not a Hash" % [hash['microsoftFraudProtection']] unless hash['microsoftFraudProtection'].is_a? Hash
56
+ @microsoft_fraud_protection = Ingenico::Connect::SDK::Domain::Definitions::MicrosoftFraudResults.new_from_hash(hash['microsoftFraudProtection'])
57
+ end
49
58
  if hash.has_key? 'retailDecisions'
50
59
  raise TypeError, "value '%s' is not a Hash" % [hash['retailDecisions']] unless hash['retailDecisions'].is_a? Hash
51
60
  @retail_decisions = Ingenico::Connect::SDK::Domain::Definitions::FraudResultsRetailDecisions.new_from_hash(hash['retailDecisions'])
@@ -0,0 +1,32 @@
1
+ #
2
+ # This class was auto-generated from the API references found at
3
+ # https://epayments-api.developer-ingenico.com/s2sapi/v1/
4
+ #
5
+ require 'ingenico/connect/sdk/data_object'
6
+
7
+ module Ingenico::Connect::SDK
8
+ module Domain
9
+ module Definitions
10
+
11
+ # @attr [Integer] fraud_score
12
+ class MicrosoftFraudResults < Ingenico::Connect::SDK::DataObject
13
+
14
+ attr_accessor :fraud_score
15
+
16
+ # @return (Hash)
17
+ def to_h
18
+ hash = super
19
+ hash['fraudScore'] = @fraud_score unless @fraud_score.nil?
20
+ hash
21
+ end
22
+
23
+ def from_hash(hash)
24
+ super
25
+ if hash.has_key? 'fraudScore'
26
+ @fraud_score = hash['fraudScore']
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -19,6 +19,7 @@ module Ingenico::Connect::SDK
19
19
  # @attr [Ingenico::Connect::SDK::Domain::Payment::ThreeDSecureData] prior_three_d_secure_data
20
20
  # @attr [Ingenico::Connect::SDK::Domain::Payment::SdkDataInput] sdk_data
21
21
  # @attr [true/false] skip_authentication
22
+ # @attr [String] transaction_risk_level
22
23
  class AbstractThreeDSecure < Ingenico::Connect::SDK::DataObject
23
24
 
24
25
  attr_accessor :authentication_amount
@@ -37,6 +38,8 @@ module Ingenico::Connect::SDK
37
38
 
38
39
  attr_accessor :skip_authentication
39
40
 
41
+ attr_accessor :transaction_risk_level
42
+
40
43
  # @return (Hash)
41
44
  def to_h
42
45
  hash = super
@@ -48,6 +51,7 @@ module Ingenico::Connect::SDK
48
51
  hash['priorThreeDSecureData'] = @prior_three_d_secure_data.to_h unless @prior_three_d_secure_data.nil?
49
52
  hash['sdkData'] = @sdk_data.to_h unless @sdk_data.nil?
50
53
  hash['skipAuthentication'] = @skip_authentication unless @skip_authentication.nil?
54
+ hash['transactionRiskLevel'] = @transaction_risk_level unless @transaction_risk_level.nil?
51
55
  hash
52
56
  end
53
57
 
@@ -80,6 +84,9 @@ module Ingenico::Connect::SDK
80
84
  if hash.has_key? 'skipAuthentication'
81
85
  @skip_authentication = hash['skipAuthentication']
82
86
  end
87
+ if hash.has_key? 'transactionRiskLevel'
88
+ @transaction_risk_level = hash['transactionRiskLevel']
89
+ end
83
90
  end
84
91
  end
85
92
  end
@@ -8,10 +8,13 @@ module Ingenico::Connect::SDK
8
8
  module Domain
9
9
  module Payment
10
10
 
11
+ # @attr [String] data
11
12
  # @attr [String] method
12
13
  # @attr [String] utc_timestamp
13
14
  class CustomerAccountAuthentication < Ingenico::Connect::SDK::DataObject
14
15
 
16
+ attr_accessor :data
17
+
15
18
  attr_accessor :method
16
19
 
17
20
  attr_accessor :utc_timestamp
@@ -19,6 +22,7 @@ module Ingenico::Connect::SDK
19
22
  # @return (Hash)
20
23
  def to_h
21
24
  hash = super
25
+ hash['data'] = @data unless @data.nil?
22
26
  hash['method'] = @method unless @method.nil?
23
27
  hash['utcTimestamp'] = @utc_timestamp unless @utc_timestamp.nil?
24
28
  hash
@@ -26,6 +30,9 @@ module Ingenico::Connect::SDK
26
30
 
27
31
  def from_hash(hash)
28
32
  super
33
+ if hash.has_key? 'data'
34
+ @data = hash['data']
35
+ end
29
36
  if hash.has_key? 'method'
30
37
  @method = hash['method']
31
38
  end
@@ -8,43 +8,36 @@ module Ingenico::Connect::SDK
8
8
  module Domain
9
9
  module Payment
10
10
 
11
+ # @attr [String] display_name
11
12
  # @attr [String] integration_type
12
- # @attr [String] merchant_name
13
- # @attr [String] transaction_note
14
- # @attr [String] vpa
13
+ # @attr [String] virtual_payment_address
15
14
  class RedirectPaymentProduct4101SpecificInput < Ingenico::Connect::SDK::DataObject
16
15
 
17
- attr_accessor :integration_type
18
-
19
- attr_accessor :merchant_name
16
+ attr_accessor :display_name
20
17
 
21
- attr_accessor :transaction_note
18
+ attr_accessor :integration_type
22
19
 
23
- attr_accessor :vpa
20
+ attr_accessor :virtual_payment_address
24
21
 
25
22
  # @return (Hash)
26
23
  def to_h
27
24
  hash = super
25
+ hash['displayName'] = @display_name unless @display_name.nil?
28
26
  hash['integrationType'] = @integration_type unless @integration_type.nil?
29
- hash['merchantName'] = @merchant_name unless @merchant_name.nil?
30
- hash['transactionNote'] = @transaction_note unless @transaction_note.nil?
31
- hash['vpa'] = @vpa unless @vpa.nil?
27
+ hash['virtualPaymentAddress'] = @virtual_payment_address unless @virtual_payment_address.nil?
32
28
  hash
33
29
  end
34
30
 
35
31
  def from_hash(hash)
36
32
  super
33
+ if hash.has_key? 'displayName'
34
+ @display_name = hash['displayName']
35
+ end
37
36
  if hash.has_key? 'integrationType'
38
37
  @integration_type = hash['integrationType']
39
38
  end
40
- if hash.has_key? 'merchantName'
41
- @merchant_name = hash['merchantName']
42
- end
43
- if hash.has_key? 'transactionNote'
44
- @transaction_note = hash['transactionNote']
45
- end
46
- if hash.has_key? 'vpa'
47
- @vpa = hash['vpa']
39
+ if hash.has_key? 'virtualPaymentAddress'
40
+ @virtual_payment_address = hash['virtualPaymentAddress']
48
41
  end
49
42
  end
50
43
  end
@@ -23,6 +23,8 @@ module Ingenico::Connect::SDK
23
23
 
24
24
  attr_accessor :bank_account_iban
25
25
 
26
+ #
27
+ # @deprecated Moved to PayoutDetails
26
28
  attr_accessor :customer
27
29
 
28
30
  attr_accessor :payout_date
@@ -4,6 +4,7 @@
4
4
  #
5
5
  require 'ingenico/connect/sdk/domain/definitions/card'
6
6
  require 'ingenico/connect/sdk/domain/payout/abstract_payout_method_specific_input'
7
+ require 'ingenico/connect/sdk/domain/payout/payout_recipient'
7
8
 
8
9
  module Ingenico::Connect::SDK
9
10
  module Domain
@@ -11,6 +12,7 @@ module Ingenico::Connect::SDK
11
12
 
12
13
  # @attr [Ingenico::Connect::SDK::Domain::Definitions::Card] card
13
14
  # @attr [Integer] payment_product_id
15
+ # @attr [Ingenico::Connect::SDK::Domain::Payout::PayoutRecipient] recipient
14
16
  # @attr [String] token
15
17
  class CardPayoutMethodSpecificInput < Ingenico::Connect::SDK::Domain::Payout::AbstractPayoutMethodSpecificInput
16
18
 
@@ -18,6 +20,8 @@ module Ingenico::Connect::SDK
18
20
 
19
21
  attr_accessor :payment_product_id
20
22
 
23
+ attr_accessor :recipient
24
+
21
25
  attr_accessor :token
22
26
 
23
27
  # @return (Hash)
@@ -25,6 +29,7 @@ module Ingenico::Connect::SDK
25
29
  hash = super
26
30
  hash['card'] = @card.to_h unless @card.nil?
27
31
  hash['paymentProductId'] = @payment_product_id unless @payment_product_id.nil?
32
+ hash['recipient'] = @recipient.to_h unless @recipient.nil?
28
33
  hash['token'] = @token unless @token.nil?
29
34
  hash
30
35
  end
@@ -38,6 +43,10 @@ module Ingenico::Connect::SDK
38
43
  if hash.has_key? 'paymentProductId'
39
44
  @payment_product_id = hash['paymentProductId']
40
45
  end
46
+ if hash.has_key? 'recipient'
47
+ raise TypeError, "value '%s' is not a Hash" % [hash['recipient']] unless hash['recipient'].is_a? Hash
48
+ @recipient = Ingenico::Connect::SDK::Domain::Payout::PayoutRecipient.new_from_hash(hash['recipient'])
49
+ end
41
50
  if hash.has_key? 'token'
42
51
  @token = hash['token']
43
52
  end
@@ -9,6 +9,7 @@ require 'ingenico/connect/sdk/domain/definitions/bank_account_iban'
9
9
  require 'ingenico/connect/sdk/domain/payout/bank_transfer_payout_method_specific_input'
10
10
  require 'ingenico/connect/sdk/domain/payout/card_payout_method_specific_input'
11
11
  require 'ingenico/connect/sdk/domain/payout/payout_customer'
12
+ require 'ingenico/connect/sdk/domain/payout/payout_details'
12
13
  require 'ingenico/connect/sdk/domain/payout/payout_references'
13
14
 
14
15
  module Ingenico::Connect::SDK
@@ -22,11 +23,14 @@ module Ingenico::Connect::SDK
22
23
  # @attr [Ingenico::Connect::SDK::Domain::Payout::CardPayoutMethodSpecificInput] card_payout_method_specific_input
23
24
  # @attr [Ingenico::Connect::SDK::Domain::Payout::PayoutCustomer] customer
24
25
  # @attr [String] payout_date
26
+ # @attr [Ingenico::Connect::SDK::Domain::Payout::PayoutDetails] payout_details
25
27
  # @attr [String] payout_text
26
28
  # @attr [Ingenico::Connect::SDK::Domain::Payout::PayoutReferences] references
27
29
  # @attr [String] swift_code
28
30
  class CreatePayoutRequest < Ingenico::Connect::SDK::DataObject
29
31
 
32
+ #
33
+ # @deprecated Moved to PayoutDetails
30
34
  attr_accessor :amount_of_money
31
35
 
32
36
  #
@@ -42,17 +46,21 @@ module Ingenico::Connect::SDK
42
46
  attr_accessor :card_payout_method_specific_input
43
47
 
44
48
  #
45
- # @deprecated Moved to BankTransferPayoutMethodSpecificInput
49
+ # @deprecated Moved to PayoutDetails
46
50
  attr_accessor :customer
47
51
 
48
52
  #
49
53
  # @deprecated Moved to BankTransferPayoutMethodSpecificInput
50
54
  attr_accessor :payout_date
51
55
 
56
+ attr_accessor :payout_details
57
+
52
58
  #
53
59
  # @deprecated Moved to BankTransferPayoutMethodSpecificInput
54
60
  attr_accessor :payout_text
55
61
 
62
+ #
63
+ # @deprecated Moved to PayoutDetails
56
64
  attr_accessor :references
57
65
 
58
66
  #
@@ -69,6 +77,7 @@ module Ingenico::Connect::SDK
69
77
  hash['cardPayoutMethodSpecificInput'] = @card_payout_method_specific_input.to_h unless @card_payout_method_specific_input.nil?
70
78
  hash['customer'] = @customer.to_h unless @customer.nil?
71
79
  hash['payoutDate'] = @payout_date unless @payout_date.nil?
80
+ hash['payoutDetails'] = @payout_details.to_h unless @payout_details.nil?
72
81
  hash['payoutText'] = @payout_text unless @payout_text.nil?
73
82
  hash['references'] = @references.to_h unless @references.nil?
74
83
  hash['swiftCode'] = @swift_code unless @swift_code.nil?
@@ -104,6 +113,10 @@ module Ingenico::Connect::SDK
104
113
  if hash.has_key? 'payoutDate'
105
114
  @payout_date = hash['payoutDate']
106
115
  end
116
+ if hash.has_key? 'payoutDetails'
117
+ raise TypeError, "value '%s' is not a Hash" % [hash['payoutDetails']] unless hash['payoutDetails'].is_a? Hash
118
+ @payout_details = Ingenico::Connect::SDK::Domain::Payout::PayoutDetails.new_from_hash(hash['payoutDetails'])
119
+ end
107
120
  if hash.has_key? 'payoutText'
108
121
  @payout_text = hash['payoutText']
109
122
  end
@@ -0,0 +1,52 @@
1
+ #
2
+ # This class was auto-generated from the API references found at
3
+ # https://epayments-api.developer-ingenico.com/s2sapi/v1/
4
+ #
5
+ require 'ingenico/connect/sdk/data_object'
6
+ require 'ingenico/connect/sdk/domain/definitions/amount_of_money'
7
+ require 'ingenico/connect/sdk/domain/payout/payout_customer'
8
+ require 'ingenico/connect/sdk/domain/payout/payout_references'
9
+
10
+ module Ingenico::Connect::SDK
11
+ module Domain
12
+ module Payout
13
+
14
+ # @attr [Ingenico::Connect::SDK::Domain::Definitions::AmountOfMoney] amount_of_money
15
+ # @attr [Ingenico::Connect::SDK::Domain::Payout::PayoutCustomer] customer
16
+ # @attr [Ingenico::Connect::SDK::Domain::Payout::PayoutReferences] references
17
+ class PayoutDetails < Ingenico::Connect::SDK::DataObject
18
+
19
+ attr_accessor :amount_of_money
20
+
21
+ attr_accessor :customer
22
+
23
+ attr_accessor :references
24
+
25
+ # @return (Hash)
26
+ def to_h
27
+ hash = super
28
+ hash['amountOfMoney'] = @amount_of_money.to_h unless @amount_of_money.nil?
29
+ hash['customer'] = @customer.to_h unless @customer.nil?
30
+ hash['references'] = @references.to_h unless @references.nil?
31
+ hash
32
+ end
33
+
34
+ def from_hash(hash)
35
+ super
36
+ if hash.has_key? 'amountOfMoney'
37
+ raise TypeError, "value '%s' is not a Hash" % [hash['amountOfMoney']] unless hash['amountOfMoney'].is_a? Hash
38
+ @amount_of_money = Ingenico::Connect::SDK::Domain::Definitions::AmountOfMoney.new_from_hash(hash['amountOfMoney'])
39
+ end
40
+ if hash.has_key? 'customer'
41
+ raise TypeError, "value '%s' is not a Hash" % [hash['customer']] unless hash['customer'].is_a? Hash
42
+ @customer = Ingenico::Connect::SDK::Domain::Payout::PayoutCustomer.new_from_hash(hash['customer'])
43
+ end
44
+ if hash.has_key? 'references'
45
+ raise TypeError, "value '%s' is not a Hash" % [hash['references']] unless hash['references'].is_a? Hash
46
+ @references = Ingenico::Connect::SDK::Domain::Payout::PayoutReferences.new_from_hash(hash['references'])
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,46 @@
1
+ #
2
+ # This class was auto-generated from the API references found at
3
+ # https://epayments-api.developer-ingenico.com/s2sapi/v1/
4
+ #
5
+ require 'ingenico/connect/sdk/data_object'
6
+
7
+ module Ingenico::Connect::SDK
8
+ module Domain
9
+ module Payout
10
+
11
+ # @attr [String] first_name
12
+ # @attr [String] surname
13
+ # @attr [String] surname_prefix
14
+ class PayoutRecipient < Ingenico::Connect::SDK::DataObject
15
+
16
+ attr_accessor :first_name
17
+
18
+ attr_accessor :surname
19
+
20
+ attr_accessor :surname_prefix
21
+
22
+ # @return (Hash)
23
+ def to_h
24
+ hash = super
25
+ hash['firstName'] = @first_name unless @first_name.nil?
26
+ hash['surname'] = @surname unless @surname.nil?
27
+ hash['surnamePrefix'] = @surname_prefix unless @surname_prefix.nil?
28
+ hash
29
+ end
30
+
31
+ def from_hash(hash)
32
+ super
33
+ if hash.has_key? 'firstName'
34
+ @first_name = hash['firstName']
35
+ end
36
+ if hash.has_key? 'surname'
37
+ @surname = hash['surname']
38
+ end
39
+ if hash.has_key? 'surnamePrefix'
40
+ @surname_prefix = hash['surnamePrefix']
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -78,6 +78,35 @@ module Ingenico::Connect::SDK
78
78
  error_object = @communicator.marshaller.unmarshal(e.body, error_type)
79
79
  raise create_exception(e.status_code, e.body, error_object, context)
80
80
  end
81
+
82
+ # Resource /!{merchantId}/hostedcheckouts/!{hostedCheckoutId} - {https://epayments-api.developer-ingenico.com/s2sapi/v1/en_US/ruby/hostedcheckouts/delete.html Delete hosted checkout}
83
+ # @param hosted_checkout_id [String]
84
+ # @param context [Ingenico::Connect::SDK::CallContext]
85
+ # @raise [Ingenico::Connect::SDK::ValidationException] if the request was not correct and couldn't be processed (HTTP status code 400)
86
+ # @raise [Ingenico::Connect::SDK::AuthorizationException] if the request was not allowed (HTTP status code 403)
87
+ # @raise [Ingenico::Connect::SDK::IdempotenceException] if an idempotent request caused a conflict (HTTP status code 409)
88
+ # @raise [Ingenico::Connect::SDK::ReferenceException] if an object was attempted to be referenced that doesn't exist or has been removed,
89
+ # or there was a conflict (HTTP status code 404, 409 or 410)
90
+ # @raise [Ingenico::Connect::SDK::GlobalCollectException] if something went wrong at the Ingenico ePayments platform,
91
+ # the Ingenico ePayments platform was unable to process a message from a downstream partner/acquirer,
92
+ # or the service that you're trying to reach is temporary unavailable (HTTP status code 500, 502 or 503)
93
+ # @raise [Ingenico::Connect::SDK::ApiException]if the Ingenico ePayments platform returned any other error
94
+ def delete(hosted_checkout_id, context=nil)
95
+ path_context = {
96
+ 'hostedCheckoutId'.freeze => hosted_checkout_id,
97
+ }
98
+ uri = instantiate_uri('/v1/{merchantId}/hostedcheckouts/{hostedCheckoutId}', path_context)
99
+ return @communicator.delete(
100
+ uri,
101
+ client_headers,
102
+ nil,
103
+ nil,
104
+ context)
105
+ rescue ResponseException => e
106
+ error_type = Ingenico::Connect::SDK::Domain::Errors::ErrorResponse
107
+ error_object = @communicator.marshaller.unmarshal(e.body, error_type)
108
+ raise create_exception(e.status_code, e.body, error_object, context)
109
+ end
81
110
  end
82
111
  end
83
112
  end
@@ -7,7 +7,7 @@ module Ingenico::Connect::SDK
7
7
  #
8
8
  # @attr_reader [Array<Ingenico::Connect::SDK::RequestHeader>] meta_data_headers List of headers that should be used in all requests.
9
9
  class MetaDataProvider
10
- @@SDK_VERSION = '2.22.0'
10
+ @@SDK_VERSION = '2.26.0'
11
11
  @@SERVER_META_INFO_HEADER = 'X-GCS-ServerMetaInfo'
12
12
  @@PROHIBITED_HEADERS = [@@SERVER_META_INFO_HEADER, 'X-GCS-Idempotence-Key',
13
13
  'Date', 'Content-Type', 'Authorization'].sort!.freeze
@@ -47,11 +47,10 @@ module Ingenico::Connect::SDK
47
47
  if value.nil? || value.empty?
48
48
  return value
49
49
  end
50
- # Replace all sequences of whitespace*-linebreak-whitespace* into a single linebreak-space
51
- # This will ensure that:
52
- # - no line ends with whitespace, because this causes authentication failures
53
- # - each line starts with a single whitespace, so it is a valid header value
54
- value.gsub(/[\s&&[^\r\n]]*(\r?\n)[\s&&[^\r\n]]*/, '\1 ')
50
+ # Replace all sequences of linebreak-whitespace* with a single linebreak-space
51
+ # This matches the normalization done by DefaultAuthenticator, and ensures that multiline headers
52
+ # will not cause authentication failures
53
+ value.gsub(/\r?\n[\s&&[^\r\n]]*/, ' ')
55
54
  end
56
55
  end
57
56
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: connect-sdk-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.22.0
4
+ version: 2.26.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ingenico ePayments
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-06-24 00:00:00.000000000 Z
11
+ date: 2021-11-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httpclient
@@ -135,6 +135,7 @@ files:
135
135
  - examples/merchant/example_configuration.yml
136
136
  - examples/merchant/files/get_file_example.rb
137
137
  - examples/merchant/hostedcheckouts/create_hosted_checkout_example.rb
138
+ - examples/merchant/hostedcheckouts/delete_hosted_checkout_example.rb
138
139
  - examples/merchant/hostedcheckouts/get_hosted_checkout_example.rb
139
140
  - examples/merchant/hostedmandatemanagements/create_hosted_mandate_management_example.rb
140
141
  - examples/merchant/hostedmandatemanagements/get_hosted_mandate_management_example.rb
@@ -249,6 +250,7 @@ files:
249
250
  - lib/ingenico/connect/sdk/domain/definitions/lodging_charge.rb
250
251
  - lib/ingenico/connect/sdk/domain/definitions/lodging_data.rb
251
252
  - lib/ingenico/connect/sdk/domain/definitions/lodging_room.rb
253
+ - lib/ingenico/connect/sdk/domain/definitions/microsoft_fraud_results.rb
252
254
  - lib/ingenico/connect/sdk/domain/definitions/order_status_output.rb
253
255
  - lib/ingenico/connect/sdk/domain/definitions/payment_product_filter.rb
254
256
  - lib/ingenico/connect/sdk/domain/definitions/personal_name_base.rb
@@ -464,7 +466,9 @@ files:
464
466
  - lib/ingenico/connect/sdk/domain/payout/create_payout_request.rb
465
467
  - lib/ingenico/connect/sdk/domain/payout/find_payouts_response.rb
466
468
  - lib/ingenico/connect/sdk/domain/payout/payout_customer.rb
469
+ - lib/ingenico/connect/sdk/domain/payout/payout_details.rb
467
470
  - lib/ingenico/connect/sdk/domain/payout/payout_error_response.rb
471
+ - lib/ingenico/connect/sdk/domain/payout/payout_recipient.rb
468
472
  - lib/ingenico/connect/sdk/domain/payout/payout_references.rb
469
473
  - lib/ingenico/connect/sdk/domain/payout/payout_response.rb
470
474
  - lib/ingenico/connect/sdk/domain/payout/payout_result.rb