cryptopay-ruby 1.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +6 -1
  3. data/.rubocop.yml +3 -0
  4. data/README.md +69 -5
  5. data/bin/console +2 -1
  6. data/lib/cryptopay/api/invoices.rb +2 -0
  7. data/lib/cryptopay/api/subscriptions.rb +99 -0
  8. data/lib/cryptopay/client.rb +4 -2
  9. data/lib/cryptopay/models/account.rb +8 -8
  10. data/lib/cryptopay/models/account_list_result.rb +8 -8
  11. data/lib/cryptopay/models/callback.rb +3 -1
  12. data/lib/cryptopay/models/channel.rb +8 -8
  13. data/lib/cryptopay/models/channel_list_result.rb +8 -8
  14. data/lib/cryptopay/models/channel_params.rb +8 -8
  15. data/lib/cryptopay/models/channel_payment.rb +8 -8
  16. data/lib/cryptopay/models/channel_payment_callback.rb +8 -8
  17. data/lib/cryptopay/models/channel_payment_list_result.rb +8 -8
  18. data/lib/cryptopay/models/channel_payment_result.rb +8 -8
  19. data/lib/cryptopay/models/channel_result.rb +8 -8
  20. data/lib/cryptopay/models/channel_update_params.rb +8 -8
  21. data/lib/cryptopay/models/channels_config.rb +8 -8
  22. data/lib/cryptopay/models/coin.rb +8 -8
  23. data/lib/cryptopay/models/coin_destination_tag.rb +8 -8
  24. data/lib/cryptopay/models/coin_list_result.rb +8 -8
  25. data/lib/cryptopay/models/coin_network.rb +8 -8
  26. data/lib/cryptopay/models/coin_withdrawal.rb +8 -8
  27. data/lib/cryptopay/models/coin_withdrawal_callback.rb +8 -8
  28. data/lib/cryptopay/models/coin_withdrawal_list_result.rb +8 -8
  29. data/lib/cryptopay/models/coin_withdrawal_params.rb +8 -8
  30. data/lib/cryptopay/models/coin_withdrawal_result.rb +8 -8
  31. data/lib/cryptopay/models/coin_withdrawals_config.rb +8 -8
  32. data/lib/cryptopay/models/customer.rb +19 -13
  33. data/lib/cryptopay/models/customer_address.rb +83 -0
  34. data/lib/cryptopay/models/customer_list_result.rb +8 -8
  35. data/lib/cryptopay/models/customer_params.rb +19 -13
  36. data/lib/cryptopay/models/customer_result.rb +8 -8
  37. data/lib/cryptopay/models/customer_update_params.rb +22 -14
  38. data/lib/cryptopay/models/exchange.rb +8 -8
  39. data/lib/cryptopay/models/exchange_transfer.rb +8 -8
  40. data/lib/cryptopay/models/exchange_transfer_params.rb +8 -8
  41. data/lib/cryptopay/models/exchange_transfer_result.rb +8 -8
  42. data/lib/cryptopay/models/invoice.rb +15 -8
  43. data/lib/cryptopay/models/invoice_callback.rb +8 -8
  44. data/lib/cryptopay/models/invoice_list_result.rb +8 -8
  45. data/lib/cryptopay/models/invoice_params.rb +17 -10
  46. data/lib/cryptopay/models/invoice_recalculation.rb +8 -8
  47. data/lib/cryptopay/models/invoice_recalculation_params.rb +8 -8
  48. data/lib/cryptopay/models/invoice_recalculation_result.rb +8 -8
  49. data/lib/cryptopay/models/invoice_refund.rb +8 -8
  50. data/lib/cryptopay/models/invoice_refund_list_result.rb +8 -8
  51. data/lib/cryptopay/models/invoice_refund_params.rb +8 -8
  52. data/lib/cryptopay/models/invoice_refund_result.rb +8 -8
  53. data/lib/cryptopay/models/invoice_result.rb +8 -8
  54. data/lib/cryptopay/models/invoice_transaction.rb +8 -8
  55. data/lib/cryptopay/models/invoices_config.rb +8 -8
  56. data/lib/cryptopay/models/network_fee.rb +8 -8
  57. data/lib/cryptopay/models/network_fee_list_result.rb +8 -8
  58. data/lib/cryptopay/models/pagination.rb +8 -8
  59. data/lib/cryptopay/models/rate.rb +8 -8
  60. data/lib/cryptopay/models/rate_result.rb +8 -8
  61. data/lib/cryptopay/models/rates_result.rb +8 -8
  62. data/lib/cryptopay/models/risk.rb +8 -8
  63. data/lib/cryptopay/models/risk_params.rb +8 -8
  64. data/lib/cryptopay/models/risk_result.rb +8 -8
  65. data/lib/cryptopay/models/subscription.rb +222 -0
  66. data/lib/cryptopay/models/subscription_callback.rb +88 -0
  67. data/lib/cryptopay/models/subscription_callback_event.rb +18 -0
  68. data/lib/cryptopay/models/subscription_list_result.rb +82 -0
  69. data/lib/cryptopay/models/subscription_params.rb +159 -0
  70. data/lib/cryptopay/models/subscription_period.rb +20 -0
  71. data/lib/cryptopay/models/subscription_result.rb +68 -0
  72. data/lib/cryptopay/models/subscription_status.rb +18 -0
  73. data/lib/cryptopay/models/transaction.rb +8 -8
  74. data/lib/cryptopay/models/transaction_list_result.rb +8 -8
  75. data/lib/cryptopay/require.rb +10 -0
  76. data/lib/cryptopay/version.rb +1 -1
  77. data/lib/cryptopay.rb +8 -9
  78. metadata +16 -6
