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,182 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Resources
5
+ class Payments
6
+ # Some parameter documentations has been truncated, see
7
+ # {Yoomoney::Models::PaymentCreateParams} for more details.
8
+ #
9
+ # Создание платежа
10
+ #
11
+ # @overload create(amount:, idempotence_key:, airline: nil, capture: nil, client_ip: nil, confirmation: nil, deal: nil, description: nil, merchant_customer_id: nil, metadata: nil, payment_method_data: nil, payment_method_id: nil, payment_order: nil, payment_token: nil, receipt: nil, receiver: nil, recipient: nil, save_payment_method: nil, statements: nil, transfers: nil, request_options: {})
12
+ #
13
+ # @param amount [Yoomoney::Models::MonetaryAmount] Body param: Сумма платежа.
14
+ #
15
+ # @param idempotence_key [String] Header param
16
+ #
17
+ # @param airline [Yoomoney::Models::Airline] Body param: Данные для продажи авиабилетов.
18
+ #
19
+ # @param capture [Boolean] Body param: Автоматический прием поступившего платежа.
20
+ #
21
+ # @param client_ip [String] Body param: IPv4 или IPv6-адрес пользователя.
22
+ #
23
+ # @param confirmation [Yoomoney::Models::PaymentCreateParams::Confirmation::ConfirmationDataRedirect, Yoomoney::Models::PaymentCreateParams::Confirmation::ConfirmationDataExternal, Yoomoney::Models::ConfirmationData, Yoomoney::Models::PaymentCreateParams::Confirmation::ConfirmationDataEmbedded, Yoomoney::Models::PaymentCreateParams::Confirmation::ConfirmationDataMobileApplication] Body param: Данные, необходимые для инициирования выбранного сценария подтвержде
24
+ #
25
+ # @param deal [Yoomoney::Models::PaymentDealInfo] Body param: Данные о сделке.
26
+ #
27
+ # @param description [String] Body param: Описание транзакции.
28
+ #
29
+ # @param merchant_customer_id [String] Body param: Идентификатор покупателя в вашей системе.
30
+ #
31
+ # @param metadata [Hash{Symbol=>String}] Body param: Любые дополнительные данные, которые нужны вам для работы (например,
32
+ #
33
+ # @param payment_method_data [Yoomoney::Models::PaymentCreateParams::PaymentMethodData::PaymentMethodDataBankCard, Yoomoney::Models::PaymentCreateParams::PaymentMethodData::PaymentMethodDataCash, Yoomoney::Models::PaymentCreateParams::PaymentMethodData::PaymentMethodDataSberbank, Yoomoney::Models::PaymentMethodData, Yoomoney::Models::PaymentCreateParams::PaymentMethodData::PaymentMethodDataMobileBalance, Yoomoney::Models::PaymentCreateParams::PaymentMethodData::PaymentMethodDataB2bSberbank, Yoomoney::Models::PaymentCreateParams::PaymentMethodData::PaymentMethodDataElectronicCertificate] Body param: Данные для оплаты конкретным способом.
34
+ #
35
+ # @param payment_method_id [String] Body param: Идентификатор сохраненного способа оплаты.
36
+ #
37
+ # @param payment_order [Yoomoney::Models::PaymentCreateParams::PaymentOrder] Body param: Данные платежного поручения.
38
+ #
39
+ # @param payment_token [String] Body param: Одноразовый токен для оплаты банковской картой.
40
+ #
41
+ # @param receipt [Yoomoney::Models::ReceiptData] Body param: Данные для формирования чека.
42
+ #
43
+ # @param receiver [Yoomoney::Models::PaymentCreateParams::Receiver::ReceiverMobileBalance, Yoomoney::Models::PaymentCreateParams::Receiver::ReceiverDigitalWallet, Yoomoney::Models::PaymentCreateParams::Receiver::ReceiverBankAccount] Body param: Получатель перевода.
44
+ #
45
+ # @param recipient [Yoomoney::Models::Recipient] Body param: Получатель платежа.
46
+ #
47
+ # @param save_payment_method [Boolean] Body param: Сохранение платежных данных.
48
+ #
49
+ # @param statements [Array<Yoomoney::Models::PaymentCreateParams::Statement>] Body param: Данные для отправки справки.
50
+ #
51
+ # @param transfers [Array<Yoomoney::Models::PaymentCreateParams::Transfer>] Body param: Данные о распределении денег.
52
+ #
53
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
54
+ #
55
+ # @return [Yoomoney::Models::Payment]
56
+ #
57
+ # @see Yoomoney::Models::PaymentCreateParams
58
+ def create(params)
59
+ parsed, options = Yoomoney::PaymentCreateParams.dump_request(params)
60
+ header_params = {idempotence_key: "idempotence-key"}
61
+ @client.request(
62
+ method: :post,
63
+ path: "payments",
64
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
65
+ body: parsed.except(*header_params.keys),
66
+ model: Yoomoney::Payment,
67
+ options: options
68
+ )
69
+ end
70
+
71
+ # Информация о платеже
72
+ #
73
+ # @overload retrieve(payment_id, request_options: {})
74
+ #
75
+ # @param payment_id [String]
76
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
77
+ #
78
+ # @return [Yoomoney::Models::Payment]
79
+ #
80
+ # @see Yoomoney::Models::PaymentRetrieveParams
81
+ def retrieve(payment_id, params = {})
82
+ @client.request(
83
+ method: :get,
84
+ path: ["payments/%1$s", payment_id],
85
+ model: Yoomoney::Payment,
86
+ options: params[:request_options]
87
+ )
88
+ end
89
+
90
+ # Список платежей
91
+ #
92
+ # @overload list(captured_at: nil, created_at: nil, cursor: nil, limit: nil, payment_method: nil, status: nil, request_options: {})
93
+ #
94
+ # @param captured_at [Yoomoney::Models::PaymentListParams::CapturedAt]
95
+ # @param created_at [Yoomoney::Models::PaymentListParams::CreatedAt]
96
+ # @param cursor [String]
97
+ # @param limit [Integer]
98
+ # @param payment_method [Symbol, Yoomoney::Models::PaymentMethodType]
99
+ # @param status [Symbol, Yoomoney::Models::PaymentStatus]
100
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
101
+ #
102
+ # @return [Yoomoney::Models::PaymentListResponse]
103
+ #
104
+ # @see Yoomoney::Models::PaymentListParams
105
+ def list(params = {})
106
+ parsed, options = Yoomoney::PaymentListParams.dump_request(params)
107
+ @client.request(
108
+ method: :get,
109
+ path: "payments",
110
+ query: parsed,
111
+ model: Yoomoney::Models::PaymentListResponse,
112
+ options: options
113
+ )
114
+ end
115
+
116
+ # Отмена платежа
117
+ #
118
+ # @overload cancel(payment_id, idempotence_key:, request_options: {})
119
+ #
120
+ # @param payment_id [String]
121
+ # @param idempotence_key [String]
122
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
123
+ #
124
+ # @return [Yoomoney::Models::Payment]
125
+ #
126
+ # @see Yoomoney::Models::PaymentCancelParams
127
+ def cancel(payment_id, params)
128
+ parsed, options = Yoomoney::PaymentCancelParams.dump_request(params)
129
+ @client.request(
130
+ method: :post,
131
+ path: ["payments/%1$s/cancel", payment_id],
132
+ headers: parsed.transform_keys(idempotence_key: "idempotence-key"),
133
+ model: Yoomoney::Payment,
134
+ options: options
135
+ )
136
+ end
137
+
138
+ # Подтверждение платежа
139
+ #
140
+ # @overload capture(payment_id, idempotence_key:, airline: nil, amount: nil, deal: nil, receipt: nil, transfers: nil, request_options: {})
141
+ #
142
+ # @param payment_id [String] Path param
143
+ #
144
+ # @param idempotence_key [String] Header param
145
+ #
146
+ # @param airline [Yoomoney::Models::Airline] Body param: Данные для продажи авиабилетов.
147
+ #
148
+ # @param amount [Yoomoney::Models::MonetaryAmount] Body param: Подтверждаемая сумма платежа.
149
+ #
150
+ # @param deal [Yoomoney::Models::PaymentDealInfo] Body param: Данные о сделке.
151
+ #
152
+ # @param receipt [Yoomoney::Models::ReceiptData] Body param: Данные для формирования чека.
153
+ #
154
+ # @param transfers [Array<Yoomoney::Models::TransferData>] Body param: Данные о распределении денег.
155
+ #
156
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
157
+ #
158
+ # @return [Yoomoney::Models::Payment]
159
+ #
160
+ # @see Yoomoney::Models::PaymentCaptureParams
161
+ def capture(payment_id, params)
162
+ parsed, options = Yoomoney::PaymentCaptureParams.dump_request(params)
163
+ header_params = {idempotence_key: "idempotence-key"}
164
+ @client.request(
165
+ method: :post,
166
+ path: ["payments/%1$s/capture", payment_id],
167
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
168
+ body: parsed.except(*header_params.keys),
169
+ model: Yoomoney::Payment,
170
+ options: options
171
+ )
172
+ end
173
+
174
+ # @api private
175
+ #
176
+ # @param client [Yoomoney::Client]
177
+ def initialize(client:)
178
+ @client = client
179
+ end
180
+ end
181
+ end
182
+ end
@@ -0,0 +1,124 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Resources
5
+ class Payouts
6
+ # Some parameter documentations has been truncated, see
7
+ # {Yoomoney::Models::PayoutCreateParams} for more details.
8
+ #
9
+ # Создание выплаты
10
+ #
11
+ # @overload create(amount:, idempotence_key:, deal: nil, description: nil, metadata: nil, payment_method_id: nil, payout_destination_data: nil, payout_token: nil, personal_data: nil, request_options: {})
12
+ #
13
+ # @param amount [Yoomoney::Models::MonetaryAmount] Body param: Сумма выплаты.
14
+ #
15
+ # @param idempotence_key [String] Header param
16
+ #
17
+ # @param deal [Yoomoney::Models::PayoutDealInfo] Body param: Данные о сделке.
18
+ #
19
+ # @param description [String] Body param: Описание выплаты.
20
+ #
21
+ # @param metadata [Hash{Symbol=>String}] Body param: Любые дополнительные данные, которые нужны вам для работы (например,
22
+ #
23
+ # @param payment_method_id [String] Body param: Идентификатор сохраненного способа оплаты.
24
+ #
25
+ # @param payout_destination_data [Yoomoney::Models::PayoutCreateParams::PayoutDestinationData::PayoutToYooMoneyDestinationData, Yoomoney::Models::PayoutCreateParams::PayoutDestinationData::PayoutToBankCardDestinationData, Yoomoney::Models::PayoutCreateParams::PayoutDestinationData::PayoutToSbpDestinationData] Body param: Данные для проведения выплаты.
26
+ #
27
+ # @param payout_token [String] Body param: Токен для проведения выплаты.
28
+ #
29
+ # @param personal_data [Array<Yoomoney::Models::PayoutCreateParams::PersonalData>] Body param: Персональные данные получателя выплаты.
30
+ #
31
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
32
+ #
33
+ # @return [Yoomoney::Models::Payout]
34
+ #
35
+ # @see Yoomoney::Models::PayoutCreateParams
36
+ def create(params)
37
+ parsed, options = Yoomoney::PayoutCreateParams.dump_request(params)
38
+ header_params = {idempotence_key: "idempotence-key"}
39
+ @client.request(
40
+ method: :post,
41
+ path: "payouts",
42
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
43
+ body: parsed.except(*header_params.keys),
44
+ model: Yoomoney::Payout,
45
+ options: options
46
+ )
47
+ end
48
+
49
+ # Информация о выплате
50
+ #
51
+ # @overload retrieve(payout_id, request_options: {})
52
+ #
53
+ # @param payout_id [String]
54
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
55
+ #
56
+ # @return [Yoomoney::Models::Payout]
57
+ #
58
+ # @see Yoomoney::Models::PayoutRetrieveParams
59
+ def retrieve(payout_id, params = {})
60
+ @client.request(
61
+ method: :get,
62
+ path: ["payouts/%1$s", payout_id],
63
+ model: Yoomoney::Payout,
64
+ options: params[:request_options]
65
+ )
66
+ end
67
+
68
+ # Список выплат
69
+ #
70
+ # @overload list(created_at: nil, cursor: nil, limit: nil, payout_destination: nil, status: nil, request_options: {})
71
+ #
72
+ # @param created_at [Yoomoney::Models::PayoutListParams::CreatedAt]
73
+ # @param cursor [String]
74
+ # @param limit [Integer]
75
+ # @param payout_destination [Yoomoney::Models::PayoutListParams::PayoutDestination]
76
+ # @param status [Symbol, Yoomoney::Models::PayoutStatus]
77
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
78
+ #
79
+ # @return [Yoomoney::Models::PayoutsList]
80
+ #
81
+ # @see Yoomoney::Models::PayoutListParams
82
+ def list(params = {})
83
+ parsed, options = Yoomoney::PayoutListParams.dump_request(params)
84
+ @client.request(
85
+ method: :get,
86
+ path: "payouts",
87
+ query: parsed,
88
+ model: Yoomoney::PayoutsList,
89
+ options: options
90
+ )
91
+ end
92
+
93
+ # Поиск выплат по метаданным
94
+ #
95
+ # @overload search(created_at: nil, cursor: nil, limit: nil, request_options: {})
96
+ #
97
+ # @param created_at [Yoomoney::Models::PayoutSearchParams::CreatedAt]
98
+ # @param cursor [String]
99
+ # @param limit [Integer]
100
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
101
+ #
102
+ # @return [Yoomoney::Models::PayoutsList]
103
+ #
104
+ # @see Yoomoney::Models::PayoutSearchParams
105
+ def search(params = {})
106
+ parsed, options = Yoomoney::PayoutSearchParams.dump_request(params)
107
+ @client.request(
108
+ method: :get,
109
+ path: "payouts/search",
110
+ query: parsed,
111
+ model: Yoomoney::PayoutsList,
112
+ options: options
113
+ )
114
+ end
115
+
116
+ # @api private
117
+ #
118
+ # @param client [Yoomoney::Client]
119
+ def initialize(client:)
120
+ @client = client
121
+ end
122
+ end
123
+ end
124
+ end
@@ -0,0 +1,70 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Resources
5
+ class PersonalData
6
+ # Some parameter documentations has been truncated, see
7
+ # {Yoomoney::Models::PersonalDataCreateParams} for more details.
8
+ #
9
+ # Создание персональных данных
10
+ #
11
+ # @overload create(first_name:, last_name:, type:, idempotence_key:, metadata: nil, middle_name: nil, request_options: {})
12
+ #
13
+ # @param first_name [String] Body param: Имя.
14
+ #
15
+ # @param last_name [String] Body param: Фамилия.
16
+ #
17
+ # @param type [Symbol, Yoomoney::Models::PersonalDataType] Body param: Тип персональных данных.
18
+ #
19
+ # @param idempotence_key [String] Header param
20
+ #
21
+ # @param metadata [Hash{Symbol=>String}] Body param: Любые дополнительные данные, которые нужны вам для работы (например,
22
+ #
23
+ # @param middle_name [String] Body param: Отчество.
24
+ #
25
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
26
+ #
27
+ # @return [Yoomoney::Models::PersonalDataAPI]
28
+ #
29
+ # @see Yoomoney::Models::PersonalDataCreateParams
30
+ def create(params)
31
+ parsed, options = Yoomoney::PersonalDataCreateParams.dump_request(params)
32
+ header_params = {idempotence_key: "idempotence-key"}
33
+ @client.request(
34
+ method: :post,
35
+ path: "personal_data",
36
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
37
+ body: parsed.except(*header_params.keys),
38
+ model: Yoomoney::PersonalDataAPI,
39
+ options: options
40
+ )
41
+ end
42
+
43
+ # Информация о персональных данных
44
+ #
45
+ # @overload retrieve(personal_data_id, request_options: {})
46
+ #
47
+ # @param personal_data_id [String]
48
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
49
+ #
50
+ # @return [Yoomoney::Models::PersonalDataAPI]
51
+ #
52
+ # @see Yoomoney::Models::PersonalDataRetrieveParams
53
+ def retrieve(personal_data_id, params = {})
54
+ @client.request(
55
+ method: :get,
56
+ path: ["personal_data/%1$s", personal_data_id],
57
+ model: Yoomoney::PersonalDataAPI,
58
+ options: params[:request_options]
59
+ )
60
+ end
61
+
62
+ # @api private
63
+ #
64
+ # @param client [Yoomoney::Client]
65
+ def initialize(client:)
66
+ @client = client
67
+ end
68
+ end
69
+ end
70
+ end
@@ -0,0 +1,111 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Resources
5
+ class Receipts
6
+ # Создание чека
7
+ #
8
+ # @overload create(customer:, items:, send_:, settlements:, type:, idempotence_key:, additional_user_props: nil, internet: nil, on_behalf_of: nil, payment_id: nil, receipt_industry_details: nil, receipt_operational_details: nil, refund_id: nil, tax_system_code: nil, timezone: nil, request_options: {})
9
+ #
10
+ # @param customer [Yoomoney::Models::ReceiptDataCustomer] Body param: Данные покупателя.
11
+ #
12
+ # @param items [Array<Yoomoney::Models::ReceiptCreateParams::Item>] Body param: Позиции чека.
13
+ #
14
+ # @param send_ [Boolean] Body param: Признак отправки чека пользователю.
15
+ #
16
+ # @param settlements [Array<Yoomoney::Models::Settlement>] Body param: Данные расчетов.
17
+ #
18
+ # @param type [Symbol, Yoomoney::Models::ReceiptType] Body param: Тип чека.
19
+ #
20
+ # @param idempotence_key [String] Header param
21
+ #
22
+ # @param additional_user_props [Yoomoney::Models::ReceiptCreateParams::AdditionalUserProps] Body param: Дополнительный реквизит пользователя.
23
+ #
24
+ # @param internet [Boolean] Body param: Флаг расчета в интернете.
25
+ #
26
+ # @param on_behalf_of [String] Body param: Идентификатор магазина.
27
+ #
28
+ # @param payment_id [String] Body param: Идентификатор платежа.
29
+ #
30
+ # @param receipt_industry_details [Array<Yoomoney::Models::IndustryDetails>] Body param: Отраслевой реквизит чека.
31
+ #
32
+ # @param receipt_operational_details [Yoomoney::Models::OperationalDetails] Body param: Операционный реквизит чека.
33
+ #
34
+ # @param refund_id [String] Body param: Идентификатор возврата.
35
+ #
36
+ # @param tax_system_code [Integer] Body param: Код системы налогообложения.
37
+ #
38
+ # @param timezone [String] Body param: Часовой пояс.
39
+ #
40
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
41
+ #
42
+ # @return [Yoomoney::Models::Receipt]
43
+ #
44
+ # @see Yoomoney::Models::ReceiptCreateParams
45
+ def create(params)
46
+ parsed, options = Yoomoney::ReceiptCreateParams.dump_request(params)
47
+ header_params = {idempotence_key: "idempotence-key"}
48
+ @client.request(
49
+ method: :post,
50
+ path: "receipts",
51
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
52
+ body: parsed.except(*header_params.keys),
53
+ model: Yoomoney::Receipt,
54
+ options: options
55
+ )
56
+ end
57
+
58
+ # Информация о чеке
59
+ #
60
+ # @overload retrieve(receipt_id, request_options: {})
61
+ #
62
+ # @param receipt_id [String]
63
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
64
+ #
65
+ # @return [Yoomoney::Models::Receipt]
66
+ #
67
+ # @see Yoomoney::Models::ReceiptRetrieveParams
68
+ def retrieve(receipt_id, params = {})
69
+ @client.request(
70
+ method: :get,
71
+ path: ["receipts/%1$s", receipt_id],
72
+ model: Yoomoney::Receipt,
73
+ options: params[:request_options]
74
+ )
75
+ end
76
+
77
+ # Список чеков
78
+ #
79
+ # @overload list(created_at: nil, cursor: nil, limit: nil, payment_id: nil, refund_id: nil, status: nil, request_options: {})
80
+ #
81
+ # @param created_at [Yoomoney::Models::ReceiptListParams::CreatedAt]
82
+ # @param cursor [String]
83
+ # @param limit [Integer]
84
+ # @param payment_id [String]
85
+ # @param refund_id [String]
86
+ # @param status [Symbol, Yoomoney::Models::ReceiptRegistrationStatus]
87
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
88
+ #
89
+ # @return [Yoomoney::Models::ReceiptListResponse]
90
+ #
91
+ # @see Yoomoney::Models::ReceiptListParams
92
+ def list(params = {})
93
+ parsed, options = Yoomoney::ReceiptListParams.dump_request(params)
94
+ @client.request(
95
+ method: :get,
96
+ path: "receipts",
97
+ query: parsed,
98
+ model: Yoomoney::Models::ReceiptListResponse,
99
+ options: options
100
+ )
101
+ end
102
+
103
+ # @api private
104
+ #
105
+ # @param client [Yoomoney::Client]
106
+ def initialize(client:)
107
+ @client = client
108
+ end
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,101 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Resources
5
+ class Refunds
6
+ # Some parameter documentations has been truncated, see
7
+ # {Yoomoney::Models::RefundCreateParams} for more details.
8
+ #
9
+ # Создание возврата
10
+ #
11
+ # @overload create(amount:, payment_id:, idempotence_key:, deal: nil, description: nil, metadata: nil, receipt: nil, refund_method_data: nil, sources: nil, request_options: {})
12
+ #
13
+ # @param amount [Yoomoney::Models::MonetaryAmount] Body param: Сумма возврата.
14
+ #
15
+ # @param payment_id [String] Body param: Идентификатор платежа для возврата.
16
+ #
17
+ # @param idempotence_key [String] Header param
18
+ #
19
+ # @param deal [Yoomoney::Models::RefundCreateParams::Deal] Body param: Данные о сделке.
20
+ #
21
+ # @param description [String] Body param: Описание возврата.
22
+ #
23
+ # @param metadata [Hash{Symbol=>String}] Body param: Любые дополнительные данные, которые нужны вам для работы (например,
24
+ #
25
+ # @param receipt [Yoomoney::Models::ReceiptData] Body param: Данные для формирования чека.
26
+ #
27
+ # @param refund_method_data [Yoomoney::Models::RefundCreateParams::RefundMethodData] Body param: Данные о способе возврата.
28
+ #
29
+ # @param sources [Array<Yoomoney::Models::RefundSourcesData>] Body param: Источники для возврата.
30
+ #
31
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
32
+ #
33
+ # @return [Yoomoney::Models::Refund]
34
+ #
35
+ # @see Yoomoney::Models::RefundCreateParams
36
+ def create(params)
37
+ parsed, options = Yoomoney::RefundCreateParams.dump_request(params)
38
+ header_params = {idempotence_key: "idempotence-key"}
39
+ @client.request(
40
+ method: :post,
41
+ path: "refunds",
42
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
43
+ body: parsed.except(*header_params.keys),
44
+ model: Yoomoney::Refund,
45
+ options: options
46
+ )
47
+ end
48
+
49
+ # Информация о возврате
50
+ #
51
+ # @overload retrieve(refund_id, request_options: {})
52
+ #
53
+ # @param refund_id [String]
54
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
55
+ #
56
+ # @return [Yoomoney::Models::Refund]
57
+ #
58
+ # @see Yoomoney::Models::RefundRetrieveParams
59
+ def retrieve(refund_id, params = {})
60
+ @client.request(
61
+ method: :get,
62
+ path: ["refunds/%1$s", refund_id],
63
+ model: Yoomoney::Refund,
64
+ options: params[:request_options]
65
+ )
66
+ end
67
+
68
+ # Список возвратов
69
+ #
70
+ # @overload list(created_at: nil, cursor: nil, limit: nil, payment_id: nil, status: nil, request_options: {})
71
+ #
72
+ # @param created_at [Yoomoney::Models::RefundListParams::CreatedAt]
73
+ # @param cursor [String]
74
+ # @param limit [Integer]
75
+ # @param payment_id [String]
76
+ # @param status [Symbol, Yoomoney::Models::RefundStatus]
77
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
78
+ #
79
+ # @return [Yoomoney::Models::RefundListResponse]
80
+ #
81
+ # @see Yoomoney::Models::RefundListParams
82
+ def list(params = {})
83
+ parsed, options = Yoomoney::RefundListParams.dump_request(params)
84
+ @client.request(
85
+ method: :get,
86
+ path: "refunds",
87
+ query: parsed,
88
+ model: Yoomoney::Models::RefundListResponse,
89
+ options: options
90
+ )
91
+ end
92
+
93
+ # @api private
94
+ #
95
+ # @param client [Yoomoney::Client]
96
+ def initialize(client:)
97
+ @client = client
98
+ end
99
+ end
100
+ end
101
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Yoomoney
4
+ module Resources
5
+ class SbpBanks
6
+ # Список участников СБП
7
+ #
8
+ # @overload list(request_options: {})
9
+ #
10
+ # @param request_options [Yoomoney::RequestOptions, Hash{Symbol=>Object}, nil]
11
+ #
12
+ # @return [Yoomoney::Models::SbpBankListResponse]
13
+ #
14
+ # @see Yoomoney::Models::SbpBankListParams
15
+ def list(params = {})
16
+ @client.request(
17
+ method: :get,
18
+ path: "sbp_banks",
19
+ model: Yoomoney::Models::SbpBankListResponse,
20
+ options: params[:request_options]
21
+ )
22
+ end
23
+
24
+ # @api private
25
+ #
26
+ # @param client [Yoomoney::Client]
27
+ def initialize(client:)
28
+ @client = client
29
+ end
30
+ end
31
+ end
32
+ end