yoomoney 0.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 (413) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +17 -0
  4. data/README.md +246 -0
  5. data/SECURITY.md +23 -0
  6. data/lib/yoomoney/client.rb +110 -0
  7. data/lib/yoomoney/errors.rb +228 -0
  8. data/lib/yoomoney/file_part.rb +58 -0
  9. data/lib/yoomoney/internal/transport/base_client.rb +567 -0
  10. data/lib/yoomoney/internal/transport/pooled_net_requester.rb +210 -0
  11. data/lib/yoomoney/internal/type/array_of.rb +168 -0
  12. data/lib/yoomoney/internal/type/base_model.rb +531 -0
  13. data/lib/yoomoney/internal/type/base_page.rb +55 -0
  14. data/lib/yoomoney/internal/type/boolean.rb +77 -0
  15. data/lib/yoomoney/internal/type/converter.rb +327 -0
  16. data/lib/yoomoney/internal/type/enum.rb +156 -0
  17. data/lib/yoomoney/internal/type/file_input.rb +111 -0
  18. data/lib/yoomoney/internal/type/hash_of.rb +188 -0
  19. data/lib/yoomoney/internal/type/request_parameters.rb +42 -0
  20. data/lib/yoomoney/internal/type/union.rb +237 -0
  21. data/lib/yoomoney/internal/type/unknown.rb +81 -0
  22. data/lib/yoomoney/internal/util.rb +920 -0
  23. data/lib/yoomoney/internal.rb +20 -0
  24. data/lib/yoomoney/models/airline.rb +77 -0
  25. data/lib/yoomoney/models/b2b_sberbank_calculated_vat_data.rb +24 -0
  26. data/lib/yoomoney/models/b2b_sberbank_mixed_vat_data.rb +16 -0
  27. data/lib/yoomoney/models/b2b_sberbank_untaxed_vat_data.rb +27 -0
  28. data/lib/yoomoney/models/b2b_sberbank_vat_data.rb +27 -0
  29. data/lib/yoomoney/models/bank_card_data.rb +95 -0
  30. data/lib/yoomoney/models/bank_card_type.rb +28 -0
  31. data/lib/yoomoney/models/card_request_data_with_csc.rb +48 -0
  32. data/lib/yoomoney/models/confirmation.rb +32 -0
  33. data/lib/yoomoney/models/confirmation_data.rb +40 -0
  34. data/lib/yoomoney/models/deal_create_params.rb +59 -0
  35. data/lib/yoomoney/models/deal_list_params.rb +116 -0
  36. data/lib/yoomoney/models/deal_list_response.rb +28 -0
  37. data/lib/yoomoney/models/deal_retrieve_params.rb +14 -0
  38. data/lib/yoomoney/models/deal_type.rb +14 -0
  39. data/lib/yoomoney/models/delivery_method.rb +16 -0
  40. data/lib/yoomoney/models/delivery_method_data.rb +16 -0
  41. data/lib/yoomoney/models/electronic_certificate_refund_article.rb +33 -0
  42. data/lib/yoomoney/models/fee_moment.rb +15 -0
  43. data/lib/yoomoney/models/industry_details.rb +33 -0
  44. data/lib/yoomoney/models/invoice.rb +174 -0
  45. data/lib/yoomoney/models/invoice_create_params.rb +179 -0
  46. data/lib/yoomoney/models/invoice_retrieve_params.rb +14 -0
  47. data/lib/yoomoney/models/invoicing_bank_card_data.rb +39 -0
  48. data/lib/yoomoney/models/line_item.rb +40 -0
  49. data/lib/yoomoney/models/locale.rb +15 -0
  50. data/lib/yoomoney/models/mark_code_info.rb +75 -0
  51. data/lib/yoomoney/models/mark_quantity.rb +21 -0
  52. data/lib/yoomoney/models/me_retrieve_params.rb +20 -0
  53. data/lib/yoomoney/models/me_retrieve_response.rb +143 -0
  54. data/lib/yoomoney/models/monetary_amount.rb +51 -0
  55. data/lib/yoomoney/models/notification_event_type.rb +17 -0
  56. data/lib/yoomoney/models/operational_details.rb +27 -0
  57. data/lib/yoomoney/models/payment.rb +707 -0
  58. data/lib/yoomoney/models/payment_cancel_params.rb +20 -0
  59. data/lib/yoomoney/models/payment_capture_params.rb +61 -0
  60. data/lib/yoomoney/models/payment_create_params.rb +586 -0
  61. data/lib/yoomoney/models/payment_deal_info.rb +40 -0
  62. data/lib/yoomoney/models/payment_list_params.rb +106 -0
  63. data/lib/yoomoney/models/payment_list_response.rb +33 -0
  64. data/lib/yoomoney/models/payment_method.rb +48 -0
  65. data/lib/yoomoney/models/payment_method_create_params.rb +188 -0
  66. data/lib/yoomoney/models/payment_method_data.rb +16 -0
  67. data/lib/yoomoney/models/payment_method_retrieve_params.rb +14 -0
  68. data/lib/yoomoney/models/payment_method_status.rb +16 -0
  69. data/lib/yoomoney/models/payment_method_type.rb +31 -0
  70. data/lib/yoomoney/models/payment_methods_confirmation_type.rb +14 -0
  71. data/lib/yoomoney/models/payment_retrieve_params.rb +14 -0
  72. data/lib/yoomoney/models/payment_status.rb +17 -0
  73. data/lib/yoomoney/models/payout.rb +268 -0
  74. data/lib/yoomoney/models/payout_create_params.rb +171 -0
  75. data/lib/yoomoney/models/payout_deal_info.rb +16 -0
  76. data/lib/yoomoney/models/payout_destination.rb +30 -0
  77. data/lib/yoomoney/models/payout_destination_data.rb +16 -0
  78. data/lib/yoomoney/models/payout_destination_data_type.rb +16 -0
  79. data/lib/yoomoney/models/payout_list_params.rb +94 -0
  80. data/lib/yoomoney/models/payout_retrieve_params.rb +14 -0
  81. data/lib/yoomoney/models/payout_search_params.rb +60 -0
  82. data/lib/yoomoney/models/payout_status.rb +16 -0
  83. data/lib/yoomoney/models/payouts_list.rb +33 -0
  84. data/lib/yoomoney/models/personal_data.rb +90 -0
  85. data/lib/yoomoney/models/personal_data_create_params.rb +67 -0
  86. data/lib/yoomoney/models/personal_data_request.rb +30 -0
  87. data/lib/yoomoney/models/personal_data_retrieve_params.rb +14 -0
  88. data/lib/yoomoney/models/personal_data_type.rb +15 -0
  89. data/lib/yoomoney/models/receipt.rb +277 -0
  90. data/lib/yoomoney/models/receipt_create_params.rb +304 -0
  91. data/lib/yoomoney/models/receipt_data.rb +171 -0
  92. data/lib/yoomoney/models/receipt_data_customer.rb +33 -0
  93. data/lib/yoomoney/models/receipt_item_agent_type.rb +20 -0
  94. data/lib/yoomoney/models/receipt_item_measure.rb +37 -0
  95. data/lib/yoomoney/models/receipt_item_payment_mode.rb +20 -0
  96. data/lib/yoomoney/models/receipt_item_payment_subject.rb +46 -0
  97. data/lib/yoomoney/models/receipt_item_supplier.rb +21 -0
  98. data/lib/yoomoney/models/receipt_list_params.rb +78 -0
  99. data/lib/yoomoney/models/receipt_list_response.rb +28 -0
  100. data/lib/yoomoney/models/receipt_registration_status.rb +16 -0
  101. data/lib/yoomoney/models/receipt_retrieve_params.rb +14 -0
  102. data/lib/yoomoney/models/receipt_type.rb +15 -0
  103. data/lib/yoomoney/models/receiver.rb +30 -0
  104. data/lib/yoomoney/models/recipient.rb +20 -0
  105. data/lib/yoomoney/models/refund.rb +248 -0
  106. data/lib/yoomoney/models/refund_create_params.rb +133 -0
  107. data/lib/yoomoney/models/refund_list_params.rb +72 -0
  108. data/lib/yoomoney/models/refund_list_response.rb +28 -0
  109. data/lib/yoomoney/models/refund_method.rb +15 -0
  110. data/lib/yoomoney/models/refund_method_type.rb +15 -0
  111. data/lib/yoomoney/models/refund_retrieve_params.rb +14 -0
  112. data/lib/yoomoney/models/refund_sources_data.rb +32 -0
  113. data/lib/yoomoney/models/refund_status.rb +16 -0
  114. data/lib/yoomoney/models/safe_deal.rb +116 -0
  115. data/lib/yoomoney/models/save_payment_method_bank_card.rb +85 -0
  116. data/lib/yoomoney/models/sbp_bank_list_params.rb +14 -0
  117. data/lib/yoomoney/models/sbp_bank_list_response.rb +49 -0
  118. data/lib/yoomoney/models/settlement.rb +24 -0
  119. data/lib/yoomoney/models/settlement_item_type.rb +14 -0
  120. data/lib/yoomoney/models/transfer_data.rb +36 -0
  121. data/lib/yoomoney/models/webhook.rb +33 -0
  122. data/lib/yoomoney/models/webhook_create_params.rb +37 -0
  123. data/lib/yoomoney/models/webhook_delete_params.rb +14 -0
  124. data/lib/yoomoney/models/webhook_delete_response.rb +8 -0
  125. data/lib/yoomoney/models/webhook_list_params.rb +14 -0
  126. data/lib/yoomoney/models/webhook_list_response.rb +22 -0
  127. data/lib/yoomoney/models.rb +231 -0
  128. data/lib/yoomoney/request_options.rb +77 -0
  129. data/lib/yoomoney/resources/deals.rb +94 -0
  130. data/lib/yoomoney/resources/invoices.rb +72 -0
  131. data/lib/yoomoney/resources/me.rb +35 -0
  132. data/lib/yoomoney/resources/payment_methods.rb +68 -0
  133. data/lib/yoomoney/resources/payments.rb +182 -0
  134. data/lib/yoomoney/resources/payouts.rb +124 -0
  135. data/lib/yoomoney/resources/personal_data.rb +70 -0
  136. data/lib/yoomoney/resources/receipts.rb +111 -0
  137. data/lib/yoomoney/resources/refunds.rb +101 -0
  138. data/lib/yoomoney/resources/sbp_banks.rb +32 -0
  139. data/lib/yoomoney/resources/webhooks.rb +79 -0
  140. data/lib/yoomoney/version.rb +5 -0
  141. data/lib/yoomoney.rb +169 -0
  142. data/manifest.yaml +17 -0
  143. data/rbi/yoomoney/client.rbi +82 -0
  144. data/rbi/yoomoney/errors.rbi +205 -0
  145. data/rbi/yoomoney/file_part.rbi +37 -0
  146. data/rbi/yoomoney/internal/transport/base_client.rbi +292 -0
  147. data/rbi/yoomoney/internal/transport/pooled_net_requester.rbi +83 -0
  148. data/rbi/yoomoney/internal/type/array_of.rbi +104 -0
  149. data/rbi/yoomoney/internal/type/base_model.rbi +306 -0
  150. data/rbi/yoomoney/internal/type/base_page.rbi +42 -0
  151. data/rbi/yoomoney/internal/type/boolean.rbi +58 -0
  152. data/rbi/yoomoney/internal/type/converter.rbi +216 -0
  153. data/rbi/yoomoney/internal/type/enum.rbi +82 -0
  154. data/rbi/yoomoney/internal/type/file_input.rbi +59 -0
  155. data/rbi/yoomoney/internal/type/hash_of.rbi +104 -0
  156. data/rbi/yoomoney/internal/type/request_parameters.rbi +29 -0
  157. data/rbi/yoomoney/internal/type/union.rbi +128 -0
  158. data/rbi/yoomoney/internal/type/unknown.rbi +58 -0
  159. data/rbi/yoomoney/internal/util.rbi +487 -0
  160. data/rbi/yoomoney/internal.rbi +16 -0
  161. data/rbi/yoomoney/models/airline.rbi +141 -0
  162. data/rbi/yoomoney/models/b2b_sberbank_calculated_vat_data.rbi +45 -0
  163. data/rbi/yoomoney/models/b2b_sberbank_mixed_vat_data.rbi +34 -0
  164. data/rbi/yoomoney/models/b2b_sberbank_untaxed_vat_data.rbi +65 -0
  165. data/rbi/yoomoney/models/b2b_sberbank_vat_data.rbi +51 -0
  166. data/rbi/yoomoney/models/bank_card_data.rbi +156 -0
  167. data/rbi/yoomoney/models/bank_card_type.rbi +34 -0
  168. data/rbi/yoomoney/models/card_request_data_with_csc.rbi +75 -0
  169. data/rbi/yoomoney/models/confirmation.rbi +55 -0
  170. data/rbi/yoomoney/models/confirmation_data.rbi +78 -0
  171. data/rbi/yoomoney/models/deal_create_params.rbi +85 -0
  172. data/rbi/yoomoney/models/deal_list_params.rbi +204 -0
  173. data/rbi/yoomoney/models/deal_list_response.rbi +46 -0
  174. data/rbi/yoomoney/models/deal_retrieve_params.rbi +27 -0
  175. data/rbi/yoomoney/models/deal_type.rbi +18 -0
  176. data/rbi/yoomoney/models/delivery_method.rbi +27 -0
  177. data/rbi/yoomoney/models/delivery_method_data.rbi +27 -0
  178. data/rbi/yoomoney/models/electronic_certificate_refund_article.rbi +56 -0
  179. data/rbi/yoomoney/models/fee_moment.rbi +20 -0
  180. data/rbi/yoomoney/models/industry_details.rbi +48 -0
  181. data/rbi/yoomoney/models/invoice.rbi +266 -0
  182. data/rbi/yoomoney/models/invoice_create_params.rbi +309 -0
  183. data/rbi/yoomoney/models/invoice_retrieve_params.rbi +27 -0
  184. data/rbi/yoomoney/models/invoicing_bank_card_data.rbi +53 -0
  185. data/rbi/yoomoney/models/line_item.rbi +65 -0
  186. data/rbi/yoomoney/models/locale.rbi +19 -0
  187. data/rbi/yoomoney/models/mark_code_info.rbi +128 -0
  188. data/rbi/yoomoney/models/mark_quantity.rbi +30 -0
  189. data/rbi/yoomoney/models/me_retrieve_params.rbi +38 -0
  190. data/rbi/yoomoney/models/me_retrieve_response.rbi +342 -0
  191. data/rbi/yoomoney/models/monetary_amount.rbi +77 -0
  192. data/rbi/yoomoney/models/notification_event_type.rbi +42 -0
  193. data/rbi/yoomoney/models/operational_details.rbi +37 -0
  194. data/rbi/yoomoney/models/payment.rbi +1347 -0
  195. data/rbi/yoomoney/models/payment_cancel_params.rbi +35 -0
  196. data/rbi/yoomoney/models/payment_capture_params.rbi +96 -0
  197. data/rbi/yoomoney/models/payment_create_params.rbi +1258 -0
  198. data/rbi/yoomoney/models/payment_deal_info.rbi +84 -0
  199. data/rbi/yoomoney/models/payment_list_params.rbi +187 -0
  200. data/rbi/yoomoney/models/payment_list_response.rbi +59 -0
  201. data/rbi/yoomoney/models/payment_method.rbi +72 -0
  202. data/rbi/yoomoney/models/payment_method_create_params.rbi +372 -0
  203. data/rbi/yoomoney/models/payment_method_data.rbi +31 -0
  204. data/rbi/yoomoney/models/payment_method_retrieve_params.rbi +30 -0
  205. data/rbi/yoomoney/models/payment_method_status.rbi +23 -0
  206. data/rbi/yoomoney/models/payment_method_type.rbi +45 -0
  207. data/rbi/yoomoney/models/payment_methods_confirmation_type.rbi +24 -0
  208. data/rbi/yoomoney/models/payment_retrieve_params.rbi +27 -0
  209. data/rbi/yoomoney/models/payment_status.rbi +22 -0
  210. data/rbi/yoomoney/models/payout.rbi +452 -0
  211. data/rbi/yoomoney/models/payout_create_params.rbi +350 -0
  212. data/rbi/yoomoney/models/payout_deal_info.rbi +27 -0
  213. data/rbi/yoomoney/models/payout_destination.rbi +58 -0
  214. data/rbi/yoomoney/models/payout_destination_data.rbi +35 -0
  215. data/rbi/yoomoney/models/payout_destination_data_type.rbi +27 -0
  216. data/rbi/yoomoney/models/payout_list_params.rbi +215 -0
  217. data/rbi/yoomoney/models/payout_retrieve_params.rbi +27 -0
  218. data/rbi/yoomoney/models/payout_search_params.rbi +110 -0
  219. data/rbi/yoomoney/models/payout_status.rbi +20 -0
  220. data/rbi/yoomoney/models/payouts_list.rbi +56 -0
  221. data/rbi/yoomoney/models/personal_data.rbi +132 -0
  222. data/rbi/yoomoney/models/personal_data_create_params.rbi +93 -0
  223. data/rbi/yoomoney/models/personal_data_request.rbi +54 -0
  224. data/rbi/yoomoney/models/personal_data_retrieve_params.rbi +30 -0
  225. data/rbi/yoomoney/models/personal_data_type.rbi +26 -0
  226. data/rbi/yoomoney/models/receipt.rbi +442 -0
  227. data/rbi/yoomoney/models/receipt_create_params.rbi +471 -0
  228. data/rbi/yoomoney/models/receipt_data.rbi +279 -0
  229. data/rbi/yoomoney/models/receipt_data_customer.rbi +55 -0
  230. data/rbi/yoomoney/models/receipt_item_agent_type.rbi +38 -0
  231. data/rbi/yoomoney/models/receipt_item_measure.rbi +52 -0
  232. data/rbi/yoomoney/models/receipt_item_payment_mode.rbi +37 -0
  233. data/rbi/yoomoney/models/receipt_item_payment_subject.rbi +119 -0
  234. data/rbi/yoomoney/models/receipt_item_supplier.rbi +32 -0
  235. data/rbi/yoomoney/models/receipt_list_params.rbi +137 -0
  236. data/rbi/yoomoney/models/receipt_list_response.rbi +49 -0
  237. data/rbi/yoomoney/models/receipt_registration_status.rbi +28 -0
  238. data/rbi/yoomoney/models/receipt_retrieve_params.rbi +27 -0
  239. data/rbi/yoomoney/models/receipt_type.rbi +19 -0
  240. data/rbi/yoomoney/models/receiver.rbi +50 -0
  241. data/rbi/yoomoney/models/recipient.rbi +27 -0
  242. data/rbi/yoomoney/models/refund.rbi +477 -0
  243. data/rbi/yoomoney/models/refund_create_params.rbi +249 -0
  244. data/rbi/yoomoney/models/refund_list_params.rbi +128 -0
  245. data/rbi/yoomoney/models/refund_list_response.rbi +49 -0
  246. data/rbi/yoomoney/models/refund_method.rbi +29 -0
  247. data/rbi/yoomoney/models/refund_method_type.rbi +22 -0
  248. data/rbi/yoomoney/models/refund_retrieve_params.rbi +27 -0
  249. data/rbi/yoomoney/models/refund_sources_data.rbi +59 -0
  250. data/rbi/yoomoney/models/refund_status.rbi +20 -0
  251. data/rbi/yoomoney/models/safe_deal.rbi +151 -0
  252. data/rbi/yoomoney/models/save_payment_method_bank_card.rbi +160 -0
  253. data/rbi/yoomoney/models/sbp_bank_list_params.rbi +27 -0
  254. data/rbi/yoomoney/models/sbp_bank_list_response.rbi +82 -0
  255. data/rbi/yoomoney/models/settlement.rbi +42 -0
  256. data/rbi/yoomoney/models/settlement_item_type.rbi +21 -0
  257. data/rbi/yoomoney/models/transfer_data.rbi +61 -0
  258. data/rbi/yoomoney/models/webhook.rbi +51 -0
  259. data/rbi/yoomoney/models/webhook_create_params.rbi +57 -0
  260. data/rbi/yoomoney/models/webhook_delete_params.rbi +27 -0
  261. data/rbi/yoomoney/models/webhook_delete_response.rbi +8 -0
  262. data/rbi/yoomoney/models/webhook_list_params.rbi +27 -0
  263. data/rbi/yoomoney/models/webhook_list_response.rbi +36 -0
  264. data/rbi/yoomoney/models.rbi +195 -0
  265. data/rbi/yoomoney/request_options.rbi +59 -0
  266. data/rbi/yoomoney/resources/deals.rbi +75 -0
  267. data/rbi/yoomoney/resources/invoices.rbi +63 -0
  268. data/rbi/yoomoney/resources/me.rbi +22 -0
  269. data/rbi/yoomoney/resources/payment_methods.rbi +51 -0
  270. data/rbi/yoomoney/resources/payments.rbi +186 -0
  271. data/rbi/yoomoney/resources/payouts.rbi +104 -0
  272. data/rbi/yoomoney/resources/personal_data.rbi +55 -0
  273. data/rbi/yoomoney/resources/receipts.rbi +102 -0
  274. data/rbi/yoomoney/resources/refunds.rbi +86 -0
  275. data/rbi/yoomoney/resources/sbp_banks.rbi +21 -0
  276. data/rbi/yoomoney/resources/webhooks.rbi +51 -0
  277. data/rbi/yoomoney/version.rbi +5 -0
  278. data/sig/yoomoney/client.rbs +47 -0
  279. data/sig/yoomoney/errors.rbs +117 -0
  280. data/sig/yoomoney/file_part.rbs +21 -0
  281. data/sig/yoomoney/internal/transport/base_client.rbs +131 -0
  282. data/sig/yoomoney/internal/transport/pooled_net_requester.rbs +48 -0
  283. data/sig/yoomoney/internal/type/array_of.rbs +48 -0
  284. data/sig/yoomoney/internal/type/base_model.rbs +102 -0
  285. data/sig/yoomoney/internal/type/base_page.rbs +24 -0
  286. data/sig/yoomoney/internal/type/boolean.rbs +26 -0
  287. data/sig/yoomoney/internal/type/converter.rbs +79 -0
  288. data/sig/yoomoney/internal/type/enum.rbs +32 -0
  289. data/sig/yoomoney/internal/type/file_input.rbs +25 -0
  290. data/sig/yoomoney/internal/type/hash_of.rbs +48 -0
  291. data/sig/yoomoney/internal/type/request_parameters.rbs +17 -0
  292. data/sig/yoomoney/internal/type/union.rbs +52 -0
  293. data/sig/yoomoney/internal/type/unknown.rbs +26 -0
  294. data/sig/yoomoney/internal/util.rbs +185 -0
  295. data/sig/yoomoney/internal.rbs +9 -0
  296. data/sig/yoomoney/models/airline.rbs +93 -0
  297. data/sig/yoomoney/models/b2b_sberbank_calculated_vat_data.rbs +20 -0
  298. data/sig/yoomoney/models/b2b_sberbank_mixed_vat_data.rbs +15 -0
  299. data/sig/yoomoney/models/b2b_sberbank_untaxed_vat_data.rbs +30 -0
  300. data/sig/yoomoney/models/b2b_sberbank_vat_data.rbs +28 -0
  301. data/sig/yoomoney/models/bank_card_data.rbs +100 -0
  302. data/sig/yoomoney/models/bank_card_type.rbs +42 -0
  303. data/sig/yoomoney/models/card_request_data_with_csc.rbs +44 -0
  304. data/sig/yoomoney/models/confirmation.rbs +27 -0
  305. data/sig/yoomoney/models/confirmation_data.rbs +41 -0
  306. data/sig/yoomoney/models/deal_create_params.rbs +50 -0
  307. data/sig/yoomoney/models/deal_list_params.rbs +128 -0
  308. data/sig/yoomoney/models/deal_list_response.rbs +28 -0
  309. data/sig/yoomoney/models/deal_retrieve_params.rbs +15 -0
  310. data/sig/yoomoney/models/deal_type.rbs +13 -0
  311. data/sig/yoomoney/models/delivery_method.rbs +13 -0
  312. data/sig/yoomoney/models/delivery_method_data.rbs +13 -0
  313. data/sig/yoomoney/models/electronic_certificate_refund_article.rbs +35 -0
  314. data/sig/yoomoney/models/fee_moment.rbs +14 -0
  315. data/sig/yoomoney/models/industry_details.rbs +35 -0
  316. data/sig/yoomoney/models/invoice.rbs +141 -0
  317. data/sig/yoomoney/models/invoice_create_params.rbs +167 -0
  318. data/sig/yoomoney/models/invoice_retrieve_params.rbs +15 -0
  319. data/sig/yoomoney/models/invoicing_bank_card_data.rbs +40 -0
  320. data/sig/yoomoney/models/line_item.rbs +39 -0
  321. data/sig/yoomoney/models/locale.rbs +14 -0
  322. data/sig/yoomoney/models/mark_code_info.rbs +92 -0
  323. data/sig/yoomoney/models/mark_quantity.rbs +15 -0
  324. data/sig/yoomoney/models/me_retrieve_params.rbs +25 -0
  325. data/sig/yoomoney/models/me_retrieve_response.rbs +158 -0
  326. data/sig/yoomoney/models/monetary_amount.rbs +55 -0
  327. data/sig/yoomoney/models/notification_event_type.rbs +20 -0
  328. data/sig/yoomoney/models/operational_details.rbs +22 -0
  329. data/sig/yoomoney/models/payment.rbs +696 -0
  330. data/sig/yoomoney/models/payment_cancel_params.rbs +23 -0
  331. data/sig/yoomoney/models/payment_capture_params.rbs +63 -0
  332. data/sig/yoomoney/models/payment_create_params.rbs +571 -0
  333. data/sig/yoomoney/models/payment_deal_info.rbs +47 -0
  334. data/sig/yoomoney/models/payment_list_params.rbs +119 -0
  335. data/sig/yoomoney/models/payment_list_response.rbs +28 -0
  336. data/sig/yoomoney/models/payment_method.rbs +42 -0
  337. data/sig/yoomoney/models/payment_method_create_params.rbs +200 -0
  338. data/sig/yoomoney/models/payment_method_data.rbs +13 -0
  339. data/sig/yoomoney/models/payment_method_retrieve_params.rbs +15 -0
  340. data/sig/yoomoney/models/payment_method_status.rbs +15 -0
  341. data/sig/yoomoney/models/payment_method_type.rbs +48 -0
  342. data/sig/yoomoney/models/payment_methods_confirmation_type.rbs +13 -0
  343. data/sig/yoomoney/models/payment_retrieve_params.rbs +15 -0
  344. data/sig/yoomoney/models/payment_status.rbs +17 -0
  345. data/sig/yoomoney/models/payout.rbs +259 -0
  346. data/sig/yoomoney/models/payout_create_params.rbs +164 -0
  347. data/sig/yoomoney/models/payout_deal_info.rbs +13 -0
  348. data/sig/yoomoney/models/payout_destination.rbs +26 -0
  349. data/sig/yoomoney/models/payout_destination_data.rbs +16 -0
  350. data/sig/yoomoney/models/payout_destination_data_type.rbs +15 -0
  351. data/sig/yoomoney/models/payout_list_params.rbs +117 -0
  352. data/sig/yoomoney/models/payout_retrieve_params.rbs +15 -0
  353. data/sig/yoomoney/models/payout_search_params.rbs +68 -0
  354. data/sig/yoomoney/models/payout_status.rbs +15 -0
  355. data/sig/yoomoney/models/payouts_list.rbs +28 -0
  356. data/sig/yoomoney/models/personal_data.rbs +70 -0
  357. data/sig/yoomoney/models/personal_data_create_params.rbs +55 -0
  358. data/sig/yoomoney/models/personal_data_request.rbs +27 -0
  359. data/sig/yoomoney/models/personal_data_retrieve_params.rbs +15 -0
  360. data/sig/yoomoney/models/personal_data_type.rbs +15 -0
  361. data/sig/yoomoney/models/receipt.rbs +293 -0
  362. data/sig/yoomoney/models/receipt_create_params.rbs +293 -0
  363. data/sig/yoomoney/models/receipt_data.rbs +192 -0
  364. data/sig/yoomoney/models/receipt_data_customer.rbs +38 -0
  365. data/sig/yoomoney/models/receipt_item_agent_type.rbs +26 -0
  366. data/sig/yoomoney/models/receipt_item_measure.rbs +60 -0
  367. data/sig/yoomoney/models/receipt_item_payment_mode.rbs +26 -0
  368. data/sig/yoomoney/models/receipt_item_payment_subject.rbs +78 -0
  369. data/sig/yoomoney/models/receipt_item_supplier.rbs +19 -0
  370. data/sig/yoomoney/models/receipt_list_params.rbs +91 -0
  371. data/sig/yoomoney/models/receipt_list_response.rbs +28 -0
  372. data/sig/yoomoney/models/receipt_registration_status.rbs +15 -0
  373. data/sig/yoomoney/models/receipt_retrieve_params.rbs +15 -0
  374. data/sig/yoomoney/models/receipt_type.rbs +14 -0
  375. data/sig/yoomoney/models/receiver.rbs +25 -0
  376. data/sig/yoomoney/models/recipient.rbs +13 -0
  377. data/sig/yoomoney/models/refund.rbs +245 -0
  378. data/sig/yoomoney/models/refund_create_params.rbs +133 -0
  379. data/sig/yoomoney/models/refund_list_params.rbs +84 -0
  380. data/sig/yoomoney/models/refund_list_response.rbs +28 -0
  381. data/sig/yoomoney/models/refund_method.rbs +13 -0
  382. data/sig/yoomoney/models/refund_method_type.rbs +14 -0
  383. data/sig/yoomoney/models/refund_retrieve_params.rbs +15 -0
  384. data/sig/yoomoney/models/refund_sources_data.rbs +34 -0
  385. data/sig/yoomoney/models/refund_status.rbs +15 -0
  386. data/sig/yoomoney/models/safe_deal.rbs +85 -0
  387. data/sig/yoomoney/models/save_payment_method_bank_card.rbs +97 -0
  388. data/sig/yoomoney/models/sbp_bank_list_params.rbs +15 -0
  389. data/sig/yoomoney/models/sbp_bank_list_response.rbs +39 -0
  390. data/sig/yoomoney/models/settlement.rbs +15 -0
  391. data/sig/yoomoney/models/settlement_item_type.rbs +13 -0
  392. data/sig/yoomoney/models/transfer_data.rbs +34 -0
  393. data/sig/yoomoney/models/webhook.rbs +30 -0
  394. data/sig/yoomoney/models/webhook_create_params.rbs +36 -0
  395. data/sig/yoomoney/models/webhook_delete_params.rbs +15 -0
  396. data/sig/yoomoney/models/webhook_delete_response.rbs +5 -0
  397. data/sig/yoomoney/models/webhook_list_params.rbs +15 -0
  398. data/sig/yoomoney/models/webhook_list_response.rbs +16 -0
  399. data/sig/yoomoney/models.rbs +191 -0
  400. data/sig/yoomoney/request_options.rbs +34 -0
  401. data/sig/yoomoney/resources/deals.rbs +31 -0
  402. data/sig/yoomoney/resources/invoices.rbs +23 -0
  403. data/sig/yoomoney/resources/me.rbs +12 -0
  404. data/sig/yoomoney/resources/payment_methods.rbs +21 -0
  405. data/sig/yoomoney/resources/payments.rbs +63 -0
  406. data/sig/yoomoney/resources/payouts.rbs +41 -0
  407. data/sig/yoomoney/resources/personal_data.rbs +22 -0
  408. data/sig/yoomoney/resources/receipts.rbs +41 -0
  409. data/sig/yoomoney/resources/refunds.rbs +34 -0
  410. data/sig/yoomoney/resources/sbp_banks.rbs +11 -0
  411. data/sig/yoomoney/resources/webhooks.rbs +23 -0
  412. data/sig/yoomoney/version.rbs +3 -0
  413. metadata +484 -0
