connect-sdk-ruby 2.22.0 → 2.23.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/connect-sdk-ruby.gemspec +1 -1
- data/examples/merchant/payouts/create_payout_example.rb +17 -13
- data/lib/ingenico/connect/sdk/domain/payout/bank_transfer_payout_method_specific_input.rb +2 -0
- data/lib/ingenico/connect/sdk/domain/payout/card_payout_method_specific_input.rb +9 -0
- data/lib/ingenico/connect/sdk/domain/payout/create_payout_request.rb +14 -1
- data/lib/ingenico/connect/sdk/domain/payout/payout_details.rb +52 -0
- data/lib/ingenico/connect/sdk/domain/payout/payout_recipient.rb +46 -0
- data/lib/ingenico/connect/sdk/meta_data_provider.rb +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3073d8bb3d244aa1fbafd6c8a322dad3131e37080afcf895b14d475966925c7a
|
4
|
+
data.tar.gz: 75c7fa6b5f292dc76b7831be4fa2631897859e8bb3e34500bcb91c19060fd049
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 557e215bb0ab3aa8a9f98a90067175384b6a70e9b364b8e603cd1f01815312a04b2f2416589e7d0b5566b1f38b3bb4d52938dcdac3a99ce909c77258805764b2
|
7
|
+
data.tar.gz: 99a06d9577a7da4d0cd2ec6d59871f31b0d744d2616157eda738f56a3ed4e3eac376697b4c74fa4c97f4f2c77d9344c1cd4a74c96f7a6a9154f4be0970fbd208
|
data/connect-sdk-ruby.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |spec|
|
2
2
|
spec.name = 'connect-sdk-ruby'
|
3
|
-
spec.version = '2.
|
3
|
+
spec.version = '2.23.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}
|
@@ -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.
|
76
|
+
body.payout_details = payout_details
|
73
77
|
|
74
78
|
begin
|
75
79
|
response = client.merchant('merchantId').payouts.create(body)
|
@@ -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
|
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
|
@@ -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.
|
10
|
+
@@SDK_VERSION = '2.23.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
|
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.
|
4
|
+
version: 2.23.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-
|
11
|
+
date: 2021-07-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httpclient
|
@@ -464,7 +464,9 @@ files:
|
|
464
464
|
- lib/ingenico/connect/sdk/domain/payout/create_payout_request.rb
|
465
465
|
- lib/ingenico/connect/sdk/domain/payout/find_payouts_response.rb
|
466
466
|
- lib/ingenico/connect/sdk/domain/payout/payout_customer.rb
|
467
|
+
- lib/ingenico/connect/sdk/domain/payout/payout_details.rb
|
467
468
|
- lib/ingenico/connect/sdk/domain/payout/payout_error_response.rb
|
469
|
+
- lib/ingenico/connect/sdk/domain/payout/payout_recipient.rb
|
468
470
|
- lib/ingenico/connect/sdk/domain/payout/payout_references.rb
|
469
471
|
- lib/ingenico/connect/sdk/domain/payout/payout_response.rb
|
470
472
|
- lib/ingenico/connect/sdk/domain/payout/payout_result.rb
|