@opsregistry/contracts 0.0.1

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 (46) hide show
  1. package/README.md +70 -0
  2. package/dist/delivery/create-shipment.d.ts +58 -0
  3. package/dist/delivery/create-shipment.d.ts.map +1 -0
  4. package/dist/delivery/create-shipment.js +34 -0
  5. package/dist/delivery/create-shipment.js.map +1 -0
  6. package/dist/delivery/quote.d.ts +87 -0
  7. package/dist/delivery/quote.d.ts.map +1 -0
  8. package/dist/delivery/quote.js +41 -0
  9. package/dist/delivery/quote.js.map +1 -0
  10. package/dist/finance/cancel-payment.d.ts +44 -0
  11. package/dist/finance/cancel-payment.d.ts.map +1 -0
  12. package/dist/finance/cancel-payment.js +25 -0
  13. package/dist/finance/cancel-payment.js.map +1 -0
  14. package/dist/finance/common.d.ts +47 -0
  15. package/dist/finance/common.d.ts.map +1 -0
  16. package/dist/finance/common.js +37 -0
  17. package/dist/finance/common.js.map +1 -0
  18. package/dist/finance/create-payment-qr.d.ts +40 -0
  19. package/dist/finance/create-payment-qr.d.ts.map +1 -0
  20. package/dist/finance/create-payment-qr.js +25 -0
  21. package/dist/finance/create-payment-qr.js.map +1 -0
  22. package/dist/finance/create-payment.d.ts +66 -0
  23. package/dist/finance/create-payment.d.ts.map +1 -0
  24. package/dist/finance/create-payment.js +33 -0
  25. package/dist/finance/create-payment.js.map +1 -0
  26. package/dist/finance/create-receipt.d.ts +133 -0
  27. package/dist/finance/create-receipt.d.ts.map +1 -0
  28. package/dist/finance/create-receipt.js +18 -0
  29. package/dist/finance/create-receipt.js.map +1 -0
  30. package/dist/finance/get-payment-status.d.ts +52 -0
  31. package/dist/finance/get-payment-status.d.ts.map +1 -0
  32. package/dist/finance/get-payment-status.js +23 -0
  33. package/dist/finance/get-payment-status.js.map +1 -0
  34. package/dist/finance/get-receipt-status.d.ts +35 -0
  35. package/dist/finance/get-receipt-status.d.ts.map +1 -0
  36. package/dist/finance/get-receipt-status.js +19 -0
  37. package/dist/finance/get-receipt-status.js.map +1 -0
  38. package/dist/finance/receipt-common.d.ts +246 -0
  39. package/dist/finance/receipt-common.d.ts.map +1 -0
  40. package/dist/finance/receipt-common.js +90 -0
  41. package/dist/finance/receipt-common.js.map +1 -0
  42. package/dist/index.d.ts +11 -0
  43. package/dist/index.d.ts.map +1 -0
  44. package/dist/index.js +11 -0
  45. package/dist/index.js.map +1 -0
  46. package/package.json +70 -0
