@companix/yookassa 0.0.2 → 0.0.4

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 (79) hide show
  1. package/dist/api/common.d.ts +644 -0
  2. package/dist/api/enums/common.d.ts +21 -0
  3. package/dist/api/enums/common.js +21 -0
  4. package/dist/api/enums/common.js.map +1 -1
  5. package/dist/api/enums/currency.enum.d.ts +123 -118
  6. package/dist/api/enums/currency.enum.js +6 -1
  7. package/dist/api/enums/currency.enum.js.map +1 -1
  8. package/dist/api/notifications.d.ts +12 -0
  9. package/dist/api/requests/deal.d.ts +68 -0
  10. package/dist/api/requests/invoice.d.ts +102 -0
  11. package/dist/api/requests/me.d.ts +14 -0
  12. package/dist/api/requests/payment-method.d.ts +27 -0
  13. package/dist/api/requests/payment.d.ts +584 -0
  14. package/dist/api/requests/payout.d.ts +189 -0
  15. package/dist/api/requests/personal-data.d.ts +48 -0
  16. package/dist/api/requests/receipt.d.ts +266 -0
  17. package/dist/api/requests/refund.d.ts +110 -0
  18. package/dist/api/requests/webhook.d.ts +13 -0
  19. package/dist/api/responses/deal.d.ts +74 -0
  20. package/dist/api/responses/invoice.d.ts +125 -0
  21. package/dist/api/responses/me.d.ts +81 -0
  22. package/dist/api/responses/payment-method.d.ts +60 -0
  23. package/dist/api/responses/payment.d.ts +934 -0
  24. package/dist/api/responses/payout.d.ts +185 -0
  25. package/dist/api/responses/personal-data.d.ts +65 -0
  26. package/dist/api/responses/receipt.d.ts +245 -0
  27. package/dist/api/responses/refund.d.ts +148 -0
  28. package/dist/api/responses/sbp-banks.d.ts +25 -0
  29. package/dist/api/responses/webhook.d.ts +28 -0
  30. package/dist/index.d.ts +1 -4
  31. package/dist/index.js +4 -4
  32. package/dist/index.js.map +1 -1
  33. package/dist/modules/deal/deal.service.d.ts +16 -0
  34. package/dist/modules/deal/deal.service.js +16 -0
  35. package/dist/modules/deal/deal.service.js.map +1 -1
  36. package/dist/modules/invoice/invoice.service.d.ts +12 -0
  37. package/dist/modules/invoice/invoice.service.js +12 -0
  38. package/dist/modules/invoice/invoice.service.js.map +1 -1
  39. package/dist/modules/me/me.service.d.ts +7 -0
  40. package/dist/modules/me/me.service.js +7 -0
  41. package/dist/modules/me/me.service.js.map +1 -1
  42. package/dist/modules/payment/payment.service.d.ts +35 -0
  43. package/dist/modules/payment/payment.service.js +35 -0
  44. package/dist/modules/payment/payment.service.js.map +1 -1
  45. package/dist/modules/payment-method/payment-method.service.d.ts +12 -0
  46. package/dist/modules/payment-method/payment-method.service.js +12 -0
  47. package/dist/modules/payment-method/payment-method.service.js.map +1 -1
  48. package/dist/modules/payout/payout.service.d.ts +26 -0
  49. package/dist/modules/payout/payout.service.js +26 -0
  50. package/dist/modules/payout/payout.service.js.map +1 -1
  51. package/dist/modules/personal-data/personal-data.service.d.ts +13 -0
  52. package/dist/modules/personal-data/personal-data.service.js +13 -0
  53. package/dist/modules/personal-data/personal-data.service.js.map +1 -1
  54. package/dist/modules/receipt/receipt.service.d.ts +19 -0
  55. package/dist/modules/receipt/receipt.service.js +19 -0
  56. package/dist/modules/receipt/receipt.service.js.map +1 -1
  57. package/dist/modules/refund/refund.service.d.ts +20 -0
  58. package/dist/modules/refund/refund.service.js +20 -0
  59. package/dist/modules/refund/refund.service.js.map +1 -1
  60. package/dist/modules/sbp-banks/sbp-banks.service.d.ts +7 -0
  61. package/dist/modules/sbp-banks/sbp-banks.service.js +7 -0
  62. package/dist/modules/sbp-banks/sbp-banks.service.js.map +1 -1
  63. package/dist/modules/webhook/constants/yookassa-ip-whitelist.d.ts +4 -0
  64. package/dist/modules/webhook/constants/yookassa-ip-whitelist.js +4 -0
  65. package/dist/modules/webhook/constants/yookassa-ip-whitelist.js.map +1 -1
  66. package/dist/modules/webhook/decorators/yookassa-webhook.decorator.d.ts +13 -0
  67. package/dist/modules/webhook/decorators/yookassa-webhook.decorator.js +13 -0
  68. package/dist/modules/webhook/decorators/yookassa-webhook.decorator.js.map +1 -1
  69. package/dist/modules/webhook/utils/ip-matcher.util.d.ts +9 -0
  70. package/dist/modules/webhook/utils/ip-matcher.util.js +9 -0
  71. package/dist/modules/webhook/utils/ip-matcher.util.js.map +1 -1
  72. package/dist/modules/webhook/webhook.service.d.ts +18 -0
  73. package/dist/modules/webhook/webhook.service.js +18 -0
  74. package/dist/modules/webhook/webhook.service.js.map +1 -1
  75. package/dist/yookassa.interface.d.ts +26 -0
  76. package/dist/yookassa.module.d.ts +32 -0
  77. package/dist/yookassa.module.js +32 -0
  78. package/dist/yookassa.module.js.map +1 -1
  79. package/package.json +1 -1