@@ -23,6 +23,14 @@ module Cryptopay
23
23
  )
24
24
  private_constant :ENCODER
25
25
 
26
+ # Builds the object from hash
27
+ # @param [Hash] attributes Model attributes in the form of hash
28
+ # @return [Cryptopay::Coin] Returns the model itself
29
+ def self.build_from_hash(data)
30
+ attributes = ENCODER.build_from_hash(data)
31
+ new(attributes)
32
+ end
33
+
26
34
  # Initializes the object
27
35
  # @param [Hash] attributes Model attributes in the form of hash
28
36
  def initialize(attributes = {})
@@ -73,14 +81,6 @@ module Cryptopay
73
81
  invalid_properties.empty?
74
82
  end
75
83
 
76
- # Builds the object from hash
77
- # @param [Hash] attributes Model attributes in the form of hash
78
- # @return [Cryptopay::Coin] Returns the model itself
79
- def self.build_from_hash(data)
80
- attributes = ENCODER.build_from_hash(data)
81
- new(attributes)
82
- end
83
-
84
84
  # Returns the object in the form of hash
85
85
  # @return [Hash] Returns the object in the form of hash
86
86
  def to_hash
@@ -19,6 +19,14 @@ module Cryptopay
19
19
  )
20
20
  private_constant :ENCODER
21
21
 
22
+ # Builds the object from hash
23
+ # @param [Hash] attributes Model attributes in the form of hash
24
+ # @return [Cryptopay::CoinDestinationTag] Returns the model itself
25
+ def self.build_from_hash(data)
26
+ attributes = ENCODER.build_from_hash(data)
27
+ new(attributes)
28
+ end
29
+
22
30
  # Initializes the object
23
31
  # @param [Hash] attributes Model attributes in the form of hash
24
32
  def initialize(attributes = {})
@@ -51,14 +59,6 @@ module Cryptopay
51
59
  invalid_properties.empty?
52
60
  end
53
61
 
54
- # Builds the object from hash
55
- # @param [Hash] attributes Model attributes in the form of hash
56
- # @return [Cryptopay::CoinDestinationTag] Returns the model itself
57
- def self.build_from_hash(data)
58
- attributes = ENCODER.build_from_hash(data)
59
- new(attributes)
60
- end
61
-
62
62
  # Returns the object in the form of hash
63
63
  # @return [Hash] Returns the object in the form of hash
64
64
  def to_hash
@@ -17,6 +17,14 @@ module Cryptopay
17
17
  )
18
18
  private_constant :ENCODER
19
19
 
