cloudpayments-ruby 0.4.1

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 (179) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +50 -0
  4. data/README.md +250 -0
  5. data/SECURITY.md +23 -0
  6. data/lib/cloudpayments_ruby/client.rb +93 -0
  7. data/lib/cloudpayments_ruby/errors.rb +228 -0
  8. data/lib/cloudpayments_ruby/file_part.rb +58 -0
  9. data/lib/cloudpayments_ruby/internal/transport/base_client.rb +579 -0
  10. data/lib/cloudpayments_ruby/internal/transport/pooled_net_requester.rb +210 -0
  11. data/lib/cloudpayments_ruby/internal/type/array_of.rb +168 -0
  12. data/lib/cloudpayments_ruby/internal/type/base_model.rb +536 -0
  13. data/lib/cloudpayments_ruby/internal/type/base_page.rb +55 -0
  14. data/lib/cloudpayments_ruby/internal/type/boolean.rb +77 -0
  15. data/lib/cloudpayments_ruby/internal/type/converter.rb +327 -0
  16. data/lib/cloudpayments_ruby/internal/type/enum.rb +133 -0
  17. data/lib/cloudpayments_ruby/internal/type/file_input.rb +111 -0
  18. data/lib/cloudpayments_ruby/internal/type/hash_of.rb +188 -0
  19. data/lib/cloudpayments_ruby/internal/type/request_parameters.rb +42 -0
  20. data/lib/cloudpayments_ruby/internal/type/union.rb +256 -0
  21. data/lib/cloudpayments_ruby/internal/type/unknown.rb +81 -0
  22. data/lib/cloudpayments_ruby/internal/util.rb +920 -0
  23. data/lib/cloudpayments_ruby/internal.rb +20 -0
  24. data/lib/cloudpayments_ruby/models/order_cancel_params.rb +22 -0
  25. data/lib/cloudpayments_ruby/models/order_cancel_response.rb +27 -0
  26. data/lib/cloudpayments_ruby/models/order_create_params.rb +152 -0
  27. data/lib/cloudpayments_ruby/models/order_create_response.rb +187 -0
  28. data/lib/cloudpayments_ruby/models/payment_auth_params.rb +211 -0
  29. data/lib/cloudpayments_ruby/models/payment_auth_response.rb +167 -0
  30. data/lib/cloudpayments_ruby/models/payment_charge_params.rb +211 -0
  31. data/lib/cloudpayments_ruby/models/payment_charge_response.rb +167 -0
  32. data/lib/cloudpayments_ruby/models/payment_confirm_params.rb +38 -0
  33. data/lib/cloudpayments_ruby/models/payment_confirm_response.rb +27 -0
  34. data/lib/cloudpayments_ruby/models/payment_post3ds_params.rb +30 -0
  35. data/lib/cloudpayments_ruby/models/payment_post3ds_response.rb +35 -0
  36. data/lib/cloudpayments_ruby/models/payment_refund_params.rb +38 -0
  37. data/lib/cloudpayments_ruby/models/payment_refund_response.rb +49 -0
  38. data/lib/cloudpayments_ruby/models/payment_void_params.rb +22 -0
  39. data/lib/cloudpayments_ruby/models/payment_void_response.rb +27 -0
  40. data/lib/cloudpayments_ruby/models/payments/token_auth_params.rb +197 -0
  41. data/lib/cloudpayments_ruby/models/payments/token_auth_response.rb +37 -0
  42. data/lib/cloudpayments_ruby/models/payments/token_charge_params.rb +197 -0
  43. data/lib/cloudpayments_ruby/models/payments/token_charge_response.rb +37 -0
  44. data/lib/cloudpayments_ruby/models/subscription.rb +212 -0
  45. data/lib/cloudpayments_ruby/models/subscription_cancel_params.rb +22 -0
  46. data/lib/cloudpayments_ruby/models/subscription_cancel_response.rb +27 -0
  47. data/lib/cloudpayments_ruby/models/subscription_create_params.rb +112 -0
  48. data/lib/cloudpayments_ruby/models/subscription_create_response.rb +35 -0
  49. data/lib/cloudpayments_ruby/models/subscription_find_params.rb +22 -0
  50. data/lib/cloudpayments_ruby/models/subscription_find_response.rb +37 -0
  51. data/lib/cloudpayments_ruby/models/subscription_get_params.rb +22 -0
  52. data/lib/cloudpayments_ruby/models/subscription_get_response.rb +35 -0
  53. data/lib/cloudpayments_ruby/models/subscription_update_params.rb +104 -0
  54. data/lib/cloudpayments_ruby/models/subscription_update_response.rb +35 -0
  55. data/lib/cloudpayments_ruby/models/transaction.rb +492 -0
  56. data/lib/cloudpayments_ruby/models.rb +76 -0
  57. data/lib/cloudpayments_ruby/request_options.rb +79 -0
  58. data/lib/cloudpayments_ruby/resources/orders.rb +95 -0
  59. data/lib/cloudpayments_ruby/resources/payments/tokens.rb +110 -0
  60. data/lib/cloudpayments_ruby/resources/payments.rb +232 -0
  61. data/lib/cloudpayments_ruby/resources/subscriptions.rb +178 -0
  62. data/lib/cloudpayments_ruby/version.rb +5 -0
  63. data/lib/cloudpayments_ruby.rb +91 -0
  64. data/manifest.yaml +17 -0
  65. data/rbi/cloudpayments_ruby/client.rbi +61 -0
  66. data/rbi/cloudpayments_ruby/errors.rbi +205 -0
  67. data/rbi/cloudpayments_ruby/file_part.rbi +37 -0
  68. data/rbi/cloudpayments_ruby/internal/transport/base_client.rbi +310 -0
  69. data/rbi/cloudpayments_ruby/internal/transport/pooled_net_requester.rbi +84 -0
  70. data/rbi/cloudpayments_ruby/internal/type/array_of.rbi +108 -0
  71. data/rbi/cloudpayments_ruby/internal/type/base_model.rbi +316 -0
  72. data/rbi/cloudpayments_ruby/internal/type/base_page.rbi +43 -0
  73. data/rbi/cloudpayments_ruby/internal/type/boolean.rbi +58 -0
  74. data/rbi/cloudpayments_ruby/internal/type/converter.rbi +225 -0
  75. data/rbi/cloudpayments_ruby/internal/type/enum.rbi +82 -0
  76. data/rbi/cloudpayments_ruby/internal/type/file_input.rbi +59 -0
  77. data/rbi/cloudpayments_ruby/internal/type/hash_of.rbi +108 -0
  78. data/rbi/cloudpayments_ruby/internal/type/request_parameters.rbi +33 -0
  79. data/rbi/cloudpayments_ruby/internal/type/union.rbi +134 -0
  80. data/rbi/cloudpayments_ruby/internal/type/unknown.rbi +58 -0
  81. data/rbi/cloudpayments_ruby/internal/util.rbi +487 -0
  82. data/rbi/cloudpayments_ruby/internal.rbi +18 -0
  83. data/rbi/cloudpayments_ruby/models/order_cancel_params.rbi +43 -0
  84. data/rbi/cloudpayments_ruby/models/order_cancel_response.rbi +42 -0
  85. data/rbi/cloudpayments_ruby/models/order_create_params.rbi +219 -0
  86. data/rbi/cloudpayments_ruby/models/order_create_response.rbi +255 -0
  87. data/rbi/cloudpayments_ruby/models/payment_auth_params.rbi +323 -0
  88. data/rbi/cloudpayments_ruby/models/payment_auth_response.rbi +278 -0
  89. data/rbi/cloudpayments_ruby/models/payment_charge_params.rbi +325 -0
  90. data/rbi/cloudpayments_ruby/models/payment_charge_response.rbi +278 -0
  91. data/rbi/cloudpayments_ruby/models/payment_confirm_params.rbi +65 -0
  92. data/rbi/cloudpayments_ruby/models/payment_confirm_response.rbi +42 -0
  93. data/rbi/cloudpayments_ruby/models/payment_post3ds_params.rbi +54 -0
  94. data/rbi/cloudpayments_ruby/models/payment_post3ds_response.rbi +63 -0
  95. data/rbi/cloudpayments_ruby/models/payment_refund_params.rbi +65 -0
  96. data/rbi/cloudpayments_ruby/models/payment_refund_response.rbi +97 -0
  97. data/rbi/cloudpayments_ruby/models/payment_void_params.rbi +46 -0
  98. data/rbi/cloudpayments_ruby/models/payment_void_response.rbi +42 -0
  99. data/rbi/cloudpayments_ruby/models/payments/token_auth_params.rbi +306 -0
  100. data/rbi/cloudpayments_ruby/models/payments/token_auth_response.rbi +65 -0
  101. data/rbi/cloudpayments_ruby/models/payments/token_charge_params.rbi +307 -0
  102. data/rbi/cloudpayments_ruby/models/payments/token_charge_response.rbi +65 -0
  103. data/rbi/cloudpayments_ruby/models/subscription.rbi +260 -0
  104. data/rbi/cloudpayments_ruby/models/subscription_cancel_params.rbi +43 -0
  105. data/rbi/cloudpayments_ruby/models/subscription_cancel_response.rbi +42 -0
  106. data/rbi/cloudpayments_ruby/models/subscription_create_params.rbi +143 -0
  107. data/rbi/cloudpayments_ruby/models/subscription_create_response.rbi +63 -0
  108. data/rbi/cloudpayments_ruby/models/subscription_find_params.rbi +46 -0
  109. data/rbi/cloudpayments_ruby/models/subscription_find_response.rbi +65 -0
  110. data/rbi/cloudpayments_ruby/models/subscription_get_params.rbi +43 -0
  111. data/rbi/cloudpayments_ruby/models/subscription_get_response.rbi +63 -0
  112. data/rbi/cloudpayments_ruby/models/subscription_update_params.rbi +156 -0
  113. data/rbi/cloudpayments_ruby/models/subscription_update_response.rbi +63 -0
  114. data/rbi/cloudpayments_ruby/models/transaction.rbi +594 -0
  115. data/rbi/cloudpayments_ruby/models.rbi +35 -0
  116. data/rbi/cloudpayments_ruby/request_options.rbi +64 -0
  117. data/rbi/cloudpayments_ruby/resources/orders.rbi +95 -0
  118. data/rbi/cloudpayments_ruby/resources/payments/tokens.rbi +117 -0
  119. data/rbi/cloudpayments_ruby/resources/payments.rbi +214 -0
  120. data/rbi/cloudpayments_ruby/resources/subscriptions.rbi +159 -0
  121. data/rbi/cloudpayments_ruby/version.rbi +5 -0
  122. data/sig/cloudpayments_ruby/client.rbs +33 -0
  123. data/sig/cloudpayments_ruby/errors.rbs +117 -0
  124. data/sig/cloudpayments_ruby/file_part.rbs +21 -0
  125. data/sig/cloudpayments_ruby/internal/transport/base_client.rbs +133 -0
  126. data/sig/cloudpayments_ruby/internal/transport/pooled_net_requester.rbs +48 -0
  127. data/sig/cloudpayments_ruby/internal/type/array_of.rbs +48 -0
  128. data/sig/cloudpayments_ruby/internal/type/base_model.rbs +106 -0
  129. data/sig/cloudpayments_ruby/internal/type/base_page.rbs +24 -0
  130. data/sig/cloudpayments_ruby/internal/type/boolean.rbs +26 -0
  131. data/sig/cloudpayments_ruby/internal/type/converter.rbs +79 -0
  132. data/sig/cloudpayments_ruby/internal/type/enum.rbs +32 -0
  133. data/sig/cloudpayments_ruby/internal/type/file_input.rbs +25 -0
  134. data/sig/cloudpayments_ruby/internal/type/hash_of.rbs +48 -0
  135. data/sig/cloudpayments_ruby/internal/type/request_parameters.rbs +20 -0
  136. data/sig/cloudpayments_ruby/internal/type/union.rbs +52 -0
  137. data/sig/cloudpayments_ruby/internal/type/unknown.rbs +26 -0
  138. data/sig/cloudpayments_ruby/internal/util.rbs +185 -0
  139. data/sig/cloudpayments_ruby/internal.rbs +10 -0
  140. data/sig/cloudpayments_ruby/models/order_cancel_params.rbs +23 -0
  141. data/sig/cloudpayments_ruby/models/order_cancel_response.rbs +17 -0
  142. data/sig/cloudpayments_ruby/models/order_create_params.rbs +136 -0
  143. data/sig/cloudpayments_ruby/models/order_create_response.rbs +146 -0
  144. data/sig/cloudpayments_ruby/models/payment_auth_params.rbs +197 -0
  145. data/sig/cloudpayments_ruby/models/payment_auth_response.rbs +151 -0
  146. data/sig/cloudpayments_ruby/models/payment_charge_params.rbs +197 -0
  147. data/sig/cloudpayments_ruby/models/payment_charge_response.rbs +151 -0
  148. data/sig/cloudpayments_ruby/models/payment_confirm_params.rbs +34 -0
  149. data/sig/cloudpayments_ruby/models/payment_confirm_response.rbs +17 -0
  150. data/sig/cloudpayments_ruby/models/payment_post3ds_params.rbs +28 -0
  151. data/sig/cloudpayments_ruby/models/payment_post3ds_response.rbs +32 -0
  152. data/sig/cloudpayments_ruby/models/payment_refund_params.rbs +34 -0
  153. data/sig/cloudpayments_ruby/models/payment_refund_response.rbs +46 -0
  154. data/sig/cloudpayments_ruby/models/payment_void_params.rbs +24 -0
  155. data/sig/cloudpayments_ruby/models/payment_void_response.rbs +17 -0
  156. data/sig/cloudpayments_ruby/models/payments/token_auth_params.rbs +183 -0
  157. data/sig/cloudpayments_ruby/models/payments/token_auth_response.rbs +38 -0
  158. data/sig/cloudpayments_ruby/models/payments/token_charge_params.rbs +183 -0
  159. data/sig/cloudpayments_ruby/models/payments/token_charge_response.rbs +38 -0
  160. data/sig/cloudpayments_ruby/models/subscription.rbs +158 -0
  161. data/sig/cloudpayments_ruby/models/subscription_cancel_params.rbs +23 -0
  162. data/sig/cloudpayments_ruby/models/subscription_cancel_response.rbs +17 -0
  163. data/sig/cloudpayments_ruby/models/subscription_create_params.rbs +87 -0
  164. data/sig/cloudpayments_ruby/models/subscription_create_response.rbs +32 -0
  165. data/sig/cloudpayments_ruby/models/subscription_find_params.rbs +24 -0
  166. data/sig/cloudpayments_ruby/models/subscription_find_response.rbs +36 -0
  167. data/sig/cloudpayments_ruby/models/subscription_get_params.rbs +23 -0
  168. data/sig/cloudpayments_ruby/models/subscription_get_response.rbs +32 -0
  169. data/sig/cloudpayments_ruby/models/subscription_update_params.rbs +96 -0
  170. data/sig/cloudpayments_ruby/models/subscription_update_response.rbs +32 -0
  171. data/sig/cloudpayments_ruby/models/transaction.rbs +369 -0
  172. data/sig/cloudpayments_ruby/models.rbs +33 -0
  173. data/sig/cloudpayments_ruby/request_options.rbs +36 -0
  174. data/sig/cloudpayments_ruby/resources/orders.rbs +33 -0
  175. data/sig/cloudpayments_ruby/resources/payments/tokens.rbs +41 -0
  176. data/sig/cloudpayments_ruby/resources/payments.rbs +70 -0
  177. data/sig/cloudpayments_ruby/resources/subscriptions.rbs +53 -0
  178. data/sig/cloudpayments_ruby/version.rbs +3 -0
  179. metadata +250 -0