@@ -1,199 +1,783 @@
1
1
  import type { CommonAirline, CommonAmount, CommonCard, CommonDeal, CommonReceipt, CommonRecipient, CommonSettlements, CommonVatData } from '../common';
2
2
  import { LocaleEnum } from '../enums';
3
+ /**
4
+ * Создание платежа
5
+ *
6
+ * Чтобы принять оплату, необходимо создать объект платежа — Payment. Он содержит всю необходимую информацию для проведения оплаты (сумму, валюту и статус). У платежа линейный жизненный цикл, он последовательно переходит из статуса в статус.
7
+ */
3
8
  export interface CreatePaymentRequest {
9
+ /**
10
+ * Сумма платежа. Иногда партнеры ЮKassa берут с пользователя дополнительную комиссию, которая не входит в эту сумму.
11
+ *
12
+ * Сумма указывается с кодом валюты. Если вы разделяете потоки платежей, валюта платежа должна соответствовать валюте субаккаунта (recipient.gateway_id), если не разделяете — валюте аккаунта shopId в личном кабинете).
13
+ */
4
14
  amount: CommonAmount;
15
+ /**
16
+ * Описание транзакции (не более 128 символов), которое вы увидите в личном кабинете ЮKassa, а пользователь — при оплате. Например: «Оплата заказа № 72 для user@yoomoney.ru».
17
+ */
5
18
  description?: string;
19
+ /**
20
+ * Данные для формирования чека.
21
+ *
22
+ * Необходимо передавать в этих случаях:
23
+ *
24
+ * вы компания или ИП и для оплаты с соблюдением требований 54-ФЗ используете Чеки от ЮKassa;
25
+ *
26
+ * вы компания или ИП, для оплаты с соблюдением требований 54-ФЗ используете стороннюю онлайн-кассу и отправляете данные для чеков по одному из сценариев: Платеж и чек одновременно или Сначала чек, потом платеж.
27
+ */
6
28
  receipt?: CommonReceipt;
29
+ /**
30
+ * Получатель платежа. Нужен, если вы разделяете потоки платежей в рамках одного аккаунта или создаете платеж в адрес другого аккаунта.
31
+ */
7
32
  recipient?: CommonRecipient;
33
+ /**
34
+ * Одноразовый токен для проведения оплаты, сформированный с помощью Checkout.js или мобильного SDK.
35
+ */
8
36
  payment_token?: string;
37
+ /**
38
+ * Идентификатор сохраненного способа оплаты.
39
+ */
9
40
  payment_method_id?: string;
41
+ /**
42
+ * Данные для оплаты конкретным способом (payment_method). Вы можете не передавать этот объект в запросе. В этом случае пользователь будет выбирать способ оплаты на стороне ЮKassa.
43
+ */
10
44
  payment_method_data?: CreatePaymentRequestPaymentMethodData;
45
+ /**
46
+ * Данные, необходимые для инициирования выбранного сценария подтверждения платежа пользователем. Подробнее о сценариях подтверждения
47
+ */
11
48
  confirmation?: CreatePaymentRequestConfirmation;
49
+ /**
50
+ * Сохранение платежных данных для проведения автоплатежей. Возможные значения:
51
+ *
52
+ * true — сохранить способ оплаты (сохранить платежные данные);
53
+ *
54
+ * false — провести платеж без сохранения способа оплаты.
55
+ *
56
+ * Доступно только после согласования с менеджером ЮKassa.
57
+ */
12
58
  save_payment_method?: boolean;
59
+ /**
60
+ * Автоматический прием поступившего платежа. Возможные значения:
61
+ *
62
+ * true — оплата списывается сразу (платеж в одну стадию);
63
+ *
64
+ * false — оплата холдируется и списывается по вашему запросу (платеж в две стадии).
65
+ *
66
+ * По умолчанию false.
67
+ */
13
68
  capture?: boolean;
69
+ /**
70
+ * IPv4 или IPv6-адрес пользователя. Если не указан, используется IP-адрес TCP-подключения.
71
+ */
14
72
  client_ip?: string;
73
+ /**
74
+ * Любые дополнительные данные, которые нужны вам для работы (например, ваш внутренний идентификатор заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов, значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
75
+ */
15
76
  metadata?: Record<string, unknown>;
77
+ /**
78
+ * Объект с данными для продажи авиабилетов. Используется только для платежей банковской картой.
79
+ */
16
80
  airline?: CommonAirline;
81
+ /**
82
+ * Данные о распределении денег — сколько и в какой магазин нужно перевести. Необходимо передавать, если вы используете Сплитование платежей.
83
+ */
17
84
  transfers?: CreatePaymentRequestTransfersItem[];
85
+ /**
86
+ * Данные о сделке, в составе которой проходит платеж. Необходимо передавать, если вы проводите Безопасную сделку.
87
+ */
18
88
  deal?: CommonDeal;
89
+ /**
90
+ * Идентификатор покупателя в вашей системе, например электронная почта или номер телефона. Не более 200 символов. Присутствует, если вы хотите запомнить банковскую карту и отобразить ее при повторном платеже в виджете ЮKassa.
91
+ */
19
92
  merchant_customer_id?: string;
93
+ /**
94
+ * Платежное поручение — распоряжение на перевод банку для оплаты жилищно-коммунальных услуг (ЖКУ), сведения о платеже для регистрации в ГИС ЖКХ.
95
+ *
96
+ * Необходимо передавать при оплате ЖКУ.
97
+ */
20
98
  payment_order?: CreatePaymentRequestPaymentOrder;
99
+ /**
100
+ * Реквизиты получателя оплаты при пополнении электронного кошелька, банковского счета или баланса телефона.
101
+ */
21
102
  receiver?: CreatePaymentRequestReceiver;
103
+ /**
104
+ * Данные для отправки справки. Необходимо передавать, если вы хотите, чтобы после оплаты пользователь получил справку.
105
+ *
106
+ * Сейчас доступен один тип справок — квитанция по платежу. Это информация об успешном платеже, которую ЮKassa отправляет на электронную почту пользователя.
107
+ *
108
+ * Квитанцию можно отправить, если оплата прошла с банковской карты, через SberPay или СБП. Отправка квитанции доступна во всех сценариях интеграции.
109
+ */
22
110
  statements?: CreatePaymentRequestStatementsItem[];
23
111
  }