20
+ # Builds the object from hash
21
+ # @param [Hash] attributes Model attributes in the form of hash
22
+ # @return [Cryptopay::CoinListResult] Returns the model itself
23
+ def self.build_from_hash(data)
24
+ attributes = ENCODER.build_from_hash(data)
25
+ new(attributes)
26
+ end
27
+
20
28
  # Initializes the object
21
29
  # @param [Hash] attributes Model attributes in the form of hash
22
30
  def initialize(attributes = {})
@@ -49,14 +57,6 @@ module Cryptopay
49
57
  invalid_properties.empty?
50
58
  end
51
59
 
52
- # Builds the object from hash
53
- # @param [Hash] attributes Model attributes in the form of hash
54
- # @return [Cryptopay::CoinListResult] Returns the model itself
55
- def self.build_from_hash(data)
56
- attributes = ENCODER.build_from_hash(data)
57
- new(attributes)
58
- end
59
-
60
60
  # Returns the object in the form of hash
61
61
  # @return [Hash] Returns the object in the form of hash
62
62
  def to_hash
@@ -31,6 +31,14 @@ module Cryptopay
31
31
  )
32
32
  private_constant :ENCODER
33
33
 
34
+ # Builds the object from hash
35
+ # @param [Hash] attributes Model attributes in the form of hash
36
+ # @return [Cryptopay::CoinNetwork] Returns the model itself
37
+ def self.build_from_hash(data)
38
+ attributes = ENCODER.build_from_hash(data)
39
+ new(attributes)
40
+ end
41
+
34
42
  # Initializes the object
35
43
  # @param [Hash] attributes Model attributes in the form of hash
36
44
  def initialize(attributes = {})
@@ -107,14 +115,6 @@ module Cryptopay
107
115
  invalid_properties.empty?
108
116
  end
109
117
 
110
- # Builds the object from hash
111
- # @param [Hash] attributes Model attributes in the form of hash
112
- # @return [Cryptopay::CoinNetwork] Returns the model itself
113
- def self.build_from_hash(data)
114
- attributes = ENCODER.build_from_hash(data)
115
- new(attributes)
116
- end
117
-
118
118
  # Returns the object in the form of hash
119
119
  # @return [Hash] Returns the object in the form of hash
120
120
  def to_hash
@@ -56,6 +56,14 @@ module Cryptopay
56
56
  )
57
57
  private_constant :ENCODER
58
58
 
59
+ # Builds the object from hash
60
+ # @param [Hash] attributes Model attributes in the form of hash
61
+ # @return [Cryptopay::CoinWithdrawal] Returns the model itself
62
+ def self.build_from_hash(data)
63
+ attributes = ENCODER.build_from_hash(data)
64
+ new(attributes)
65
+ end
66
+
59
67
  # Initializes the object
60
68
  # @param [Hash] attributes Model attributes in the form of hash
61
69
  def initialize(attributes = {})
@@ -204,14 +212,6 @@ module Cryptopay
204
212
  invalid_properties.empty?
205
213
  end
206
214
 
207
- # Builds the object from hash
208
- # @param [Hash] attributes Model attributes in the form of hash
209
- # @return [Cryptopay::CoinWithdrawal] Returns the model itself
210
- def self.build_from_hash(data)
211
- attributes = ENCODER.build_from_hash(data)
212
- new(attributes)
213
- end
214
-
215
215
  # Returns the object in the form of hash
216
216
  # @return [Hash] Returns the object in the form of hash
217
217
  def to_hash
@@ -21,6 +21,14 @@ module Cryptopay
21
21
  )
22
22
  private_constant :ENCODER
23
23
 
24
+ # Builds the object from hash
25
+ # @param [Hash] attributes Model attributes in the form of hash
26
+ # @return [Cryptopay::CoinWithdrawalCallback] Returns the model itself
27
+ def self.build_from_hash(data)
28
+ attributes = ENCODER.build_from_hash(data)
29
+ new(attributes)
30
+ end
31
+
24
32
  # Initializes the object
25
33
  # @param [Hash] attributes Model attributes in the form of hash
26
34
  def initialize(attributes = {})
@@ -67,14 +75,6 @@ module Cryptopay
67
75
  invalid_properties.empty?
