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,266 @@
1
+ # typed: strong
2
+
3
+ module Yoomoney
4
+ module Models
5
+ class Invoice < Yoomoney::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias { T.any(Yoomoney::Invoice, Yoomoney::Internal::AnyHash) }
8
+
9
+ # Идентификатор счета.
10
+ sig { returns(String) }
11
+ attr_accessor :id
12
+
13
+ # Корзина заказа — список товаров или услуг.
14
+ sig { returns(T::Array[Yoomoney::LineItem]) }
15
+ attr_accessor :cart
16
+
17
+ # Время создания счета.
18
+ sig { returns(Time) }
19
+ attr_accessor :created_at
20
+
21
+ # Статус счета.
22
+ sig { returns(Yoomoney::Invoice::Status::TaggedSymbol) }
23
+ attr_accessor :status
24
+
25
+ # Комментарий к статусу canceled.
26
+ sig { returns(T.nilable(Yoomoney::Invoice::CancellationDetails)) }
27
+ attr_reader :cancellation_details
28
+
29
+ sig do
30
+ params(
31
+ cancellation_details: Yoomoney::Invoice::CancellationDetails::OrHash
32
+ ).void
33
+ end
34
+ attr_writer :cancellation_details
35
+
36
+ # Способ доставки ссылки на счет.
37
+ sig { returns(T.nilable(Yoomoney::Invoice::DeliveryMethod::Variants)) }
38
+ attr_reader :delivery_method
39
+
40
+ sig do
41
+ params(
42
+ delivery_method:
43
+ T.any(
44
+ Yoomoney::Invoice::DeliveryMethod::DeliveryMethodSelf::OrHash,
45
+ Yoomoney::DeliveryMethod::OrHash
46
+ )
47
+ ).void
48
+ end
49
+ attr_writer :delivery_method
50
+
51
+ # Описание счета.
52
+ sig { returns(T.nilable(String)) }
53
+ attr_reader :description
54
+
55
+ sig { params(description: String).void }
56
+ attr_writer :description
57
+
58
+ # Срок действия счета.
59
+ sig { returns(T.nilable(Time)) }
60
+ attr_reader :expires_at
61
+
62
+ sig { params(expires_at: Time).void }
63
+ attr_writer :expires_at
64
+
65
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
66
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
67
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
68
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
69
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
70
+ attr_reader :metadata
71
+
72
+ sig { params(metadata: T::Hash[Symbol, String]).void }
73
+ attr_writer :metadata
74
+
75
+ # Данные о платеже по счету.
76
+ sig { returns(T.nilable(Yoomoney::Invoice::PaymentDetails)) }
77
+ attr_reader :payment_details
78
+
79
+ sig do
80
+ params(payment_details: Yoomoney::Invoice::PaymentDetails::OrHash).void
81
+ end
82
+ attr_writer :payment_details
83
+
84
+ sig do
85
+ params(
86
+ id: String,
87
+ cart: T::Array[Yoomoney::LineItem::OrHash],
88
+ created_at: Time,
89
+ status: Yoomoney::Invoice::Status::OrSymbol,
90
+ cancellation_details: Yoomoney::Invoice::CancellationDetails::OrHash,
91
+ delivery_method:
92
+ T.any(
93
+ Yoomoney::Invoice::DeliveryMethod::DeliveryMethodSelf::OrHash,
94
+ Yoomoney::DeliveryMethod::OrHash
95
+ ),
96
+ description: String,
97
+ expires_at: Time,
98
+ metadata: T::Hash[Symbol, String],
99
+ payment_details: Yoomoney::Invoice::PaymentDetails::OrHash
100
+ ).returns(T.attached_class)
101
+ end
102
+ def self.new(
103
+ # Идентификатор счета.
104
+ id:,
105
+ # Корзина заказа — список товаров или услуг.
106
+ cart:,
107
+ # Время создания счета.
108
+ created_at:,
109
+ # Статус счета.
110
+ status:,
111
+ # Комментарий к статусу canceled.
112
+ cancellation_details: nil,
113
+ # Способ доставки ссылки на счет.
114
+ delivery_method: nil,
115
+ # Описание счета.
116
+ description: nil,
117
+ # Срок действия счета.
118
+ expires_at: nil,
119
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
120
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
121
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
122
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
123
+ metadata: nil,
124
+ # Данные о платеже по счету.
125
+ payment_details: nil
126
+ )
127
+ end
128
+
129
+ sig do
130
+ override.returns(
131
+ {
132
+ id: String,
133
+ cart: T::Array[Yoomoney::LineItem],
134
+ created_at: Time,
135
+ status: Yoomoney::Invoice::Status::TaggedSymbol,
136
+ cancellation_details: Yoomoney::Invoice::CancellationDetails,
137
+ delivery_method: Yoomoney::Invoice::DeliveryMethod::Variants,
138
+ description: String,
139
+ expires_at: Time,
140
+ metadata: T::Hash[Symbol, String],
141
+ payment_details: Yoomoney::Invoice::PaymentDetails
142
+ }
143
+ )
144
+ end
145
+ def to_hash
146
+ end
147
+
148
+ # Статус счета.
149
+ module Status
150
+ extend Yoomoney::Internal::Type::Enum
151
+
152
+ TaggedSymbol = T.type_alias { T.all(Symbol, Yoomoney::Invoice::Status) }
153
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
154
+
155
+ PENDING = T.let(:pending, Yoomoney::Invoice::Status::TaggedSymbol)
156
+ SUCCEEDED = T.let(:succeeded, Yoomoney::Invoice::Status::TaggedSymbol)
157
+ CANCELED = T.let(:canceled, Yoomoney::Invoice::Status::TaggedSymbol)
158
+
159
+ sig do
160
+ override.returns(T::Array[Yoomoney::Invoice::Status::TaggedSymbol])
161
+ end
162
+ def self.values
163
+ end
164
+ end
165
+
166
+ class CancellationDetails < Yoomoney::Internal::Type::BaseModel
167
+ OrHash =
168
+ T.type_alias do
169
+ T.any(
170
+ Yoomoney::Invoice::CancellationDetails,
171
+ Yoomoney::Internal::AnyHash
172
+ )
173
+ end
174
+
175
+ sig { returns(String) }
176
+ attr_accessor :party
177
+
178
+ sig { returns(String) }
179
+ attr_accessor :reason
180
+
181
+ # Комментарий к статусу canceled.
182
+ sig { params(party: String, reason: String).returns(T.attached_class) }
183
+ def self.new(party:, reason:)
184
+ end
185
+
186
+ sig { override.returns({ party: String, reason: String }) }
187
+ def to_hash
188
+ end
189
+ end
190
+
191
+ # Способ доставки ссылки на счет.
192
+ module DeliveryMethod
193
+ extend Yoomoney::Internal::Type::Union
194
+
195
+ Variants =
196
+ T.type_alias do
197
+ T.any(
198
+ Yoomoney::Invoice::DeliveryMethod::DeliveryMethodSelf,
199
+ Yoomoney::DeliveryMethod
200
+ )
201
+ end
202
+
203
+ class DeliveryMethodSelf < Yoomoney::Models::DeliveryMethod
204
+ OrHash =
205
+ T.type_alias do
206
+ T.any(
207
+ Yoomoney::Invoice::DeliveryMethod::DeliveryMethodSelf,
208
+ Yoomoney::Internal::AnyHash
209
+ )
210
+ end
211
+
212
+ # URL страницы счета.
213
+ sig { returns(T.nilable(String)) }
214
+ attr_reader :url
215
+
216
+ sig { params(url: String).void }
217
+ attr_writer :url
218
+
219
+ sig { params(url: String).returns(T.attached_class) }
220
+ def self.new(
221
+ # URL страницы счета.
222
+ url: nil
223
+ )
224
+ end
225
+
226
+ sig { override.returns({ url: String }) }
227
+ def to_hash
228
+ end
229
+ end
230
+
231
+ sig do
232
+ override.returns(
233
+ T::Array[Yoomoney::Invoice::DeliveryMethod::Variants]
234
+ )
235
+ end
236
+ def self.variants
237
+ end
238
+ end
239
+
240
+ class PaymentDetails < Yoomoney::Internal::Type::BaseModel
241
+ OrHash =
242
+ T.type_alias do
243
+ T.any(
244
+ Yoomoney::Invoice::PaymentDetails,
245
+ Yoomoney::Internal::AnyHash
246
+ )
247
+ end
248
+
249
+ sig { returns(String) }
250
+ attr_accessor :id
251
+
252
+ sig { returns(String) }
253
+ attr_accessor :status
254
+
255
+ # Данные о платеже по счету.
256
+ sig { params(id: String, status: String).returns(T.attached_class) }
257
+ def self.new(id:, status:)
258
+ end
259
+
260
+ sig { override.returns({ id: String, status: String }) }
261
+ def to_hash
262
+ end
263
+ end
264
+ end
265
+ end
266
+ end
@@ -0,0 +1,309 @@
1
+ # typed: strong
2
+
3
+ module Yoomoney
4
+ module Models
5
+ class InvoiceCreateParams < 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::InvoiceCreateParams, Yoomoney::Internal::AnyHash)
12
+ end
13
+
14
+ # Корзина заказа — список товаров или услуг.
15
+ sig { returns(T::Array[Yoomoney::LineItem]) }
16
+ attr_accessor :cart
17
+
18
+ # Способ доставки ссылки на счет.
19
+ sig do
20
+ returns(
21
+ T.any(
22
+ Yoomoney::DeliveryMethodData,
23
+ Yoomoney::InvoiceCreateParams::DeliveryMethod::DeliveryMethodDataSMS,
24
+ Yoomoney::InvoiceCreateParams::DeliveryMethod::DeliveryMethodDataEmail
25
+ )
26
+ )
27
+ end
28
+ attr_accessor :delivery_method
29
+
30
+ sig { returns(String) }
31
+ attr_accessor :idempotence_key
32
+
33
+ # Описание заказа.
34
+ sig { returns(T.nilable(String)) }
35
+ attr_reader :description
36
+
37
+ sig { params(description: String).void }
38
+ attr_writer :description
39
+
40
+ # Срок действия счета.
41
+ sig { returns(T.nilable(Time)) }
42
+ attr_reader :expires_at
43
+
44
+ sig { params(expires_at: Time).void }
45
+ attr_writer :expires_at
46
+
47
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
48
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
49
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
50
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
51
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
52
+ attr_reader :metadata
53
+
54
+ sig { params(metadata: T::Hash[Symbol, String]).void }
55
+ attr_writer :metadata
56
+
57
+ # Данные платежа.
58
+ sig { returns(T.nilable(Yoomoney::InvoiceCreateParams::PaymentData)) }
59
+ attr_reader :payment_data
60
+
61
+ sig do
62
+ params(
63
+ payment_data: Yoomoney::InvoiceCreateParams::PaymentData::OrHash
64
+ ).void
65
+ end
66
+ attr_writer :payment_data
67
+
68
+ sig do
69
+ params(
70
+ cart: T::Array[Yoomoney::LineItem::OrHash],
71
+ delivery_method:
72
+ T.any(
73
+ Yoomoney::DeliveryMethodData::OrHash,
74
+ Yoomoney::InvoiceCreateParams::DeliveryMethod::DeliveryMethodDataSMS::OrHash,
75
+ Yoomoney::InvoiceCreateParams::DeliveryMethod::DeliveryMethodDataEmail::OrHash
76
+ ),
77
+ idempotence_key: String,
78
+ description: String,
79
+ expires_at: Time,
80
+ metadata: T::Hash[Symbol, String],
81
+ payment_data: Yoomoney::InvoiceCreateParams::PaymentData::OrHash,
82
+ request_options: Yoomoney::RequestOptions::OrHash
83
+ ).returns(T.attached_class)
84
+ end
85
+ def self.new(
86
+ # Корзина заказа — список товаров или услуг.
87
+ cart:,
88
+ # Способ доставки ссылки на счет.
89
+ delivery_method:,
90
+ idempotence_key:,
91
+ # Описание заказа.
92
+ description: nil,
93
+ # Срок действия счета.
94
+ expires_at: nil,
95
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
96
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
97
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
98
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
99
+ metadata: nil,
100
+ # Данные платежа.
101
+ payment_data: nil,
102
+ request_options: {}
103
+ )
104
+ end
105
+
106
+ sig do
107
+ override.returns(
108
+ {
109
+ cart: T::Array[Yoomoney::LineItem],
110
+ delivery_method:
111
+ T.any(
112
+ Yoomoney::DeliveryMethodData,
113
+ Yoomoney::InvoiceCreateParams::DeliveryMethod::DeliveryMethodDataSMS,
114
+ Yoomoney::InvoiceCreateParams::DeliveryMethod::DeliveryMethodDataEmail
115
+ ),
116
+ idempotence_key: String,
117
+ description: String,
118
+ expires_at: Time,
119
+ metadata: T::Hash[Symbol, String],
120
+ payment_data: Yoomoney::InvoiceCreateParams::PaymentData,
121
+ request_options: Yoomoney::RequestOptions
122
+ }
123
+ )
124
+ end
125
+ def to_hash
126
+ end
127
+
128
+ # Способ доставки ссылки на счет.
129
+ module DeliveryMethod
130
+ extend Yoomoney::Internal::Type::Union
131
+
132
+ Variants =
133
+ T.type_alias do
134
+ T.any(
135
+ Yoomoney::DeliveryMethodData,
136
+ Yoomoney::InvoiceCreateParams::DeliveryMethod::DeliveryMethodDataSMS,
137
+ Yoomoney::InvoiceCreateParams::DeliveryMethod::DeliveryMethodDataEmail
138
+ )
139
+ end
140
+
141
+ class DeliveryMethodDataSMS < Yoomoney::Models::DeliveryMethodData
142
+ OrHash =
143
+ T.type_alias do
144
+ T.any(
145
+ Yoomoney::InvoiceCreateParams::DeliveryMethod::DeliveryMethodDataSMS,
146
+ Yoomoney::Internal::AnyHash
147
+ )
148
+ end
149
+
150
+ # Номер телефона для отправки смс.
151
+ sig { returns(String) }
152
+ attr_accessor :phone
153
+
154
+ sig { params(phone: String).returns(T.attached_class) }
155
+ def self.new(
156
+ # Номер телефона для отправки смс.
157
+ phone:
158
+ )
159
+ end
160
+
161
+ sig { override.returns({ phone: String }) }
162
+ def to_hash
163
+ end
164
+ end
165
+
166
+ class DeliveryMethodDataEmail < Yoomoney::Models::DeliveryMethodData
167
+ OrHash =
168
+ T.type_alias do
169
+ T.any(
170
+ Yoomoney::InvoiceCreateParams::DeliveryMethod::DeliveryMethodDataEmail,
171
+ Yoomoney::Internal::AnyHash
172
+ )
173
+ end
174
+
175
+ # Электронная почта для отправки ссылки на счет.
176
+ sig { returns(String) }
177
+ attr_accessor :email
178
+
179
+ sig { params(email: String).returns(T.attached_class) }
180
+ def self.new(
181
+ # Электронная почта для отправки ссылки на счет.
182
+ email:
183
+ )
184
+ end
185
+
186
+ sig { override.returns({ email: String }) }
187
+ def to_hash
188
+ end
189
+ end
190
+
191
+ sig do
192
+ override.returns(
193
+ T::Array[Yoomoney::InvoiceCreateParams::DeliveryMethod::Variants]
194
+ )
195
+ end
196
+ def self.variants
197
+ end
198
+ end
199
+
200
+ class PaymentData < Yoomoney::Internal::Type::BaseModel
201
+ OrHash =
202
+ T.type_alias do
203
+ T.any(
204
+ Yoomoney::InvoiceCreateParams::PaymentData,
205
+ Yoomoney::Internal::AnyHash
206
+ )
207
+ end
208
+
209
+ sig { returns(Yoomoney::MonetaryAmount) }
210
+ attr_reader :amount
211
+
212
+ sig { params(amount: Yoomoney::MonetaryAmount::OrHash).void }
213
+ attr_writer :amount
214
+
215
+ sig { returns(T.nilable(T::Boolean)) }
216
+ attr_reader :capture
217
+
218
+ sig { params(capture: T::Boolean).void }
219
+ attr_writer :capture
220
+
221
+ sig { returns(T.nilable(String)) }
222
+ attr_reader :client_ip
223
+
224
+ sig { params(client_ip: String).void }
225
+ attr_writer :client_ip
226
+
227
+ sig { returns(T.nilable(String)) }
228
+ attr_reader :description
229
+
230
+ sig { params(description: String).void }
231
+ attr_writer :description
232
+
233
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
234
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
235
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
236
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
237
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
238
+ attr_reader :metadata
239
+
240
+ sig { params(metadata: T::Hash[Symbol, String]).void }
241
+ attr_writer :metadata
242
+
243
+ sig { returns(T.nilable(Yoomoney::ReceiptData)) }
244
+ attr_reader :receipt
245
+
246
+ sig { params(receipt: Yoomoney::ReceiptData::OrHash).void }
247
+ attr_writer :receipt
248
+
249
+ sig { returns(T.nilable(Yoomoney::Recipient)) }
250
+ attr_reader :recipient
251
+
252
+ sig { params(recipient: Yoomoney::Recipient::OrHash).void }
253
+ attr_writer :recipient
254
+
255
+ sig { returns(T.nilable(T::Boolean)) }
256
+ attr_reader :save_payment_method
257
+
258
+ sig { params(save_payment_method: T::Boolean).void }
259
+ attr_writer :save_payment_method
260
+
261
+ # Данные платежа.
262
+ sig do
263
+ params(
264
+ amount: Yoomoney::MonetaryAmount::OrHash,
265
+ capture: T::Boolean,
266
+ client_ip: String,
267
+ description: String,
268
+ metadata: T::Hash[Symbol, String],
269
+ receipt: Yoomoney::ReceiptData::OrHash,
270
+ recipient: Yoomoney::Recipient::OrHash,
271
+ save_payment_method: T::Boolean
272
+ ).returns(T.attached_class)
273
+ end
274
+ def self.new(
275
+ amount:,
276
+ capture: nil,
277
+ client_ip: nil,
278
+ description: nil,
279
+ # Любые дополнительные данные, которые нужны вам для работы (например, номер
280
+ # заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от
281
+ # ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов,
282
+ # значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
283
+ metadata: nil,
284
+ receipt: nil,
285
+ recipient: nil,
286
+ save_payment_method: nil
287
+ )
288
+ end
289
+
290
+ sig do
291
+ override.returns(
292
+ {
293
+ amount: Yoomoney::MonetaryAmount,
294
+ capture: T::Boolean,
295
+ client_ip: String,
296
+ description: String,
297
+ metadata: T::Hash[Symbol, String],
298
+ receipt: Yoomoney::ReceiptData,
299
+ recipient: Yoomoney::Recipient,
300
+ save_payment_method: T::Boolean
301
+ }
302
+ )
303
+ end
304
+ def to_hash
305
+ end
306
+ end
307
+ end
308
+ end
309
+ end
@@ -0,0 +1,27 @@
1
+ # typed: strong
2
+
3
+ module Yoomoney
4
+ module Models
5
+ class InvoiceRetrieveParams < 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::InvoiceRetrieveParams, Yoomoney::Internal::AnyHash)
12
+ end
13
+
14
+ sig do
15
+ params(request_options: Yoomoney::RequestOptions::OrHash).returns(
16
+ T.attached_class
17
+ )
18
+ end
19
+ def self.new(request_options: {})
20
+ end
21
+
22
+ sig { override.returns({ request_options: Yoomoney::RequestOptions }) }
23
+ def to_hash
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,53 @@
1
+ # typed: strong
2
+
3
+ module Yoomoney
4
+ module Models
5
+ class InvoicingBankCardData < Yoomoney::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Yoomoney::InvoicingBankCardData, Yoomoney::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(Yoomoney::BankCardType::OrSymbol) }
12
+ attr_accessor :card_type
13
+
14
+ sig { returns(String) }
15
+ attr_accessor :expiry_month
16
+
17
+ sig { returns(String) }
18
+ attr_accessor :expiry_year
19
+
20
+ sig { returns(String) }
21
+ attr_accessor :first6
22
+
23
+ sig { returns(String) }
24
+ attr_accessor :last4
25
+
26
+ sig do
27
+ params(
28
+ card_type: Yoomoney::BankCardType::OrSymbol,
29
+ expiry_month: String,
30
+ expiry_year: String,
31
+ first6: String,
32
+ last4: String
33
+ ).returns(T.attached_class)
34
+ end
35
+ def self.new(card_type:, expiry_month:, expiry_year:, first6:, last4:)
36
+ end
37
+
38
+ sig do
39
+ override.returns(
40
+ {
41
+ card_type: Yoomoney::BankCardType::OrSymbol,
42
+ expiry_month: String,
43
+ expiry_year: String,
44
+ first6: String,
45
+ last4: String
46
+ }
47
+ )
48
+ end
49
+ def to_hash
50
+ end
51
+ end
52
+ end
53
+ end