112
+ /**
113
+ * Список платежей
114
+ *
115
+ * Используйте этот запрос, чтобы получить список платежей. Для выгрузки доступны платежи, созданные за последние 3 года. Список можно отфильтровать по различным критериям.
116
+ *
117
+ * Подробнее о работе со списками
118
+ */
24
119
  export interface GetPaymentsListRequest {
120
+ /**
121
+ * Фильтр по времени создания: время должно быть больше указанного значения или равно ему («с такого-то момента включительно»). Указывается в формате ISO 8601. Пример: created_at.gte=2018-07-18T10:51:18.139Z
122
+ */
25
123
  "created_at.gte"?: string;
124
+ /**
125
+ * Фильтр по времени создания: время должно быть больше указанного значения («с такого-то момента, не включая его»). Указывается в формате ISO 8601. Пример: created_at.gt=2018-07-18T10:51:18.139Z
126
+ */
26
127
  "created_at.gt"?: string;
128
+ /**
129
+ * Фильтр по времени создания: время должно быть меньше указанного значения или равно ему («по такой-то момент включительно»). Указывается в формате ISO 8601. Пример: created_at.lte=2018-07-18T10:51:18.139Z
130
+ */
27
131
  "created_at.lte"?: string;
132
+ /**
133
+ * Фильтр по времени создания: время должно быть меньше указанного значения («по такой-то момент, не включая его»). Указывается в формате ISO 8601. Пример: created_at.lt=2018-07-18T10:51:18.139Z
134
+ */
28
135
  "created_at.lt"?: string;
136
+ /**
137
+ * Фильтр по времени подтверждения платежей: время должно быть больше указанного значения или равно ему («с такого-то момента включительно»). Указывается в формате ISO 8601. Пример: captured_at.gte=2018-07-18T10:51:18.139Z
138
+ */
29
139
  "captured_at.gte"?: string;
140
+ /**
141
+ * Фильтр по времени подтверждения платежей: время должно быть больше указанного значения («с такого-то момента, не включая его»). Указывается в формате ISO 8601. Пример: captured_at.gt=2018-07-18T10:51:18.139Z
142
+ */
30
143
  "captured_at.gt"?: string;
144
+ /**
145
+ * Фильтр по времени подтверждения платежей: время должно быть меньше указанного значения или равно ему («по такой-то момент включительно»). Указывается в формате ISO 8601. Пример: captured_at.lte=2018-07-18T10:51:18.139Z
146
+ */
31
147
  "captured_at.lte"?: string;
148
+ /**
149
+ * Фильтр по времени подтверждения платежей: время должно быть меньше указанного значения («по такой-то момент, не включая его») Указывается в формате ISO 8601. Пример: captured_at.lt=2018-07-18T10:51:18.139Z
150
+ */
32
151
  "captured_at.lt"?: string;
152
+ /**
153
+ * Фильтр по коду способа оплаты. Пример: payment_method=bank_card
154
+ */
33
155
  payment_method?: string;
156
+ /**
157
+ * Фильтр по статусу платежа. Пример: status=succeeded
158
+ */
34
159
  status?: string;
160
+ /**
161
+ * Размер выдачи результатов запроса — количество объектов, передаваемых в ответе. Возможные значения: от 1 до 100. Пример: limit=50
162
+ *
163
+ * Значение по умолчанию: 10
164
+ */
35
165
  limit?: number;
166
+ /**
167
+ * Указатель на следующий фрагмент списка. Пример: cursor=37a5c87d-3984-51e8-a7f3-8de646d39ec15
168
+ *
169
+ * В качестве указателя необходимо использовать значение параметра next_cursor, полученное в ответе на предыдущий запрос. Используется, если в списке больше объектов, чем может поместиться в выдаче (limit), и конец выдачи не достигнут. Пример использования
170
+ */
36
171
  cursor?: string;
37
172
  }