68
76
  end
69
77
 
70
- # Builds the object from hash
71
- # @param [Hash] attributes Model attributes in the form of hash
72
- # @return [Cryptopay::CoinWithdrawalCallback] Returns the model itself
73
- def self.build_from_hash(data)
74
- attributes = ENCODER.build_from_hash(data)
75
- new(attributes)
76
- end
77
-
78
78
  # Returns the object in the form of hash
79
79
  # @return [Hash] Returns the object in the form of hash
80
80
  def to_hash
@@ -19,6 +19,14 @@ module Cryptopay
19
19
  )
20
20
  private_constant :ENCODER
21
21
 
22
+ # Builds the object from hash
23
+ # @param [Hash] attributes Model attributes in the form of hash
24
+ # @return [Cryptopay::CoinWithdrawalListResult] Returns the model itself
25
+ def self.build_from_hash(data)
26
+ attributes = ENCODER.build_from_hash(data)
27
+ new(attributes)
28
+ end
29
+
22
30
  # Initializes the object
23
31
  # @param [Hash] attributes Model attributes in the form of hash
24
32
  def initialize(attributes = {})
@@ -61,14 +69,6 @@ module Cryptopay
61
69
  invalid_properties.empty?
62
70
  end
63
71
 
64
- # Builds the object from hash
65
- # @param [Hash] attributes Model attributes in the form of hash
66
- # @return [Cryptopay::CoinWithdrawalListResult] Returns the model itself
67
- def self.build_from_hash(data)
68
- attributes = ENCODER.build_from_hash(data)
69
- new(attributes)
70
- end
71
-
72
72
  # Returns the object in the form of hash
73
73
  # @return [Hash] Returns the object in the form of hash
74
74
  def to_hash
@@ -41,6 +41,14 @@ module Cryptopay
41
41
  )
42
42
  private_constant :ENCODER
43
43
 
44
+ # Builds the object from hash
45
+ # @param [Hash] attributes Model attributes in the form of hash
46
+ # @return [Cryptopay::CoinWithdrawalParams] Returns the model itself
47
+ def self.build_from_hash(data)
48
+ attributes = ENCODER.build_from_hash(data)
49
+ new(attributes)
50
+ end
51
+
44
52
  # Initializes the object
45
53
  # @param [Hash] attributes Model attributes in the form of hash
46
54
  def initialize(attributes = {})
@@ -127,14 +135,6 @@ module Cryptopay
127
135
  invalid_properties.empty?
128
136
  end
129
137
 
130
- # Builds the object from hash
131
- # @param [Hash] attributes Model attributes in the form of hash
132
- # @return [Cryptopay::CoinWithdrawalParams] Returns the model itself
133
- def self.build_from_hash(data)
134
- attributes = ENCODER.build_from_hash(data)
135
- new(attributes)
136
- end
137
-
138
138
  # Returns the object in the form of hash
139
139
  # @return [Hash] Returns the object in the form of hash
140
140
  def to_hash
@@ -17,6 +17,14 @@ module Cryptopay
17
17
  )
18
18
  private_constant :ENCODER
19
19
 
20
+ # Builds the object from hash
21
+ # @param [Hash] attributes Model attributes in the form of hash
22
+ # @return [Cryptopay::CoinWithdrawalResult] Returns the model itself
23
+ def self.build_from_hash(data)
24
+ attributes = ENCODER.build_from_hash(data)
25
+ new(attributes)
26
+ end
27
+
20
28
  # Initializes the object
21
29
  # @param [Hash] attributes Model attributes in the form of hash
22
30
  def initialize(attributes = {})
@@ -47,14 +55,6 @@ module Cryptopay
47
55
  invalid_properties.empty?
48
56
  end
49
57
 
50
- # Builds the object from hash
51
- # @param [Hash] attributes Model attributes in the form of hash
52
- # @return [Cryptopay::CoinWithdrawalResult] Returns the model itself
53
- def self.build_from_hash(data)
54
- attributes = ENCODER.build_from_hash(data)
55
- new(attributes)
56
- end
57
-
58
58
  # Returns the object in the form of hash
