@voyantjs/finance 0.2.0 → 0.3.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.
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/routes-public.d.ts +476 -0
- package/dist/routes-public.d.ts.map +1 -0
- package/dist/routes-public.js +56 -0
- package/dist/routes-shared.d.ts +12 -0
- package/dist/routes-shared.d.ts.map +1 -0
- package/dist/routes-shared.js +3 -0
- package/dist/routes.d.ts +207 -161
- package/dist/routes.d.ts.map +1 -1
- package/dist/routes.js +40 -1
- package/dist/schema.d.ts +17 -17
- package/dist/service-public.d.ts +250 -0
- package/dist/service-public.d.ts.map +1 -0
- package/dist/service-public.js +366 -0
- package/dist/service.d.ts +175 -181
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +52 -10
- package/dist/validation-billing.d.ts +478 -0
- package/dist/validation-billing.d.ts.map +1 -0
- package/dist/validation-billing.js +219 -0
- package/dist/validation-payments.d.ts +840 -0
- package/dist/validation-payments.d.ts.map +1 -0
- package/dist/validation-payments.js +301 -0
- package/dist/validation-public.d.ts +374 -0
- package/dist/validation-public.d.ts.map +1 -0
- package/dist/validation-public.js +166 -0
- package/dist/validation-shared.d.ts +159 -0
- package/dist/validation-shared.d.ts.map +1 -0
- package/dist/validation-shared.js +131 -0
- package/dist/validation.d.ts +4 -1315
- package/dist/validation.d.ts.map +1 -1
- package/dist/validation.js +4 -657
- package/package.json +13 -5
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { paymentInstrumentStatusSchema, paymentInstrumentTypeSchema, paymentMethodSchema, paymentScheduleStatusSchema, paymentScheduleTypeSchema, paymentSessionStatusSchema, paymentSessionTargetTypeSchema, } from "./validation-shared.js";
|
|
3
|
+
export const publicFinanceInvoiceTypeSchema = z.enum(["invoice", "proforma", "credit_note"]);
|
|
4
|
+
export const publicFinanceDocumentAvailabilitySchema = z.enum([
|
|
5
|
+
"missing",
|
|
6
|
+
"pending",
|
|
7
|
+
"ready",
|
|
8
|
+
"failed",
|
|
9
|
+
"stale",
|
|
10
|
+
]);
|
|
11
|
+
export const publicFinanceDocumentFormatSchema = z.enum(["html", "pdf", "xml", "json"]);
|
|
12
|
+
export const publicPaymentOptionsQuerySchema = z.object({
|
|
13
|
+
personId: z.string().optional(),
|
|
14
|
+
organizationId: z.string().optional(),
|
|
15
|
+
provider: z.string().optional(),
|
|
16
|
+
instrumentType: paymentInstrumentTypeSchema.optional(),
|
|
17
|
+
includeInactive: z.coerce.boolean().default(false),
|
|
18
|
+
});
|
|
19
|
+
export const publicStartPaymentSessionSchema = z.object({
|
|
20
|
+
provider: z.string().max(255).optional().nullable(),
|
|
21
|
+
paymentMethod: paymentMethodSchema.optional().nullable(),
|
|
22
|
+
paymentInstrumentId: z.string().optional().nullable(),
|
|
23
|
+
payerPersonId: z.string().optional().nullable(),
|
|
24
|
+
payerOrganizationId: z.string().optional().nullable(),
|
|
25
|
+
payerEmail: z.string().email().optional().nullable(),
|
|
26
|
+
payerName: z.string().max(255).optional().nullable(),
|
|
27
|
+
externalReference: z.string().max(255).optional().nullable(),
|
|
28
|
+
idempotencyKey: z.string().max(255).optional().nullable(),
|
|
29
|
+
clientReference: z.string().max(255).optional().nullable(),
|
|
30
|
+
returnUrl: z.string().url().optional().nullable(),
|
|
31
|
+
cancelUrl: z.string().url().optional().nullable(),
|
|
32
|
+
callbackUrl: z.string().url().optional().nullable(),
|
|
33
|
+
expiresAt: z.string().optional().nullable(),
|
|
34
|
+
notes: z.string().optional().nullable(),
|
|
35
|
+
providerPayload: z.record(z.string(), z.unknown()).optional().nullable(),
|
|
36
|
+
metadata: z.record(z.string(), z.unknown()).optional().nullable(),
|
|
37
|
+
});
|
|
38
|
+
export const publicValidateVoucherSchema = z.object({
|
|
39
|
+
code: z.string().min(1).max(255),
|
|
40
|
+
provider: z.string().max(255).optional().nullable(),
|
|
41
|
+
bookingId: z.string().optional().nullable(),
|
|
42
|
+
currency: z.string().min(3).max(3).optional().nullable(),
|
|
43
|
+
amountCents: z.number().int().min(1).optional().nullable(),
|
|
44
|
+
});
|
|
45
|
+
export const publicPaymentAccountSchema = z.object({
|
|
46
|
+
id: z.string(),
|
|
47
|
+
label: z.string(),
|
|
48
|
+
provider: z.string().nullable(),
|
|
49
|
+
instrumentType: paymentInstrumentTypeSchema,
|
|
50
|
+
status: paymentInstrumentStatusSchema,
|
|
51
|
+
brand: z.string().nullable(),
|
|
52
|
+
last4: z.string().nullable(),
|
|
53
|
+
expiryMonth: z.number().int().nullable(),
|
|
54
|
+
expiryYear: z.number().int().nullable(),
|
|
55
|
+
isDefault: z.boolean(),
|
|
56
|
+
});
|
|
57
|
+
export const publicBookingPaymentScheduleSchema = z.object({
|
|
58
|
+
id: z.string(),
|
|
59
|
+
scheduleType: paymentScheduleTypeSchema,
|
|
60
|
+
status: paymentScheduleStatusSchema,
|
|
61
|
+
dueDate: z.string(),
|
|
62
|
+
currency: z.string(),
|
|
63
|
+
amountCents: z.number().int(),
|
|
64
|
+
notes: z.string().nullable(),
|
|
65
|
+
});
|
|
66
|
+
export const publicBookingGuaranteeSchema = z.object({
|
|
67
|
+
id: z.string(),
|
|
68
|
+
bookingPaymentScheduleId: z.string().nullable(),
|
|
69
|
+
guaranteeType: z.string(),
|
|
70
|
+
status: z.string(),
|
|
71
|
+
currency: z.string().nullable(),
|
|
72
|
+
amountCents: z.number().int().nullable(),
|
|
73
|
+
provider: z.string().nullable(),
|
|
74
|
+
referenceNumber: z.string().nullable(),
|
|
75
|
+
expiresAt: z.string().nullable(),
|
|
76
|
+
notes: z.string().nullable(),
|
|
77
|
+
});
|
|
78
|
+
export const publicBookingPaymentOptionsSchema = z.object({
|
|
79
|
+
bookingId: z.string(),
|
|
80
|
+
accounts: z.array(publicPaymentAccountSchema),
|
|
81
|
+
schedules: z.array(publicBookingPaymentScheduleSchema),
|
|
82
|
+
guarantees: z.array(publicBookingGuaranteeSchema),
|
|
83
|
+
recommendedTarget: z
|
|
84
|
+
.object({
|
|
85
|
+
targetType: z.enum(["booking_payment_schedule", "booking_guarantee"]).nullable(),
|
|
86
|
+
targetId: z.string().nullable(),
|
|
87
|
+
})
|
|
88
|
+
.nullable(),
|
|
89
|
+
});
|
|
90
|
+
export const publicPaymentSessionSchema = z.object({
|
|
91
|
+
id: z.string(),
|
|
92
|
+
targetType: paymentSessionTargetTypeSchema,
|
|
93
|
+
targetId: z.string().nullable(),
|
|
94
|
+
bookingId: z.string().nullable(),
|
|
95
|
+
invoiceId: z.string().nullable(),
|
|
96
|
+
bookingPaymentScheduleId: z.string().nullable(),
|
|
97
|
+
bookingGuaranteeId: z.string().nullable(),
|
|
98
|
+
status: paymentSessionStatusSchema,
|
|
99
|
+
provider: z.string().nullable(),
|
|
100
|
+
providerSessionId: z.string().nullable(),
|
|
101
|
+
providerPaymentId: z.string().nullable(),
|
|
102
|
+
externalReference: z.string().nullable(),
|
|
103
|
+
clientReference: z.string().nullable(),
|
|
104
|
+
currency: z.string(),
|
|
105
|
+
amountCents: z.number().int(),
|
|
106
|
+
paymentMethod: paymentMethodSchema.nullable(),
|
|
107
|
+
payerEmail: z.string().nullable(),
|
|
108
|
+
payerName: z.string().nullable(),
|
|
109
|
+
redirectUrl: z.string().nullable(),
|
|
110
|
+
returnUrl: z.string().nullable(),
|
|
111
|
+
cancelUrl: z.string().nullable(),
|
|
112
|
+
expiresAt: z.string().nullable(),
|
|
113
|
+
completedAt: z.string().nullable(),
|
|
114
|
+
failureCode: z.string().nullable(),
|
|
115
|
+
failureMessage: z.string().nullable(),
|
|
116
|
+
});
|
|
117
|
+
export const publicFinanceBookingDocumentSchema = z.object({
|
|
118
|
+
invoiceId: z.string(),
|
|
119
|
+
invoiceNumber: z.string(),
|
|
120
|
+
invoiceType: publicFinanceInvoiceTypeSchema,
|
|
121
|
+
invoiceStatus: z.enum(["draft", "sent", "partially_paid", "paid", "overdue", "void"]),
|
|
122
|
+
currency: z.string(),
|
|
123
|
+
totalCents: z.number().int(),
|
|
124
|
+
paidCents: z.number().int(),
|
|
125
|
+
balanceDueCents: z.number().int(),
|
|
126
|
+
issueDate: z.string(),
|
|
127
|
+
dueDate: z.string(),
|
|
128
|
+
renditionId: z.string().nullable(),
|
|
129
|
+
documentStatus: publicFinanceDocumentAvailabilitySchema,
|
|
130
|
+
format: publicFinanceDocumentFormatSchema.nullable(),
|
|
131
|
+
language: z.string().nullable(),
|
|
132
|
+
generatedAt: z.string().nullable(),
|
|
133
|
+
fileSize: z.number().int().nullable(),
|
|
134
|
+
checksum: z.string().nullable(),
|
|
135
|
+
downloadUrl: z.string().nullable(),
|
|
136
|
+
});
|
|
137
|
+
export const publicBookingFinanceDocumentsSchema = z.object({
|
|
138
|
+
bookingId: z.string(),
|
|
139
|
+
documents: z.array(publicFinanceBookingDocumentSchema),
|
|
140
|
+
});
|
|
141
|
+
export const publicVoucherValidationSchema = z.object({
|
|
142
|
+
valid: z.boolean(),
|
|
143
|
+
reason: z
|
|
144
|
+
.enum([
|
|
145
|
+
"not_found",
|
|
146
|
+
"inactive",
|
|
147
|
+
"not_started",
|
|
148
|
+
"expired",
|
|
149
|
+
"booking_mismatch",
|
|
150
|
+
"currency_mismatch",
|
|
151
|
+
"insufficient_balance",
|
|
152
|
+
])
|
|
153
|
+
.nullable(),
|
|
154
|
+
voucher: z
|
|
155
|
+
.object({
|
|
156
|
+
id: z.string(),
|
|
157
|
+
code: z.string(),
|
|
158
|
+
label: z.string(),
|
|
159
|
+
provider: z.string().nullable(),
|
|
160
|
+
currency: z.string().nullable(),
|
|
161
|
+
amountCents: z.number().int().nullable(),
|
|
162
|
+
remainingAmountCents: z.number().int().nullable(),
|
|
163
|
+
expiresAt: z.string().nullable(),
|
|
164
|
+
})
|
|
165
|
+
.nullable(),
|
|
166
|
+
});
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const invoiceStatusSchema: z.ZodEnum<{
|
|
3
|
+
draft: "draft";
|
|
4
|
+
sent: "sent";
|
|
5
|
+
partially_paid: "partially_paid";
|
|
6
|
+
paid: "paid";
|
|
7
|
+
overdue: "overdue";
|
|
8
|
+
void: "void";
|
|
9
|
+
}>;
|
|
10
|
+
export declare const paymentMethodSchema: z.ZodEnum<{
|
|
11
|
+
other: "other";
|
|
12
|
+
voucher: "voucher";
|
|
13
|
+
wallet: "wallet";
|
|
14
|
+
bank_transfer: "bank_transfer";
|
|
15
|
+
credit_card: "credit_card";
|
|
16
|
+
debit_card: "debit_card";
|
|
17
|
+
cash: "cash";
|
|
18
|
+
cheque: "cheque";
|
|
19
|
+
direct_bill: "direct_bill";
|
|
20
|
+
}>;
|
|
21
|
+
export declare const paymentStatusSchema: z.ZodEnum<{
|
|
22
|
+
completed: "completed";
|
|
23
|
+
pending: "pending";
|
|
24
|
+
failed: "failed";
|
|
25
|
+
refunded: "refunded";
|
|
26
|
+
}>;
|
|
27
|
+
export declare const paymentSessionStatusSchema: z.ZodEnum<{
|
|
28
|
+
expired: "expired";
|
|
29
|
+
cancelled: "cancelled";
|
|
30
|
+
pending: "pending";
|
|
31
|
+
failed: "failed";
|
|
32
|
+
paid: "paid";
|
|
33
|
+
requires_redirect: "requires_redirect";
|
|
34
|
+
processing: "processing";
|
|
35
|
+
authorized: "authorized";
|
|
36
|
+
}>;
|
|
37
|
+
export declare const paymentSessionTargetTypeSchema: z.ZodEnum<{
|
|
38
|
+
other: "other";
|
|
39
|
+
booking: "booking";
|
|
40
|
+
order: "order";
|
|
41
|
+
invoice: "invoice";
|
|
42
|
+
booking_payment_schedule: "booking_payment_schedule";
|
|
43
|
+
booking_guarantee: "booking_guarantee";
|
|
44
|
+
}>;
|
|
45
|
+
export declare const paymentInstrumentTypeSchema: z.ZodEnum<{
|
|
46
|
+
other: "other";
|
|
47
|
+
voucher: "voucher";
|
|
48
|
+
wallet: "wallet";
|
|
49
|
+
credit_card: "credit_card";
|
|
50
|
+
debit_card: "debit_card";
|
|
51
|
+
cash: "cash";
|
|
52
|
+
direct_bill: "direct_bill";
|
|
53
|
+
bank_account: "bank_account";
|
|
54
|
+
}>;
|
|
55
|
+
export declare const paymentInstrumentOwnerTypeSchema: z.ZodEnum<{
|
|
56
|
+
internal: "internal";
|
|
57
|
+
supplier: "supplier";
|
|
58
|
+
other: "other";
|
|
59
|
+
client: "client";
|
|
60
|
+
channel: "channel";
|
|
61
|
+
agency: "agency";
|
|
62
|
+
}>;
|
|
63
|
+
export declare const paymentInstrumentStatusSchema: z.ZodEnum<{
|
|
64
|
+
expired: "expired";
|
|
65
|
+
revoked: "revoked";
|
|
66
|
+
active: "active";
|
|
67
|
+
inactive: "inactive";
|
|
68
|
+
failed_verification: "failed_verification";
|
|
69
|
+
}>;
|
|
70
|
+
export declare const paymentAuthorizationStatusSchema: z.ZodEnum<{
|
|
71
|
+
expired: "expired";
|
|
72
|
+
pending: "pending";
|
|
73
|
+
failed: "failed";
|
|
74
|
+
authorized: "authorized";
|
|
75
|
+
partially_captured: "partially_captured";
|
|
76
|
+
captured: "captured";
|
|
77
|
+
voided: "voided";
|
|
78
|
+
}>;
|
|
79
|
+
export declare const paymentCaptureStatusSchema: z.ZodEnum<{
|
|
80
|
+
completed: "completed";
|
|
81
|
+
pending: "pending";
|
|
82
|
+
failed: "failed";
|
|
83
|
+
refunded: "refunded";
|
|
84
|
+
voided: "voided";
|
|
85
|
+
}>;
|
|
86
|
+
export declare const captureModeSchema: z.ZodEnum<{
|
|
87
|
+
manual: "manual";
|
|
88
|
+
automatic: "automatic";
|
|
89
|
+
}>;
|
|
90
|
+
export declare const creditNoteStatusSchema: z.ZodEnum<{
|
|
91
|
+
draft: "draft";
|
|
92
|
+
issued: "issued";
|
|
93
|
+
applied: "applied";
|
|
94
|
+
}>;
|
|
95
|
+
export declare const paymentScheduleTypeSchema: z.ZodEnum<{
|
|
96
|
+
other: "other";
|
|
97
|
+
deposit: "deposit";
|
|
98
|
+
installment: "installment";
|
|
99
|
+
balance: "balance";
|
|
100
|
+
hold: "hold";
|
|
101
|
+
}>;
|
|
102
|
+
export declare const paymentScheduleStatusSchema: z.ZodEnum<{
|
|
103
|
+
expired: "expired";
|
|
104
|
+
cancelled: "cancelled";
|
|
105
|
+
pending: "pending";
|
|
106
|
+
paid: "paid";
|
|
107
|
+
due: "due";
|
|
108
|
+
waived: "waived";
|
|
109
|
+
}>;
|
|
110
|
+
export declare const guaranteeTypeSchema: z.ZodEnum<{
|
|
111
|
+
other: "other";
|
|
112
|
+
voucher: "voucher";
|
|
113
|
+
bank_transfer: "bank_transfer";
|
|
114
|
+
credit_card: "credit_card";
|
|
115
|
+
deposit: "deposit";
|
|
116
|
+
preauth: "preauth";
|
|
117
|
+
card_on_file: "card_on_file";
|
|
118
|
+
agency_letter: "agency_letter";
|
|
119
|
+
}>;
|
|
120
|
+
export declare const guaranteeStatusSchema: z.ZodEnum<{
|
|
121
|
+
expired: "expired";
|
|
122
|
+
cancelled: "cancelled";
|
|
123
|
+
pending: "pending";
|
|
124
|
+
released: "released";
|
|
125
|
+
failed: "failed";
|
|
126
|
+
active: "active";
|
|
127
|
+
}>;
|
|
128
|
+
export declare const taxScopeSchema: z.ZodEnum<{
|
|
129
|
+
included: "included";
|
|
130
|
+
excluded: "excluded";
|
|
131
|
+
withheld: "withheld";
|
|
132
|
+
}>;
|
|
133
|
+
export declare const commissionRecipientTypeSchema: z.ZodEnum<{
|
|
134
|
+
internal: "internal";
|
|
135
|
+
supplier: "supplier";
|
|
136
|
+
other: "other";
|
|
137
|
+
affiliate: "affiliate";
|
|
138
|
+
channel: "channel";
|
|
139
|
+
agency: "agency";
|
|
140
|
+
agent: "agent";
|
|
141
|
+
}>;
|
|
142
|
+
export declare const commissionModelSchema: z.ZodEnum<{
|
|
143
|
+
fixed: "fixed";
|
|
144
|
+
percentage: "percentage";
|
|
145
|
+
markup: "markup";
|
|
146
|
+
net: "net";
|
|
147
|
+
}>;
|
|
148
|
+
export declare const commissionStatusSchema: z.ZodEnum<{
|
|
149
|
+
pending: "pending";
|
|
150
|
+
paid: "paid";
|
|
151
|
+
void: "void";
|
|
152
|
+
accrued: "accrued";
|
|
153
|
+
payable: "payable";
|
|
154
|
+
}>;
|
|
155
|
+
export declare const paginationSchema: z.ZodObject<{
|
|
156
|
+
limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
157
|
+
offset: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
158
|
+
}, z.core.$strip>;
|
|
159
|
+
//# sourceMappingURL=validation-shared.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation-shared.d.ts","sourceRoot":"","sources":["../src/validation-shared.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,mBAAmB;;;;;;;EAO9B,CAAA;AACF,eAAO,MAAM,mBAAmB;;;;;;;;;;EAU9B,CAAA;AACF,eAAO,MAAM,mBAAmB;;;;;EAAyD,CAAA;AACzF,eAAO,MAAM,0BAA0B;;;;;;;;;EASrC,CAAA;AACF,eAAO,MAAM,8BAA8B;;;;;;;EAOzC,CAAA;AACF,eAAO,MAAM,2BAA2B;;;;;;;;;EAStC,CAAA;AACF,eAAO,MAAM,gCAAgC;;;;;;;EAO3C,CAAA;AACF,eAAO,MAAM,6BAA6B;;;;;;EAMxC,CAAA;AACF,eAAO,MAAM,gCAAgC;;;;;;;;EAQ3C,CAAA;AACF,eAAO,MAAM,0BAA0B;;;;;;EAMrC,CAAA;AACF,eAAO,MAAM,iBAAiB;;;EAAkC,CAAA;AAChE,eAAO,MAAM,sBAAsB;;;;EAAyC,CAAA;AAC5E,eAAO,MAAM,yBAAyB;;;;;;EAMpC,CAAA;AACF,eAAO,MAAM,2BAA2B;;;;;;;EAOtC,CAAA;AACF,eAAO,MAAM,mBAAmB;;;;;;;;;EAS9B,CAAA;AACF,eAAO,MAAM,qBAAqB;;;;;;;EAOhC,CAAA;AACF,eAAO,MAAM,cAAc;;;;EAA+C,CAAA;AAC1E,eAAO,MAAM,6BAA6B;;;;;;;;EAQxC,CAAA;AACF,eAAO,MAAM,qBAAqB;;;;;EAAmD,CAAA;AACrF,eAAO,MAAM,sBAAsB;;;;;;EAA4D,CAAA;AAE/F,eAAO,MAAM,gBAAgB;;;iBAG3B,CAAA"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export const invoiceStatusSchema = z.enum([
|
|
3
|
+
"draft",
|
|
4
|
+
"sent",
|
|
5
|
+
"partially_paid",
|
|
6
|
+
"paid",
|
|
7
|
+
"overdue",
|
|
8
|
+
"void",
|
|
9
|
+
]);
|
|
10
|
+
export const paymentMethodSchema = z.enum([
|
|
11
|
+
"bank_transfer",
|
|
12
|
+
"credit_card",
|
|
13
|
+
"debit_card",
|
|
14
|
+
"cash",
|
|
15
|
+
"cheque",
|
|
16
|
+
"wallet",
|
|
17
|
+
"direct_bill",
|
|
18
|
+
"voucher",
|
|
19
|
+
"other",
|
|
20
|
+
]);
|
|
21
|
+
export const paymentStatusSchema = z.enum(["pending", "completed", "failed", "refunded"]);
|
|
22
|
+
export const paymentSessionStatusSchema = z.enum([
|
|
23
|
+
"pending",
|
|
24
|
+
"requires_redirect",
|
|
25
|
+
"processing",
|
|
26
|
+
"authorized",
|
|
27
|
+
"paid",
|
|
28
|
+
"failed",
|
|
29
|
+
"cancelled",
|
|
30
|
+
"expired",
|
|
31
|
+
]);
|
|
32
|
+
export const paymentSessionTargetTypeSchema = z.enum([
|
|
33
|
+
"booking",
|
|
34
|
+
"order",
|
|
35
|
+
"invoice",
|
|
36
|
+
"booking_payment_schedule",
|
|
37
|
+
"booking_guarantee",
|
|
38
|
+
"other",
|
|
39
|
+
]);
|
|
40
|
+
export const paymentInstrumentTypeSchema = z.enum([
|
|
41
|
+
"credit_card",
|
|
42
|
+
"debit_card",
|
|
43
|
+
"bank_account",
|
|
44
|
+
"wallet",
|
|
45
|
+
"voucher",
|
|
46
|
+
"direct_bill",
|
|
47
|
+
"cash",
|
|
48
|
+
"other",
|
|
49
|
+
]);
|
|
50
|
+
export const paymentInstrumentOwnerTypeSchema = z.enum([
|
|
51
|
+
"client",
|
|
52
|
+
"supplier",
|
|
53
|
+
"channel",
|
|
54
|
+
"agency",
|
|
55
|
+
"internal",
|
|
56
|
+
"other",
|
|
57
|
+
]);
|
|
58
|
+
export const paymentInstrumentStatusSchema = z.enum([
|
|
59
|
+
"active",
|
|
60
|
+
"inactive",
|
|
61
|
+
"expired",
|
|
62
|
+
"revoked",
|
|
63
|
+
"failed_verification",
|
|
64
|
+
]);
|
|
65
|
+
export const paymentAuthorizationStatusSchema = z.enum([
|
|
66
|
+
"pending",
|
|
67
|
+
"authorized",
|
|
68
|
+
"partially_captured",
|
|
69
|
+
"captured",
|
|
70
|
+
"voided",
|
|
71
|
+
"failed",
|
|
72
|
+
"expired",
|
|
73
|
+
]);
|
|
74
|
+
export const paymentCaptureStatusSchema = z.enum([
|
|
75
|
+
"pending",
|
|
76
|
+
"completed",
|
|
77
|
+
"failed",
|
|
78
|
+
"refunded",
|
|
79
|
+
"voided",
|
|
80
|
+
]);
|
|
81
|
+
export const captureModeSchema = z.enum(["automatic", "manual"]);
|
|
82
|
+
export const creditNoteStatusSchema = z.enum(["draft", "issued", "applied"]);
|
|
83
|
+
export const paymentScheduleTypeSchema = z.enum([
|
|
84
|
+
"deposit",
|
|
85
|
+
"installment",
|
|
86
|
+
"balance",
|
|
87
|
+
"hold",
|
|
88
|
+
"other",
|
|
89
|
+
]);
|
|
90
|
+
export const paymentScheduleStatusSchema = z.enum([
|
|
91
|
+
"pending",
|
|
92
|
+
"due",
|
|
93
|
+
"paid",
|
|
94
|
+
"waived",
|
|
95
|
+
"cancelled",
|
|
96
|
+
"expired",
|
|
97
|
+
]);
|
|
98
|
+
export const guaranteeTypeSchema = z.enum([
|
|
99
|
+
"deposit",
|
|
100
|
+
"credit_card",
|
|
101
|
+
"preauth",
|
|
102
|
+
"card_on_file",
|
|
103
|
+
"bank_transfer",
|
|
104
|
+
"voucher",
|
|
105
|
+
"agency_letter",
|
|
106
|
+
"other",
|
|
107
|
+
]);
|
|
108
|
+
export const guaranteeStatusSchema = z.enum([
|
|
109
|
+
"pending",
|
|
110
|
+
"active",
|
|
111
|
+
"released",
|
|
112
|
+
"failed",
|
|
113
|
+
"cancelled",
|
|
114
|
+
"expired",
|
|
115
|
+
]);
|
|
116
|
+
export const taxScopeSchema = z.enum(["included", "excluded", "withheld"]);
|
|
117
|
+
export const commissionRecipientTypeSchema = z.enum([
|
|
118
|
+
"channel",
|
|
119
|
+
"affiliate",
|
|
120
|
+
"agency",
|
|
121
|
+
"agent",
|
|
122
|
+
"internal",
|
|
123
|
+
"supplier",
|
|
124
|
+
"other",
|
|
125
|
+
]);
|
|
126
|
+
export const commissionModelSchema = z.enum(["percentage", "fixed", "markup", "net"]);
|
|
127
|
+
export const commissionStatusSchema = z.enum(["pending", "accrued", "payable", "paid", "void"]);
|
|
128
|
+
export const paginationSchema = z.object({
|
|
129
|
+
limit: z.coerce.number().int().min(1).max(100).default(50),
|
|
130
|
+
offset: z.coerce.number().int().min(0).default(0),
|
|
131
|
+
});
|