173
+ /**
174
+ * Подтверждение платежа
175
+ *
176
+ * Подтверждает вашу готовность принять платеж. После подтверждения платеж перейдет в статус succeeded. Это значит, что вы можете выдать товар или оказать услугу пользователю.
177
+ *
178
+ * Подтвердить можно только платеж в статусе waiting_for_capture и только в течение определенного времени (зависит от способа оплаты). Если вы не подтвердите платеж в отведенное время, он автоматически перейдет в статус canceled, и деньги вернутся пользователю.
179
+ *
180
+ * Подробнее о подтверждении и отмене платежей
181
+ */
38
182
  export interface CapturePaymentRequest {
183
+ /**
184
+ * Итоговая сумма, которая спишется с пользователя. Можно указать часть исходной суммы, тогда остаток вернется пользователю. Для этого проверьте, что выбранный способ оплаты поддерживает частичное списание.
185
+ *
186
+ * Сумма указывается с кодом валюты. Если вы разделяете потоки платежей, валюта платежа должна соответствовать валюте субаккаунта (recipient.gateway_id), если не разделяете — валюте аккаунта shopId в личном кабинете).
187
+ */
39
188
  amount?: CommonAmount;
189
+ /**
190
+ * Данные для формирования чека.
191
+ *
192
+ * Необходимо передавать в этих случаях:
193
+ *
194
+ * вы компания или ИП и для оплаты с соблюдением требований 54-ФЗ используете Чеки от ЮKassa;
195
+ *
196
+ * вы компания или ИП, для оплаты с соблюдением требований 54-ФЗ используете стороннюю онлайн-кассу и отправляете данные для чеков по одному из сценариев: Платеж и чек одновременно или Сначала чек, потом платеж.
197
+ */
40
198
  receipt?: CommonReceipt;
199
+ /**
200
+ * Объект с данными для продажи авиабилетов. Используется только для платежей банковской картой.
201
+ */
41
202
  airline?: CommonAirline;
203
+ /**
204
+ * Данные об актуальном распределении денег — сколько и в какой магазин нужно перевести. Необходимо передавать, если вы используете Сплитование платежей и подтверждаете часть платежа.
205
+ */
42
206
  transfers?: CapturePaymentRequestTransfersItem[];
207
+ /**
208
+ * Данные о сделке, в составе которой проходит платеж. Необходимо передавать, если вы проводите Безопасную сделку и подтверждаете часть платежа.
209
+ */
43
210
  deal?: CapturePaymentRequestDeal;
44
211
  }
212
+ /**
213
+ * Данные для оплаты банковской картой.
214
+ */
45
215
  export interface CreatePaymentRequestPaymentMethodDataBankCard {
216
+ /**
217
+ * Код способа оплаты.
218
+ */
46
219
  "type": "bank_card";
220
+ /**
221
+ * Данные банковской карты (необходимы, если вы собираете данные карты пользователей на своей стороне).
222
+ */
47
223
  card?: CommonCard;
48
224
  }
225
+ /**
226
+ * Данные для оплаты наличными в терминалах России или СНГ.
227
+ */
49
228
  export interface CreatePaymentRequestPaymentMethodDataCash {
229
+ /**
230
+ * Код способа оплаты.
231
+ */
50
232
  "type": "cash";
233
+ /**
234
+ * Телефон пользователя, на который придет смс с кодом платежа (для внесения наличных). Указывается в формате ITU-T E.164, например 79000000000. Поле можно оставить пустым: пользователь сможет заполнить его при оплате на стороне ЮKassa.
235
+ */
51
236
  phone?: string;
52
237
  }
238
+ /**
239
+ * Данные для оплаты через SberPay.
240
+ */
53
241
  export interface CreatePaymentRequestPaymentMethodDataSberbank {
242
+ /**
243
+ * Код способа оплаты.
244
+ */
54
245
  "type": "sberbank";
246
+ /**
247
+ * Телефон пользователя, на который зарегистрирован аккаунт в SberPay. Необходим для подтверждения оплаты по смс (сценарий подтверждения external). Указывается в формате ITU-T E.164, например 79000000000.
248
+ */
55
249
  phone?: string;
56
250
  }
251
+ /**
252
+ * Данные для оплаты через T-Pay.
253
+ */
57
254
  export interface CreatePaymentRequestPaymentMethodDataTinkoffBank {
255
+ /**
256
+ * Код способа оплаты.
257
+ */
58
258
  "type": "tinkoff_bank";
59
259
  }
260
+ /**
261
+ * Данные для проведения оплаты из кошелька ЮMoney.
262
+ */
60
263
  export interface CreatePaymentRequestPaymentMethodDataYooMoney {
264
+ /**
265
+ * Код способа оплаты.
266
+ */
61
267
  "type": "yoo_money";
62
268
  }
269
+ /**
270
+ * Данные для оплаты с баланса мобильного телефона.
271
+ */
63
272
  export interface CreatePaymentRequestPaymentMethodDataMobileBalance {
273
+ /**
274
+ * Код способа оплаты.
275
+ */
64
276
  "type": "mobile_balance";
277
+ /**
278
+ * Телефон, с баланса которого осуществляется платеж. Указывается в формате ITU-T E.164, например 79000000000.
279
+ */
65
280
  phone: string;
66
281
  }
282
+ /**
283
+ * Данные для оплаты через СберБанк Бизнес Онлайн.
284
+ */
67
285
  export interface CreatePaymentRequestPaymentMethodDataB2bSberbank {
286
+ /**
287
+ * Код способа оплаты.
288
+ */
68
289
  "type": "b2b_sberbank";
290
+ /**
291
+ * Назначение платежа (не больше 210 символов).
292
+ */
69
293
  payment_purpose: string;
294
+ /**
295
+ * Данные о налоге на добавленную стоимость (НДС). Платеж может облагаться или не облагаться НДС. Товары могут облагаться по одной ставке НДС или по разным.
296
+ */
70
297
  vat_data: CommonVatData;
71
298
  }
299
+ /**
300
+ * Данные для оплаты через СБП
301
+ */
72
302
  export interface CreatePaymentRequestPaymentMethodDataSbp {
303
+ /**
304
+ * Код способа оплаты.
305
+ */
73
306
  "type": "sbp";
74
307
  }
308
+ /**
309
+ * Данные для оплаты в кредит или рассрочку от СберБанка.
310
+ */
75
311
  export interface CreatePaymentRequestPaymentMethodDataSberLoan {
312
+ /**
313
+ * Код способа оплаты.
314
+ */
76
315
  "type": "sber_loan";
77
316
  }