59
59
  # @return [Hash] Returns the object in the form of hash
60
60
  def to_hash
@@ -17,6 +17,14 @@ module Cryptopay
17
17
  )
18
18
  private_constant :ENCODER
19
19
 
20
+ # Builds the object from hash
21
+ # @param [Hash] attributes Model attributes in the form of hash
22
+ # @return [Cryptopay::CoinWithdrawalsConfig] Returns the model itself
23
+ def self.build_from_hash(data)
24
+ attributes = ENCODER.build_from_hash(data)
25
+ new(attributes)
26
+ end
27
+
20
28
  # Initializes the object
21
29
  # @param [Hash] attributes Model attributes in the form of hash
22
30
  def initialize(attributes = {})
@@ -43,14 +51,6 @@ module Cryptopay
43
51
  invalid_properties.empty?
44
52
  end
45
53
 
46
- # Builds the object from hash
47
- # @param [Hash] attributes Model attributes in the form of hash
48
- # @return [Cryptopay::CoinWithdrawalsConfig] Returns the model itself
49
- def self.build_from_hash(data)
50
- attributes = ENCODER.build_from_hash(data)
51
- new(attributes)
52
- end
53
-
54
54
  # Returns the object in the form of hash
55
55
  # @return [Hash] Returns the object in the form of hash
56
56
  def to_hash
@@ -10,17 +10,25 @@ module Cryptopay
10
10
  attribute_map: {
11
11
  'id': :id,
12
12
  'currency': :currency,
13
- 'refund_addresses': :refund_addresses
13
+ 'addresses': :addresses
14
14
  },
15
15
  types: {
16
16
  'id': :String,
17
17
  'currency': :String,
18
- 'refund_addresses': :'Hash<String, String>'
18
+ 'addresses': :'Array<CustomerAddress>'
19
19
  },
20
20
  nullables: []
21
21
  )
22
22
  private_constant :ENCODER
23
23
 
24
+ # Builds the object from hash
25
+ # @param [Hash] attributes Model attributes in the form of hash
26
+ # @return [Cryptopay::Customer] Returns the model itself
27
+ def self.build_from_hash(data)
28
+ attributes = ENCODER.build_from_hash(data)
29
+ new(attributes)
30
+ end
31
+
24
32
  # Initializes the object
25
33
  # @param [Hash] attributes Model attributes in the form of hash
26
34
  def initialize(attributes = {})
@@ -38,8 +46,8 @@ module Cryptopay
38
46
  end
39
47
 
40
48
  # The list of refund addresses where Cryptopay will refund High-Risk transactions to
41
- def refund_addresses
42
- @attributes[:refund_addresses]
49
+ def addresses
50
+ @attributes[:addresses]
43
51
  end
44
52
 
45
53
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -51,7 +59,13 @@ module Cryptopay
51
59
 
52
60
  properties.push('invalid value for "currency", currency cannot be nil.') if currency.nil?
53
61
 
54
- properties.push('invalid value for "refund_addresses", refund_addresses cannot be nil.') if refund_addresses.nil?
62
+ properties.push('invalid value for "addresses", addresses cannot be nil.') if addresses.nil?
63
+
64
+ addresses&.each_with_index do |item, index|
65
+ item.invalid_properties.each do |prop|
66
+ properties.push("invalid value for \"addresses.#{index}\": #{prop}")
67
+ end
68
+ end
55
69
 
56
70
  properties
57
71
  end
@@ -62,14 +76,6 @@ module Cryptopay
62
76
  invalid_properties.empty?
63
77
  end
64
78
 
65
- # Builds the object from hash
66
- # @param [Hash] attributes Model attributes in the form of hash
67
- # @return [Cryptopay::Customer] Returns the model itself
68
- def self.build_from_hash(data)
69
- attributes = ENCODER.build_from_hash(data)
70
- new(attributes)
71
- end
72
-
73
79
  # Returns the object in the form of hash
74
80
  # @return [Hash] Returns the object in the form of hash
75
81
  def to_hash