@@ -0,0 +1,1347 @@
1
+ # typed: strong
2
+
3
+ module Yoomoney
4
+ module Models
5
+ class Payment < Yoomoney::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias { T.any(Yoomoney::Payment, Yoomoney::Internal::AnyHash) }
8
+
9
+ # Идентификатор платежа.
10
+ sig { returns(String) }
11
+ attr_accessor :id
12
+
13
+ # Сумма платежа.
14
+ sig { returns(Yoomoney::MonetaryAmount) }
15
+ attr_reader :amount
16
+
17
+ sig { params(amount: Yoomoney::MonetaryAmount::OrHash).void }
18
+ attr_writer :amount
19
+
20
+ # Время создания заказа.
21
+ sig { returns(Time) }
22
+ attr_accessor :created_at
23
+
24
+ # Признак оплаты заказа.
25
+ sig { returns(T::Boolean) }
26
+ attr_accessor :paid
27
+
28
+ # Получатель платежа.
29
+ sig { returns(Yoomoney::Recipient) }
30
+ attr_reader :recipient
31
+
32
+ sig { params(recipient: Yoomoney::Recipient::OrHash).void }
33
+ attr_writer :recipient
34
+
35
+ # Возможность провести возврат по API.
36
+ sig { returns(T::Boolean) }
37
+ attr_accessor :refundable
38
+
39
+ # Статус платежа.
40
+ sig { returns(Yoomoney::PaymentStatus::TaggedSymbol) }
41
+ attr_accessor :status
42
+
43
+ # Признак тестовой операции.
44
+ sig { returns(T::Boolean) }
45
+ attr_accessor :test_
46
+
47
+ # Данные об авторизации платежа.
48
+ sig { returns(T.nilable(Yoomoney::Payment::AuthorizationDetails)) }
49
+ attr_reader :authorization_details
50
+
51
+ sig do
52
+ params(
53
+ authorization_details: Yoomoney::Payment::AuthorizationDetails::OrHash
54
+ ).void
55
+ end
56
+ attr_writer :authorization_details
57
+
58
+ # Комментарий к статусу canceled.
59
+ sig { returns(T.nilable(Yoomoney::Payment::CancellationDetails)) }
60
+ attr_reader :cancellation_details
61
+
62
+ sig do
63
+ params(
64
+ cancellation_details: Yoomoney::Payment::CancellationDetails::OrHash
65
+ ).void
66
+ end
67
+ attr_writer :cancellation_details
68
+
69
+ # Время подтверждения платежа.
70
+ sig { returns(T.nilable(Time)) }
71
+ attr_reader :captured_at
72
+
73
+ sig { params(captured_at: Time).void }
74
+ attr_writer :captured_at
75
+
76
+ # Выбранный способ подтверждения платежа.
77
+ sig { returns(T.nilable(Yoomoney::Payment::Confirmation::Variants)) }
78
+ attr_reader :confirmation
79
+
80
+ sig do
81
+ params(
82
+ confirmation:
83
+ T.any(
84
+ Yoomoney::Payment::Confirmation::ConfirmationRedirect::OrHash,
85
+ Yoomoney::Confirmation::OrHash,
86
+ Yoomoney::Payment::Confirmation::ConfirmationQr::OrHash,
87
+ Yoomoney::Payment::Confirmation::ConfirmationEmbedded::OrHash,
88
+ Yoomoney::Payment::Confirmation::ConfirmationMobileApplication::OrHash
89
+ )
90
+ ).void
91
+ end
92
+ attr_writer :confirmation
93
+
94
+ # Данные о сделке.
95
+ sig { returns(T.nilable(Yoomoney::PaymentDealInfo)) }
96
+ attr_reader :deal
97
+
98
+ sig { params(deal: Yoomoney::PaymentDealInfo::OrHash).void }
99
+ attr_writer :deal
100
+
101
+ # Описание транзакции.
102
+ sig { returns(T.nilable(String)) }
103
+ attr_reader :description
104
+
105
+ sig { params(description: String).void }
106
+ attr_writer :description
107
+
108
+ # Время, до которого вы можете бесплатно отменить или подтвердить платеж.
109
+ sig { returns(T.nilable(Time)) }
110
+ attr_reader :expires_at
111
+
112
+ sig { params(expires_at: Time).void }
113
+ attr_writer :expires_at
114
+
115
+ # Сумма платежа, которую получит магазин.
116
+ sig { returns(T.nilable(Yoomoney::MonetaryAmount)) }
117
+ attr_reader :income_amount
118
+
119
+ sig { params(income_amount: Yoomoney::MonetaryAmount::OrHash).void }
120
+ attr_writer :income_amount
121
+
122
+ # Данные о счете, который оплачивается.
123
+ sig { returns(T.nilable(String)) }
124
+ attr_reader :invoice_details
125
+
126
+ sig { params(invoice_details: String).void }
127
+ attr_writer :invoice_details
128
+
129
+ # Идентификатор покупателя в вашей системе.
130
+ sig { returns(T.nilable(String)) }
131
+ attr_reader :merchant_customer_id
132
+
133
+ sig { params(merchant_customer_id: String).void }
134
+ attr_writer :merchant_customer_id
135
+
136
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
137
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
138
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
139
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
140
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
141
+ attr_reader :metadata
142
+
143
+ sig { params(metadata: T::Hash[Symbol, String]).void }
144
+ attr_writer :metadata
145
+
146
+ # Способ оплаты.
147
+ sig { returns(T.nilable(Yoomoney::Payment::PaymentMethod::Variants)) }
148
+ attr_reader :payment_method
149
+
150
+ sig do
151
+ params(
152
+ payment_method:
153
+ T.any(
154
+ Yoomoney::Payment::PaymentMethod::PaymentMethodBankCard::OrHash,
155
+ Yoomoney::PaymentMethod::OrHash,
156
+ Yoomoney::Payment::PaymentMethod::PaymentMethodAlfabank::OrHash,
157
+ Yoomoney::Payment::PaymentMethod::PaymentMethodSberbank::OrHash,
158
+ Yoomoney::Payment::PaymentMethod::PaymentMethodYooMoney::OrHash,
159
+ Yoomoney::Payment::PaymentMethod::PaymentMethodMobileBalance::OrHash,
160
+ Yoomoney::Payment::PaymentMethod::PaymentMethodB2bSberbank::OrHash,
161
+ Yoomoney::Payment::PaymentMethod::PaymentMethodSbp::OrHash,
162
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::OrHash
163
+ )
164
+ ).void
165
+ end
166
+ attr_writer :payment_method
167
+
168
+ # Статус доставки данных для чека.
169
+ sig do
170
+ returns(T.nilable(Yoomoney::ReceiptRegistrationStatus::TaggedSymbol))
171
+ end
172
+ attr_reader :receipt_registration
173
+
174
+ sig do
175
+ params(
176
+ receipt_registration: Yoomoney::ReceiptRegistrationStatus::OrSymbol
177
+ ).void
178
+ end
179
+ attr_writer :receipt_registration
180
+
181
+ # Сумма, возвращенная пользователю.
182
+ sig { returns(T.nilable(Yoomoney::MonetaryAmount)) }
183
+ attr_reader :refunded_amount
184
+
185
+ sig { params(refunded_amount: Yoomoney::MonetaryAmount::OrHash).void }
186
+ attr_writer :refunded_amount
187
+
188
+ # Данные о распределении денег.
189
+ sig { returns(T.nilable(T::Array[Yoomoney::Payment::Transfer])) }
190
+ attr_reader :transfers
191
+
192
+ sig do
193
+ params(transfers: T::Array[Yoomoney::Payment::Transfer::OrHash]).void
194
+ end
195
+ attr_writer :transfers
196
+
197
+ sig do
198
+ params(
199
+ id: String,
200
+ amount: Yoomoney::MonetaryAmount::OrHash,
201
+ created_at: Time,
202
+ paid: T::Boolean,
203
+ recipient: Yoomoney::Recipient::OrHash,
204
+ refundable: T::Boolean,
205
+ status: Yoomoney::PaymentStatus::OrSymbol,
206
+ test_: T::Boolean,
207
+ authorization_details:
208
+ Yoomoney::Payment::AuthorizationDetails::OrHash,
209
+ cancellation_details: Yoomoney::Payment::CancellationDetails::OrHash,
210
+ captured_at: Time,
211
+ confirmation:
212
+ T.any(
213
+ Yoomoney::Payment::Confirmation::ConfirmationRedirect::OrHash,
214
+ Yoomoney::Confirmation::OrHash,
215
+ Yoomoney::Payment::Confirmation::ConfirmationQr::OrHash,
216
+ Yoomoney::Payment::Confirmation::ConfirmationEmbedded::OrHash,
217
+ Yoomoney::Payment::Confirmation::ConfirmationMobileApplication::OrHash
218
+ ),
219
+ deal: Yoomoney::PaymentDealInfo::OrHash,
220
+ description: String,
221
+ expires_at: Time,
222
+ income_amount: Yoomoney::MonetaryAmount::OrHash,
223
+ invoice_details: String,
224
+ merchant_customer_id: String,
225
+ metadata: T::Hash[Symbol, String],
226
+ payment_method:
227
+ T.any(
228
+ Yoomoney::Payment::PaymentMethod::PaymentMethodBankCard::OrHash,
229
+ Yoomoney::PaymentMethod::OrHash,
230
+ Yoomoney::Payment::PaymentMethod::PaymentMethodAlfabank::OrHash,
231
+ Yoomoney::Payment::PaymentMethod::PaymentMethodSberbank::OrHash,
232
+ Yoomoney::Payment::PaymentMethod::PaymentMethodYooMoney::OrHash,
233
+ Yoomoney::Payment::PaymentMethod::PaymentMethodMobileBalance::OrHash,
234
+ Yoomoney::Payment::PaymentMethod::PaymentMethodB2bSberbank::OrHash,
235
+ Yoomoney::Payment::PaymentMethod::PaymentMethodSbp::OrHash,
236
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::OrHash
237
+ ),
238
+ receipt_registration: Yoomoney::ReceiptRegistrationStatus::OrSymbol,
239
+ refunded_amount: Yoomoney::MonetaryAmount::OrHash,
240
+ transfers: T::Array[Yoomoney::Payment::Transfer::OrHash]
241
+ ).returns(T.attached_class)
242
+ end
243
+ def self.new(
244
+ # Идентификатор платежа.
245
+ id:,
246
+ # Сумма платежа.
247
+ amount:,
248
+ # Время создания заказа.
249
+ created_at:,
250
+ # Признак оплаты заказа.
251
+ paid:,
252
+ # Получатель платежа.
253
+ recipient:,
254
+ # Возможность провести возврат по API.
255
+ refundable:,
256
+ # Статус платежа.
257
+ status:,
258
+ # Признак тестовой операции.
259
+ test_:,
260
+ # Данные об авторизации платежа.
261
+ authorization_details: nil,
262
+ # Комментарий к статусу canceled.
263
+ cancellation_details: nil,
264
+ # Время подтверждения платежа.
265
+ captured_at: nil,
266
+ # Выбранный способ подтверждения платежа.
267
+ confirmation: nil,
268
+ # Данные о сделке.
269
+ deal: nil,
270
+ # Описание транзакции.
271
+ description: nil,
272
+ # Время, до которого вы можете бесплатно отменить или подтвердить платеж.
273
+ expires_at: nil,
274
+ # Сумма платежа, которую получит магазин.
275
+ income_amount: nil,
276
+ # Данные о счете, который оплачивается.
277
+ invoice_details: nil,
278
+ # Идентификатор покупателя в вашей системе.
279
+ merchant_customer_id: nil,
280
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
281
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
282
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
283
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
284
+ metadata: nil,
285
+ # Способ оплаты.
286
+ payment_method: nil,
287
+ # Статус доставки данных для чека.
288
+ receipt_registration: nil,
289
+ # Сумма, возвращенная пользователю.
290
+ refunded_amount: nil,
291
+ # Данные о распределении денег.
292
+ transfers: nil
293
+ )
294
+ end
295
+
296
+ sig do
297
+ override.returns(
298
+ {
299
+ id: String,
300
+ amount: Yoomoney::MonetaryAmount,
301
+ created_at: Time,
302
+ paid: T::Boolean,
303
+ recipient: Yoomoney::Recipient,
304
+ refundable: T::Boolean,
305
+ status: Yoomoney::PaymentStatus::TaggedSymbol,
306
+ test_: T::Boolean,
307
+ authorization_details: Yoomoney::Payment::AuthorizationDetails,
308
+ cancellation_details: Yoomoney::Payment::CancellationDetails,
309
+ captured_at: Time,
310
+ confirmation: Yoomoney::Payment::Confirmation::Variants,
311
+ deal: Yoomoney::PaymentDealInfo,
312
+ description: String,
313
+ expires_at: Time,
314
+ income_amount: Yoomoney::MonetaryAmount,
315
+ invoice_details: String,
316
+ merchant_customer_id: String,
317
+ metadata: T::Hash[Symbol, String],
318
+ payment_method: Yoomoney::Payment::PaymentMethod::Variants,
319
+ receipt_registration:
320
+ Yoomoney::ReceiptRegistrationStatus::TaggedSymbol,
321
+ refunded_amount: Yoomoney::MonetaryAmount,
322
+ transfers: T::Array[Yoomoney::Payment::Transfer]
323
+ }
324
+ )
325
+ end
326
+ def to_hash
327
+ end
328
+
329
+ class AuthorizationDetails < Yoomoney::Internal::Type::BaseModel
330
+ OrHash =
331
+ T.type_alias do
332
+ T.any(
333
+ Yoomoney::Payment::AuthorizationDetails,
334
+ Yoomoney::Internal::AnyHash
335
+ )
336
+ end
337
+
338
+ sig { returns(Yoomoney::Payment::AuthorizationDetails::ThreeDSecure) }
339
+ attr_reader :three_d_secure
340
+
341
+ sig do
342
+ params(
343
+ three_d_secure:
344
+ Yoomoney::Payment::AuthorizationDetails::ThreeDSecure::OrHash
345
+ ).void
346
+ end
347
+ attr_writer :three_d_secure
348
+
349
+ sig { returns(T.nilable(String)) }
350
+ attr_reader :auth_code
351
+
352
+ sig { params(auth_code: String).void }
353
+ attr_writer :auth_code
354
+
355
+ sig { returns(T.nilable(String)) }
356
+ attr_reader :rrn
357
+
358
+ sig { params(rrn: String).void }
359
+ attr_writer :rrn
360
+
361
+ # Данные об авторизации платежа.
362
+ sig do
363
+ params(
364
+ three_d_secure:
365
+ Yoomoney::Payment::AuthorizationDetails::ThreeDSecure::OrHash,
366
+ auth_code: String,
367
+ rrn: String
368
+ ).returns(T.attached_class)
369
+ end
370
+ def self.new(three_d_secure:, auth_code: nil, rrn: nil)
371
+ end
372
+
373
+ sig do
374
+ override.returns(
375
+ {
376
+ three_d_secure:
377
+ Yoomoney::Payment::AuthorizationDetails::ThreeDSecure,
378
+ auth_code: String,
379
+ rrn: String
380
+ }
381
+ )
382
+ end
383
+ def to_hash
384
+ end
385
+
386
+ class ThreeDSecure < Yoomoney::Internal::Type::BaseModel
387
+ OrHash =
388
+ T.type_alias do
389
+ T.any(
390
+ Yoomoney::Payment::AuthorizationDetails::ThreeDSecure,
391
+ Yoomoney::Internal::AnyHash
392
+ )
393
+ end
394
+
395
+ # Отображает, была ли пройдена аутентификация по 3-D Secure.
396
+ sig { returns(T::Boolean) }
397
+ attr_accessor :applied
398
+
399
+ sig { params(applied: T::Boolean).returns(T.attached_class) }
400
+ def self.new(
401
+ # Отображает, была ли пройдена аутентификация по 3-D Secure.
402
+ applied:
403
+ )
404
+ end
405
+
406
+ sig { override.returns({ applied: T::Boolean }) }
407
+ def to_hash
408
+ end
409
+ end
410
+ end
411
+
412
+ class CancellationDetails < Yoomoney::Internal::Type::BaseModel
413
+ OrHash =
414
+ T.type_alias do
415
+ T.any(
416
+ Yoomoney::Payment::CancellationDetails,
417
+ Yoomoney::Internal::AnyHash
418
+ )
419
+ end
420
+
421
+ # Участник процесса платежа, принявший решение об отмене.
422
+ sig { returns(String) }
423
+ attr_accessor :party
424
+
425
+ # Причина отмены платежа.
426
+ sig { returns(String) }
427
+ attr_accessor :reason
428
+
429
+ # Комментарий к статусу canceled.
430
+ sig { params(party: String, reason: String).returns(T.attached_class) }
431
+ def self.new(
432
+ # Участник процесса платежа, принявший решение об отмене.
433
+ party:,
434
+ # Причина отмены платежа.
435
+ reason:
436
+ )
437
+ end
438
+
439
+ sig { override.returns({ party: String, reason: String }) }
440
+ def to_hash
441
+ end
442
+ end
443
+
444
+ # Выбранный способ подтверждения платежа.
445
+ module Confirmation
446
+ extend Yoomoney::Internal::Type::Union
447
+
448
+ Variants =
449
+ T.type_alias do
450
+ T.any(
451
+ Yoomoney::Payment::Confirmation::ConfirmationRedirect,
452
+ Yoomoney::Confirmation,
453
+ Yoomoney::Payment::Confirmation::ConfirmationQr,
454
+ Yoomoney::Payment::Confirmation::ConfirmationEmbedded,
455
+ Yoomoney::Payment::Confirmation::ConfirmationMobileApplication
456
+ )
457
+ end
458
+
459
+ class ConfirmationRedirect < Yoomoney::Models::Confirmation
460
+ OrHash =
461
+ T.type_alias do
462
+ T.any(
463
+ Yoomoney::Payment::Confirmation::ConfirmationRedirect,
464
+ Yoomoney::Internal::AnyHash
465
+ )
466
+ end
467
+
468
+ sig { returns(String) }
469
+ attr_accessor :confirmation_url
470
+
471
+ sig { returns(T.nilable(T::Boolean)) }
472
+ attr_reader :enforce
473
+
474
+ sig { params(enforce: T::Boolean).void }
475
+ attr_writer :enforce
476
+
477
+ sig { returns(T.nilable(String)) }
478
+ attr_reader :return_url
479
+
480
+ sig { params(return_url: String).void }
481
+ attr_writer :return_url
482
+
483
+ sig do
484
+ params(
485
+ confirmation_url: String,
486
+ enforce: T::Boolean,
487
+ return_url: String
488
+ ).returns(T.attached_class)
489
+ end
490
+ def self.new(confirmation_url:, enforce: nil, return_url: nil)
491
+ end
492
+
493
+ sig do
494
+ override.returns(
495
+ {
496
+ confirmation_url: String,
497
+ enforce: T::Boolean,
498
+ return_url: String
499
+ }
500
+ )
501
+ end
502
+ def to_hash
503
+ end
504
+ end
505
+
506
+ class ConfirmationQr < Yoomoney::Models::Confirmation
507
+ OrHash =
508
+ T.type_alias do
509
+ T.any(
510
+ Yoomoney::Payment::Confirmation::ConfirmationQr,
511
+ Yoomoney::Internal::AnyHash
512
+ )
513
+ end
514
+
515
+ sig { returns(T.nilable(String)) }
516
+ attr_reader :confirmation_url
517
+
518
+ sig { params(confirmation_url: String).void }
519
+ attr_writer :confirmation_url
520
+
521
+ sig { params(confirmation_url: String).returns(T.attached_class) }
522
+ def self.new(confirmation_url: nil)
523
+ end
524
+
525
+ sig { override.returns({ confirmation_url: String }) }
526
+ def to_hash
527
+ end
528
+ end
529
+
530
+ class ConfirmationEmbedded < Yoomoney::Models::Confirmation
531
+ OrHash =
532
+ T.type_alias do
533
+ T.any(
534
+ Yoomoney::Payment::Confirmation::ConfirmationEmbedded,
535
+ Yoomoney::Internal::AnyHash
536
+ )
537
+ end
538
+
539
+ # Токен для инициализации платежного виджета ЮKassa.
540
+ sig { returns(T.nilable(String)) }
541
+ attr_reader :confirmation_token
542
+
543
+ sig { params(confirmation_token: String).void }
544
+ attr_writer :confirmation_token
545
+
546
+ sig { params(confirmation_token: String).returns(T.attached_class) }
547
+ def self.new(
548
+ # Токен для инициализации платежного виджета ЮKassa.
549
+ confirmation_token: nil
550
+ )
551
+ end
552
+
553
+ sig { override.returns({ confirmation_token: String }) }
554
+ def to_hash
555
+ end
556
+ end
557
+
558
+ class ConfirmationMobileApplication < Yoomoney::Models::Confirmation
559
+ OrHash =
560
+ T.type_alias do
561
+ T.any(
562
+ Yoomoney::Payment::Confirmation::ConfirmationMobileApplication,
563
+ Yoomoney::Internal::AnyHash
564
+ )
565
+ end
566
+
567
+ # Ссылка для перенаправления пользователя в мобильное приложение.
568
+ sig { returns(T.nilable(String)) }
569
+ attr_reader :confirmation_url
570
+
571
+ sig { params(confirmation_url: String).void }
572
+ attr_writer :confirmation_url
573
+
574
+ sig { params(confirmation_url: String).returns(T.attached_class) }
575
+ def self.new(
576
+ # Ссылка для перенаправления пользователя в мобильное приложение.
577
+ confirmation_url: nil
578
+ )
579
+ end
580
+
581
+ sig { override.returns({ confirmation_url: String }) }
582
+ def to_hash
583
+ end
584
+ end
585
+
586
+ sig do
587
+ override.returns(T::Array[Yoomoney::Payment::Confirmation::Variants])
588
+ end
589
+ def self.variants
590
+ end
591
+ end
592
+
593
+ # Способ оплаты.
594
+ module PaymentMethod
595
+ extend Yoomoney::Internal::Type::Union
596
+
597
+ Variants =
598
+ T.type_alias do
599
+ T.any(
600
+ Yoomoney::Payment::PaymentMethod::PaymentMethodBankCard,
601
+ Yoomoney::PaymentMethod,
602
+ Yoomoney::Payment::PaymentMethod::PaymentMethodAlfabank,
603
+ Yoomoney::Payment::PaymentMethod::PaymentMethodSberbank,
604
+ Yoomoney::Payment::PaymentMethod::PaymentMethodYooMoney,
605
+ Yoomoney::Payment::PaymentMethod::PaymentMethodMobileBalance,
606
+ Yoomoney::Payment::PaymentMethod::PaymentMethodB2bSberbank,
607
+ Yoomoney::Payment::PaymentMethod::PaymentMethodSbp,
608
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate
609
+ )
610
+ end
611
+
612
+ class PaymentMethodBankCard < Yoomoney::Models::PaymentMethod
613
+ OrHash =
614
+ T.type_alias do
615
+ T.any(
616
+ Yoomoney::Payment::PaymentMethod::PaymentMethodBankCard,
617
+ Yoomoney::Internal::AnyHash
618
+ )
619
+ end
620
+
621
+ sig { returns(T.nilable(Yoomoney::BankCardData)) }
622
+ attr_reader :card
623
+
624
+ sig { params(card: Yoomoney::BankCardData::OrHash).void }
625
+ attr_writer :card
626
+
627
+ sig do
628
+ params(card: Yoomoney::BankCardData::OrHash).returns(
629
+ T.attached_class
630
+ )
631
+ end
632
+ def self.new(card: nil)
633
+ end
634
+
635
+ sig { override.returns({ card: Yoomoney::BankCardData }) }
636
+ def to_hash
637
+ end
638
+ end
639
+
640
+ class PaymentMethodAlfabank < Yoomoney::Models::PaymentMethod
641
+ OrHash =
642
+ T.type_alias do
643
+ T.any(
644
+ Yoomoney::Payment::PaymentMethod::PaymentMethodAlfabank,
645
+ Yoomoney::Internal::AnyHash
646
+ )
647
+ end
648
+
649
+ sig { returns(T.nilable(String)) }
650
+ attr_reader :login
651
+
652
+ sig { params(login: String).void }
653
+ attr_writer :login
654
+
655
+ sig { params(login: String).returns(T.attached_class) }
656
+ def self.new(login: nil)
657
+ end
658
+
659
+ sig { override.returns({ login: String }) }
660
+ def to_hash
661
+ end
662
+ end
663
+
664
+ class PaymentMethodSberbank < Yoomoney::Models::PaymentMethod
665
+ OrHash =
666
+ T.type_alias do
667
+ T.any(
668
+ Yoomoney::Payment::PaymentMethod::PaymentMethodSberbank,
669
+ Yoomoney::Internal::AnyHash
670
+ )
671
+ end
672
+
673
+ sig { returns(T.nilable(String)) }
674
+ attr_reader :phone
675
+
676
+ sig { params(phone: String).void }
677
+ attr_writer :phone
678
+
679
+ sig { params(phone: String).returns(T.attached_class) }
680
+ def self.new(phone: nil)
681
+ end
682
+
683
+ sig { override.returns({ phone: String }) }
684
+ def to_hash
685
+ end
686
+ end
687
+
688
+ class PaymentMethodYooMoney < Yoomoney::Models::PaymentMethod
689
+ OrHash =
690
+ T.type_alias do
691
+ T.any(
692
+ Yoomoney::Payment::PaymentMethod::PaymentMethodYooMoney,
693
+ Yoomoney::Internal::AnyHash
694
+ )
695
+ end
696
+
697
+ sig { returns(T.nilable(String)) }
698
+ attr_reader :account_number
699
+
700
+ sig { params(account_number: String).void }
701
+ attr_writer :account_number
702
+
703
+ sig { params(account_number: String).returns(T.attached_class) }
704
+ def self.new(account_number: nil)
705
+ end
706
+
707
+ sig { override.returns({ account_number: String }) }
708
+ def to_hash
709
+ end
710
+ end
711
+
712
+ class PaymentMethodMobileBalance < Yoomoney::Models::PaymentMethod
713
+ OrHash =
714
+ T.type_alias do
715
+ T.any(
716
+ Yoomoney::Payment::PaymentMethod::PaymentMethodMobileBalance,
717
+ Yoomoney::Internal::AnyHash
718
+ )
719
+ end
720
+
721
+ sig { returns(T.nilable(String)) }
722
+ attr_reader :phone
723
+
724
+ sig { params(phone: String).void }
725
+ attr_writer :phone
726
+
727
+ sig { params(phone: String).returns(T.attached_class) }
728
+ def self.new(phone: nil)
729
+ end
730
+
731
+ sig { override.returns({ phone: String }) }
732
+ def to_hash
733
+ end
734
+ end
735
+
736
+ class PaymentMethodB2bSberbank < Yoomoney::Models::PaymentMethod
737
+ OrHash =
738
+ T.type_alias do
739
+ T.any(
740
+ Yoomoney::Payment::PaymentMethod::PaymentMethodB2bSberbank,
741
+ Yoomoney::Internal::AnyHash
742
+ )
743
+ end
744
+
745
+ sig do
746
+ returns(
747
+ T.nilable(
748
+ Yoomoney::Payment::PaymentMethod::PaymentMethodB2bSberbank::PayerBankDetails
749
+ )
750
+ )
751
+ end
752
+ attr_reader :payer_bank_details
753
+
754
+ sig do
755
+ params(
756
+ payer_bank_details:
757
+ Yoomoney::Payment::PaymentMethod::PaymentMethodB2bSberbank::PayerBankDetails::OrHash
758
+ ).void
759
+ end
760
+ attr_writer :payer_bank_details
761
+
762
+ sig { returns(T.nilable(String)) }
763
+ attr_reader :payment_purpose
764
+
765
+ sig { params(payment_purpose: String).void }
766
+ attr_writer :payment_purpose
767
+
768
+ sig { returns(T.nilable(Yoomoney::B2bSberbankVatData)) }
769
+ attr_reader :vat_data
770
+
771
+ sig { params(vat_data: Yoomoney::B2bSberbankVatData::OrHash).void }
772
+ attr_writer :vat_data
773
+
774
+ sig do
775
+ params(
776
+ payer_bank_details:
777
+ Yoomoney::Payment::PaymentMethod::PaymentMethodB2bSberbank::PayerBankDetails::OrHash,
778
+ payment_purpose: String,
779
+ vat_data: Yoomoney::B2bSberbankVatData::OrHash
780
+ ).returns(T.attached_class)
781
+ end
782
+ def self.new(
783
+ payer_bank_details: nil,
784
+ payment_purpose: nil,
785
+ vat_data: nil
786
+ )
787
+ end
788
+
789
+ sig do
790
+ override.returns(
791
+ {
792
+ payer_bank_details:
793
+ Yoomoney::Payment::PaymentMethod::PaymentMethodB2bSberbank::PayerBankDetails,
794
+ payment_purpose: String,
795
+ vat_data: Yoomoney::B2bSberbankVatData
796
+ }
797
+ )
798
+ end
799
+ def to_hash
800
+ end
801
+
802
+ class PayerBankDetails < Yoomoney::Internal::Type::BaseModel
803
+ OrHash =
804
+ T.type_alias do
805
+ T.any(
806
+ Yoomoney::Payment::PaymentMethod::PaymentMethodB2bSberbank::PayerBankDetails,
807
+ Yoomoney::Internal::AnyHash
808
+ )
809
+ end
810
+
811
+ sig { returns(String) }
812
+ attr_accessor :account
813
+
814
+ sig { returns(String) }
815
+ attr_accessor :address
816
+
817
+ sig { returns(String) }
818
+ attr_accessor :bank_bik
819
+
820
+ sig { returns(String) }
821
+ attr_accessor :bank_branch
822
+
823
+ sig { returns(String) }
824
+ attr_accessor :bank_name
825
+
826
+ sig { returns(String) }
827
+ attr_accessor :full_name
828
+
829
+ sig { returns(String) }
830
+ attr_accessor :inn
831
+
832
+ sig { returns(String) }
833
+ attr_accessor :short_name
834
+
835
+ sig { returns(T.nilable(String)) }
836
+ attr_reader :kpp
837
+
838
+ sig { params(kpp: String).void }
839
+ attr_writer :kpp
840
+
841
+ sig do
842
+ params(
843
+ account: String,
844
+ address: String,
845
+ bank_bik: String,
846
+ bank_branch: String,
847
+ bank_name: String,
848
+ full_name: String,
849
+ inn: String,
850
+ short_name: String,
851
+ kpp: String
852
+ ).returns(T.attached_class)
853
+ end
854
+ def self.new(
855
+ account:,
856
+ address:,
857
+ bank_bik:,
858
+ bank_branch:,
859
+ bank_name:,
860
+ full_name:,
861
+ inn:,
862
+ short_name:,
863
+ kpp: nil
864
+ )
865
+ end
866
+
867
+ sig do
868
+ override.returns(
869
+ {
870
+ account: String,
871
+ address: String,
872
+ bank_bik: String,
873
+ bank_branch: String,
874
+ bank_name: String,
875
+ full_name: String,
876
+ inn: String,
877
+ short_name: String,
878
+ kpp: String
879
+ }
880
+ )
881
+ end
882
+ def to_hash
883
+ end
884
+ end
885
+ end
886
+
887
+ class PaymentMethodSbp < Yoomoney::Models::PaymentMethod
888
+ OrHash =
889
+ T.type_alias do
890
+ T.any(
891
+ Yoomoney::Payment::PaymentMethod::PaymentMethodSbp,
892
+ Yoomoney::Internal::AnyHash
893
+ )
894
+ end
895
+
896
+ sig do
897
+ returns(
898
+ T.nilable(
899
+ Yoomoney::Payment::PaymentMethod::PaymentMethodSbp::PayerBankDetails
900
+ )
901
+ )
902
+ end
903
+ attr_reader :payer_bank_details
904
+
905
+ sig do
906
+ params(
907
+ payer_bank_details:
908
+ Yoomoney::Payment::PaymentMethod::PaymentMethodSbp::PayerBankDetails::OrHash
909
+ ).void
910
+ end
911
+ attr_writer :payer_bank_details
912
+
913
+ # Идентификатор операции в СБП (НСПК).
914
+ sig { returns(T.nilable(String)) }
915
+ attr_reader :sbp_operation_id
916
+
917
+ sig { params(sbp_operation_id: String).void }
918
+ attr_writer :sbp_operation_id
919
+
920
+ sig do
921
+ params(
922
+ payer_bank_details:
923
+ Yoomoney::Payment::PaymentMethod::PaymentMethodSbp::PayerBankDetails::OrHash,
924
+ sbp_operation_id: String
925
+ ).returns(T.attached_class)
926
+ end
927
+ def self.new(
928
+ payer_bank_details: nil,
929
+ # Идентификатор операции в СБП (НСПК).
930
+ sbp_operation_id: nil
931
+ )
932
+ end
933
+
934
+ sig do
935
+ override.returns(
936
+ {
937
+ payer_bank_details:
938
+ Yoomoney::Payment::PaymentMethod::PaymentMethodSbp::PayerBankDetails,
939
+ sbp_operation_id: String
940
+ }
941
+ )
942
+ end
943
+ def to_hash
944
+ end
945
+
946
+ class PayerBankDetails < Yoomoney::Internal::Type::BaseModel
947
+ OrHash =
948
+ T.type_alias do
949
+ T.any(
950
+ Yoomoney::Payment::PaymentMethod::PaymentMethodSbp::PayerBankDetails,
951
+ Yoomoney::Internal::AnyHash
952
+ )
953
+ end
954
+
955
+ sig { returns(String) }
956
+ attr_accessor :bank_id
957
+
958
+ sig { returns(String) }
959
+ attr_accessor :bic
960
+
961
+ sig do
962
+ params(bank_id: String, bic: String).returns(T.attached_class)
963
+ end
964
+ def self.new(bank_id:, bic:)
965
+ end
966
+
967
+ sig { override.returns({ bank_id: String, bic: String }) }
968
+ def to_hash
969
+ end
970
+ end
971
+ end
972
+
973
+ class PaymentMethodElectronicCertificate < Yoomoney::Models::PaymentMethod
974
+ OrHash =
975
+ T.type_alias do
976
+ T.any(
977
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate,
978
+ Yoomoney::Internal::AnyHash
979
+ )
980
+ end
981
+
982
+ sig do
983
+ returns(
984
+ T.nilable(
985
+ T::Array[
986
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::Article
987
+ ]
988
+ )
989
+ )
990
+ end
991
+ attr_reader :articles
992
+
993
+ sig do
994
+ params(
995
+ articles:
996
+ T::Array[
997
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::Article::OrHash
998
+ ]
999
+ ).void
1000
+ end
1001
+ attr_writer :articles
1002
+
1003
+ sig do
1004
+ returns(
1005
+ T.nilable(
1006
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::ElectronicCertificate
1007
+ )
1008
+ )
1009
+ end
1010
+ attr_reader :electronic_certificate
1011
+
1012
+ sig do
1013
+ params(
1014
+ electronic_certificate:
1015
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::ElectronicCertificate::OrHash
1016
+ ).void
1017
+ end
1018
+ attr_writer :electronic_certificate
1019
+
1020
+ sig do
1021
+ params(
1022
+ articles:
1023
+ T::Array[
1024
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::Article::OrHash
1025
+ ],
1026
+ electronic_certificate:
1027
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::ElectronicCertificate::OrHash
1028
+ ).returns(T.attached_class)
1029
+ end
1030
+ def self.new(articles: nil, electronic_certificate: nil)
1031
+ end
1032
+
1033
+ sig do
1034
+ override.returns(
1035
+ {
1036
+ articles:
1037
+ T::Array[
1038
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::Article
1039
+ ],
1040
+ electronic_certificate:
1041
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::ElectronicCertificate
1042
+ }
1043
+ )
1044
+ end
1045
+ def to_hash
1046
+ end
1047
+
1048
+ class Article < Yoomoney::Internal::Type::BaseModel
1049
+ OrHash =
1050
+ T.type_alias do
1051
+ T.any(
1052
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::Article,
1053
+ Yoomoney::Internal::AnyHash
1054
+ )
1055
+ end
1056
+
1057
+ sig { returns(Integer) }
1058
+ attr_accessor :article_number
1059
+
1060
+ sig do
1061
+ returns(
1062
+ T::Array[
1063
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::Article::Certificate
1064
+ ]
1065
+ )
1066
+ end
1067
+ attr_accessor :certificates
1068
+
1069
+ sig { returns(String) }
1070
+ attr_accessor :tru_code
1071
+
1072
+ sig { returns(T.nilable(String)) }
1073
+ attr_reader :article_code
1074
+
1075
+ sig { params(article_code: String).void }
1076
+ attr_writer :article_code
1077
+
1078
+ sig do
1079
+ params(
1080
+ article_number: Integer,
1081
+ certificates:
1082
+ T::Array[
1083
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::Article::Certificate::OrHash
1084
+ ],
1085
+ tru_code: String,
1086
+ article_code: String
1087
+ ).returns(T.attached_class)
1088
+ end
1089
+ def self.new(
1090
+ article_number:,
1091
+ certificates:,
1092
+ tru_code:,
1093
+ article_code: nil
1094
+ )
1095
+ end
1096
+
1097
+ sig do
1098
+ override.returns(
1099
+ {
1100
+ article_number: Integer,
1101
+ certificates:
1102
+ T::Array[
1103
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::Article::Certificate
1104
+ ],
1105
+ tru_code: String,
1106
+ article_code: String
1107
+ }
1108
+ )
1109
+ end
1110
+ def to_hash
1111
+ end
1112
+
1113
+ class Certificate < Yoomoney::Internal::Type::BaseModel
1114
+ OrHash =
1115
+ T.type_alias do
1116
+ T.any(
1117
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::Article::Certificate,
1118
+ Yoomoney::Internal::AnyHash
1119
+ )
1120
+ end
1121
+
1122
+ sig { returns(Yoomoney::MonetaryAmount) }
1123
+ attr_reader :applied_compensation
1124
+
1125
+ sig do
1126
+ params(
1127
+ applied_compensation: Yoomoney::MonetaryAmount::OrHash
1128
+ ).void
1129
+ end
1130
+ attr_writer :applied_compensation
1131
+
1132
+ sig { returns(Yoomoney::MonetaryAmount) }
1133
+ attr_reader :available_compensation
1134
+
1135
+ sig do
1136
+ params(
1137
+ available_compensation: Yoomoney::MonetaryAmount::OrHash
1138
+ ).void
1139
+ end
1140
+ attr_writer :available_compensation
1141
+
1142
+ sig { returns(String) }
1143
+ attr_accessor :certificate_id
1144
+
1145
+ sig { returns(Integer) }
1146
+ attr_accessor :tru_quantity
1147
+
1148
+ sig do
1149
+ params(
1150
+ applied_compensation: Yoomoney::MonetaryAmount::OrHash,
1151
+ available_compensation: Yoomoney::MonetaryAmount::OrHash,
1152
+ certificate_id: String,
1153
+ tru_quantity: Integer
1154
+ ).returns(T.attached_class)
1155
+ end
1156
+ def self.new(
1157
+ applied_compensation:,
1158
+ available_compensation:,
1159
+ certificate_id:,
1160
+ tru_quantity:
1161
+ )
1162
+ end
1163
+
1164
+ sig do
1165
+ override.returns(
1166
+ {
1167
+ applied_compensation: Yoomoney::MonetaryAmount,
1168
+ available_compensation: Yoomoney::MonetaryAmount,
1169
+ certificate_id: String,
1170
+ tru_quantity: Integer
1171
+ }
1172
+ )
1173
+ end
1174
+ def to_hash
1175
+ end
1176
+ end
1177
+ end
1178
+
1179
+ class ElectronicCertificate < Yoomoney::Internal::Type::BaseModel
1180
+ OrHash =
1181
+ T.type_alias do
1182
+ T.any(
1183
+ Yoomoney::Payment::PaymentMethod::PaymentMethodElectronicCertificate::ElectronicCertificate,
1184
+ Yoomoney::Internal::AnyHash
1185
+ )
1186
+ end
1187
+
1188
+ sig { returns(Yoomoney::MonetaryAmount) }
1189
+ attr_reader :amount
1190
+
1191
+ sig { params(amount: Yoomoney::MonetaryAmount::OrHash).void }
1192
+ attr_writer :amount
1193
+
1194
+ sig { returns(String) }
1195
+ attr_accessor :basket_id
1196
+
1197
+ sig do
1198
+ params(
1199
+ amount: Yoomoney::MonetaryAmount::OrHash,
1200
+ basket_id: String
1201
+ ).returns(T.attached_class)
1202
+ end
1203
+ def self.new(amount:, basket_id:)
1204
+ end
1205
+
1206
+ sig do
1207
+ override.returns(
1208
+ { amount: Yoomoney::MonetaryAmount, basket_id: String }
1209
+ )
1210
+ end
1211
+ def to_hash
1212
+ end
1213
+ end
1214
+ end
1215
+
1216
+ sig do
1217
+ override.returns(T::Array[Yoomoney::Payment::PaymentMethod::Variants])
1218
+ end
1219
+ def self.variants
1220
+ end
1221
+ end
1222
+
1223
+ class Transfer < Yoomoney::Internal::Type::BaseModel
1224
+ OrHash =
1225
+ T.type_alias do
1226
+ T.any(Yoomoney::Payment::Transfer, Yoomoney::Internal::AnyHash)
1227
+ end
1228
+
1229
+ # Идентификатор магазина, в пользу которого вы принимаете оплату.
1230
+ sig { returns(String) }
1231
+ attr_accessor :account_id
1232
+
1233
+ # Сумма, которую необходимо перевести магазину.
1234
+ sig { returns(Yoomoney::MonetaryAmount) }
1235
+ attr_reader :amount
1236
+
1237
+ sig { params(amount: Yoomoney::MonetaryAmount::OrHash).void }
1238
+ attr_writer :amount
1239
+
1240
+ # Статус распределения денег.
1241
+ sig { returns(Yoomoney::Payment::Transfer::Status::TaggedSymbol) }
1242
+ attr_accessor :status
1243
+
1244
+ # Описание транзакции.
1245
+ sig { returns(T.nilable(String)) }
1246
+ attr_reader :description
1247
+
1248
+ sig { params(description: String).void }
1249
+ attr_writer :description
1250
+
1251
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
1252
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
1253
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
1254
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
1255
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
1256
+ attr_reader :metadata
1257
+
1258
+ sig { params(metadata: T::Hash[Symbol, String]).void }
1259
+ attr_writer :metadata
1260
+
1261
+ # Комиссия за проданные товары и оказанные услуги, которую вы удерживаете при
1262
+ # оплате.
1263
+ sig { returns(T.nilable(Yoomoney::MonetaryAmount)) }
1264
+ attr_reader :platform_fee_amount
1265
+
1266
+ sig do
1267
+ params(platform_fee_amount: Yoomoney::MonetaryAmount::OrHash).void
1268
+ end
1269
+ attr_writer :platform_fee_amount
1270
+
1271
+ sig do
1272
+ params(
1273
+ account_id: String,
1274
+ amount: Yoomoney::MonetaryAmount::OrHash,
1275
+ status: Yoomoney::Payment::Transfer::Status::OrSymbol,
1276
+ description: String,
1277
+ metadata: T::Hash[Symbol, String],
1278
+ platform_fee_amount: Yoomoney::MonetaryAmount::OrHash
1279
+ ).returns(T.attached_class)
1280
+ end
1281
+ def self.new(
1282
+ # Идентификатор магазина, в пользу которого вы принимаете оплату.
1283
+ account_id:,
1284
+ # Сумма, которую необходимо перевести магазину.
1285
+ amount:,
1286
+ # Статус распределения денег.
1287
+ status:,
1288
+ # Описание транзакции.
1289
+ description: nil,
1290
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
1291
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
1292
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
1293
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
1294
+ metadata: nil,
1295
+ # Комиссия за проданные товары и оказанные услуги, которую вы удерживаете при
1296
+ # оплате.
1297
+ platform_fee_amount: nil
1298
+ )
1299
+ end
1300
+
1301
+ sig do
1302
+ override.returns(
1303
+ {
1304
+ account_id: String,
1305
+ amount: Yoomoney::MonetaryAmount,
1306
+ status: Yoomoney::Payment::Transfer::Status::TaggedSymbol,
1307
+ description: String,
1308
+ metadata: T::Hash[Symbol, String],
1309
+ platform_fee_amount: Yoomoney::MonetaryAmount
1310
+ }
1311
+ )
1312
+ end
1313
+ def to_hash
1314
+ end
1315
+
1316
+ # Статус распределения денег.
1317
+ module Status
1318
+ extend Yoomoney::Internal::Type::Enum
1319
+
1320
+ TaggedSymbol =
1321
+ T.type_alias { T.all(Symbol, Yoomoney::Payment::Transfer::Status) }
1322
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1323
+
1324
+ PENDING =
1325
+ T.let(:pending, Yoomoney::Payment::Transfer::Status::TaggedSymbol)
1326
+ WAITING_FOR_CAPTURE =
1327
+ T.let(
1328
+ :waiting_for_capture,
1329
+ Yoomoney::Payment::Transfer::Status::TaggedSymbol
1330
+ )
1331
+ SUCCEEDED =
1332
+ T.let(:succeeded, Yoomoney::Payment::Transfer::Status::TaggedSymbol)
1333
+ CANCELED =
1334
+ T.let(:canceled, Yoomoney::Payment::Transfer::Status::TaggedSymbol)
1335
+
1336
+ sig do
1337
+ override.returns(
1338
+ T::Array[Yoomoney::Payment::Transfer::Status::TaggedSymbol]
1339
+ )
1340
+ end
1341
+ def self.values
1342
+ end
1343
+ end
1344
+ end
1345
+ end
1346
+ end
1347
+ end