317
+ /**
318
+ * Данные для оплаты по электронному сертификату.
319
+ */
78
320
  export interface CreatePaymentRequestPaymentMethodDataElectronicCertificate {
321
+ /**
322
+ * Код способа оплаты.
323
+ */
79
324
  "type": "electronic_certificate";
325
+ /**
326
+ * Данные банковской карты (необходимы, если вы собираете данные карты пользователей на своей стороне).
327
+ */
80
328
  card?: CommonCard;
329
+ /**
330
+ * Данные от ФЭС НСПК для оплаты по электронному сертификату.
331
+ *
332
+ * Неоходимо передавать только при оплате со сбором данных на вашей стороне.
333
+ */
81
334
  electronic_certificate?: CreatePaymentRequestPaymentMethodDataElectronicCertificateElectronicCertificate;
335
+ /**
336
+ * Корзина покупки (в терминах НСПК) — список товаров, которые можно оплатить по сертификату.
337
+ *
338
+ * Необходимо передавать только при оплате на готовой странице ЮKassa.
339
+ */
82
340
  articles?: CreatePaymentRequestPaymentMethodDataElectronicCertificateArticlesItem[];
83
341
  }
342
+ /**
343
+ * Данные для оплаты через сервис «Плати частями».
344
+ */
84
345
  export interface CreatePaymentRequestPaymentMethodDataSberBnpl {
346
+ /**
347
+ * Код способа оплаты.
348
+ */
85
349
  "type": "sber_bnpl";
350
+ /**
351
+ * Номер телефона пользователя. Передается партнеру и используется для авторизации в сервисе «Плати частями». Максимум 15 символов. Указывается в формате ITU-T E.164. Пример: 79000000000.
352
+ */
86
353
  phone?: string;
87
354
  }
355
+ /**
356
+ * Данные для оплаты через Alfa Pay.
357
+ */
88
358
  export interface CreatePaymentRequestPaymentMethodDataAlfaPay {
359
+ /**
360
+ * Код способа оплаты.
361
+ */
89
362
  "type": "alfa_pay";
90
363
  }
364
+ /**
365
+ * Данные для оплаты конкретным способом (payment_method). Вы можете не передавать этот объект в запросе. В этом случае пользователь будет выбирать способ оплаты на стороне ЮKassa.
366
+ *
367
+ * Способы оплаты
368
+ */
91
369
  export type CreatePaymentRequestPaymentMethodData = CreatePaymentRequestPaymentMethodDataBankCard | CreatePaymentRequestPaymentMethodDataCash | CreatePaymentRequestPaymentMethodDataSberbank | CreatePaymentRequestPaymentMethodDataTinkoffBank | CreatePaymentRequestPaymentMethodDataYooMoney | CreatePaymentRequestPaymentMethodDataMobileBalance | CreatePaymentRequestPaymentMethodDataB2bSberbank | CreatePaymentRequestPaymentMethodDataSbp | CreatePaymentRequestPaymentMethodDataSberLoan | CreatePaymentRequestPaymentMethodDataElectronicCertificate | CreatePaymentRequestPaymentMethodDataSberBnpl | CreatePaymentRequestPaymentMethodDataAlfaPay;
370
+ /**
371
+ * Код сценария подтверждения.
372
+ */
92
373
  export interface CreatePaymentRequestConfirmationRedirect {
374
+ /**
375
+ * Код сценария подтверждения.
376
+ */
93
377
  "type": "redirect";
378
+ /**
379
+ * Язык интерфейса, писем и смс, которые будет видеть или получать пользователь. Формат соответствует ISO/IEC 15897. Возможные значения: ru_RU, en_US. Регистр важен.
380
+ */
94
381
  locale?: LocaleEnum;
382
+ /**
383
+ * Запрос на проведение платежа с аутентификацией по 3-D Secure. Будет работать, если оплату банковской картой вы по умолчанию принимаете без подтверждения платежа пользователем. В остальных случаях аутентификацией по 3-D Secure будет управлять ЮKassa. Если хотите принимать платежи без дополнительного подтверждения пользователем, напишите вашему менеджеру ЮKassa.
384
+ */
95
385
  enforce?: boolean;
386
+ /**
387
+ * URL, на который вернется пользователь после подтверждения или отмены платежа на веб-странице. Не более 2048 символов.
388
+ */
96
389
  return_url: string;
97
390
  }
391
+ /**
392
+ * Код сценария подтверждения.
393
+ */
98
394
  export interface CreatePaymentRequestConfirmationExternal {
395
+ /**
396
+ * Код сценария подтверждения.
397
+ */
99
398
  "type": "external";
399
+ /**
400
+ * Язык интерфейса, писем и смс, которые будет видеть или получать пользователь. Формат соответствует ISO/IEC 15897. Возможные значения: ru_RU, en_US. Регистр важен.
401
+ */
100
402
  locale?: LocaleEnum;
101
403
  }
404
+ /**
405
+ * Код сценария подтверждения.
406
+ */
102
407
  export interface CreatePaymentRequestConfirmationQr {
408
+ /**
409
+ * Код сценария подтверждения.
410
+ */
103
411
  "type": "qr";
412
+ /**
413
+ * Язык интерфейса, писем и смс, которые будет видеть или получать пользователь. Формат соответствует ISO/IEC 15897. Возможные значения: ru_RU, en_US. Регистр важен.
414
+ */
104
415
  locale?: LocaleEnum;
416
+ /**
417
+ * Адрес страницы, на которую пользователь вернется после подтверждения или отмены платежа в приложении банка. Например, если хотите вернуть пользователя на сайт, вы можете передать URL, если в мобильное приложение — диплинк. URI должен соответствовать стандарту RFC-3986. Не более 2048 символов.
418
+ *
419
+ * Доступно только для платежей через СБП.
420
+ */
105
421
  return_url?: string;
106
422
  }