@@ -0,0 +1,83 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Auto-generated file
4
+ # DO NOT EDIT
5
+
6
+ module Cryptopay
7
+ class CustomerAddress
8
+ ENCODER = Encoder.new(
9
+ name: 'Cryptopay::CustomerAddress',
10
+ attribute_map: {
11
+ 'address': :address,
12
+ 'currency': :currency,
13
+ 'network': :network
14
+ },
15
+ types: {
16
+ 'address': :String,
17
+ 'currency': :String,
18
+ 'network': :String
19
+ },
20
+ nullables: []
21
+ )
22
+ private_constant :ENCODER
23
+
24
+ # Builds the object from hash
25
+ # @param [Hash] attributes Model attributes in the form of hash
26
+ # @return [Cryptopay::CustomerAddress] Returns the model itself
27
+ def self.build_from_hash(data)
28
+ attributes = ENCODER.build_from_hash(data)
29
+ new(attributes)
30
+ end
31
+
32
+ # Initializes the object
33
+ # @param [Hash] attributes Model attributes in the form of hash
34
+ def initialize(attributes = {})
35
+ @attributes = ENCODER.sanitize(attributes)
36
+ end
37
+
38
+ # Cryptocurrency address
39
+ def address
40
+ @attributes[:address]
41
+ end
42
+
43
+ # Cryptocurrency name
44
+ def currency
45
+ @attributes[:currency]
46
+ end
47
+
48
+ # Cryptocurrency network
49
+ def network
50
+ @attributes[:network]
51
+ end
52
+
53
+ # Show invalid properties with the reasons. Usually used together with valid?
54
+ # @return Array for valid properties with the reasons
55
+ def invalid_properties
56
+ properties = []
57
+
58
+ properties.push('invalid value for "address", address cannot be nil.') if address.nil?
59
+
60
+ properties.push('invalid value for "currency", currency cannot be nil.') if currency.nil?
61
+
62
+ properties.push('invalid value for "network", network cannot be nil.') if network.nil?
63
+
64
+ properties
65
+ end
66
+
67
+ # Check to see if the all the properties in the model are valid
68
+ # @return true if the model is valid
69
+ def valid?
70
+ invalid_properties.empty?
71
+ end
72
+
73
+ # Returns the object in the form of hash
74
+ # @return [Hash] Returns the object in the form of hash
75
+ def to_hash
76
+ ENCODER.to_hash(@attributes)
77
+ end
78
+
79
+ def inspect
80
+ "#<#{self.class}:0x#{object_id.to_s(16)}> JSON: " + JSON.pretty_generate(to_hash)
81
+ end
82
+ end
83
+ end
@@ -19,6 +19,14 @@ module Cryptopay
19
19
  )
20
20
  private_constant :ENCODER
21
21
 
22
+ # Builds the object from hash
23
+ # @param [Hash] attributes Model attributes in the form of hash
24
+ # @return [Cryptopay::CustomerListResult] Returns the model itself
25
+ def self.build_from_hash(data)
26
+ attributes = ENCODER.build_from_hash(data)
27
+ new(attributes)
28
+ end
29
+
22
30
  # Initializes the object
23
31
  # @param [Hash] attributes Model attributes in the form of hash
24
32
  def initialize(attributes = {})
@@ -61,14 +69,6 @@ module Cryptopay
61
69
  invalid_properties.empty?
62
70
  end
63
71
 
64
- # Builds the object from hash
65
- # @param [Hash] attributes Model attributes in the form of hash
66
- # @return [Cryptopay::CustomerListResult] Returns the model itself
67
- def self.build_from_hash(data)
68
- attributes = ENCODER.build_from_hash(data)
69
- new(attributes)
70
- end
71
-
72
72
  # Returns the object in the form of hash
73
73
  # @return [Hash] Returns the object in the form of hash
74
74
  def to_hash
@@ -10,17 +10,25 @@ module Cryptopay
10
10
  attribute_map: {
11
11
  'id': :id,
12
12
  'currency': :currency,
13
- 'refund_addresses': :refund_addresses
13
+ 'addresses': :addresses
14
14
  },
15
15
  types: {
16
16
  'id': :String,
17
17
  'currency': :String,
18
- 'refund_addresses': :'Hash<String, String>'
18
+ 'addresses': :'Array<CustomerAddress>'
19
19
  },