package/README.md ADDED
@@ -0,0 +1,70 @@
1
+ # @opsregistry/contracts
2
+
3
+ Пакет со спецификациями операций для экосистемы `opsregistry`.
4
+
5
+ Здесь живут не реализации интеграций и не данные реестра, а общие схемы и типы, которые описывают универсальные операции. Эти спецификации могут использовать:
6
+
7
+ - `opsregistry/registry` для описания операций;
8
+ - runtime-адаптеры поставщиков;
9
+ - приложения-потребители, которым нужна единая модель входа и выхода.
10
+
11
+ ## Что внутри
12
+
13
+ Сейчас пакет содержит первые спецификации из домена доставки:
14
+
15
+ - `delivery.quote`
16
+ - `delivery.createShipment`
17
+
18
+ И первые спецификации из домена финансов:
19
+
20
+ - `finance.merchantPayment.create`
21
+ - `finance.merchantPayment.createQr`
22
+ - `finance.merchantPayment.getStatus`
23
+ - `finance.merchantPayment.cancel`
24
+ - `finance.fiscalReceipt.create`
25
+ - `finance.fiscalReceipt.getStatus`
26
+
27
+ Каждая операция экспортирует:
28
+
29
+ - `operationCode`
30
+ - Zod-схемы входа и выхода
31
+ - TypeScript-типы
32
+ - минимальные метаданные режима доступа, если операция может выполняться публично или с авторизацией
33
+
34
+ ## Как этим пользоваться
35
+
36
+ ```ts
37
+ import {
38
+ deliveryQuoteInputSchema,
39
+ type DeliveryQuoteInput,
40
+ type DeliveryQuoteResult
41
+ } from '@opsregistry/contracts/delivery/quote';
42
+ ```
43
+
44
+ ## Принцип
45
+
46
+ У каждой операции своя собственная спецификация.
47
+
48
+ Пакет `@opsregistry/contracts` не означает “один общий контракт для всех операций”. Он означает единое место, где живут согласованные спецификации конкретных операций, чтобы разные адаптеры и приложения использовали один и тот же смысл операции.
49
+
50
+ Например, `delivery.quote` уже умеет выразить:
51
+
52
+ - каким режимом был выполнен расчет: `public` или `authorized`;
53
+ - относится ли цена к публичному или персональному тарифу.
54
+
55
+ ## Граница финансовых операций
56
+
57
+ `finance.merchantPayment.create` описывает входящую платежную попытку в пользу продавца/мерчанта: заказ в магазине, счет за услугу, QR СБП, карточный checkout и похожие acquiring-сценарии.
58
+
59
+ Это не универсальная операция для любого движения денег. Исходящие переводы, выплаты, оплата счетов поставщиков, подписки и банковские платежные поручения должны оформляться отдельными операциями, если у них другой жизненный цикл, стороны процесса, статусы или юридический смысл.
60
+
61
+ Для широких доменов используйте форму `domain.subdomain.action`, например `finance.merchantPayment.create` или `finance.fiscalReceipt.create`. Поддомен должен описывать бизнес-объект или bounded context, а не конкретного провайдера.
62
+
63
+ Примеры будущих отдельных финансовых поддоменов:
64
+
65
+ - `finance.payout.create` для выплат клиентам или подрядчикам;
66
+ - `finance.bankTransfer.create` для исходящих банковских переводов;
67
+ - `finance.invoice.create` для выставления счета;
68
+ - `finance.billPayment.create` для оплаты услуг внешнего поставщика.
69
+
70
+ Если меняется только метод оплаты внутри merchant checkout, например карта или СБП QR, это параметр `finance.merchantPayment.*`, а не отдельный провайдерский код операции.
@@ -0,0 +1,58 @@
1
+ import { z } from 'zod';
2
+ export declare const operationCode: "delivery.createShipment";
3
+ export declare const shipmentPartySchema: z.ZodObject<{
4
+ name: z.ZodString;
5
+ phone: z.ZodString;
6
+ companyName: z.ZodOptional<z.ZodString>;
7
+ city: z.ZodString;
8
+ addressLine: z.ZodString;
9
+ }, z.core.$strip>;
10
+ export declare const shipmentParcelSchema: z.ZodObject<{
11
+ weightKg: z.ZodNumber;
12
+ lengthCm: z.ZodOptional<z.ZodNumber>;
13
+ widthCm: z.ZodOptional<z.ZodNumber>;
14
+ heightCm: z.ZodOptional<z.ZodNumber>;
15
+ declaredValue: z.ZodOptional<z.ZodNumber>;
16
+ }, z.core.$strip>;
17
+ export declare const createShipmentInputSchema: z.ZodObject<{
18
+ orderNumber: z.ZodString;
19
+ sender: z.ZodObject<{
20
+ name: z.ZodString;
21
+ phone: z.ZodString;
22
+ companyName: z.ZodOptional<z.ZodString>;
23
+ city: z.ZodString;
24
+ addressLine: z.ZodString;
25
+ }, z.core.$strip>;
26
+ recipient: z.ZodObject<{
27
+ name: z.ZodString;
28
+ phone: z.ZodString;
29
+ companyName: z.ZodOptional<z.ZodString>;
30
+ city: z.ZodString;
31
+ addressLine: z.ZodString;
32
+ }, z.core.$strip>;
33
+ parcel: z.ZodObject<{
34
+ weightKg: z.ZodNumber;
35
+ lengthCm: z.ZodOptional<z.ZodNumber>;
36
+ widthCm: z.ZodOptional<z.ZodNumber>;
37
+ heightCm: z.ZodOptional<z.ZodNumber>;
38
+ declaredValue: z.ZodOptional<z.ZodNumber>;
39
+ }, z.core.$strip>;
40
+ serviceCode: z.ZodOptional<z.ZodString>;
41
+ comment: z.ZodOptional<z.ZodString>;
42
+ }, z.core.$strip>;
43
+ export declare const createShipmentResultSchema: z.ZodObject<{
44
+ operationCode: z.ZodLiteral<"delivery.createShipment">;
45
+ accessModeUsed: z.ZodEnum<{
46
+ public: "public";
47
+ authorized: "authorized";
48
+ }>;
49
+ providerCode: z.ZodString;
50
+ shipmentId: z.ZodString;
51
+ trackingNumber: z.ZodOptional<z.ZodString>;
52
+ status: z.ZodString;
53
+ }, z.core.$strip>;
54
+ export type ShipmentParty = z.infer<typeof shipmentPartySchema>;
55
+ export type ShipmentParcel = z.infer<typeof shipmentParcelSchema>;
56
+ export type CreateShipmentInput = z.infer<typeof createShipmentInputSchema>;
57
+ export type CreateShipmentResult = z.infer<typeof createShipmentResultSchema>;
58
+ //# sourceMappingURL=create-shipment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-shipment.d.ts","sourceRoot":"","sources":["../../src/delivery/create-shipment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,aAAa,EAAG,yBAAkC,CAAC;AAEhE,eAAO,MAAM,mBAAmB;;;;;;iBAM9B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;iBAM/B,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;iBAOpC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;iBAOrC,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { z } from 'zod';
2
+ import { operationAccessModeSchema } from './quote.js';
3
+ export const operationCode = 'delivery.createShipment';
4
+ export const shipmentPartySchema = z.object({
5
+ name: z.string().min(1),
6
+ phone: z.string().min(1),
7
+ companyName: z.string().min(1).optional(),
8
+ city: z.string().min(1),
9
+ addressLine: z.string().min(1)
10
+ });
11
+ export const shipmentParcelSchema = z.object({
12
+ weightKg: z.number().positive(),
13
+ lengthCm: z.number().positive().optional(),
14
+ widthCm: z.number().positive().optional(),
15
+ heightCm: z.number().positive().optional(),
16
+ declaredValue: z.number().nonnegative().optional()
17
+ });
18
+ export const createShipmentInputSchema = z.object({
19
+ orderNumber: z.string().min(1),
20
+ sender: shipmentPartySchema,
21
+ recipient: shipmentPartySchema,
22
+ parcel: shipmentParcelSchema,
23
+ serviceCode: z.string().min(1).optional(),
24
+ comment: z.string().min(1).optional()
25
+ });
26
+ export const createShipmentResultSchema = z.object({
27
+ operationCode: z.literal(operationCode),
28
+ accessModeUsed: operationAccessModeSchema,
29
+ providerCode: z.string().min(1),
30
+ shipmentId: z.string().min(1),
31
+ trackingNumber: z.string().min(1).optional(),
32
+ status: z.string().min(1)
33
+ });
34
+ //# sourceMappingURL=create-shipment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-shipment.js","sourceRoot":"","sources":["../../src/delivery/create-shipment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAEvD,MAAM,CAAC,MAAM,aAAa,GAAG,yBAAkC,CAAC;AAEhE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACzC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC9B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACzC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;CAClD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,MAAM,EAAE,mBAAmB;IAC3B,SAAS,EAAE,mBAAmB;IAC9B,MAAM,EAAE,oBAAoB;IAC5B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACzC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACrC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IACvC,cAAc,EAAE,yBAAyB;IACzC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC5C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACzB,CAAC,CAAC"}
@@ -0,0 +1,87 @@
1
+ import { z } from 'zod';
2
+ export declare const operationCode: "delivery.quote";
3
+ export declare const operationAccessModeSchema: z.ZodEnum<{
4
+ public: "public";
5
+ authorized: "authorized";
6
+ }>;
7
+ export declare const quotePricingScopeSchema: z.ZodEnum<{
8
+ public: "public";
9
+ personal: "personal";
10
+ unknown: "unknown";
11
+ }>;
12
+ export declare const deliveryParcelSchema: z.ZodObject<{
13
+ weightKg: z.ZodNumber;
14
+ lengthCm: z.ZodOptional<z.ZodNumber>;
15
+ widthCm: z.ZodOptional<z.ZodNumber>;
16
+ heightCm: z.ZodOptional<z.ZodNumber>;
17
+ declaredValue: z.ZodOptional<z.ZodNumber>;
18
+ }, z.core.$strip>;
19
+ export declare const deliveryLocationSchema: z.ZodObject<{
20
+ countryCode: z.ZodOptional<z.ZodString>;
21
+ postalCode: z.ZodOptional<z.ZodString>;
22
+ city: z.ZodString;
23
+ addressLine: z.ZodOptional<z.ZodString>;
24
+ }, z.core.$strip>;
25
+ export declare const deliveryQuoteInputSchema: z.ZodObject<{
26
+ origin: z.ZodObject<{
27
+ countryCode: z.ZodOptional<z.ZodString>;
28
+ postalCode: z.ZodOptional<z.ZodString>;
29
+ city: z.ZodString;
30
+ addressLine: z.ZodOptional<z.ZodString>;
31
+ }, z.core.$strip>;
32
+ destination: z.ZodObject<{
33
+ countryCode: z.ZodOptional<z.ZodString>;
34
+ postalCode: z.ZodOptional<z.ZodString>;
35
+ city: z.ZodString;
36
+ addressLine: z.ZodOptional<z.ZodString>;
37
+ }, z.core.$strip>;
38
+ parcel: z.ZodObject<{
39
+ weightKg: z.ZodNumber;
40
+ lengthCm: z.ZodOptional<z.ZodNumber>;
41
+ widthCm: z.ZodOptional<z.ZodNumber>;
42
+ heightCm: z.ZodOptional<z.ZodNumber>;
43
+ declaredValue: z.ZodOptional<z.ZodNumber>;
44
+ }, z.core.$strip>;
45
+ requestedDate: z.ZodOptional<z.ZodString>;
46
+ serviceCodes: z.ZodDefault<z.ZodArray<z.ZodString>>;
47
+ }, z.core.$strip>;
48
+ export declare const deliveryQuoteOptionSchema: z.ZodObject<{
49
+ providerCode: z.ZodString;
50
+ serviceCode: z.ZodString;
51
+ serviceName: z.ZodString;
52
+ price: z.ZodNumber;
53
+ currency: z.ZodLiteral<"RUB">;
54
+ etaMinDays: z.ZodOptional<z.ZodNumber>;
55
+ etaMaxDays: z.ZodOptional<z.ZodNumber>;
56
+ notes: z.ZodDefault<z.ZodArray<z.ZodString>>;
57
+ }, z.core.$strip>;
58
+ export declare const deliveryQuoteResultSchema: z.ZodObject<{
59
+ operationCode: z.ZodLiteral<"delivery.quote">;
60
+ accessModeUsed: z.ZodEnum<{
61
+ public: "public";
62
+ authorized: "authorized";
63
+ }>;
64
+ pricingScope: z.ZodDefault<z.ZodEnum<{
65
+ public: "public";
66
+ personal: "personal";
67
+ unknown: "unknown";
68
+ }>>;
69
+ options: z.ZodArray<z.ZodObject<{
70
+ providerCode: z.ZodString;
71
+ serviceCode: z.ZodString;
72
+ serviceName: z.ZodString;
73
+ price: z.ZodNumber;
74
+ currency: z.ZodLiteral<"RUB">;
75
+ etaMinDays: z.ZodOptional<z.ZodNumber>;
76
+ etaMaxDays: z.ZodOptional<z.ZodNumber>;
77
+ notes: z.ZodDefault<z.ZodArray<z.ZodString>>;
78
+ }, z.core.$strip>>;
79
+ }, z.core.$strip>;
80
+ export type OperationAccessMode = z.infer<typeof operationAccessModeSchema>;
81
+ export type QuotePricingScope = z.infer<typeof quotePricingScopeSchema>;
82
+ export type DeliveryLocation = z.infer<typeof deliveryLocationSchema>;
83
+ export type DeliveryParcel = z.infer<typeof deliveryParcelSchema>;
84
+ export type DeliveryQuoteInput = z.infer<typeof deliveryQuoteInputSchema>;
85
+ export type DeliveryQuoteOption = z.infer<typeof deliveryQuoteOptionSchema>;
86
+ export type DeliveryQuoteResult = z.infer<typeof deliveryQuoteResultSchema>;
87
+ //# sourceMappingURL=quote.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quote.d.ts","sourceRoot":"","sources":["../../src/delivery/quote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,aAAa,EAAG,gBAAyB,CAAC;AACvD,eAAO,MAAM,yBAAyB;;;EAAmC,CAAC;AAC1E,eAAO,MAAM,uBAAuB;;;;EAA4C,CAAC;AAEjF,eAAO,MAAM,oBAAoB;;;;;;iBAM/B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;iBAKjC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;iBAMnC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;iBASpC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;iBAKpC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
@@ -0,0 +1,41 @@
1
+ import { z } from 'zod';
2
+ export const operationCode = 'delivery.quote';
3
+ export const operationAccessModeSchema = z.enum(['public', 'authorized']);
4
+ export const quotePricingScopeSchema = z.enum(['public', 'personal', 'unknown']);
5
+ export const deliveryParcelSchema = z.object({
6
+ weightKg: z.number().positive(),
7
+ lengthCm: z.number().positive().optional(),
8
+ widthCm: z.number().positive().optional(),
9
+ heightCm: z.number().positive().optional(),
10
+ declaredValue: z.number().nonnegative().optional()
11
+ });
12
+ export const deliveryLocationSchema = z.object({
13
+ countryCode: z.string().length(2).optional(),
14
+ postalCode: z.string().min(1).optional(),
15
+ city: z.string().min(1),
16
+ addressLine: z.string().min(1).optional()
17
+ });
18
+ export const deliveryQuoteInputSchema = z.object({
19
+ origin: deliveryLocationSchema,
20
+ destination: deliveryLocationSchema,
21
+ parcel: deliveryParcelSchema,
22
+ requestedDate: z.string().min(1).optional(),
23
+ serviceCodes: z.array(z.string().min(1)).default([])
24
+ });
25
+ export const deliveryQuoteOptionSchema = z.object({
26
+ providerCode: z.string().min(1),
27
+ serviceCode: z.string().min(1),
28
+ serviceName: z.string().min(1),
29
+ price: z.number().nonnegative(),
30
+ currency: z.literal('RUB'),
31
+ etaMinDays: z.number().int().positive().optional(),
32
+ etaMaxDays: z.number().int().positive().optional(),
33
+ notes: z.array(z.string().min(1)).default([])
34
+ });
35
+ export const deliveryQuoteResultSchema = z.object({
36
+ operationCode: z.literal(operationCode),
37
+ accessModeUsed: operationAccessModeSchema,
38
+ pricingScope: quotePricingScopeSchema.default('unknown'),
39
+ options: z.array(deliveryQuoteOptionSchema)
40
+ });
41
+ //# sourceMappingURL=quote.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quote.js","sourceRoot":"","sources":["../../src/delivery/quote.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import { z } from 'zod';
2
+ export declare const operationCode: "finance.merchantPayment.cancel";
3
+ export declare const cancelPaymentInputSchema: z.ZodObject<{
4
+ providerPaymentId: z.ZodOptional<z.ZodString>;
5
+ merchantOrderId: z.ZodOptional<z.ZodString>;
6
+ amount: z.ZodOptional<z.ZodObject<{
7
+ currency: z.ZodDefault<z.ZodString>;
8
+ amountMinor: z.ZodNumber;
9
+ }, z.core.$strip>>;
10
+ reason: z.ZodOptional<z.ZodString>;
11
+ idempotencyKey: z.ZodOptional<z.ZodString>;
12
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
13
+ }, z.core.$strip>;
14
+ export declare const cancelPaymentResultSchema: z.ZodObject<{
15
+ operationCode: z.ZodLiteral<"finance.merchantPayment.cancel">;
16
+ accessModeUsed: z.ZodEnum<{
17
+ authorized: "authorized";
18
+ }>;
19
+ providerCode: z.ZodString;
20
+ providerPaymentId: z.ZodString;
21
+ merchantOrderId: z.ZodOptional<z.ZodString>;
22
+ status: z.ZodEnum<{
23
+ authorized: "authorized";
24
+ unknown: "unknown";
25
+ created: "created";
26
+ pending: "pending";
27
+ confirmed: "confirmed";
28
+ paid: "paid";
29
+ cancelled: "cancelled";
30
+ refunded: "refunded";
31
+ partiallyRefunded: "partiallyRefunded";
32
+ expired: "expired";
33
+ failed: "failed";
34
+ }>;
35
+ cancelledAmount: z.ZodOptional<z.ZodObject<{
36
+ amountMinor: z.ZodNumber;
37
+ currency: z.ZodDefault<z.ZodString>;
38
+ }, z.core.$strip>>;
39
+ rawStatus: z.ZodOptional<z.ZodString>;
40
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
41
+ }, z.core.$strip>;
42
+ export type CancelPaymentInput = z.infer<typeof cancelPaymentInputSchema>;
43
+ export type CancelPaymentResult = z.infer<typeof cancelPaymentResultSchema>;
44
+ //# sourceMappingURL=cancel-payment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cancel-payment.d.ts","sourceRoot":"","sources":["../../src/finance/cancel-payment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,eAAO,MAAM,aAAa,EAAG,gCAAyC,CAAC;AAEvE,eAAO,MAAM,wBAAwB;;;;;;;;;;iBASnC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAUpC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { z } from 'zod';
2
+ import { metadataSchema, moneyAmountSchema, operationAccessModeSchema, paymentStatusSchema, providerPaymentReferenceSchema } from './common.js';
3
+ export const operationCode = 'finance.merchantPayment.cancel';
4
+ export const cancelPaymentInputSchema = providerPaymentReferenceSchema.extend({
5
+ amount: moneyAmountSchema
6
+ .extend({
7
+ amountMinor: z.number().int().positive()
8
+ })
9
+ .optional(),
10
+ reason: z.string().min(1).optional(),
11
+ idempotencyKey: z.string().min(1).optional(),
12
+ metadata: metadataSchema
13
+ });
14
+ export const cancelPaymentResultSchema = z.object({
15
+ operationCode: z.literal(operationCode),
16
+ accessModeUsed: operationAccessModeSchema,
17
+ providerCode: z.string().min(1),
18
+ providerPaymentId: z.string().min(1),
19
+ merchantOrderId: z.string().min(1).optional(),
20
+ status: paymentStatusSchema,
21
+ cancelledAmount: moneyAmountSchema.optional(),
22
+ rawStatus: z.string().min(1).optional(),
23
+ metadata: metadataSchema
24
+ });
25
+ //# sourceMappingURL=cancel-payment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cancel-payment.js","sourceRoot":"","sources":["../../src/finance/cancel-payment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACN,cAAc,EACd,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,EACnB,8BAA8B,EAC9B,MAAM,aAAa,CAAC;AAErB,MAAM,CAAC,MAAM,aAAa,GAAG,gCAAyC,CAAC;AAEvE,MAAM,CAAC,MAAM,wBAAwB,GAAG,8BAA8B,CAAC,MAAM,CAAC;IAC7E,MAAM,EAAE,iBAAiB;SACvB,MAAM,CAAC;QACP,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;KACxC,CAAC;SACD,QAAQ,EAAE;IACZ,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACpC,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC5C,QAAQ,EAAE,cAAc;CACxB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IACvC,cAAc,EAAE,yBAAyB;IACzC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/B,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC7C,MAAM,EAAE,mBAAmB;IAC3B,eAAe,EAAE,iBAAiB,CAAC,QAAQ,EAAE;IAC7C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACvC,QAAQ,EAAE,cAAc;CACxB,CAAC,CAAC"}
@@ -0,0 +1,47 @@
1
+ import { z } from 'zod';
2
+ export declare const operationAccessModeSchema: z.ZodEnum<{
3
+ authorized: "authorized";
4
+ }>;
5
+ export declare const currencyCodeSchema: z.ZodString;
6
+ export declare const moneyAmountSchema: z.ZodObject<{
7
+ amountMinor: z.ZodNumber;
8
+ currency: z.ZodDefault<z.ZodString>;
9
+ }, z.core.$strip>;
10
+ export declare const paymentMethodSchema: z.ZodEnum<{
11
+ unknown: "unknown";
12
+ card: "card";
13
+ sbpQr: "sbpQr";
14
+ tpay: "tpay";
15
+ sberpay: "sberpay";
16
+ }>;
17
+ export declare const paymentStatusSchema: z.ZodEnum<{
18
+ authorized: "authorized";
19
+ unknown: "unknown";
20
+ created: "created";
21
+ pending: "pending";
22
+ confirmed: "confirmed";
23
+ paid: "paid";
24
+ cancelled: "cancelled";
25
+ refunded: "refunded";
26
+ partiallyRefunded: "partiallyRefunded";
27
+ expired: "expired";
28
+ failed: "failed";
29
+ }>;
30
+ export declare const customerContactSchema: z.ZodObject<{
31
+ customerId: z.ZodOptional<z.ZodString>;
32
+ name: z.ZodOptional<z.ZodString>;
33
+ email: z.ZodOptional<z.ZodEmail>;
34
+ phone: z.ZodOptional<z.ZodString>;
35
+ }, z.core.$strip>;
36
+ export declare const metadataSchema: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
37
+ export declare const providerPaymentReferenceSchema: z.ZodObject<{
38
+ providerPaymentId: z.ZodOptional<z.ZodString>;
39
+ merchantOrderId: z.ZodOptional<z.ZodString>;
40
+ }, z.core.$strip>;
41
+ export type OperationAccessMode = z.infer<typeof operationAccessModeSchema>;
42
+ export type MoneyAmount = z.infer<typeof moneyAmountSchema>;
43
+ export type PaymentMethod = z.infer<typeof paymentMethodSchema>;
44
+ export type PaymentStatus = z.infer<typeof paymentStatusSchema>;
45
+ export type CustomerContact = z.infer<typeof customerContactSchema>;
46
+ export type ProviderPaymentReference = z.infer<typeof providerPaymentReferenceSchema>;
47
+ //# sourceMappingURL=common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/finance/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,yBAAyB;;EAAyB,CAAC;AAEhE,eAAO,MAAM,kBAAkB,aAAuB,CAAC;AAEvD,eAAO,MAAM,iBAAiB;;;iBAG5B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;EAA0D,CAAC;AAE3F,eAAO,MAAM,mBAAmB;;;;;;;;;;;;EAY9B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;iBAKhC,CAAC;AAEH,eAAO,MAAM,cAAc,qDAA+C,CAAC;AAE3E,eAAO,MAAM,8BAA8B;;;iBAOxC,CAAC;AAEJ,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC"}
@@ -0,0 +1,37 @@
1
+ import { z } from 'zod';
2
+ export const operationAccessModeSchema = z.enum(['authorized']);
3
+ export const currencyCodeSchema = z.string().length(3);
4
+ export const moneyAmountSchema = z.object({
5
+ amountMinor: z.number().int().nonnegative(),
6
+ currency: currencyCodeSchema.default('RUB')
7
+ });
8
+ export const paymentMethodSchema = z.enum(['card', 'sbpQr', 'tpay', 'sberpay', 'unknown']);
9
+ export const paymentStatusSchema = z.enum([
10
+ 'created',
11
+ 'pending',
12
+ 'authorized',
13
+ 'confirmed',
14
+ 'paid',
15
+ 'cancelled',
16
+ 'refunded',
17
+ 'partiallyRefunded',
18
+ 'expired',
19
+ 'failed',
20
+ 'unknown'
21
+ ]);
22
+ export const customerContactSchema = z.object({
23
+ customerId: z.string().min(1).optional(),
24
+ name: z.string().min(1).optional(),
25
+ email: z.email().optional(),
26
+ phone: z.string().min(1).optional()
27
+ });
28
+ export const metadataSchema = z.record(z.string(), z.string()).default({});
29
+ export const providerPaymentReferenceSchema = z
30
+ .object({
31
+ providerPaymentId: z.string().min(1).optional(),
32
+ merchantOrderId: z.string().min(1).optional()
33
+ })
34
+ .refine((value) => value.providerPaymentId || value.merchantOrderId, {
35
+ message: 'providerPaymentId or merchantOrderId is required'
36
+ });
37
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/finance/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;AAEhE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAEvD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IAC3C,QAAQ,EAAE,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC;CAC3C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;AAE3F,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC;IACzC,SAAS;IACT,SAAS;IACT,YAAY;IACZ,WAAW;IACX,MAAM;IACN,WAAW;IACX,UAAU;IACV,mBAAmB;IACnB,SAAS;IACT,QAAQ;IACR,SAAS;CACT,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAClC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;IAC3B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAE3E,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC;KAC7C,MAAM,CAAC;IACP,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC/C,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC7C,CAAC;KACD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,iBAAiB,IAAI,KAAK,CAAC,eAAe,EAAE;IACpE,OAAO,EAAE,kDAAkD;CAC3D,CAAC,CAAC"}
@@ -0,0 +1,40 @@
1
+ import { z } from 'zod';
2
+ export declare const operationCode: "finance.merchantPayment.createQr";
3
+ export declare const paymentQrFormatSchema: z.ZodEnum<{
4
+ payload: "payload";
5
+ svg: "svg";
6
+ }>;
7
+ export declare const createPaymentQrInputSchema: z.ZodObject<{
8
+ providerPaymentId: z.ZodOptional<z.ZodString>;
9
+ merchantOrderId: z.ZodOptional<z.ZodString>;
10
+ format: z.ZodDefault<z.ZodEnum<{
11
+ payload: "payload";
12
+ svg: "svg";
13
+ }>>;
14
+ bankId: z.ZodOptional<z.ZodUUID>;
15
+ idempotencyKey: z.ZodOptional<z.ZodString>;
16
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
17
+ }, z.core.$strip>;
18
+ export declare const createPaymentQrResultSchema: z.ZodObject<{
19
+ operationCode: z.ZodLiteral<"finance.merchantPayment.createQr">;
20
+ accessModeUsed: z.ZodEnum<{
21
+ authorized: "authorized";
22
+ }>;
23
+ providerCode: z.ZodString;
24
+ providerPaymentId: z.ZodString;
25
+ merchantOrderId: z.ZodOptional<z.ZodString>;
26
+ format: z.ZodEnum<{
27
+ payload: "payload";
28
+ svg: "svg";
29
+ }>;
30
+ qrPayload: z.ZodOptional<z.ZodString>;
31
+ qrImageSvg: z.ZodOptional<z.ZodString>;
32
+ paymentUrl: z.ZodOptional<z.ZodURL>;
33
+ deepLink: z.ZodOptional<z.ZodString>;
34
+ expiresAt: z.ZodOptional<z.ZodString>;
35
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
36
+ }, z.core.$strip>;
37
+ export type PaymentQrFormat = z.infer<typeof paymentQrFormatSchema>;
38
+ export type CreatePaymentQrInput = z.infer<typeof createPaymentQrInputSchema>;
39
+ export type CreatePaymentQrResult = z.infer<typeof createPaymentQrResultSchema>;
40
+ //# sourceMappingURL=create-payment-qr.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-payment-qr.d.ts","sourceRoot":"","sources":["../../src/finance/create-payment-qr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,aAAa,EAAG,kCAA2C,CAAC;AAEzE,eAAO,MAAM,qBAAqB;;;EAA6B,CAAC;AAEhE,eAAO,MAAM,0BAA0B;;;;;;;;;;iBAKrC,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;iBAatC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { z } from 'zod';
2
+ import { metadataSchema, operationAccessModeSchema, providerPaymentReferenceSchema } from './common.js';
3
+ export const operationCode = 'finance.merchantPayment.createQr';
4
+ export const paymentQrFormatSchema = z.enum(['payload', 'svg']);
5
+ export const createPaymentQrInputSchema = providerPaymentReferenceSchema.extend({
6
+ format: paymentQrFormatSchema.default('payload'),
7
+ bankId: z.uuid().optional(),
8
+ idempotencyKey: z.string().min(1).optional(),
9
+ metadata: metadataSchema
10
+ });
11
+ export const createPaymentQrResultSchema = z.object({
12
+ operationCode: z.literal(operationCode),
13
+ accessModeUsed: operationAccessModeSchema,
14
+ providerCode: z.string().min(1),
15
+ providerPaymentId: z.string().min(1),
16
+ merchantOrderId: z.string().min(1).optional(),
17
+ format: paymentQrFormatSchema,
18
+ qrPayload: z.string().min(1).optional(),
19
+ qrImageSvg: z.string().min(1).optional(),
20
+ paymentUrl: z.url().optional(),
21
+ deepLink: z.string().min(1).optional(),
22
+ expiresAt: z.string().min(1).optional(),
23
+ metadata: metadataSchema
24
+ });
25
+ //# sourceMappingURL=create-payment-qr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-payment-qr.js","sourceRoot":"","sources":["../../src/finance/create-payment-qr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACN,cAAc,EACd,yBAAyB,EACzB,8BAA8B,EAC9B,MAAM,aAAa,CAAC;AAErB,MAAM,CAAC,MAAM,aAAa,GAAG,kCAA2C,CAAC;AAEzE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;AAEhE,MAAM,CAAC,MAAM,0BAA0B,GAAG,8BAA8B,CAAC,MAAM,CAAC;IAC/E,MAAM,EAAE,qBAAqB,CAAC,OAAO,CAAC,SAAS,CAAC;IAChD,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAC3B,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC5C,QAAQ,EAAE,cAAc;CACxB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IACvC,cAAc,EAAE,yBAAyB;IACzC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/B,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC7C,MAAM,EAAE,qBAAqB;IAC7B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACvC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACxC,UAAU,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC9B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACtC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACvC,QAAQ,EAAE,cAAc;CACxB,CAAC,CAAC"}
@@ -0,0 +1,66 @@
1
+ import { z } from 'zod';
2
+ export declare const operationCode: "finance.merchantPayment.create";
3
+ export declare const createPaymentInputSchema: z.ZodObject<{
4
+ merchantOrderId: z.ZodString;
5
+ amount: z.ZodObject<{
6
+ currency: z.ZodDefault<z.ZodString>;
7
+ amountMinor: z.ZodNumber;
8
+ }, z.core.$strip>;
9
+ description: z.ZodOptional<z.ZodString>;
10
+ customer: z.ZodOptional<z.ZodObject<{
11
+ customerId: z.ZodOptional<z.ZodString>;
12
+ name: z.ZodOptional<z.ZodString>;
13
+ email: z.ZodOptional<z.ZodEmail>;
14
+ phone: z.ZodOptional<z.ZodString>;
15
+ }, z.core.$strip>>;
16
+ allowedPaymentMethods: z.ZodDefault<z.ZodArray<z.ZodEnum<{
17
+ unknown: "unknown";
18
+ card: "card";
19
+ sbpQr: "sbpQr";
20
+ tpay: "tpay";
21
+ sberpay: "sberpay";
22
+ }>>>;
23
+ payType: z.ZodDefault<z.ZodEnum<{
24
+ oneStage: "oneStage";
25
+ twoStage: "twoStage";
26
+ }>>;
27
+ expiresAt: z.ZodOptional<z.ZodString>;
28
+ notificationUrl: z.ZodOptional<z.ZodURL>;
29
+ successUrl: z.ZodOptional<z.ZodURL>;
30
+ failUrl: z.ZodOptional<z.ZodURL>;
31
+ idempotencyKey: z.ZodOptional<z.ZodString>;
32
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
33
+ }, z.core.$strip>;
34
+ export declare const createPaymentResultSchema: z.ZodObject<{
35
+ operationCode: z.ZodLiteral<"finance.merchantPayment.create">;
36
+ accessModeUsed: z.ZodEnum<{
37
+ authorized: "authorized";
38
+ }>;
39
+ providerCode: z.ZodString;
40
+ providerPaymentId: z.ZodString;
41
+ merchantOrderId: z.ZodString;
42
+ amount: z.ZodObject<{
43
+ amountMinor: z.ZodNumber;
44
+ currency: z.ZodDefault<z.ZodString>;
45
+ }, z.core.$strip>;
46
+ status: z.ZodEnum<{
47
+ authorized: "authorized";
48
+ unknown: "unknown";
49
+ created: "created";
50
+ pending: "pending";
51
+ confirmed: "confirmed";
52
+ paid: "paid";
53
+ cancelled: "cancelled";
54
+ refunded: "refunded";
55
+ partiallyRefunded: "partiallyRefunded";
56
+ expired: "expired";
57
+ failed: "failed";
58
+ }>;
59
+ paymentUrl: z.ZodOptional<z.ZodURL>;
60
+ expiresAt: z.ZodOptional<z.ZodString>;
61
+ rawStatus: z.ZodOptional<z.ZodString>;
62
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
63
+ }, z.core.$strip>;
64
+ export type CreatePaymentInput = z.infer<typeof createPaymentInputSchema>;
65
+ export type CreatePaymentResult = z.infer<typeof createPaymentResultSchema>;
66
+ //# sourceMappingURL=create-payment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-payment.d.ts","sourceRoot":"","sources":["../../src/finance/create-payment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAUxB,eAAO,MAAM,aAAa,EAAG,gCAAyC,CAAC;AAEvE,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAenC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAYpC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC"}