423
+ /**
424
+ * Код сценария подтверждения.
425
+ */
107
426
  export interface CreatePaymentRequestConfirmationEmbedded {
427
+ /**
428
+ * Код сценария подтверждения.
429
+ */
108
430
  "type": "embedded";
431
+ /**
432
+ * Язык интерфейса, писем и смс, которые будет видеть или получать пользователь. Формат соответствует ISO/IEC 15897. Возможные значения: ru_RU, en_US. Регистр важен.
433
+ */
109
434
  locale?: LocaleEnum;
110
435
  }
436
+ /**
437
+ * Код сценария подтверждения.
438
+ */
111
439
  export interface CreatePaymentRequestConfirmationMobileApplication {
440
+ /**
441
+ * Код сценария подтверждения.
442
+ */
112
443
  "type": "mobile_application";
444
+ /**
445
+ * Язык интерфейса, писем и смс, которые будет видеть или получать пользователь. Формат соответствует ISO/IEC 15897. Возможные значения: ru_RU, en_US. Регистр важен.
446
+ */
113
447
  locale?: LocaleEnum;
448
+ /**
449
+ * URL или диплинк, на который вернется пользователь после подтверждения или отмены платежа в приложении. Если платеж делали из мобильной версии сайта, передайте URL, если из мобильного приложения — диплинк.
450
+ *
451
+ * Не более 255 символов для платежей через SberPay. Для других способов оплаты не более 2048 символов.
452
+ */
114
453
  return_url: string;
115
454
  }
455
+ /**
456
+ * Данные, необходимые для инициирования выбранного сценария подтверждения платежа пользователем. Подробнее о сценариях подтверждения
457
+ *
458
+ * Сценарии подтверждения
459
+ */
116
460
  export type CreatePaymentRequestConfirmation = CreatePaymentRequestConfirmationRedirect | CreatePaymentRequestConfirmationExternal | CreatePaymentRequestConfirmationQr | CreatePaymentRequestConfirmationEmbedded | CreatePaymentRequestConfirmationMobileApplication;
461
+ /**
462
+ * Данные о распределении денег — сколько и в какой магазин нужно перевести. Необходимо передавать, если вы используете Сплитование платежей.
463
+ */
117
464
  export interface CreatePaymentRequestTransfersItem {
465
+ /**
466
+ * Идентификатор магазина, в пользу которого вы принимаете оплату. Выдается ЮKassa, отображается в разделе Продавцы личного кабинета (столбец shopId).
467
+ */
118
468
  account_id: string;
469
+ /**
470
+ * Сумма, которую необходимо перевести магазину.
471
+ */
119
472
  amount: CommonAmount;
473
+ /**
474
+ * Комиссия за проданные товары и услуги, которая удерживается с магазина в вашу пользу.
475
+ */
120
476
  platform_fee_amount?: CommonAmount;
477
+ /**
478
+ * Описание транзакции (не более 128 символов), которое продавец увидит в личном кабинете ЮKassa. Например: «Заказ маркетплейса №72».
479
+ */
121
480
  description?: string;
481
+ /**
482
+ * Любые дополнительные данные, которые нужны вам для работы (например, ваш внутренний идентификатор заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов, значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
483
+ */
122
484
  metadata?: Record<string, unknown>;
123
485
  }
486
+ /**
487
+ * Платежное поручение — распоряжение на перевод банку для оплаты жилищно-коммунальных услуг (ЖКУ), сведения о платеже для регистрации в ГИС ЖКХ.
488
+ *
489
+ * Необходимо передавать при оплате ЖКУ.
490
+ *
491
+ * Кроме параметров, отмеченных как обязательные, должен быть передан как минимум один параметр из этого списка: payment_document_id, payment_document_number, account_number, unified_account_number или service_id.
492
+ */
124
493
  export interface CreatePaymentRequestPaymentOrderUtilities {
125
494
  "type": "utilities";
495
+ /**
496
+ * Сумма платежного поручения — сумма, которую пользователь переводит получателю платежа. Равна общей сумме платежа.
497
+ */
126
498
  amount: CommonAmount;
499
+ /**
500
+ * Назначение платежа (не больше 210 символов). Рекомендуется формировать с учетом рекомендаций из Письма Банка России № ИН-04-45|12 от 22.02.2018. Пример: Оплата ЖКХ;ЕЛС 80KX478547;ПРД 12.2024;Иванов Иван;г.Москва, ул.Флотская, д.1, кв.1
501
+ */
127
502
  payment_purpose: string;
503
+ /**
504
+ * Получатель платежа — государственная или коммерческая организация, которая предоставляет услуги или является информационным посредником, который собирает и обрабатывает начисления от других поставщиков услуг.
505
+ */
128
506
  recipient: CreatePaymentRequestPaymentOrderUtilitiesRecipient;
507
+ /**
508
+ * Код бюджетной классификации (КБК).
509
+ */
129
510
  kbk?: string;
511
+ /**
512
+ * Код ОКТМО (Общероссийский классификатор территорий муниципальных образований).
513
+ */
130
514
  oktmo?: string;
515
+ /**
516
+ * Период оплаты, за который выставлены начисления и за который вносится оплата.
517
+ */
131
518
  payment_period?: CreatePaymentRequestPaymentOrderUtilitiesPaymentPeriod;
519
+ /**
520
+ * Идентификатор платежного документа.
521
+ *
522
+ * Обязательный параметр, если не передан payment_document_number, account_number, unified_account_number или service_id.
523
+ */
132
524
  payment_document_id?: string;
525
+ /**
526
+ * Номер платежного документа на стороне поставщика ЖКУ.
527
+ *
528
+ * Обязательный параметр, если не передан payment_document_id, account_number, unified_account_number или service_id.
529
+ */
133
530
  payment_document_number?: string;
531
+ /**
532
+ * Номер лицевого счета на стороне поставщика ЖКУ.
533
+ *
534
+ * Обязательный параметр, если не передан payment_document_id, payment_document_number, unified_account_number или service_id.
535
+ */
134
536
  account_number?: string;
537
+ /**
538
+ * Единый лицевой счет. Уникальный идентификатор в ГИС ЖКХ, который характеризует связку «собственник-помещение».
539
+ *
540
+ * Обязательный параметр, если не передан payment_document_id, payment_document_number, account_number или service_id.
541
+ */
135
542
  unified_account_number?: string;
543
+ /**
544
+ * Идентификатор жилищно-коммунальной услуги (ЖКУ).
545
+ *
546
+ * Обязательный параметр, если не передан payment_document_id, payment_document_number, account_number или unified_account_number.
547
+ */
136
548
  service_id?: string;
137
549
  }