20
20
  nullables: []
21
21
  )
22
22
  private_constant :ENCODER
23
23
 
24
+ # Builds the object from hash
25
+ # @param [Hash] attributes Model attributes in the form of hash
26
+ # @return [Cryptopay::CustomerParams] Returns the model itself
27
+ def self.build_from_hash(data)
28
+ attributes = ENCODER.build_from_hash(data)
29
+ new(attributes)
30
+ end
31
+
24
32
  # Initializes the object
25
33
  # @param [Hash] attributes Model attributes in the form of hash
26
34
  def initialize(attributes = {})
@@ -37,9 +45,9 @@ module Cryptopay
37
45
  @attributes[:currency]
38
46
  end
39
47
 
40
- # This object allows you to specify 1 cryptocurrency address for each type of supported cryptocurrencies i.e. BTC, ETH, XRP, LTC and BCH. In case Cryptopay detects a High-Risk transaction, such transaction will not be processed. Instead, it will be sent to the address specified for respective cryptocurrency. If you do not specify any addresses here, High-Risk payments will be put on hold
41
- def refund_addresses
42
- @attributes[:refund_addresses]
48
+ # This array allows you to specify 1 cryptocurrency address for each type of supported cryptocurrencies i.e. BTC, ETH, XRP, LTC and BCH. In case Cryptopay detects a High-Risk transaction, such transaction will not be processed. Instead, it will be sent to the address specified for respective cryptocurrency. If you do not specify any addresses here, High-Risk payments will be put on hold
49
+ def addresses
50
+ @attributes[:addresses]
43
51
  end
44
52
 
45
53
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -51,6 +59,12 @@ module Cryptopay
51
59
 
52
60
  properties.push('invalid value for "currency", currency cannot be nil.') if currency.nil?
53
61
 
62
+ addresses&.each_with_index do |item, index|
63
+ item.invalid_properties.each do |prop|
64
+ properties.push("invalid value for \"addresses.#{index}\": #{prop}")
65
+ end
66
+ end
67
+
54
68
  properties
55
69
  end
56
70
 
@@ -60,14 +74,6 @@ module Cryptopay
60
74
  invalid_properties.empty?
61
75
  end
62
76
 
63
- # Builds the object from hash
64
- # @param [Hash] attributes Model attributes in the form of hash
65
- # @return [Cryptopay::CustomerParams] Returns the model itself
66
- def self.build_from_hash(data)
67
- attributes = ENCODER.build_from_hash(data)
68
- new(attributes)
69
- end
70
-
71
77
  # Returns the object in the form of hash
72
78
  # @return [Hash] Returns the object in the form of hash
73
79
  def to_hash
@@ -17,6 +17,14 @@ module Cryptopay
17
17
  )
18
18
  private_constant :ENCODER
19
19
 
20
+ # Builds the object from hash
21
+ # @param [Hash] attributes Model attributes in the form of hash
22
+ # @return [Cryptopay::CustomerResult] Returns the model itself
23
+ def self.build_from_hash(data)
24
+ attributes = ENCODER.build_from_hash(data)
25
+ new(attributes)
26
+ end
27
+
20
28
  # Initializes the object
21
29
  # @param [Hash] attributes Model attributes in the form of hash
22
30
  def initialize(attributes = {})
@@ -47,14 +55,6 @@ module Cryptopay
47
55
  invalid_properties.empty?
48
56
  end
49
57
 
50
- # Builds the object from hash
51
- # @param [Hash] attributes Model attributes in the form of hash
52
- # @return [Cryptopay::CustomerResult] Returns the model itself
53
- def self.build_from_hash(data)
54
- attributes = ENCODER.build_from_hash(data)
55
- new(attributes)
56
- end
57
-
58
58
  # Returns the object in the form of hash
59
59
  # @return [Hash] Returns the object in the form of hash
60
60
  def to_hash
@@ -9,16 +9,24 @@ module Cryptopay
9
9
  name: 'Cryptopay::CustomerUpdateParams',
10
10
  attribute_map: {
11
11
  'currency': :currency,
12
- 'refund_addresses': :refund_addresses
12
+ 'addresses': :addresses
13
13
  },
