@factucat/cli 0.2.6 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +83 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +257 -12
- package/dist/index.js.map +1 -1
- package/dist/lib/errors.js +1 -1
- package/package.json +8 -7
package/README.md
CHANGED
|
@@ -127,6 +127,16 @@ If you switch the invoice to USD without specifying an exchange rate, FactuCat a
|
|
|
127
127
|
factucat invoice set-meta --currency USD
|
|
128
128
|
```
|
|
129
129
|
|
|
130
|
+
Set an optional **Fecha de emisión** when creating, updating, or stamping a draft:
|
|
131
|
+
|
|
132
|
+
```bash
|
|
133
|
+
factucat invoice create --fecha 2026-10-28
|
|
134
|
+
factucat invoice set-meta --issued-at 2026-10-28
|
|
135
|
+
factucat invoice stamp --fecha 2026-10-28 --dry-run
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
`--fecha` and `--issued-at` accept `YYYY-MM-DD` or an ISO datetime. ISO instants use the issuer's timezone (default `America/Mexico_City`); dates without an offset represent a local calendar day. Choose today or up to two days earlier to stay within the SAT 72-hour window. A stamp override is saved before stamping. Stored dates are checked again at stamp time; an expired or invalid date returns `INVALID_ISSUE_DATE`. Omission keeps the existing date, or uses the stamping time when none is set. Dry-run shows the selected date without saving it.
|
|
139
|
+
|
|
130
140
|
Preview the full invoice before stamping:
|
|
131
141
|
|
|
132
142
|
```bash
|
|
@@ -141,6 +151,15 @@ factucat invoice stamp
|
|
|
141
151
|
|
|
142
152
|
In an interactive terminal, `invoice stamp` shows the full preview first and can ask whether you want to send the stamped invoice through the customer contact channels registered in FactuCat.
|
|
143
153
|
|
|
154
|
+
Preview without stamping or changing the current draft:
|
|
155
|
+
|
|
156
|
+
```bash
|
|
157
|
+
factucat invoice-stamp --draft-id dft_123 --dry-run
|
|
158
|
+
factucat invoice-stamp --draft-id dft_123 --dry-run --json
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
The preview includes the environment selected by the key prefix (`test` or `live`) and the idempotency key.
|
|
162
|
+
|
|
144
163
|
## Unattended workflow
|
|
145
164
|
|
|
146
165
|
For agents and scripts, prefer `--json` and `--no-input`.
|
|
@@ -194,12 +213,18 @@ Preview the draft:
|
|
|
194
213
|
factucat invoice show --draft-id dft_123 --json
|
|
195
214
|
```
|
|
196
215
|
|
|
197
|
-
Stamp
|
|
216
|
+
Stamp with explicit confirmation and a reusable idempotency key:
|
|
198
217
|
|
|
199
218
|
```bash
|
|
200
|
-
factucat invoice
|
|
219
|
+
factucat invoice-stamp --draft-id dft_123 --yes --idempotency-key order-123-stamp --json
|
|
201
220
|
```
|
|
202
221
|
|
|
222
|
+
`--yes` skips confirmation and delivery prompts. The existing `--no-input`, `--json`, and non-interactive stamping behavior remains supported. Delivery uses the flags you provide.
|
|
223
|
+
|
|
224
|
+
`invoice-stamp` returns `idempotencyKey` alongside the invoice fields in JSON and prints it in human output. Failed stamp/cancel requests also print the key so you can reuse it. If omitted, the CLI generates a UUID once per invocation, which the SDK reuses for transport retries. To retry across separate CLI invocations, pass the **same key and request options** with `--idempotency-key`.
|
|
225
|
+
|
|
226
|
+
`customer-create`, `invoice-create`, and `invoice-add-item` also accept `--idempotency-key`; each generates a fresh UUID when omitted.
|
|
227
|
+
|
|
203
228
|
Stamp and request delivery to customer contacts:
|
|
204
229
|
|
|
205
230
|
```bash
|
|
@@ -223,6 +248,15 @@ factucat invoice stamp \
|
|
|
223
248
|
|
|
224
249
|
## Current draft helpers
|
|
225
250
|
|
|
251
|
+
List remote drafts:
|
|
252
|
+
|
|
253
|
+
```bash
|
|
254
|
+
factucat draft-list --query "Público" --limit 20 --offset 0 --json
|
|
255
|
+
factucat draft-list --status error --limit 10 --json
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
`draft-list` has no spaced alias. `--status` accepts `draft` or `error`. The CLI filters status locally across API pages before applying `--offset` and `--limit` (default 50 when filtering by status). A status filter can therefore require multiple read requests.
|
|
259
|
+
|
|
226
260
|
Select an existing draft as your current one:
|
|
227
261
|
|
|
228
262
|
```bash
|
|
@@ -255,6 +289,13 @@ List customers:
|
|
|
255
289
|
factucat customer list --limit 20
|
|
256
290
|
```
|
|
257
291
|
|
|
292
|
+
Get a customer by ID:
|
|
293
|
+
|
|
294
|
+
```bash
|
|
295
|
+
factucat customer-get cus_123 --json
|
|
296
|
+
factucat customer get cus_123
|
|
297
|
+
```
|
|
298
|
+
|
|
258
299
|
Create a customer:
|
|
259
300
|
|
|
260
301
|
```bash
|
|
@@ -297,6 +338,46 @@ factucat invoice download pdf MIAU-00036 --output ./facturas/factura-marzo.pdf
|
|
|
297
338
|
|
|
298
339
|
If you do not pass `--output`, the file is saved in the current working directory.
|
|
299
340
|
|
|
341
|
+
## Cancel an invoice
|
|
342
|
+
|
|
343
|
+
`invoice-cancel <invoiceRef>` (also `invoice cancel`) accepts an invoice ID, SAT UUID, or folio, just like `invoice-get`. Only issued invoices with a SAT UUID can be cancelled.
|
|
344
|
+
|
|
345
|
+
Review a cancellation without submitting it:
|
|
346
|
+
|
|
347
|
+
```bash
|
|
348
|
+
factucat invoice-cancel MIAU-00036 --reason 02 --dry-run
|
|
349
|
+
factucat invoice-cancel MIAU-00036 --reason 02 --dry-run --json
|
|
350
|
+
```
|
|
351
|
+
|
|
352
|
+
The preview shows the SAT UUID, receiver RFC and name, total, currency, reason, replacement invoice if provided, key environment (`test`/`live`), and idempotency key. A dry run performs reads only, never prompts, and exits successfully when the inputs are valid.
|
|
353
|
+
|
|
354
|
+
Cancel interactively:
|
|
355
|
+
|
|
356
|
+
```bash
|
|
357
|
+
factucat invoice-cancel MIAU-00036 --reason 02
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
The CLI shows the same preview and asks for confirmation. In scripts, with `--json`, or with `--no-input`, cancellation requires **`--yes`**. `--no-input` alone does not authorize cancellation.
|
|
361
|
+
|
|
362
|
+
```bash
|
|
363
|
+
factucat invoice-cancel MIAU-00036 \
|
|
364
|
+
--reason 02 \
|
|
365
|
+
--yes \
|
|
366
|
+
--idempotency-key order-123-cancel \
|
|
367
|
+
--json
|
|
368
|
+
```
|
|
369
|
+
|
|
370
|
+
`--reason` is required and accepts `01`, `02`, `03`, or `04`. Reason `01` additionally requires a different replacement invoice, resolved by ID, SAT UUID, or folio:
|
|
371
|
+
|
|
372
|
+
```bash
|
|
373
|
+
factucat invoice-cancel MIAU-00036 \
|
|
374
|
+
--reason 01 \
|
|
375
|
+
--replacement-invoice MIAU-00037 \
|
|
376
|
+
--dry-run
|
|
377
|
+
```
|
|
378
|
+
|
|
379
|
+
JSON output includes the API result (`status`, `evidence`, and `invoice` when present) and `idempotencyKey`. A `not_confirmed` status means cancellation has not yet been confirmed.
|
|
380
|
+
|
|
300
381
|
## Notes about inference
|
|
301
382
|
|
|
302
383
|
FactuCat automatically infers several values when possible:
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAwBA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAyNrC,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,MAAM,sBAsBzE;AAED,wBAAgB,kCAAkC,CAChD,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EACnB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,OAAO,EACtB,KAAK,EAAE,MAAM,sBAMd;AAuGD,wBAAsB,uBAAuB,CAAC,KAAK,EAAE;IACnD,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC,CAAA;IACvC,UAAU,EAAE,MAAM,CAAA;CACnB,mBA0EA;AAuZD,wBAAsB,IAAI,CAAC,OAAO,GAAE,KAAK,CAAC,MAAM,CAAgB,iBAwkC/D"}
|
package/dist/index.js
CHANGED
|
@@ -3,6 +3,7 @@ import { readFileSync } from 'node:fs';
|
|
|
3
3
|
import { mkdir, stat, writeFile } from 'node:fs/promises';
|
|
4
4
|
import { dirname, resolve } from 'node:path';
|
|
5
5
|
import { fileURLToPath } from 'node:url';
|
|
6
|
+
import { draftListItemSchema, draftListQuerySchema, invoiceCancelReasonSchema, invoiceVatTreatmentLabels, invoiceVatTreatmentSchema, } from '@factucat/public-api-contracts';
|
|
6
7
|
import { confirm, intro, isCancel, outro, select, spinner, text } from '@clack/prompts';
|
|
7
8
|
import { cac } from 'cac';
|
|
8
9
|
import { FactuCatApiError } from '@factucat/sdk';
|
|
@@ -36,6 +37,7 @@ Comandos:
|
|
|
36
37
|
invoice current
|
|
37
38
|
invoice show
|
|
38
39
|
invoice list
|
|
40
|
+
draft-list
|
|
39
41
|
invoice set-customer
|
|
40
42
|
invoice set-receiver
|
|
41
43
|
invoice set-meta
|
|
@@ -46,9 +48,11 @@ Comandos:
|
|
|
46
48
|
invoice discard
|
|
47
49
|
invoice stamp
|
|
48
50
|
invoice get <invoiceRef> # invoiceId, UUID SAT o folio
|
|
51
|
+
invoice cancel <invoiceRef> --reason <01|02|03|04>
|
|
49
52
|
invoice download xml <invoiceRef>
|
|
50
53
|
invoice download pdf <invoiceRef>
|
|
51
54
|
customer list
|
|
55
|
+
customer get <customerId>
|
|
52
56
|
customer search <query>
|
|
53
57
|
customer create
|
|
54
58
|
|
|
@@ -56,6 +60,9 @@ Notas:
|
|
|
56
60
|
invoice add-item infiere automáticamente Clave SAT, unidad, IVA e ISR si no los especificas.
|
|
57
61
|
invoice set-meta --currency USD consulta automáticamente el tipo de cambio oficial del DOF si no mandas --exchange-rate.
|
|
58
62
|
invoice stamp muestra una previa antes de timbrar cuando hay terminal interactiva.
|
|
63
|
+
invoice create, invoice set-meta e invoice stamp aceptan --fecha <YYYY-MM-DD|ISO> (alias --issued-at).
|
|
64
|
+
invoice stamp e invoice cancel aceptan --dry-run, --yes e --idempotency-key.
|
|
65
|
+
invoice cancel requiere --yes cuando no hay confirmación interactiva; --no-input no confirma.
|
|
59
66
|
invoice stamp --send-to-customer-contacts solicita el envío por email y WhatsApp registrados en el cliente, si existen.
|
|
60
67
|
`;
|
|
61
68
|
function withJsonFlag(command) {
|
|
@@ -116,9 +123,11 @@ function normalizeArgv(rawArgv) {
|
|
|
116
123
|
{ from: ['invoice', 'discard'], to: 'invoice-discard' },
|
|
117
124
|
{ from: ['invoice', 'stamp'], to: 'invoice-stamp' },
|
|
118
125
|
{ from: ['invoice', 'get'], to: 'invoice-get' },
|
|
126
|
+
{ from: ['invoice', 'cancel'], to: 'invoice-cancel' },
|
|
119
127
|
{ from: ['invoice', 'download', 'xml'], to: 'invoice-download-xml' },
|
|
120
128
|
{ from: ['invoice', 'download', 'pdf'], to: 'invoice-download-pdf' },
|
|
121
129
|
{ from: ['customer', 'list'], to: 'customer-list' },
|
|
130
|
+
{ from: ['customer', 'get'], to: 'customer-get' },
|
|
122
131
|
{ from: ['customer', 'search'], to: 'customer-search' },
|
|
123
132
|
{ from: ['customer', 'create'], to: 'customer-create' },
|
|
124
133
|
];
|
|
@@ -173,7 +182,53 @@ export function normalizeNumericCodeOptionFromArgv(argv, optionName, fallbackVal
|
|
|
173
182
|
return normalizeNumericCodeOption(readRawOptionValue(argv, optionName) ?? fallbackValue, width);
|
|
174
183
|
}
|
|
175
184
|
function canPromptInteractively(options) {
|
|
176
|
-
return !options.json && !options.noInput && process.stdin.isTTY && process.stdout.isTTY;
|
|
185
|
+
return !options.json && !options.noInput && options.input !== false && process.stdin.isTTY && process.stdout.isTTY;
|
|
186
|
+
}
|
|
187
|
+
function resolveIdempotencyKey(argv) {
|
|
188
|
+
const value = readRawOptionValue(argv, '--idempotency-key');
|
|
189
|
+
if (value === undefined) {
|
|
190
|
+
return randomUUID();
|
|
191
|
+
}
|
|
192
|
+
const key = value.trim();
|
|
193
|
+
if (!key || key.length > 255) {
|
|
194
|
+
throw new Error('`--idempotency-key` debe tener entre 1 y 255 caracteres.');
|
|
195
|
+
}
|
|
196
|
+
return key;
|
|
197
|
+
}
|
|
198
|
+
async function getKeyEnvironment() {
|
|
199
|
+
const apiKey = getEffectiveApiKey(await readConfig());
|
|
200
|
+
return apiKey?.startsWith('fc_test_') ? 'test' : 'live';
|
|
201
|
+
}
|
|
202
|
+
async function listDraftsWithStatus(input) {
|
|
203
|
+
const status = draftListItemSchema.shape.status.optional().parse(input.status);
|
|
204
|
+
const query = draftListQuerySchema.parse(input.query);
|
|
205
|
+
if (!status) {
|
|
206
|
+
return input.sdk.listDrafts(query);
|
|
207
|
+
}
|
|
208
|
+
const limit = query.limit ?? 50;
|
|
209
|
+
let skip = query.offset ?? 0;
|
|
210
|
+
const matches = [];
|
|
211
|
+
for (let offset = 0; offset <= 1000000; offset += 100) {
|
|
212
|
+
const page = await input.sdk.listDrafts({
|
|
213
|
+
query: query.query,
|
|
214
|
+
limit: 100,
|
|
215
|
+
offset,
|
|
216
|
+
});
|
|
217
|
+
for (const draft of page) {
|
|
218
|
+
if (draft.status !== status)
|
|
219
|
+
continue;
|
|
220
|
+
if (skip > 0) {
|
|
221
|
+
skip -= 1;
|
|
222
|
+
continue;
|
|
223
|
+
}
|
|
224
|
+
matches.push(draft);
|
|
225
|
+
if (matches.length === limit)
|
|
226
|
+
return matches;
|
|
227
|
+
}
|
|
228
|
+
if (page.length < 100)
|
|
229
|
+
return matches;
|
|
230
|
+
}
|
|
231
|
+
throw new Error('La búsqueda excede el límite de paginación. Usa `--query` para acotarla.');
|
|
177
232
|
}
|
|
178
233
|
async function resolveDownloadPath(input) {
|
|
179
234
|
if (!input.output?.trim()) {
|
|
@@ -312,7 +367,7 @@ function formatDraftItemLine(input) {
|
|
|
312
367
|
const satCode = input.productCode ?? input.suggestedProductCode ?? '-';
|
|
313
368
|
return [
|
|
314
369
|
`${input.id} ${input.quantity} x ${input.description} ${input.amount} ${input.currency}`,
|
|
315
|
-
` SAT: ${satCode} · Unidad: ${input.unitCode} · IVA trasladado: ${formatTaxRateLabel(input.vatRate)} · ISR retenido: ${formatTaxRateLabel(input.isrWithholdingRate)}`,
|
|
370
|
+
` SAT: ${satCode} · Unidad: ${input.unitCode} · IVA trasladado: ${input.vatTreatment ? invoiceVatTreatmentLabels[input.vatTreatment] : formatTaxRateLabel(input.vatRate)} · ISR retenido: ${formatTaxRateLabel(input.isrWithholdingRate)}`,
|
|
316
371
|
];
|
|
317
372
|
}
|
|
318
373
|
function formatIsoDateLabel(value) {
|
|
@@ -329,7 +384,7 @@ function formatPreviewItemLine(input) {
|
|
|
329
384
|
return [
|
|
330
385
|
`${input.index}. ${input.description}`,
|
|
331
386
|
` Cantidad: ${input.quantity} · Precio unitario: ${input.unitPrice} ${input.currency} · Importe: ${input.amount} ${input.currency}`,
|
|
332
|
-
` SAT: ${satCode} · Unidad: ${input.unitCode} · IVA trasladado: ${formatTaxRateLabel(input.vatRate)} · ISR retenido: ${formatTaxRateLabel(input.isrWithholdingRate)}`,
|
|
387
|
+
` SAT: ${satCode} · Unidad: ${input.unitCode} · IVA trasladado: ${input.vatTreatment ? invoiceVatTreatmentLabels[input.vatTreatment] : formatTaxRateLabel(input.vatRate)} · ISR retenido: ${formatTaxRateLabel(input.isrWithholdingRate)}`,
|
|
333
388
|
];
|
|
334
389
|
}
|
|
335
390
|
function formatDraftPreview(draft) {
|
|
@@ -350,6 +405,7 @@ function formatDraftPreview(draft) {
|
|
|
350
405
|
formatOptionalValue(' Correo', draft.receiverEmail),
|
|
351
406
|
'',
|
|
352
407
|
'Comprobante:',
|
|
408
|
+
formatOptionalValue(' Fecha de emisión', draft.issueDate ?? 'Al momento de timbrar'),
|
|
353
409
|
formatOptionalValue(' Tipo CFDI', draft.cfdiType),
|
|
354
410
|
formatOptionalValue(' Uso CFDI', draft.cfdiUse),
|
|
355
411
|
formatOptionalValue(' Exportación', draft.exportacion),
|
|
@@ -373,6 +429,7 @@ function formatDraftPreview(draft) {
|
|
|
373
429
|
productCode: item.productCode,
|
|
374
430
|
suggestedProductCode: item.suggestedProductCode,
|
|
375
431
|
unitCode: item.unitCode,
|
|
432
|
+
vatTreatment: item.vatTreatment,
|
|
376
433
|
vatRate: item.vatRate,
|
|
377
434
|
isrWithholdingRate: item.isrWithholdingRate,
|
|
378
435
|
}))
|
|
@@ -430,7 +487,6 @@ async function loadDraftCustomer(sdk, draft) {
|
|
|
430
487
|
}
|
|
431
488
|
async function resolveInteractiveStampInput(input) {
|
|
432
489
|
const customer = await loadDraftCustomer(input.sdk, input.draft);
|
|
433
|
-
printHuman(formatDraftPreview(input.draft));
|
|
434
490
|
const confirmed = await confirm({
|
|
435
491
|
message: '¿Timbramos esta factura ahora?',
|
|
436
492
|
active: 'Sí, timbrar',
|
|
@@ -551,6 +607,7 @@ export async function main(rawArgv = process.argv) {
|
|
|
551
607
|
}
|
|
552
608
|
const cli = cac('factucat');
|
|
553
609
|
cli.version(CLI_VERSION);
|
|
610
|
+
let idempotencyKey;
|
|
554
611
|
cli
|
|
555
612
|
.command('auth-api-key-set', 'Guardar API key')
|
|
556
613
|
.option('--value <apiKey>', 'API key a guardar')
|
|
@@ -636,11 +693,14 @@ export async function main(rawArgv = process.argv) {
|
|
|
636
693
|
});
|
|
637
694
|
withJsonFlag(cli
|
|
638
695
|
.command('invoice-create', 'Crear borrador remoto')
|
|
696
|
+
.option('--fecha, --issued-at <YYYY-MM-DD|ISO>', 'Fecha de emisión: hoy o hasta 2 días atrás (límite SAT de 72 horas)')
|
|
697
|
+
.option('--idempotency-key <key>', 'Clave para reintentar la misma operación')
|
|
639
698
|
.option('--customer-id <customerId>', 'ID del cliente')
|
|
640
699
|
.option('--customer <customerName>', 'Busca el cliente por nombre o RFC y lo asigna automáticamente al borrador')
|
|
641
700
|
.option('--draft', 'Crear y dejar como borrador')
|
|
642
701
|
.option('--no-input', 'Nunca preguntar datos faltantes')).action(async (options) => {
|
|
643
702
|
const commandOptions = options;
|
|
703
|
+
idempotencyKey = resolveIdempotencyKey(argv);
|
|
644
704
|
const sdk = await getSdk();
|
|
645
705
|
const resolvedCustomer = commandOptions.customerId
|
|
646
706
|
? await sdk.getCustomer(commandOptions.customerId)
|
|
@@ -650,7 +710,7 @@ export async function main(rawArgv = process.argv) {
|
|
|
650
710
|
customerRef: commandOptions.customer,
|
|
651
711
|
})
|
|
652
712
|
: null;
|
|
653
|
-
const draft = await sdk.createDraft(resolvedCustomer ? { customerId: resolvedCustomer.id } : {}, { idempotencyKey
|
|
713
|
+
const draft = await sdk.createDraft({ ...(resolvedCustomer ? { customerId: resolvedCustomer.id } : {}), issueDate: commandOptions.fecha ?? commandOptions.issuedAt }, { idempotencyKey });
|
|
654
714
|
await setCurrentDraftId(draft.id);
|
|
655
715
|
if (commandOptions.json) {
|
|
656
716
|
printJson(draft);
|
|
@@ -694,6 +754,28 @@ export async function main(rawArgv = process.argv) {
|
|
|
694
754
|
}
|
|
695
755
|
printHuman(formatDraftPreview(draft));
|
|
696
756
|
});
|
|
757
|
+
withJsonFlag(cli
|
|
758
|
+
.command('draft-list', 'Listar borradores remotos')
|
|
759
|
+
.option('--status <status>', 'Estado: draft o error')
|
|
760
|
+
.option('--query <query>', 'Búsqueda')
|
|
761
|
+
.option('--limit <limit>', 'Límite')
|
|
762
|
+
.option('--offset <offset>', 'Resultados a omitir')).action(async (options) => {
|
|
763
|
+
const sdk = await getSdk();
|
|
764
|
+
const drafts = await listDraftsWithStatus({
|
|
765
|
+
sdk,
|
|
766
|
+
status: options.status,
|
|
767
|
+
query: {
|
|
768
|
+
query: normalizeStringOption(options.query),
|
|
769
|
+
limit: options.limit === undefined ? undefined : Number(options.limit),
|
|
770
|
+
offset: options.offset === undefined ? undefined : Number(options.offset),
|
|
771
|
+
},
|
|
772
|
+
});
|
|
773
|
+
if (options.json) {
|
|
774
|
+
printJson(drafts);
|
|
775
|
+
return;
|
|
776
|
+
}
|
|
777
|
+
printHuman(drafts.map((draft) => `${draft.id} ${draft.status} ${draft.receiverLegalName} ${draft.total} ${draft.currency}`));
|
|
778
|
+
});
|
|
697
779
|
withJsonFlag(cli
|
|
698
780
|
.command('invoice-list', 'Listar facturas')
|
|
699
781
|
.option('--status <status>', 'Estado')
|
|
@@ -757,6 +839,7 @@ export async function main(rawArgv = process.argv) {
|
|
|
757
839
|
});
|
|
758
840
|
withJsonFlag(cli
|
|
759
841
|
.command('invoice-set-meta', 'Actualizar metadatos del borrador. Si usas USD sin --exchange-rate, se consulta automáticamente el DOF.')
|
|
842
|
+
.option('--fecha, --issued-at <YYYY-MM-DD|ISO>', 'Fecha de emisión: hoy o hasta 2 días atrás (límite SAT de 72 horas)')
|
|
760
843
|
.option('--draft-id <draftId>', 'ID del borrador')
|
|
761
844
|
.option('--cfdi-use <cfdiUse>', 'Uso CFDI')
|
|
762
845
|
.option('--exportacion <exportacion>', 'Clave SAT c_Exportacion: 01, 02, 03 o 04')
|
|
@@ -769,6 +852,7 @@ export async function main(rawArgv = process.argv) {
|
|
|
769
852
|
const sdk = await getSdk();
|
|
770
853
|
const draftId = await resolveDraftId(options.draftId);
|
|
771
854
|
const input = {
|
|
855
|
+
issueDate: options.fecha ?? options.issuedAt,
|
|
772
856
|
cfdiUse: normalizeStringOption(options.cfdiUse),
|
|
773
857
|
exportacion: normalizeNumericCodeOptionFromArgv(argv, '--exportacion', options.exportacion, 2),
|
|
774
858
|
paymentMethod: normalizeStringOption(options.paymentMethod),
|
|
@@ -810,11 +894,13 @@ export async function main(rawArgv = process.argv) {
|
|
|
810
894
|
});
|
|
811
895
|
withJsonFlag(cli
|
|
812
896
|
.command('invoice-add-item', 'Agregar concepto al borrador. Si omites Clave SAT, unidad o impuestos, FactuCat intenta inferirlos automáticamente.')
|
|
897
|
+
.option('--idempotency-key <key>', 'Clave para reintentar la misma operación')
|
|
813
898
|
.option('--draft-id <draftId>', 'ID del borrador')
|
|
814
899
|
.option('--description <description>', 'Descripción')
|
|
815
900
|
.option('--unit-price <unitPrice>', 'Precio unitario')
|
|
816
901
|
.option('--quantity <quantity>', 'Cantidad', { default: '1' })
|
|
817
|
-
.option('--iva <iva>', 'IVA del concepto: 0, 10 o 16. Si lo omites, se infiere automáticamente.')
|
|
902
|
+
.option('--iva <iva>', 'IVA del concepto: 0, 8, 10 (histórico) o 16. 0 significa Tasa 0%. Si lo omites, se infiere automáticamente.')
|
|
903
|
+
.option('--vat-treatment <vatTreatment>', 'Tratamiento de IVA: iva_16, iva_8, tasa_0, exento o no_objeto.')
|
|
818
904
|
.option('--vat <vat>', 'Alias de compatibilidad para `--iva`')
|
|
819
905
|
.option('--isr-retenido <isrRetenido>', 'ISR retenido: 0, 1.25 o 10. Si lo omites, se infiere automáticamente.')
|
|
820
906
|
.option('--isr-withholding <isrWithholding>', 'Alias de compatibilidad para `--isr-retenido`')
|
|
@@ -823,6 +909,7 @@ export async function main(rawArgv = process.argv) {
|
|
|
823
909
|
if (!options.description || !options.unitPrice) {
|
|
824
910
|
throw new Error('Debes indicar `--description <description>` y `--unit-price <unitPrice>`.');
|
|
825
911
|
}
|
|
912
|
+
idempotencyKey = resolveIdempotencyKey(argv);
|
|
826
913
|
const sdk = await getSdk();
|
|
827
914
|
const draftId = await resolveDraftId(options.draftId);
|
|
828
915
|
const iva = normalizeStringOption(options.iva ?? options.vat);
|
|
@@ -831,6 +918,7 @@ export async function main(rawArgv = process.argv) {
|
|
|
831
918
|
description: String(options.description),
|
|
832
919
|
quantity: Number(options.quantity),
|
|
833
920
|
unitPrice: Number(options.unitPrice),
|
|
921
|
+
vatTreatment: options.vatTreatment === undefined ? undefined : invoiceVatTreatmentSchema.parse(options.vatTreatment),
|
|
834
922
|
vatRate: iva === undefined ? undefined : parseVatFlag(iva),
|
|
835
923
|
vatSource: iva === undefined ? undefined : 'manual',
|
|
836
924
|
isrWithholdingRate: isrRetenido === undefined
|
|
@@ -846,7 +934,7 @@ export async function main(rawArgv = process.argv) {
|
|
|
846
934
|
loading.start('Infiriendo la clave SAT de este concepto...');
|
|
847
935
|
}
|
|
848
936
|
const draft = await sdk.addDraftItem(draftId, input, {
|
|
849
|
-
idempotencyKey
|
|
937
|
+
idempotencyKey,
|
|
850
938
|
});
|
|
851
939
|
if (loading) {
|
|
852
940
|
loading.stop('Concepto clasificado y agregado al borrador.');
|
|
@@ -863,11 +951,13 @@ export async function main(rawArgv = process.argv) {
|
|
|
863
951
|
.option('--description <description>', 'Descripción')
|
|
864
952
|
.option('--unit-price <unitPrice>', 'Precio unitario')
|
|
865
953
|
.option('--quantity <quantity>', 'Cantidad')
|
|
954
|
+
.option('--vat-treatment <vatTreatment>', 'Tratamiento de IVA: iva_16, iva_8, tasa_0, exento o no_objeto.')
|
|
866
955
|
.option('--product-code <productCode>', 'Clave SAT del producto. Si la omites al cambiar la descripción, se puede re-inferir automáticamente.')
|
|
867
956
|
.option('--unit-code <unitCode>', 'Clave SAT de unidad. Si la omites al cambiar la descripción, se puede re-inferir automáticamente.')).action(async (itemId, options) => {
|
|
868
957
|
const sdk = await getSdk();
|
|
869
958
|
const draftId = await resolveDraftId(options.draftId);
|
|
870
959
|
const input = {
|
|
960
|
+
vatTreatment: options.vatTreatment === undefined ? undefined : invoiceVatTreatmentSchema.parse(options.vatTreatment),
|
|
871
961
|
description: normalizeStringOption(options.description),
|
|
872
962
|
quantity: options.quantity === undefined ? undefined : Number(options.quantity),
|
|
873
963
|
unitPrice: options.unitPrice === undefined ? undefined : Number(options.unitPrice),
|
|
@@ -924,6 +1014,7 @@ export async function main(rawArgv = process.argv) {
|
|
|
924
1014
|
productCode: item.productCode,
|
|
925
1015
|
suggestedProductCode: item.suggestedProductCode,
|
|
926
1016
|
unitCode: item.unitCode,
|
|
1017
|
+
vatTreatment: item.vatTreatment,
|
|
927
1018
|
vatRate: item.vatRate,
|
|
928
1019
|
isrWithholdingRate: item.isrWithholdingRate,
|
|
929
1020
|
})));
|
|
@@ -947,15 +1038,36 @@ export async function main(rawArgv = process.argv) {
|
|
|
947
1038
|
});
|
|
948
1039
|
withJsonFlag(cli
|
|
949
1040
|
.command('invoice-stamp', 'Timbrar borrador actual. En modo interactivo muestra la previa y pregunta si quieres enviarla al cliente después.')
|
|
1041
|
+
.option('--fecha, --issued-at <YYYY-MM-DD|ISO>', 'Fecha de emisión: hoy o hasta 2 días atrás (límite SAT de 72 horas)')
|
|
950
1042
|
.option('--draft-id <draftId>', 'ID del borrador')
|
|
1043
|
+
.option('--idempotency-key <key>', 'Clave para reintentar el mismo timbrado')
|
|
1044
|
+
.option('--dry-run', 'Mostrar previa sin timbrar')
|
|
1045
|
+
.option('--yes', 'Confirmar el timbrado sin preguntas')
|
|
951
1046
|
.option('--no-input', 'Nunca preguntar nada; útil para agentes y scripts')
|
|
952
1047
|
.option('--send-to-customer-contacts', 'Solicita entrega por email y WhatsApp registrados en el cliente, si existen.')
|
|
953
1048
|
.option('--send-customer-email', 'Solicita entrega por correo del cliente')
|
|
954
1049
|
.option('--send-customer-whatsapp', 'Solicita entrega por WhatsApp del cliente')).action(async (options) => {
|
|
1050
|
+
idempotencyKey = resolveIdempotencyKey(argv);
|
|
955
1051
|
const sdk = await getSdk();
|
|
956
1052
|
const draftId = await resolveDraftId(options.draftId);
|
|
957
|
-
const interactiveMode = canPromptInteractively(options);
|
|
958
|
-
const
|
|
1053
|
+
const interactiveMode = !options.yes && canPromptInteractively(options);
|
|
1054
|
+
const savedDraft = interactiveMode || options.dryRun ? await sdk.getDraft(draftId) : null;
|
|
1055
|
+
const draft = savedDraft && { ...savedDraft, issueDate: options.fecha ?? options.issuedAt ?? savedDraft.issueDate };
|
|
1056
|
+
if (draft) {
|
|
1057
|
+
const environment = await getKeyEnvironment();
|
|
1058
|
+
if (options.dryRun && options.json) {
|
|
1059
|
+
printJson({ dryRun: true, idempotencyKey, environment, draft });
|
|
1060
|
+
return;
|
|
1061
|
+
}
|
|
1062
|
+
printHuman([
|
|
1063
|
+
...formatDraftPreview(draft),
|
|
1064
|
+
`Entorno: ${environment}`,
|
|
1065
|
+
`Idempotency-Key: ${idempotencyKey}`,
|
|
1066
|
+
]);
|
|
1067
|
+
}
|
|
1068
|
+
if (options.dryRun) {
|
|
1069
|
+
return;
|
|
1070
|
+
}
|
|
959
1071
|
const interactiveResolution = interactiveMode && draft
|
|
960
1072
|
? await resolveInteractiveStampInput({
|
|
961
1073
|
sdk,
|
|
@@ -978,11 +1090,14 @@ export async function main(rawArgv = process.argv) {
|
|
|
978
1090
|
sendCustomerEmail: options.sendCustomerEmail,
|
|
979
1091
|
sendCustomerWhatsApp: options.sendCustomerWhatsApp,
|
|
980
1092
|
};
|
|
1093
|
+
const issueDate = options.fecha ?? options.issuedAt;
|
|
1094
|
+
if (issueDate !== undefined)
|
|
1095
|
+
stampInput.issueDate = issueDate;
|
|
981
1096
|
const loading = !options.json ? spinner() : null;
|
|
982
1097
|
if (loading) {
|
|
983
1098
|
loading.start('Timbrando factura...');
|
|
984
1099
|
}
|
|
985
|
-
const invoice = await sdk.stampDraft(draftId, stampInput, { idempotencyKey
|
|
1100
|
+
const invoice = await sdk.stampDraft(draftId, stampInput, { idempotencyKey });
|
|
986
1101
|
if (loading) {
|
|
987
1102
|
loading.stop('Factura timbrada.');
|
|
988
1103
|
}
|
|
@@ -990,13 +1105,14 @@ export async function main(rawArgv = process.argv) {
|
|
|
990
1105
|
await setCurrentDraftId(undefined);
|
|
991
1106
|
}
|
|
992
1107
|
if (options.json) {
|
|
993
|
-
printJson(invoice);
|
|
1108
|
+
printJson({ ...invoice, idempotencyKey });
|
|
994
1109
|
return;
|
|
995
1110
|
}
|
|
996
1111
|
printHuman([
|
|
997
1112
|
`Factura timbrada: ${invoice.id}`,
|
|
998
1113
|
`Folio: ${invoice.folio ?? 'sin folio'}`,
|
|
999
1114
|
`UUID SAT: ${invoice.satUuid ?? 'pendiente'}`,
|
|
1115
|
+
`Idempotency-Key: ${idempotencyKey}`,
|
|
1000
1116
|
...formatDeliverySummary({
|
|
1001
1117
|
sendCustomerEmail: stampInput.sendCustomerEmail ??
|
|
1002
1118
|
stampInput.sendToCustomerContacts,
|
|
@@ -1006,6 +1122,114 @@ export async function main(rawArgv = process.argv) {
|
|
|
1006
1122
|
}),
|
|
1007
1123
|
]);
|
|
1008
1124
|
});
|
|
1125
|
+
withJsonFlag(cli
|
|
1126
|
+
.command('invoice-cancel <invoiceRef>', 'Cancelar factura por invoiceId, UUID SAT o folio')
|
|
1127
|
+
.option('--reason <01|02|03|04>', 'Motivo de cancelación (obligatorio)')
|
|
1128
|
+
.option('--replacement-invoice <ref>', 'Factura sustituta (obligatoria para motivo 01)')
|
|
1129
|
+
.option('--idempotency-key <key>', 'Clave para reintentar la misma cancelación')
|
|
1130
|
+
.option('--yes', 'Confirmar la cancelación sin preguntas')
|
|
1131
|
+
.option('--no-input', 'Nunca preguntar; requiere --yes para cancelar')
|
|
1132
|
+
.option('--dry-run', 'Mostrar previa sin cancelar')).action(async (invoiceRef, options) => {
|
|
1133
|
+
const reason = readRawOptionValue(argv, '--reason');
|
|
1134
|
+
const parsedReason = invoiceCancelReasonSchema.safeParse(reason);
|
|
1135
|
+
if (!parsedReason.success) {
|
|
1136
|
+
throw new Error('Debes indicar `--reason` con uno de estos motivos: 01, 02, 03 o 04.');
|
|
1137
|
+
}
|
|
1138
|
+
const replacementOption = readRawOptionValue(argv, '--replacement-invoice');
|
|
1139
|
+
const replacementRef = normalizeStringOption(replacementOption);
|
|
1140
|
+
if (parsedReason.data === '01' && !replacementRef) {
|
|
1141
|
+
throw new Error('El motivo 01 requiere `--replacement-invoice <ref>`.');
|
|
1142
|
+
}
|
|
1143
|
+
if (parsedReason.data !== '01' && replacementOption !== undefined) {
|
|
1144
|
+
throw new Error('`--replacement-invoice` solo se permite con el motivo 01.');
|
|
1145
|
+
}
|
|
1146
|
+
const interactiveMode = canPromptInteractively(options);
|
|
1147
|
+
if (!options.dryRun && !options.yes && !interactiveMode) {
|
|
1148
|
+
throw new Error('Cancelar requiere confirmación explícita. Usa `--yes` para confirmar o `--dry-run` para revisar la previa.');
|
|
1149
|
+
}
|
|
1150
|
+
idempotencyKey = resolveIdempotencyKey(argv);
|
|
1151
|
+
const sdk = await getSdk();
|
|
1152
|
+
const invoiceId = await resolveInvoiceReference({ sdk, invoiceRef });
|
|
1153
|
+
const invoice = await sdk.getInvoice(invoiceId);
|
|
1154
|
+
if (invoice.status !== 'issued' || !invoice.satUuid?.trim()) {
|
|
1155
|
+
throw new Error('Solo se pueden cancelar facturas emitidas (issued) con UUID SAT.');
|
|
1156
|
+
}
|
|
1157
|
+
const replacementInvoiceId = replacementRef
|
|
1158
|
+
? await resolveInvoiceReference({ sdk, invoiceRef: replacementRef })
|
|
1159
|
+
: undefined;
|
|
1160
|
+
if (replacementInvoiceId === invoiceId) {
|
|
1161
|
+
throw new Error('La factura sustituta debe ser distinta de la factura que quieres cancelar.');
|
|
1162
|
+
}
|
|
1163
|
+
const replacement = replacementInvoiceId
|
|
1164
|
+
? await sdk.getInvoice(replacementInvoiceId)
|
|
1165
|
+
: undefined;
|
|
1166
|
+
if (parsedReason.data === '01' &&
|
|
1167
|
+
(replacement?.status !== 'issued' || !replacement.satUuid?.trim())) {
|
|
1168
|
+
throw new Error('El motivo 01 requiere una factura sustituta timbrada.');
|
|
1169
|
+
}
|
|
1170
|
+
const environment = await getKeyEnvironment();
|
|
1171
|
+
const preview = {
|
|
1172
|
+
invoiceId,
|
|
1173
|
+
satUuid: invoice.satUuid,
|
|
1174
|
+
receiverRfc: invoice.receiverRfc,
|
|
1175
|
+
receiverLegalName: invoice.receiverLegalName,
|
|
1176
|
+
total: invoice.total,
|
|
1177
|
+
currency: invoice.currency,
|
|
1178
|
+
reason: parsedReason.data,
|
|
1179
|
+
replacementInvoiceId,
|
|
1180
|
+
replacementSatUuid: replacement?.satUuid,
|
|
1181
|
+
environment,
|
|
1182
|
+
idempotencyKey,
|
|
1183
|
+
};
|
|
1184
|
+
if (options.dryRun && options.json) {
|
|
1185
|
+
printJson({ dryRun: true, ...preview });
|
|
1186
|
+
return;
|
|
1187
|
+
}
|
|
1188
|
+
if (options.dryRun || (interactiveMode && !options.yes)) {
|
|
1189
|
+
printHuman([
|
|
1190
|
+
`Factura: ${invoiceId}`,
|
|
1191
|
+
`UUID SAT: ${preview.satUuid}`,
|
|
1192
|
+
`Receptor: ${preview.receiverLegalName}`,
|
|
1193
|
+
`RFC: ${preview.receiverRfc}`,
|
|
1194
|
+
`Total: ${preview.total} ${preview.currency}`,
|
|
1195
|
+
`Motivo: ${preview.reason}`,
|
|
1196
|
+
...(replacementInvoiceId
|
|
1197
|
+
? [
|
|
1198
|
+
`Factura sustituta: ${replacementInvoiceId}`,
|
|
1199
|
+
`UUID SAT de la sustituta: ${preview.replacementSatUuid}`,
|
|
1200
|
+
]
|
|
1201
|
+
: []),
|
|
1202
|
+
`Entorno: ${environment}`,
|
|
1203
|
+
`Idempotency-Key: ${idempotencyKey}`,
|
|
1204
|
+
]);
|
|
1205
|
+
}
|
|
1206
|
+
if (options.dryRun) {
|
|
1207
|
+
return;
|
|
1208
|
+
}
|
|
1209
|
+
if (!options.yes) {
|
|
1210
|
+
const confirmed = await confirm({
|
|
1211
|
+
message: '¿Confirmas la cancelación de esta factura?',
|
|
1212
|
+
active: 'Sí, cancelar factura',
|
|
1213
|
+
inactive: 'No, conservar factura',
|
|
1214
|
+
initialValue: false,
|
|
1215
|
+
});
|
|
1216
|
+
if (isCancel(confirmed) || !confirmed) {
|
|
1217
|
+
outro('No se solicitó la cancelación.');
|
|
1218
|
+
return;
|
|
1219
|
+
}
|
|
1220
|
+
}
|
|
1221
|
+
const result = await sdk.cancelInvoice(invoiceId, { reason: parsedReason.data, replacementInvoiceId }, { idempotencyKey });
|
|
1222
|
+
if (options.json) {
|
|
1223
|
+
printJson({ ...result, idempotencyKey });
|
|
1224
|
+
return;
|
|
1225
|
+
}
|
|
1226
|
+
printHuman([
|
|
1227
|
+
result.status === 'cancelled'
|
|
1228
|
+
? `Factura cancelada: ${invoiceId}`
|
|
1229
|
+
: `Cancelación aún no confirmada: ${invoiceId}`,
|
|
1230
|
+
`Idempotency-Key: ${idempotencyKey}`,
|
|
1231
|
+
]);
|
|
1232
|
+
});
|
|
1009
1233
|
withJsonFlag(cli.command('invoice-get <invoiceRef>', 'Obtener factura por invoiceId, UUID SAT o folio')).action(async (invoiceRef, options) => {
|
|
1010
1234
|
const sdk = await getSdk();
|
|
1011
1235
|
const invoiceId = await resolveInvoiceReference({ sdk, invoiceRef });
|
|
@@ -1066,6 +1290,21 @@ export async function main(rawArgv = process.argv) {
|
|
|
1066
1290
|
}
|
|
1067
1291
|
printHuman(customers.map((customer) => `${customer.id} ${customer.legalName}`));
|
|
1068
1292
|
});
|
|
1293
|
+
withJsonFlag(cli.command('customer-get <customerId>', 'Obtener cliente')).action(async (customerId, options) => {
|
|
1294
|
+
const sdk = await getSdk();
|
|
1295
|
+
const customer = await sdk.getCustomer(customerId);
|
|
1296
|
+
if (options.json) {
|
|
1297
|
+
printJson(customer);
|
|
1298
|
+
return;
|
|
1299
|
+
}
|
|
1300
|
+
printHuman([
|
|
1301
|
+
`Cliente: ${customer.id}`,
|
|
1302
|
+
`Razón social: ${customer.legalName}`,
|
|
1303
|
+
`RFC: ${customer.rfc}`,
|
|
1304
|
+
`Código postal: ${customer.postalCode}`,
|
|
1305
|
+
`Régimen fiscal: ${customer.taxRegime}`,
|
|
1306
|
+
]);
|
|
1307
|
+
});
|
|
1069
1308
|
withJsonFlag(cli.command('customer-search <query>', 'Buscar clientes')).action(async (query, options) => {
|
|
1070
1309
|
const sdk = await getSdk();
|
|
1071
1310
|
const customers = await sdk.listCustomers({ query });
|
|
@@ -1077,6 +1316,7 @@ export async function main(rawArgv = process.argv) {
|
|
|
1077
1316
|
});
|
|
1078
1317
|
withJsonFlag(cli
|
|
1079
1318
|
.command('customer-create', 'Crear cliente')
|
|
1319
|
+
.option('--idempotency-key <key>', 'Clave para reintentar la misma operación')
|
|
1080
1320
|
.option('--legal-name <legalName>', 'Razón social')
|
|
1081
1321
|
.option('--rfc <rfc>', 'RFC')
|
|
1082
1322
|
.option('--postal-code <postalCode>', 'Código postal')
|
|
@@ -1088,6 +1328,7 @@ export async function main(rawArgv = process.argv) {
|
|
|
1088
1328
|
if (!options.legalName || !options.rfc || !options.postalCode || !options.taxRegime) {
|
|
1089
1329
|
throw new Error('Debes indicar `--legal-name`, `--rfc`, `--postal-code` y `--tax-regime`.');
|
|
1090
1330
|
}
|
|
1331
|
+
idempotencyKey = resolveIdempotencyKey(argv);
|
|
1091
1332
|
const sdk = await getSdk();
|
|
1092
1333
|
const input = {
|
|
1093
1334
|
legalName: String(options.legalName),
|
|
@@ -1101,7 +1342,7 @@ export async function main(rawArgv = process.argv) {
|
|
|
1101
1342
|
sendInvoices: true,
|
|
1102
1343
|
};
|
|
1103
1344
|
const customer = await sdk.createCustomer(input, {
|
|
1104
|
-
idempotencyKey
|
|
1345
|
+
idempotencyKey,
|
|
1105
1346
|
});
|
|
1106
1347
|
if (options.json) {
|
|
1107
1348
|
printJson(customer);
|
|
@@ -1120,10 +1361,14 @@ export async function main(rawArgv = process.argv) {
|
|
|
1120
1361
|
error: {
|
|
1121
1362
|
message: getErrorMessage(error),
|
|
1122
1363
|
},
|
|
1364
|
+
...(idempotencyKey ? { idempotencyKey } : {}),
|
|
1123
1365
|
});
|
|
1124
1366
|
}
|
|
1125
1367
|
else {
|
|
1126
1368
|
process.stderr.write(`${getErrorMessage(error)}\n`);
|
|
1369
|
+
if (idempotencyKey) {
|
|
1370
|
+
process.stderr.write(`Idempotency-Key: ${idempotencyKey}\n`);
|
|
1371
|
+
}
|
|
1127
1372
|
}
|
|
1128
1373
|
process.exitCode = exitCodeFromError(error);
|
|
1129
1374
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/errors.js
CHANGED
|
@@ -25,7 +25,7 @@ export function getErrorMessage(error) {
|
|
|
25
25
|
if (error.code === 'plan_required') {
|
|
26
26
|
const base = error.message ||
|
|
27
27
|
'Tu plan actual no incluye la API pública de FactuCat.';
|
|
28
|
-
const upgrade = 'Actualiza a un plan con API (Miau Pro o
|
|
28
|
+
const upgrade = 'Actualiza a un plan con API (Miau Pro o Plan API) desde Suscripción en la configuración de FactuCat: https://factucat.com/settings/subscription';
|
|
29
29
|
const requestId = error.requestId && error.requestId !== 'unknown'
|
|
30
30
|
? ` (requestId: ${error.requestId})`
|
|
31
31
|
: '';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@factucat/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "CLI for Mexican CFDI 4.0 invoicing with FactuCat Cloud",
|
|
6
6
|
"type": "module",
|
|
@@ -41,18 +41,19 @@
|
|
|
41
41
|
}
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
|
-
"@types/node": "^24.
|
|
44
|
+
"@types/node": "^24.19.2"
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
|
-
"@clack/prompts": "^1.1
|
|
48
|
-
"
|
|
49
|
-
"@factucat/
|
|
50
|
-
"
|
|
47
|
+
"@clack/prompts": "^1.8.1",
|
|
48
|
+
"@factucat/public-api-contracts": "0.4.0",
|
|
49
|
+
"@factucat/sdk": "0.4.0",
|
|
50
|
+
"cac": "^7.1.0"
|
|
51
51
|
},
|
|
52
52
|
"scripts": {
|
|
53
53
|
"build": "tsc -p tsconfig.build.json",
|
|
54
54
|
"lint": "eslint \"src/**/*.ts\" --ignore-pattern \"src/**/*.d.ts\" --ignore-pattern \"src/**/*.test.ts\"",
|
|
55
55
|
"factucat": "tsx src/bin.ts",
|
|
56
|
-
"test": "vitest run"
|
|
56
|
+
"test": "vitest run",
|
|
57
|
+
"typecheck": "tsc --noEmit -p tsconfig.json"
|
|
57
58
|
}
|
|
58
59
|
}
|