550
+ /**
551
+ * Платежное поручение — распоряжение на перевод банку для оплаты жилищно-коммунальных услуг (ЖКУ), сведения о платеже для регистрации в ГИС ЖКХ.
552
+ *
553
+ * Необходимо передавать при оплате ЖКУ.
554
+ *
555
+ * Виды платежных поручений
556
+ */
138
557
  export type CreatePaymentRequestPaymentOrder = CreatePaymentRequestPaymentOrderUtilities;
558
+ /**
559
+ * Реквизиты для пополнения баланса телефона.
560
+ */
139
561
  export interface CreatePaymentRequestReceiverMobileBalance {
562
+ /**
563
+ * Код получателя оплаты.
564
+ */
140
565
  "type": "mobile_balance";
566
+ /**
567
+ * Номер телефона для пополнения. Максимум 15 символов. Указывается в формате ITU-T E.164. Пример: 79000000000.
568
+ */
141
569
  phone: string;
142
570
  }
571
+ /**
572
+ * Реквизиты для пополнения баланса электронного кошелька.
573
+ */
143
574
  export interface CreatePaymentRequestReceiverDigitalWallet {
575
+ /**
576
+ * Код получателя оплаты.
577
+ */
144
578
  "type": "digital_wallet";
579
+ /**
580
+ * Идентификатор электронного кошелька для пополнения. Максимум 20 символов.
581
+ */
145
582
  account_number: string;
146
583
  }
584
+ /**
585
+ * Реквизиты для пополнения банковского счета.
586
+ */
147
587
  export interface CreatePaymentRequestReceiverBankAccount {
588
+ /**
589
+ * Код получателя оплаты.
590
+ */
148
591
  "type": "bank_account";
592
+ /**
593
+ * Номер банковского счета. Формат — 20 символов.
594
+ */
149
595
  account_number: string;
596
+ /**
597
+ * Банковский идентификационный код (БИК) банка, в котором открыт счет. Формат — 9 символов.
598
+ */
150
599
  bic: string;
151
600
  }
601
+ /**
602
+ * Реквизиты получателя оплаты при пополнении электронного кошелька, банковского счета или баланса телефона.
603
+ *
604
+ * Получатели оплаты
605
+ */
152
606
  export type CreatePaymentRequestReceiver = CreatePaymentRequestReceiverMobileBalance | CreatePaymentRequestReceiverDigitalWallet | CreatePaymentRequestReceiverBankAccount;
607
+ /**
608
+ * Квитанция по платежу.
609
+ */
153
610
  export interface CreatePaymentRequestStatementsItemPaymentOverview {
611
+ /**
612
+ * Тип справки.
613
+ */
154
614
  "type": "payment_overview";
615
+ /**
616
+ * Данные о выбранном способе доставки справки.
617
+ */
155
618
  delivery_method: CreatePaymentRequestStatementsItemPaymentOverviewDeliveryMethod;
156
619
  }
620
+ /**
621
+ * Данные для отправки справки. Необходимо передавать, если вы хотите, чтобы после оплаты пользователь получил справку.
622
+ *
623
+ * Сейчас доступен один тип справок — квитанция по платежу. Это информация об успешном платеже, которую ЮKassa отправляет на электронную почту пользователя.
624
+ *
625
+ * Квитанцию можно отправить, если оплата прошла с банковской карты, через SberPay или СБП. Отправка квитанции доступна во всех сценариях интеграции.
626
+ *
627
+ * Тип справки
628
+ */
157
629
  export type CreatePaymentRequestStatementsItem = CreatePaymentRequestStatementsItemPaymentOverview;
630
+ /**
631
+ * Данные об актуальном распределении денег — сколько и в какой магазин нужно перевести. Необходимо передавать, если вы используете Сплитование платежей и подтверждаете часть платежа.
632
+ */
158
633
  export interface CapturePaymentRequestTransfersItem {
634
+ /**
635
+ * Идентификатор магазина, в пользу которого вы принимаете оплату. Выдается ЮKassa, отображается в разделе Продавцы личного кабинета (столбец shopId).
636
+ */
159
637
  account_id: string;
638
+ /**
639
+ * Сумма, которую необходимо перевести магазину.
640
+ */
160
641
  amount: CommonAmount;
642
+ /**
643
+ * Комиссия за проданные товары и услуги, которая удерживается с магазина в вашу пользу.
644
+ */
161
645
  platform_fee_amount?: CommonAmount;
162
646
  }
647
+ /**
648
+ * Данные о сделке, в составе которой проходит платеж. Необходимо передавать, если вы проводите Безопасную сделку и подтверждаете часть платежа.
649
+ */
163
650
  export interface CapturePaymentRequestDeal {
651
+ /**
652
+ * Данные о распределении денег.
653
+ */
164
654
  settlements: CommonSettlements[];
165
655
  }