14
14
  types: {
15
15
  'currency': :String,
16
- 'refund_addresses': :'Hash<String, String>'
16
+ 'addresses': :'Array<CustomerAddress>'
17
17
  },
18
18
  nullables: []
19
19
  )
20
20
  private_constant :ENCODER
21
21
 
22
+ # Builds the object from hash
23
+ # @param [Hash] attributes Model attributes in the form of hash
24
+ # @return [Cryptopay::CustomerUpdateParams] Returns the model itself
25
+ def self.build_from_hash(data)
26
+ attributes = ENCODER.build_from_hash(data)
27
+ new(attributes)
28
+ end
29
+
22
30
  # Initializes the object
23
31
  # @param [Hash] attributes Model attributes in the form of hash
24
32
  def initialize(attributes = {})
@@ -30,15 +38,23 @@ module Cryptopay
30
38
  @attributes[:currency]
31
39
  end
32
40
 
33
- # This object allows you to specify 1 cryptocurrency address for each type of supported cryptocurrencies i.e. BTC, ETH, XRP, LTC and BCH. In case Cryptopay detects a High-Risk transaction, such transaction will not be processed. Instead, it will be sent to the address specified for respective cryptocurrency. If you do not specify any addresses here, High-Risk payments will be put on hold
34
- def refund_addresses
35
- @attributes[:refund_addresses]
41
+ # This array allows you to specify 1 cryptocurrency address for each type of supported cryptocurrencies i.e. BTC, ETH, XRP, LTC and BCH. In case Cryptopay detects a High-Risk transaction, such transaction will not be processed. Instead, it will be sent to the address specified for respective cryptocurrency. If you do not specify any addresses here, High-Risk payments will be put on hold
42
+ def addresses
43
+ @attributes[:addresses]
36
44
  end
37
45
 
38
46
  # Show invalid properties with the reasons. Usually used together with valid?
39
47
  # @return Array for valid properties with the reasons
40
48
  def invalid_properties
41
- []
49
+ properties = []
50
+
51
+ addresses&.each_with_index do |item, index|
52
+ item.invalid_properties.each do |prop|
53
+ properties.push("invalid value for \"addresses.#{index}\": #{prop}")
54
+ end
55
+ end
56
+
57
+ properties
42
58
  end
43
59
 
44
60
  # Check to see if the all the properties in the model are valid
@@ -47,14 +63,6 @@ module Cryptopay
47
63
  invalid_properties.empty?
48
64
  end
49
65
 
50
- # Builds the object from hash
51
- # @param [Hash] attributes Model attributes in the form of hash
52
- # @return [Cryptopay::CustomerUpdateParams] Returns the model itself
53
- def self.build_from_hash(data)
54
- attributes = ENCODER.build_from_hash(data)
55
- new(attributes)
56
- end
57
-
58
66
  # Returns the object in the form of hash
59
67
  # @return [Hash] Returns the object in the form of hash
60
68
  def to_hash
@@ -24,6 +24,14 @@ module Cryptopay
24
24
  )
25
25
  private_constant :ENCODER
26
26
 
27
+ # Builds the object from hash
28
+ # @param [Hash] attributes Model attributes in the form of hash
29
+ # @return [Cryptopay::Exchange] Returns the model itself
30
+ def self.build_from_hash(data)
31
+ attributes = ENCODER.build_from_hash(data)
32
+ new(attributes)
33
+ end
34
+
27
35
  # Initializes the object
28
36
  # @param [Hash] attributes Model attributes in the form of hash
29
37
  def initialize(attributes = {})
@@ -68,14 +76,6 @@ module Cryptopay
68
76
  invalid_properties.empty?
69
77
  end
70
78
 
71
- # Builds the object from hash
72
- # @param [Hash] attributes Model attributes in the form of hash
73
- # @return [Cryptopay::Exchange] Returns the model itself
74
- def self.build_from_hash(data)
75
- attributes = ENCODER.build_from_hash(data)
76
- new(attributes)
77
- end
78
-
79
79
  # Returns the object in the form of hash
80
80
  # @return [Hash] Returns the object in the form of hash
81
81
  def to_hash