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,1258 @@
1
+ # typed: strong
2
+
3
+ module Yoomoney
4
+ module Models
5
+ class PaymentCreateParams < Yoomoney::Internal::Type::BaseModel
6
+ extend Yoomoney::Internal::Type::RequestParameters::Converter
7
+ include Yoomoney::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(Yoomoney::PaymentCreateParams, Yoomoney::Internal::AnyHash)
12
+ end
13
+
14
+ # Сумма платежа.
15
+ sig { returns(Yoomoney::MonetaryAmount) }
16
+ attr_reader :amount
17
+
18
+ sig { params(amount: Yoomoney::MonetaryAmount::OrHash).void }
19
+ attr_writer :amount
20
+
21
+ sig { returns(String) }
22
+ attr_accessor :idempotence_key
23
+
24
+ # Данные для продажи авиабилетов.
25
+ sig { returns(T.nilable(Yoomoney::Airline)) }
26
+ attr_reader :airline
27
+
28
+ sig { params(airline: Yoomoney::Airline::OrHash).void }
29
+ attr_writer :airline
30
+
31
+ # Автоматический прием поступившего платежа.
32
+ sig { returns(T.nilable(T::Boolean)) }
33
+ attr_reader :capture
34
+
35
+ sig { params(capture: T::Boolean).void }
36
+ attr_writer :capture
37
+
38
+ # IPv4 или IPv6-адрес пользователя.
39
+ sig { returns(T.nilable(String)) }
40
+ attr_reader :client_ip
41
+
42
+ sig { params(client_ip: String).void }
43
+ attr_writer :client_ip
44
+
45
+ # Данные, необходимые для инициирования выбранного сценария подтверждения платежа
46
+ # пользователем.
47
+ sig do
48
+ returns(
49
+ T.nilable(
50
+ T.any(
51
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataRedirect,
52
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataExternal,
53
+ Yoomoney::ConfirmationData,
54
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataEmbedded,
55
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataMobileApplication
56
+ )
57
+ )
58
+ )
59
+ end
60
+ attr_reader :confirmation
61
+
62
+ sig do
63
+ params(
64
+ confirmation:
65
+ T.any(
66
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataRedirect::OrHash,
67
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataExternal::OrHash,
68
+ Yoomoney::ConfirmationData::OrHash,
69
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataEmbedded::OrHash,
70
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataMobileApplication::OrHash
71
+ )
72
+ ).void
73
+ end
74
+ attr_writer :confirmation
75
+
76
+ # Данные о сделке.
77
+ sig { returns(T.nilable(Yoomoney::PaymentDealInfo)) }
78
+ attr_reader :deal
79
+
80
+ sig { params(deal: Yoomoney::PaymentDealInfo::OrHash).void }
81
+ attr_writer :deal
82
+
83
+ # Описание транзакции.
84
+ sig { returns(T.nilable(String)) }
85
+ attr_reader :description
86
+
87
+ sig { params(description: String).void }
88
+ attr_writer :description
89
+
90
+ # Идентификатор покупателя в вашей системе.
91
+ sig { returns(T.nilable(String)) }
92
+ attr_reader :merchant_customer_id
93
+
94
+ sig { params(merchant_customer_id: String).void }
95
+ attr_writer :merchant_customer_id
96
+
97
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
98
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
99
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
100
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
101
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
102
+ attr_reader :metadata
103
+
104
+ sig { params(metadata: T::Hash[Symbol, String]).void }
105
+ attr_writer :metadata
106
+
107
+ # Данные для оплаты конкретным способом.
108
+ sig do
109
+ returns(
110
+ T.nilable(
111
+ T.any(
112
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataBankCard,
113
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataCash,
114
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataSberbank,
115
+ Yoomoney::PaymentMethodData,
116
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataMobileBalance,
117
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataB2bSberbank,
118
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate
119
+ )
120
+ )
121
+ )
122
+ end
123
+ attr_reader :payment_method_data
124
+
125
+ sig do
126
+ params(
127
+ payment_method_data:
128
+ T.any(
129
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataBankCard::OrHash,
130
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataCash::OrHash,
131
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataSberbank::OrHash,
132
+ Yoomoney::PaymentMethodData::OrHash,
133
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataMobileBalance::OrHash,
134
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataB2bSberbank::OrHash,
135
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate::OrHash
136
+ )
137
+ ).void
138
+ end
139
+ attr_writer :payment_method_data
140
+
141
+ # Идентификатор сохраненного способа оплаты.
142
+ sig { returns(T.nilable(String)) }
143
+ attr_reader :payment_method_id
144
+
145
+ sig { params(payment_method_id: String).void }
146
+ attr_writer :payment_method_id
147
+
148
+ # Данные платежного поручения.
149
+ sig { returns(T.nilable(Yoomoney::PaymentCreateParams::PaymentOrder)) }
150
+ attr_reader :payment_order
151
+
152
+ sig do
153
+ params(
154
+ payment_order: Yoomoney::PaymentCreateParams::PaymentOrder::OrHash
155
+ ).void
156
+ end
157
+ attr_writer :payment_order
158
+
159
+ # Одноразовый токен для оплаты банковской картой.
160
+ sig { returns(T.nilable(String)) }
161
+ attr_reader :payment_token
162
+
163
+ sig { params(payment_token: String).void }
164
+ attr_writer :payment_token
165
+
166
+ # Данные для формирования чека.
167
+ sig { returns(T.nilable(Yoomoney::ReceiptData)) }
168
+ attr_reader :receipt
169
+
170
+ sig { params(receipt: Yoomoney::ReceiptData::OrHash).void }
171
+ attr_writer :receipt
172
+
173
+ # Получатель перевода.
174
+ sig do
175
+ returns(
176
+ T.nilable(
177
+ T.any(
178
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverMobileBalance,
179
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverDigitalWallet,
180
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverBankAccount
181
+ )
182
+ )
183
+ )
184
+ end
185
+ attr_reader :receiver
186
+
187
+ sig do
188
+ params(
189
+ receiver:
190
+ T.any(
191
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverMobileBalance::OrHash,
192
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverDigitalWallet::OrHash,
193
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverBankAccount::OrHash
194
+ )
195
+ ).void
196
+ end
197
+ attr_writer :receiver
198
+
199
+ # Получатель платежа.
200
+ sig { returns(T.nilable(Yoomoney::Recipient)) }
201
+ attr_reader :recipient
202
+
203
+ sig { params(recipient: Yoomoney::Recipient::OrHash).void }
204
+ attr_writer :recipient
205
+
206
+ # Сохранение платежных данных.
207
+ sig { returns(T.nilable(T::Boolean)) }
208
+ attr_reader :save_payment_method
209
+
210
+ sig { params(save_payment_method: T::Boolean).void }
211
+ attr_writer :save_payment_method
212
+
213
+ # Данные для отправки справки.
214
+ sig do
215
+ returns(T.nilable(T::Array[Yoomoney::PaymentCreateParams::Statement]))
216
+ end
217
+ attr_reader :statements
218
+
219
+ sig do
220
+ params(
221
+ statements: T::Array[Yoomoney::PaymentCreateParams::Statement::OrHash]
222
+ ).void
223
+ end
224
+ attr_writer :statements
225
+
226
+ # Данные о распределении денег.
227
+ sig do
228
+ returns(T.nilable(T::Array[Yoomoney::PaymentCreateParams::Transfer]))
229
+ end
230
+ attr_reader :transfers
231
+
232
+ sig do
233
+ params(
234
+ transfers: T::Array[Yoomoney::PaymentCreateParams::Transfer::OrHash]
235
+ ).void
236
+ end
237
+ attr_writer :transfers
238
+
239
+ sig do
240
+ params(
241
+ amount: Yoomoney::MonetaryAmount::OrHash,
242
+ idempotence_key: String,
243
+ airline: Yoomoney::Airline::OrHash,
244
+ capture: T::Boolean,
245
+ client_ip: String,
246
+ confirmation:
247
+ T.any(
248
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataRedirect::OrHash,
249
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataExternal::OrHash,
250
+ Yoomoney::ConfirmationData::OrHash,
251
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataEmbedded::OrHash,
252
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataMobileApplication::OrHash
253
+ ),
254
+ deal: Yoomoney::PaymentDealInfo::OrHash,
255
+ description: String,
256
+ merchant_customer_id: String,
257
+ metadata: T::Hash[Symbol, String],
258
+ payment_method_data:
259
+ T.any(
260
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataBankCard::OrHash,
261
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataCash::OrHash,
262
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataSberbank::OrHash,
263
+ Yoomoney::PaymentMethodData::OrHash,
264
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataMobileBalance::OrHash,
265
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataB2bSberbank::OrHash,
266
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate::OrHash
267
+ ),
268
+ payment_method_id: String,
269
+ payment_order: Yoomoney::PaymentCreateParams::PaymentOrder::OrHash,
270
+ payment_token: String,
271
+ receipt: Yoomoney::ReceiptData::OrHash,
272
+ receiver:
273
+ T.any(
274
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverMobileBalance::OrHash,
275
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverDigitalWallet::OrHash,
276
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverBankAccount::OrHash
277
+ ),
278
+ recipient: Yoomoney::Recipient::OrHash,
279
+ save_payment_method: T::Boolean,
280
+ statements:
281
+ T::Array[Yoomoney::PaymentCreateParams::Statement::OrHash],
282
+ transfers: T::Array[Yoomoney::PaymentCreateParams::Transfer::OrHash],
283
+ request_options: Yoomoney::RequestOptions::OrHash
284
+ ).returns(T.attached_class)
285
+ end
286
+ def self.new(
287
+ # Сумма платежа.
288
+ amount:,
289
+ idempotence_key:,
290
+ # Данные для продажи авиабилетов.
291
+ airline: nil,
292
+ # Автоматический прием поступившего платежа.
293
+ capture: nil,
294
+ # IPv4 или IPv6-адрес пользователя.
295
+ client_ip: nil,
296
+ # Данные, необходимые для инициирования выбранного сценария подтверждения платежа
297
+ # пользователем.
298
+ confirmation: nil,
299
+ # Данные о сделке.
300
+ deal: nil,
301
+ # Описание транзакции.
302
+ description: nil,
303
+ # Идентификатор покупателя в вашей системе.
304
+ merchant_customer_id: nil,
305
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
306
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
307
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
308
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
309
+ metadata: nil,
310
+ # Данные для оплаты конкретным способом.
311
+ payment_method_data: nil,
312
+ # Идентификатор сохраненного способа оплаты.
313
+ payment_method_id: nil,
314
+ # Данные платежного поручения.
315
+ payment_order: nil,
316
+ # Одноразовый токен для оплаты банковской картой.
317
+ payment_token: nil,
318
+ # Данные для формирования чека.
319
+ receipt: nil,
320
+ # Получатель перевода.
321
+ receiver: nil,
322
+ # Получатель платежа.
323
+ recipient: nil,
324
+ # Сохранение платежных данных.
325
+ save_payment_method: nil,
326
+ # Данные для отправки справки.
327
+ statements: nil,
328
+ # Данные о распределении денег.
329
+ transfers: nil,
330
+ request_options: {}
331
+ )
332
+ end
333
+
334
+ sig do
335
+ override.returns(
336
+ {
337
+ amount: Yoomoney::MonetaryAmount,
338
+ idempotence_key: String,
339
+ airline: Yoomoney::Airline,
340
+ capture: T::Boolean,
341
+ client_ip: String,
342
+ confirmation:
343
+ T.any(
344
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataRedirect,
345
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataExternal,
346
+ Yoomoney::ConfirmationData,
347
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataEmbedded,
348
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataMobileApplication
349
+ ),
350
+ deal: Yoomoney::PaymentDealInfo,
351
+ description: String,
352
+ merchant_customer_id: String,
353
+ metadata: T::Hash[Symbol, String],
354
+ payment_method_data:
355
+ T.any(
356
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataBankCard,
357
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataCash,
358
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataSberbank,
359
+ Yoomoney::PaymentMethodData,
360
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataMobileBalance,
361
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataB2bSberbank,
362
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate
363
+ ),
364
+ payment_method_id: String,
365
+ payment_order: Yoomoney::PaymentCreateParams::PaymentOrder,
366
+ payment_token: String,
367
+ receipt: Yoomoney::ReceiptData,
368
+ receiver:
369
+ T.any(
370
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverMobileBalance,
371
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverDigitalWallet,
372
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverBankAccount
373
+ ),
374
+ recipient: Yoomoney::Recipient,
375
+ save_payment_method: T::Boolean,
376
+ statements: T::Array[Yoomoney::PaymentCreateParams::Statement],
377
+ transfers: T::Array[Yoomoney::PaymentCreateParams::Transfer],
378
+ request_options: Yoomoney::RequestOptions
379
+ }
380
+ )
381
+ end
382
+ def to_hash
383
+ end
384
+
385
+ # Данные, необходимые для инициирования выбранного сценария подтверждения платежа
386
+ # пользователем.
387
+ module Confirmation
388
+ extend Yoomoney::Internal::Type::Union
389
+
390
+ Variants =
391
+ T.type_alias do
392
+ T.any(
393
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataRedirect,
394
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataExternal,
395
+ Yoomoney::ConfirmationData,
396
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataEmbedded,
397
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataMobileApplication
398
+ )
399
+ end
400
+
401
+ class ConfirmationDataRedirect < Yoomoney::Models::ConfirmationData
402
+ OrHash =
403
+ T.type_alias do
404
+ T.any(
405
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataRedirect,
406
+ Yoomoney::Internal::AnyHash
407
+ )
408
+ end
409
+
410
+ # URL, на который необходимо перенаправить пользователя после оплаты.
411
+ sig { returns(String) }
412
+ attr_accessor :return_url
413
+
414
+ # Требование пройти аутентификацию при оплате банковской картой по 3-D Secure.
415
+ sig { returns(T.nilable(T::Boolean)) }
416
+ attr_reader :enforce
417
+
418
+ sig { params(enforce: T::Boolean).void }
419
+ attr_writer :enforce
420
+
421
+ sig do
422
+ params(return_url: String, enforce: T::Boolean).returns(
423
+ T.attached_class
424
+ )
425
+ end
426
+ def self.new(
427
+ # URL, на который необходимо перенаправить пользователя после оплаты.
428
+ return_url:,
429
+ # Требование пройти аутентификацию при оплате банковской картой по 3-D Secure.
430
+ enforce: nil
431
+ )
432
+ end
433
+
434
+ sig { override.returns({ return_url: String, enforce: T::Boolean }) }
435
+ def to_hash
436
+ end
437
+ end
438
+
439
+ class ConfirmationDataExternal < Yoomoney::Models::ConfirmationData
440
+ OrHash =
441
+ T.type_alias do
442
+ T.any(
443
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataExternal,
444
+ Yoomoney::Internal::AnyHash
445
+ )
446
+ end
447
+
448
+ # Язык интерфейса.
449
+ sig { returns(T.nilable(Yoomoney::Locale::OrSymbol)) }
450
+ attr_reader :locale
451
+
452
+ sig { params(locale: Yoomoney::Locale::OrSymbol).void }
453
+ attr_writer :locale
454
+
455
+ sig do
456
+ params(locale: Yoomoney::Locale::OrSymbol).returns(T.attached_class)
457
+ end
458
+ def self.new(
459
+ # Язык интерфейса.
460
+ locale: nil
461
+ )
462
+ end
463
+
464
+ sig { override.returns({ locale: Yoomoney::Locale::OrSymbol }) }
465
+ def to_hash
466
+ end
467
+ end
468
+
469
+ class ConfirmationDataEmbedded < Yoomoney::Models::ConfirmationData
470
+ OrHash =
471
+ T.type_alias do
472
+ T.any(
473
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataEmbedded,
474
+ Yoomoney::Internal::AnyHash
475
+ )
476
+ end
477
+
478
+ # Язык интерфейса.
479
+ sig { returns(T.nilable(Yoomoney::Locale::OrSymbol)) }
480
+ attr_reader :locale
481
+
482
+ sig { params(locale: Yoomoney::Locale::OrSymbol).void }
483
+ attr_writer :locale
484
+
485
+ sig do
486
+ params(locale: Yoomoney::Locale::OrSymbol).returns(T.attached_class)
487
+ end
488
+ def self.new(
489
+ # Язык интерфейса.
490
+ locale: nil
491
+ )
492
+ end
493
+
494
+ sig { override.returns({ locale: Yoomoney::Locale::OrSymbol }) }
495
+ def to_hash
496
+ end
497
+ end
498
+
499
+ class ConfirmationDataMobileApplication < Yoomoney::Models::ConfirmationData
500
+ OrHash =
501
+ T.type_alias do
502
+ T.any(
503
+ Yoomoney::PaymentCreateParams::Confirmation::ConfirmationDataMobileApplication,
504
+ Yoomoney::Internal::AnyHash
505
+ )
506
+ end
507
+
508
+ # URL, на который необходимо перенаправить пользователя после оплаты.
509
+ sig { returns(String) }
510
+ attr_accessor :return_url
511
+
512
+ sig { params(return_url: String).returns(T.attached_class) }
513
+ def self.new(
514
+ # URL, на который необходимо перенаправить пользователя после оплаты.
515
+ return_url:
516
+ )
517
+ end
518
+
519
+ sig { override.returns({ return_url: String }) }
520
+ def to_hash
521
+ end
522
+ end
523
+
524
+ sig do
525
+ override.returns(
526
+ T::Array[Yoomoney::PaymentCreateParams::Confirmation::Variants]
527
+ )
528
+ end
529
+ def self.variants
530
+ end
531
+ end
532
+
533
+ # Данные для оплаты конкретным способом.
534
+ module PaymentMethodData
535
+ extend Yoomoney::Internal::Type::Union
536
+
537
+ Variants =
538
+ T.type_alias do
539
+ T.any(
540
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataBankCard,
541
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataCash,
542
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataSberbank,
543
+ Yoomoney::PaymentMethodData,
544
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataMobileBalance,
545
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataB2bSberbank,
546
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate
547
+ )
548
+ end
549
+
550
+ class PaymentMethodDataBankCard < Yoomoney::Models::PaymentMethodData
551
+ OrHash =
552
+ T.type_alias do
553
+ T.any(
554
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataBankCard,
555
+ Yoomoney::Internal::AnyHash
556
+ )
557
+ end
558
+
559
+ sig { returns(T.nilable(Yoomoney::CardRequestDataWithCsc)) }
560
+ attr_reader :card
561
+
562
+ sig { params(card: Yoomoney::CardRequestDataWithCsc::OrHash).void }
563
+ attr_writer :card
564
+
565
+ sig do
566
+ params(card: Yoomoney::CardRequestDataWithCsc::OrHash).returns(
567
+ T.attached_class
568
+ )
569
+ end
570
+ def self.new(card: nil)
571
+ end
572
+
573
+ sig { override.returns({ card: Yoomoney::CardRequestDataWithCsc }) }
574
+ def to_hash
575
+ end
576
+ end
577
+
578
+ class PaymentMethodDataCash < Yoomoney::Models::PaymentMethodData
579
+ OrHash =
580
+ T.type_alias do
581
+ T.any(
582
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataCash,
583
+ Yoomoney::Internal::AnyHash
584
+ )
585
+ end
586
+
587
+ # Телефон пользователя для смс с кодом платежа.
588
+ sig { returns(T.nilable(String)) }
589
+ attr_reader :phone
590
+
591
+ sig { params(phone: String).void }
592
+ attr_writer :phone
593
+
594
+ sig { params(phone: String).returns(T.attached_class) }
595
+ def self.new(
596
+ # Телефон пользователя для смс с кодом платежа.
597
+ phone: nil
598
+ )
599
+ end
600
+
601
+ sig { override.returns({ phone: String }) }
602
+ def to_hash
603
+ end
604
+ end
605
+
606
+ class PaymentMethodDataSberbank < Yoomoney::Models::PaymentMethodData
607
+ OrHash =
608
+ T.type_alias do
609
+ T.any(
610
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataSberbank,
611
+ Yoomoney::Internal::AnyHash
612
+ )
613
+ end
614
+
615
+ # Телефон пользователя.
616
+ sig { returns(T.nilable(String)) }
617
+ attr_reader :phone
618
+
619
+ sig { params(phone: String).void }
620
+ attr_writer :phone
621
+
622
+ sig { params(phone: String).returns(T.attached_class) }
623
+ def self.new(
624
+ # Телефон пользователя.
625
+ phone: nil
626
+ )
627
+ end
628
+
629
+ sig { override.returns({ phone: String }) }
630
+ def to_hash
631
+ end
632
+ end
633
+
634
+ class PaymentMethodDataMobileBalance < Yoomoney::Models::PaymentMethodData
635
+ OrHash =
636
+ T.type_alias do
637
+ T.any(
638
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataMobileBalance,
639
+ Yoomoney::Internal::AnyHash
640
+ )
641
+ end
642
+
643
+ sig { returns(T.nilable(String)) }
644
+ attr_reader :phone
645
+
646
+ sig { params(phone: String).void }
647
+ attr_writer :phone
648
+
649
+ sig { params(phone: String).returns(T.attached_class) }
650
+ def self.new(phone: nil)
651
+ end
652
+
653
+ sig { override.returns({ phone: String }) }
654
+ def to_hash
655
+ end
656
+ end
657
+
658
+ class PaymentMethodDataB2bSberbank < Yoomoney::Models::PaymentMethodData
659
+ OrHash =
660
+ T.type_alias do
661
+ T.any(
662
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataB2bSberbank,
663
+ Yoomoney::Internal::AnyHash
664
+ )
665
+ end
666
+
667
+ # Назначение платежа.
668
+ sig { returns(String) }
669
+ attr_accessor :payment_purpose
670
+
671
+ # Данные об НДС.
672
+ sig do
673
+ returns(
674
+ T.any(
675
+ Yoomoney::B2bSberbankCalculatedVatData,
676
+ Yoomoney::B2bSberbankUntaxedVatData,
677
+ Yoomoney::B2bSberbankMixedVatData
678
+ )
679
+ )
680
+ end
681
+ attr_accessor :vat_data
682
+
683
+ sig do
684
+ params(
685
+ payment_purpose: String,
686
+ vat_data:
687
+ T.any(
688
+ Yoomoney::B2bSberbankCalculatedVatData::OrHash,
689
+ Yoomoney::B2bSberbankUntaxedVatData::OrHash,
690
+ Yoomoney::B2bSberbankMixedVatData::OrHash
691
+ )
692
+ ).returns(T.attached_class)
693
+ end
694
+ def self.new(
695
+ # Назначение платежа.
696
+ payment_purpose:,
697
+ # Данные об НДС.
698
+ vat_data:
699
+ )
700
+ end
701
+
702
+ sig do
703
+ override.returns(
704
+ {
705
+ payment_purpose: String,
706
+ vat_data:
707
+ T.any(
708
+ Yoomoney::B2bSberbankCalculatedVatData,
709
+ Yoomoney::B2bSberbankUntaxedVatData,
710
+ Yoomoney::B2bSberbankMixedVatData
711
+ )
712
+ }
713
+ )
714
+ end
715
+ def to_hash
716
+ end
717
+
718
+ # Данные об НДС.
719
+ module VatData
720
+ extend Yoomoney::Internal::Type::Union
721
+
722
+ Variants =
723
+ T.type_alias do
724
+ T.any(
725
+ Yoomoney::B2bSberbankCalculatedVatData,
726
+ Yoomoney::B2bSberbankUntaxedVatData,
727
+ Yoomoney::B2bSberbankMixedVatData
728
+ )
729
+ end
730
+
731
+ sig do
732
+ override.returns(
733
+ T::Array[
734
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataB2bSberbank::VatData::Variants
735
+ ]
736
+ )
737
+ end
738
+ def self.variants
739
+ end
740
+ end
741
+ end
742
+
743
+ class PaymentMethodDataElectronicCertificate < Yoomoney::Models::PaymentMethodData
744
+ OrHash =
745
+ T.type_alias do
746
+ T.any(
747
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate,
748
+ Yoomoney::Internal::AnyHash
749
+ )
750
+ end
751
+
752
+ sig do
753
+ returns(
754
+ T.nilable(
755
+ T::Array[
756
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate::Article
757
+ ]
758
+ )
759
+ )
760
+ end
761
+ attr_reader :articles
762
+
763
+ sig do
764
+ params(
765
+ articles:
766
+ T::Array[
767
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate::Article::OrHash
768
+ ]
769
+ ).void
770
+ end
771
+ attr_writer :articles
772
+
773
+ sig do
774
+ returns(
775
+ T.nilable(
776
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate::ElectronicCertificate
777
+ )
778
+ )
779
+ end
780
+ attr_reader :electronic_certificate
781
+
782
+ sig do
783
+ params(
784
+ electronic_certificate:
785
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate::ElectronicCertificate::OrHash
786
+ ).void
787
+ end
788
+ attr_writer :electronic_certificate
789
+
790
+ sig do
791
+ params(
792
+ articles:
793
+ T::Array[
794
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate::Article::OrHash
795
+ ],
796
+ electronic_certificate:
797
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate::ElectronicCertificate::OrHash
798
+ ).returns(T.attached_class)
799
+ end
800
+ def self.new(articles: nil, electronic_certificate: nil)
801
+ end
802
+
803
+ sig do
804
+ override.returns(
805
+ {
806
+ articles:
807
+ T::Array[
808
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate::Article
809
+ ],
810
+ electronic_certificate:
811
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate::ElectronicCertificate
812
+ }
813
+ )
814
+ end
815
+ def to_hash
816
+ end
817
+
818
+ class Article < Yoomoney::Internal::Type::BaseModel
819
+ OrHash =
820
+ T.type_alias do
821
+ T.any(
822
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate::Article,
823
+ Yoomoney::Internal::AnyHash
824
+ )
825
+ end
826
+
827
+ sig { returns(String) }
828
+ attr_accessor :article_name
829
+
830
+ sig { returns(Integer) }
831
+ attr_accessor :article_number
832
+
833
+ sig { returns(Yoomoney::MonetaryAmount) }
834
+ attr_reader :price
835
+
836
+ sig { params(price: Yoomoney::MonetaryAmount::OrHash).void }
837
+ attr_writer :price
838
+
839
+ sig { returns(Integer) }
840
+ attr_accessor :quantity
841
+
842
+ sig { returns(String) }
843
+ attr_accessor :tru_code
844
+
845
+ sig { returns(T.nilable(String)) }
846
+ attr_reader :article_code
847
+
848
+ sig { params(article_code: String).void }
849
+ attr_writer :article_code
850
+
851
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
852
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
853
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
854
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
855
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
856
+ attr_reader :metadata
857
+
858
+ sig { params(metadata: T::Hash[Symbol, String]).void }
859
+ attr_writer :metadata
860
+
861
+ sig do
862
+ params(
863
+ article_name: String,
864
+ article_number: Integer,
865
+ price: Yoomoney::MonetaryAmount::OrHash,
866
+ quantity: Integer,
867
+ tru_code: String,
868
+ article_code: String,
869
+ metadata: T::Hash[Symbol, String]
870
+ ).returns(T.attached_class)
871
+ end
872
+ def self.new(
873
+ article_name:,
874
+ article_number:,
875
+ price:,
876
+ quantity:,
877
+ tru_code:,
878
+ article_code: nil,
879
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
880
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
881
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
882
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
883
+ metadata: nil
884
+ )
885
+ end
886
+
887
+ sig do
888
+ override.returns(
889
+ {
890
+ article_name: String,
891
+ article_number: Integer,
892
+ price: Yoomoney::MonetaryAmount,
893
+ quantity: Integer,
894
+ tru_code: String,
895
+ article_code: String,
896
+ metadata: T::Hash[Symbol, String]
897
+ }
898
+ )
899
+ end
900
+ def to_hash
901
+ end
902
+ end
903
+
904
+ class ElectronicCertificate < Yoomoney::Internal::Type::BaseModel
905
+ OrHash =
906
+ T.type_alias do
907
+ T.any(
908
+ Yoomoney::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate::ElectronicCertificate,
909
+ Yoomoney::Internal::AnyHash
910
+ )
911
+ end
912
+
913
+ sig { returns(Yoomoney::MonetaryAmount) }
914
+ attr_reader :amount
915
+
916
+ sig { params(amount: Yoomoney::MonetaryAmount::OrHash).void }
917
+ attr_writer :amount
918
+
919
+ sig { returns(String) }
920
+ attr_accessor :basket_id
921
+
922
+ sig do
923
+ params(
924
+ amount: Yoomoney::MonetaryAmount::OrHash,
925
+ basket_id: String
926
+ ).returns(T.attached_class)
927
+ end
928
+ def self.new(amount:, basket_id:)
929
+ end
930
+
931
+ sig do
932
+ override.returns(
933
+ { amount: Yoomoney::MonetaryAmount, basket_id: String }
934
+ )
935
+ end
936
+ def to_hash
937
+ end
938
+ end
939
+ end
940
+
941
+ sig do
942
+ override.returns(
943
+ T::Array[Yoomoney::PaymentCreateParams::PaymentMethodData::Variants]
944
+ )
945
+ end
946
+ def self.variants
947
+ end
948
+ end
949
+
950
+ class PaymentOrder < Yoomoney::Internal::Type::BaseModel
951
+ OrHash =
952
+ T.type_alias do
953
+ T.any(
954
+ Yoomoney::PaymentCreateParams::PaymentOrder,
955
+ Yoomoney::Internal::AnyHash
956
+ )
957
+ end
958
+
959
+ # Тип платежного поручения.
960
+ sig { returns(String) }
961
+ attr_accessor :type
962
+
963
+ # Данные платежного поручения.
964
+ sig { params(type: String).returns(T.attached_class) }
965
+ def self.new(
966
+ # Тип платежного поручения.
967
+ type:
968
+ )
969
+ end
970
+
971
+ sig { override.returns({ type: String }) }
972
+ def to_hash
973
+ end
974
+ end
975
+
976
+ # Получатель перевода.
977
+ module Receiver
978
+ extend Yoomoney::Internal::Type::Union
979
+
980
+ Variants =
981
+ T.type_alias do
982
+ T.any(
983
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverMobileBalance,
984
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverDigitalWallet,
985
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverBankAccount
986
+ )
987
+ end
988
+
989
+ class ReceiverMobileBalance < Yoomoney::Models::Receiver
990
+ OrHash =
991
+ T.type_alias do
992
+ T.any(
993
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverMobileBalance,
994
+ Yoomoney::Internal::AnyHash
995
+ )
996
+ end
997
+
998
+ # Номер телефона для пополнения.
999
+ sig { returns(String) }
1000
+ attr_accessor :phone
1001
+
1002
+ sig { params(phone: String).returns(T.attached_class) }
1003
+ def self.new(
1004
+ # Номер телефона для пополнения.
1005
+ phone:
1006
+ )
1007
+ end
1008
+
1009
+ sig { override.returns({ phone: String }) }
1010
+ def to_hash
1011
+ end
1012
+ end
1013
+
1014
+ class ReceiverDigitalWallet < Yoomoney::Models::Receiver
1015
+ OrHash =
1016
+ T.type_alias do
1017
+ T.any(
1018
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverDigitalWallet,
1019
+ Yoomoney::Internal::AnyHash
1020
+ )
1021
+ end
1022
+
1023
+ # Идентификатор электронного кошелька для пополнения.
1024
+ sig { returns(String) }
1025
+ attr_accessor :account_number
1026
+
1027
+ sig { params(account_number: String).returns(T.attached_class) }
1028
+ def self.new(
1029
+ # Идентификатор электронного кошелька для пополнения.
1030
+ account_number:
1031
+ )
1032
+ end
1033
+
1034
+ sig { override.returns({ account_number: String }) }
1035
+ def to_hash
1036
+ end
1037
+ end
1038
+
1039
+ class ReceiverBankAccount < Yoomoney::Models::Receiver
1040
+ OrHash =
1041
+ T.type_alias do
1042
+ T.any(
1043
+ Yoomoney::PaymentCreateParams::Receiver::ReceiverBankAccount,
1044
+ Yoomoney::Internal::AnyHash
1045
+ )
1046
+ end
1047
+
1048
+ # Номер банковского счета.
1049
+ sig { returns(String) }
1050
+ attr_accessor :account_number
1051
+
1052
+ # Банковский идентификационный код (БИК) банка.
1053
+ sig { returns(String) }
1054
+ attr_accessor :bic
1055
+
1056
+ sig do
1057
+ params(account_number: String, bic: String).returns(
1058
+ T.attached_class
1059
+ )
1060
+ end
1061
+ def self.new(
1062
+ # Номер банковского счета.
1063
+ account_number:,
1064
+ # Банковский идентификационный код (БИК) банка.
1065
+ bic:
1066
+ )
1067
+ end
1068
+
1069
+ sig { override.returns({ account_number: String, bic: String }) }
1070
+ def to_hash
1071
+ end
1072
+ end
1073
+
1074
+ sig do
1075
+ override.returns(
1076
+ T::Array[Yoomoney::PaymentCreateParams::Receiver::Variants]
1077
+ )
1078
+ end
1079
+ def self.variants
1080
+ end
1081
+ end
1082
+
1083
+ class Statement < Yoomoney::Internal::Type::BaseModel
1084
+ OrHash =
1085
+ T.type_alias do
1086
+ T.any(
1087
+ Yoomoney::PaymentCreateParams::Statement,
1088
+ Yoomoney::Internal::AnyHash
1089
+ )
1090
+ end
1091
+
1092
+ # Способ доставки справки.
1093
+ sig do
1094
+ returns(Yoomoney::PaymentCreateParams::Statement::DeliveryMethod)
1095
+ end
1096
+ attr_reader :delivery_method
1097
+
1098
+ sig do
1099
+ params(
1100
+ delivery_method:
1101
+ Yoomoney::PaymentCreateParams::Statement::DeliveryMethod::OrHash
1102
+ ).void
1103
+ end
1104
+ attr_writer :delivery_method
1105
+
1106
+ # Тип справки.
1107
+ sig { returns(String) }
1108
+ attr_accessor :type
1109
+
1110
+ sig do
1111
+ params(
1112
+ delivery_method:
1113
+ Yoomoney::PaymentCreateParams::Statement::DeliveryMethod::OrHash,
1114
+ type: String
1115
+ ).returns(T.attached_class)
1116
+ end
1117
+ def self.new(
1118
+ # Способ доставки справки.
1119
+ delivery_method:,
1120
+ # Тип справки.
1121
+ type:
1122
+ )
1123
+ end
1124
+
1125
+ sig do
1126
+ override.returns(
1127
+ {
1128
+ delivery_method:
1129
+ Yoomoney::PaymentCreateParams::Statement::DeliveryMethod,
1130
+ type: String
1131
+ }
1132
+ )
1133
+ end
1134
+ def to_hash
1135
+ end
1136
+
1137
+ class DeliveryMethod < Yoomoney::Internal::Type::BaseModel
1138
+ OrHash =
1139
+ T.type_alias do
1140
+ T.any(
1141
+ Yoomoney::PaymentCreateParams::Statement::DeliveryMethod,
1142
+ Yoomoney::Internal::AnyHash
1143
+ )
1144
+ end
1145
+
1146
+ sig do
1147
+ returns(
1148
+ Yoomoney::PaymentCreateParams::Statement::DeliveryMethod::Type::OrSymbol
1149
+ )
1150
+ end
1151
+ attr_accessor :type
1152
+
1153
+ # Способ доставки справки.
1154
+ sig do
1155
+ params(
1156
+ type:
1157
+ Yoomoney::PaymentCreateParams::Statement::DeliveryMethod::Type::OrSymbol
1158
+ ).returns(T.attached_class)
1159
+ end
1160
+ def self.new(type:)
1161
+ end
1162
+
1163
+ sig do
1164
+ override.returns(
1165
+ {
1166
+ type:
1167
+ Yoomoney::PaymentCreateParams::Statement::DeliveryMethod::Type::OrSymbol
1168
+ }
1169
+ )
1170
+ end
1171
+ def to_hash
1172
+ end
1173
+
1174
+ module Type
1175
+ extend Yoomoney::Internal::Type::Enum
1176
+
1177
+ TaggedSymbol =
1178
+ T.type_alias do
1179
+ T.all(
1180
+ Symbol,
1181
+ Yoomoney::PaymentCreateParams::Statement::DeliveryMethod::Type
1182
+ )
1183
+ end
1184
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1185
+
1186
+ EMAIL =
1187
+ T.let(
1188
+ :email,
1189
+ Yoomoney::PaymentCreateParams::Statement::DeliveryMethod::Type::TaggedSymbol
1190
+ )
1191
+
1192
+ sig do
1193
+ override.returns(
1194
+ T::Array[
1195
+ Yoomoney::PaymentCreateParams::Statement::DeliveryMethod::Type::TaggedSymbol
1196
+ ]
1197
+ )
1198
+ end
1199
+ def self.values
1200
+ end
1201
+ end
1202
+ end
1203
+ end
1204
+
1205
+ class Transfer < Yoomoney::Models::TransferData
1206
+ OrHash =
1207
+ T.type_alias do
1208
+ T.any(
1209
+ Yoomoney::PaymentCreateParams::Transfer,
1210
+ Yoomoney::Internal::AnyHash
1211
+ )
1212
+ end
1213
+
1214
+ # Описание транзакции.
1215
+ sig { returns(T.nilable(String)) }
1216
+ attr_reader :description
1217
+
1218
+ sig { params(description: String).void }
1219
+ attr_writer :description
1220
+
1221
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
1222
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
1223
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
1224
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
1225
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
1226
+ attr_reader :metadata
1227
+
1228
+ sig { params(metadata: T::Hash[Symbol, String]).void }
1229
+ attr_writer :metadata
1230
+
1231
+ sig do
1232
+ params(
1233
+ description: String,
1234
+ metadata: T::Hash[Symbol, String]
1235
+ ).returns(T.attached_class)
1236
+ end
1237
+ def self.new(
1238
+ # Описание транзакции.
1239
+ description: nil,
1240
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
1241
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
1242
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
1243
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
1244
+ metadata: nil
1245
+ )
1246
+ end
1247
+
1248
+ sig do
1249
+ override.returns(
1250
+ { description: String, metadata: T::Hash[Symbol, String] }
1251
+ )
1252
+ end
1253
+ def to_hash
1254
+ end
1255
+ end
1256
+ end
1257
+ end
1258
+ end