656
+ /**
657
+ * Данные от ФЭС НСПК для оплаты по электронному сертификату.
658
+ *
659
+ * Неоходимо передавать только при оплате со сбором данных на вашей стороне.
660
+ */
166
661
  export interface CreatePaymentRequestPaymentMethodDataElectronicCertificateElectronicCertificate {
662
+ /**
663
+ * Сумма, которую необходимо использовать по электронному сертификату, — значение totalCertAmount, которое вы получили в ФЭС НСПК в запросе на предварительное одобрение использования сертификата (Pre-Auth).
664
+ *
665
+ * Сумма должна быть не больше общей суммы платежа (amount).
666
+ */
167
667
  amount: CommonAmount;
668
+ /**
669
+ * Идентификатор корзины покупки, сформированной в НСПК, — значение purchaseBasketId, которое вы получили в ФЭС НСПК в запросе на предварительное одобрение использования сертификата (Pre-Auth).
670
+ */
168
671
  basket_id: string;
169
672
  }
673
+ /**
674
+ * Корзина покупки (в терминах НСПК) — список товаров, которые можно оплатить по сертификату.
675
+ *
676
+ * Необходимо передавать только при оплате на готовой странице ЮKassa.
677
+ */
170
678
  export interface CreatePaymentRequestPaymentMethodDataElectronicCertificateArticlesItem {
679
+ /**
680
+ * Порядковый номер товара в корзине. От 1 до 999 включительно.
681
+ */
171
682
  article_number: number;
683
+ /**
684
+ * Код ТРУ. 30 символов, две группы цифр, разделенные точкой. Формат: NNNNNNNNN.NNNNNNNNNYYYYMMMMZZZ, где NNNNNNNNN.NNNNNNNNN — код вида ТРУ по Перечню ТРУ, YYYY — код производителя, MMMM — код модели, ZZZ — код страны производителя. Пример: 329921120.06001010200080001643
685
+ *
686
+ * Как сформировать код ТРУ
687
+ */
172
688
  tru_code: string;
689
+ /**
690
+ * Код товара в вашей системе. Максимум 128 символов.
691
+ */
173
692
  article_code?: string;
693
+ /**
694
+ * Название товара в вашей системе. Отображается на готовой платежной форме ЮKassa. Максимум 128 символов.
695
+ */
174
696
  article_name: string;
697
+ /**
698
+ * Количество единиц товара. Формат: целое положительное число.
699
+ */
175
700
  quantity: number;
701
+ /**
702
+ * Цена за единицу товара.
703
+ */
176
704
  price: CommonAmount;
705
+ /**
706
+ * Любые дополнительные данные, которые нужны вам для работы (например, ваш внутренний идентификатор заказа). Передаются в виде набора пар «ключ-значение» и возвращаются в ответе от ЮKassa. Ограничения: максимум 16 ключей, имя ключа не больше 32 символов, значение ключа не больше 512 символов, тип данных — строка в формате UTF-8.
707
+ */
177
708
  metadata?: Record<string, unknown>;
178
709
  }
710
+ /**
711
+ * Получатель платежа — государственная или коммерческая организация, которая предоставляет услуги или является информационным посредником, который собирает и обрабатывает начисления от других поставщиков услуг.
712
+ */
179
713
  export interface CreatePaymentRequestPaymentOrderUtilitiesRecipient {
714
+ /**
715
+ * Название получателя.
716
+ */
180
717
  name: string;
718
+ /**
719
+ * ИНН получателя.
720
+ */
181
721
  inn: string;
722
+ /**
723
+ * КПП получателя.
724
+ */
182
725
  kpp: string;
726
+ /**
727
+ * Банк получателя.
728
+ */
183
729
  bank: CreatePaymentRequestPaymentOrderUtilitiesRecipientBank;
184
730
  }
731
+ /**
732
+ * Период оплаты, за который выставлены начисления и за который вносится оплата.
733
+ */
185
734
  export interface CreatePaymentRequestPaymentOrderUtilitiesPaymentPeriod {
735
+ /**
736
+ * Месяц периода. Например, 1 — январь.
737
+ */
186
738
  month: number;
739
+ /**
740
+ * Год периода. Значение должно быть в диапазоне 1920–2050. Например, 2025.
741
+ */
187
742
  year: number;
188
743
  }
744
+ /**
745
+ * Cпособ доставки справки.
746
+ */
189
747
  export interface CreatePaymentRequestStatementsItemPaymentOverviewDeliveryMethodEmail {
748
+ /**
749
+ * Тип способа доставки справки.
750
+ */
190
751
  "type": "email";
752
+ /**
753
+ * Электронная почта пользователя для отправки справки. Адрес электронной почты должен соответствовать стандарту RFC 5322. Пример: user@example.com.
754
+ */
191
755
  email: string;
192
756
  }
757
+ /**
758
+ * Данные о выбранном способе доставки справки.
759
+ *
760
+ * Способ доставки
761
+ */
193
762
  export type CreatePaymentRequestStatementsItemPaymentOverviewDeliveryMethod = CreatePaymentRequestStatementsItemPaymentOverviewDeliveryMethodEmail;
763
+ /**
764
+ * Банк получателя.
765
+ */
194
766
  export interface CreatePaymentRequestPaymentOrderUtilitiesRecipientBank {
767
+ /**
768
+ * Название банка получателя. Максимум 45 символов.
769
+ */
195
770
  name: string;
771
+ /**
772
+ * БИК банка получателя.
773
+ */
196
774
  bic: string;
775
+ /**
776
+ * Счет получателя в банке.
777
+ */
197
778
  account: string;
779
+ /**
780
+ * Корреспондентский счет банка получателя.
781
+ */
198
782
  correspondent_account: string;
199
783
  }