@@ -0,0 +1,219 @@
1
+ # typed: strong
2
+
3
+ module CloudpaymentsRuby
4
+ module Models
5
+ class OrderCreateParams < CloudpaymentsRuby::Internal::Type::BaseModel
6
+ extend CloudpaymentsRuby::Internal::Type::RequestParameters::Converter
7
+ include CloudpaymentsRuby::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ CloudpaymentsRuby::OrderCreateParams,
13
+ CloudpaymentsRuby::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ # Сумма платежа
18
+ sig { returns(Float) }
19
+ attr_accessor :amount
20
+
21
+ # Описание платежа
22
+ sig { returns(String) }
23
+ attr_accessor :description
24
+
25
+ # Идентификатор пользователя
26
+ sig { returns(T.nilable(String)) }
27
+ attr_reader :account_id
28
+
29
+ sig { params(account_id: String).void }
30
+ attr_writer :account_id
31
+
32
+ # Язык уведомлений (ru-RU, en-US)
33
+ sig { returns(T.nilable(String)) }
34
+ attr_reader :culture_name
35
+
36
+ sig { params(culture_name: String).void }
37
+ attr_writer :culture_name
38
+
39
+ # Валюта (RUB по умолчанию)
40
+ sig { returns(T.nilable(String)) }
41
+ attr_reader :currency
42
+
43
+ sig { params(currency: String).void }
44
+ attr_writer :currency
45
+
46
+ # Email плательщика
47
+ sig { returns(T.nilable(String)) }
48
+ attr_reader :email
49
+
50
+ sig { params(email: String).void }
51
+ attr_writer :email
52
+
53
+ # URL редиректа при неуспешной оплате
54
+ sig { returns(T.nilable(String)) }
55
+ attr_reader :fail_redirect_url
56
+
57
+ sig { params(fail_redirect_url: String).void }
58
+ attr_writer :fail_redirect_url
59
+
60
+ # Номер заказа в системе мерчанта
61
+ sig { returns(T.nilable(String)) }
62
+ attr_reader :invoice_id
63
+
64
+ sig { params(invoice_id: String).void }
65
+ attr_writer :invoice_id
66
+
67
+ # Дополнительные данные (JSON)
68
+ sig { returns(T.nilable(T.anything)) }
69
+ attr_reader :json_data
70
+
71
+ sig { params(json_data: T.anything).void }
72
+ attr_writer :json_data
73
+
74
+ # Ссылка на оферту
75
+ sig { returns(T.nilable(String)) }
76
+ attr_reader :offer_uri
77
+
78
+ sig { params(offer_uri: String).void }
79
+ attr_writer :offer_uri
80
+
81
+ # Телефон плательщика
82
+ sig { returns(T.nilable(String)) }
83
+ attr_reader :phone
84
+
85
+ sig { params(phone: String).void }
86
+ attr_writer :phone
87
+
88
+ # Требуется подтверждение (двухстадийная схема)
89
+ sig { returns(T.nilable(T::Boolean)) }
90
+ attr_reader :require_confirmation
91
+
92
+ sig { params(require_confirmation: T::Boolean).void }
93
+ attr_writer :require_confirmation
94
+
95
+ # Отправить ссылку на email
96
+ sig { returns(T.nilable(T::Boolean)) }
97
+ attr_reader :send_email
98
+
99
+ sig { params(send_email: T::Boolean).void }
100
+ attr_writer :send_email
101
+
102
+ # Отправить ссылку по SMS
103
+ sig { returns(T.nilable(T::Boolean)) }
104
+ attr_reader :send_sms
105
+
106
+ sig { params(send_sms: T::Boolean).void }
107
+ attr_writer :send_sms
108
+
109
+ # Отправить ссылку через Viber
110
+ sig { returns(T.nilable(T::Boolean)) }
111
+ attr_reader :send_viber
112
+
113
+ sig { params(send_viber: T::Boolean).void }
114
+ attr_writer :send_viber
115
+
116
+ # Поведение подписки: CreateWeekly, CreateMonthly
117
+ sig { returns(T.nilable(String)) }
118
+ attr_reader :subscription_behavior
119
+
120
+ sig { params(subscription_behavior: String).void }
121
+ attr_writer :subscription_behavior
122
+
123
+ # URL редиректа при успешной оплате
124
+ sig { returns(T.nilable(String)) }
125
+ attr_reader :success_redirect_url
126
+
127
+ sig { params(success_redirect_url: String).void }
128
+ attr_writer :success_redirect_url
129
+
130
+ sig do
131
+ params(
132
+ amount: Float,
133
+ description: String,
134
+ account_id: String,
135
+ culture_name: String,
136
+ currency: String,
137
+ email: String,
138
+ fail_redirect_url: String,
139
+ invoice_id: String,
140
+ json_data: T.anything,
141
+ offer_uri: String,
142
+ phone: String,
143
+ require_confirmation: T::Boolean,
144
+ send_email: T::Boolean,
145
+ send_sms: T::Boolean,
146
+ send_viber: T::Boolean,
147
+ subscription_behavior: String,
148
+ success_redirect_url: String,
149
+ request_options: CloudpaymentsRuby::RequestOptions::OrHash
150
+ ).returns(T.attached_class)
151
+ end
152
+ def self.new(
153
+ # Сумма платежа
154
+ amount:,
155
+ # Описание платежа
156
+ description:,
157
+ # Идентификатор пользователя
158
+ account_id: nil,
159
+ # Язык уведомлений (ru-RU, en-US)
160
+ culture_name: nil,
161
+ # Валюта (RUB по умолчанию)
162
+ currency: nil,
163
+ # Email плательщика
164
+ email: nil,
165
+ # URL редиректа при неуспешной оплате
166
+ fail_redirect_url: nil,
167
+ # Номер заказа в системе мерчанта
168
+ invoice_id: nil,
169
+ # Дополнительные данные (JSON)
170
+ json_data: nil,
171
+ # Ссылка на оферту
172
+ offer_uri: nil,
173
+ # Телефон плательщика
174
+ phone: nil,
175
+ # Требуется подтверждение (двухстадийная схема)
176
+ require_confirmation: nil,
177
+ # Отправить ссылку на email
178
+ send_email: nil,
179
+ # Отправить ссылку по SMS
180
+ send_sms: nil,
181
+ # Отправить ссылку через Viber
182
+ send_viber: nil,
183
+ # Поведение подписки: CreateWeekly, CreateMonthly
184
+ subscription_behavior: nil,
185
+ # URL редиректа при успешной оплате
186
+ success_redirect_url: nil,
187
+ request_options: {}
188
+ )
189
+ end
190
+
191
+ sig do
192
+ override.returns(
193
+ {
194
+ amount: Float,
195
+ description: String,
196
+ account_id: String,
197
+ culture_name: String,
198
+ currency: String,
199
+ email: String,
200
+ fail_redirect_url: String,
201
+ invoice_id: String,
202
+ json_data: T.anything,
203
+ offer_uri: String,
204
+ phone: String,
205
+ require_confirmation: T::Boolean,
206
+ send_email: T::Boolean,
207
+ send_sms: T::Boolean,
208
+ send_viber: T::Boolean,
209
+ subscription_behavior: String,
210
+ success_redirect_url: String,
211
+ request_options: CloudpaymentsRuby::RequestOptions
212
+ }
213
+ )
214
+ end
215
+ def to_hash
216
+ end
217
+ end
218
+ end
219
+ end
@@ -0,0 +1,255 @@
1
+ # typed: strong
2
+
3
+ module CloudpaymentsRuby
4
+ module Models
5
+ class OrderCreateResponse < CloudpaymentsRuby::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ CloudpaymentsRuby::Models::OrderCreateResponse,
10
+ CloudpaymentsRuby::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Результат выполнения запроса
15
+ sig { returns(T::Boolean) }
16
+ attr_accessor :success
17
+
18
+ # Описание ошибки (при наличии)
19
+ sig { returns(T.nilable(String)) }
20
+ attr_reader :message
21
+
22
+ sig { params(message: String).void }
23
+ attr_writer :message
24
+
25
+ # Модель заказа (счёта)
26
+ sig do
27
+ returns(
28
+ T.nilable(CloudpaymentsRuby::Models::OrderCreateResponse::Model)
29
+ )
30
+ end
31
+ attr_reader :model
32
+
33
+ sig do
34
+ params(
35
+ model: CloudpaymentsRuby::Models::OrderCreateResponse::Model::OrHash
36
+ ).void
37
+ end
38
+ attr_writer :model
39
+
40
+ # Базовый ответ API
41
+ sig do
42
+ params(
43
+ success: T::Boolean,
44
+ message: String,
45
+ model: CloudpaymentsRuby::Models::OrderCreateResponse::Model::OrHash
46
+ ).returns(T.attached_class)
47
+ end
48
+ def self.new(
49
+ # Результат выполнения запроса
50
+ success:,
51
+ # Описание ошибки (при наличии)
52
+ message: nil,
53
+ # Модель заказа (счёта)
54
+ model: nil
55
+ )
56
+ end
57
+
58
+ sig do
59
+ override.returns(
60
+ {
61
+ success: T::Boolean,
62
+ message: String,
63
+ model: CloudpaymentsRuby::Models::OrderCreateResponse::Model
64
+ }
65
+ )
66
+ end
67
+ def to_hash
68
+ end
69
+
70
+ class Model < CloudpaymentsRuby::Internal::Type::BaseModel
71
+ OrHash =
72
+ T.type_alias do
73
+ T.any(
74
+ CloudpaymentsRuby::Models::OrderCreateResponse::Model,
75
+ CloudpaymentsRuby::Internal::AnyHash
76
+ )
77
+ end
78
+
79
+ # Сумма платежа
80
+ sig { returns(Float) }
81
+ attr_accessor :amount
82
+
83
+ # Дата создания (формат /Date(...)/)
84
+ sig { returns(String) }
85
+ attr_accessor :created_date
86
+
87
+ # Дата создания ISO
88
+ sig { returns(String) }
89
+ attr_accessor :created_date_iso
90
+
91
+ # Язык
92
+ sig { returns(String) }
93
+ attr_accessor :culture_name
94
+
95
+ # Валюта
96
+ sig { returns(String) }
97
+ attr_accessor :currency
98
+
99
+ # Код валюты
100
+ sig { returns(Integer) }
101
+ attr_accessor :currency_code
102
+
103
+ # Описание платежа
104
+ sig { returns(String) }
105
+ attr_accessor :description
106
+
107
+ # Идентификатор заказа
108
+ sig { returns(String) }
109
+ attr_accessor :id
110
+
111
+ # Внутренний ID
112
+ sig { returns(Integer) }
113
+ attr_accessor :internal_id
114
+
115
+ # Номер заказа
116
+ sig { returns(Integer) }
117
+ attr_accessor :number
118
+
119
+ # Требуется подтверждение (двухстадийная схема)
120
+ sig { returns(T::Boolean) }
121
+ attr_accessor :require_confirmation
122
+
123
+ # Статус
124
+ sig { returns(String) }
125
+ attr_accessor :status
126
+
127
+ # Код статуса
128
+ sig { returns(Integer) }
129
+ attr_accessor :status_code
130
+
131
+ # Ссылка на оплату
132
+ sig { returns(String) }
133
+ attr_accessor :url
134
+
135
+ # Email плательщика
136
+ sig { returns(T.nilable(String)) }
137
+ attr_reader :email
138
+
139
+ sig { params(email: String).void }
140
+ attr_writer :email
141
+
142
+ # Дата оплаты
143
+ sig { returns(T.nilable(String)) }
144
+ attr_reader :payment_date
145
+
146
+ sig { params(payment_date: String).void }
147
+ attr_writer :payment_date
148
+
149
+ # Дата оплаты ISO
150
+ sig { returns(T.nilable(String)) }
151
+ attr_reader :payment_date_iso
152
+
153
+ sig { params(payment_date_iso: String).void }
154
+ attr_writer :payment_date_iso
155
+
156
+ # Телефон плательщика
157
+ sig { returns(T.nilable(String)) }
158
+ attr_reader :phone
159
+
160
+ sig { params(phone: String).void }
161
+ attr_writer :phone
162
+
163
+ # Модель заказа (счёта)
164
+ sig do
165
+ params(
166
+ amount: Float,
167
+ created_date: String,
168
+ created_date_iso: String,
169
+ culture_name: String,
170
+ currency: String,
171
+ currency_code: Integer,
172
+ description: String,
173
+ id: String,
174
+ internal_id: Integer,
175
+ number: Integer,
176
+ require_confirmation: T::Boolean,
177
+ status: String,
178
+ status_code: Integer,
179
+ url: String,
180
+ email: String,
181
+ payment_date: String,
182
+ payment_date_iso: String,
183
+ phone: String
184
+ ).returns(T.attached_class)
185
+ end
186
+ def self.new(
187
+ # Сумма платежа
188
+ amount:,
189
+ # Дата создания (формат /Date(...)/)
190
+ created_date:,
191
+ # Дата создания ISO
192
+ created_date_iso:,
193
+ # Язык
194
+ culture_name:,
195
+ # Валюта
196
+ currency:,
197
+ # Код валюты
198
+ currency_code:,
199
+ # Описание платежа
200
+ description:,
201
+ # Идентификатор заказа
202
+ id:,
203
+ # Внутренний ID
204
+ internal_id:,
205
+ # Номер заказа
206
+ number:,
207
+ # Требуется подтверждение (двухстадийная схема)
208
+ require_confirmation:,
209
+ # Статус
210
+ status:,
211
+ # Код статуса
212
+ status_code:,
213
+ # Ссылка на оплату
214
+ url:,
215
+ # Email плательщика
216
+ email: nil,
217
+ # Дата оплаты
218
+ payment_date: nil,
219
+ # Дата оплаты ISO
220
+ payment_date_iso: nil,
221
+ # Телефон плательщика
222
+ phone: nil
223
+ )
224
+ end
225
+
226
+ sig do
227
+ override.returns(
228
+ {
229
+ amount: Float,
230
+ created_date: String,
231
+ created_date_iso: String,
232
+ culture_name: String,
233
+ currency: String,
234
+ currency_code: Integer,
235
+ description: String,
236
+ id: String,
237
+ internal_id: Integer,
238
+ number: Integer,
239
+ require_confirmation: T::Boolean,
240
+ status: String,
241
+ status_code: Integer,
242
+ url: String,
243
+ email: String,
244
+ payment_date: String,
245
+ payment_date_iso: String,
246
+ phone: String
247
+ }
248
+ )
249
+ end
250
+ def to_hash
251
+ end
252
+ end
253
+ end
254
+ end
255
+ end