keycae-ts 1.1.0 → 1.2.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 CHANGED
@@ -48,6 +48,22 @@ console.log(`CAE: ${invoice.cae}`);
48
48
  console.log(`PDF: ${invoice.url_pdf}`);
49
49
  ```
50
50
 
51
+ ### Precios netos (sin IVA)
52
+
53
+ Por defecto `conceptos[].precio` se envía con IVA incluido. Si tu sistema maneja precios netos, pasá `iva_incluido: false` y KeyCAE calcula el IVA automáticamente:
54
+
55
+ ```typescript
56
+ const invoice = await client.emitInvoice({
57
+ cuit_emisor: '20254459306',
58
+ punto_de_venta: 1,
59
+ tipo_comprobante: 'A',
60
+ iva_incluido: false, // conceptos[].precio son netos
61
+ receptor: { tipo_doc: 'CUIT', nro_doc: '30999888776' },
62
+ conceptos: [{ descripcion: 'Servicio profesional', precio: 1000, alicuota_iva: 21 }]
63
+ }, 'idempotency_key_43');
64
+ // → Neto $1.000 | IVA 21% $210 | Total $1.210
65
+ ```
66
+
51
67
  ## Modelos de Conexión
52
68
 
53
69
  ### Modalidad A: Delegación Directa (Recomendada)
package/dist/index.d.ts CHANGED
@@ -50,6 +50,13 @@ export interface InvoiceInput {
50
50
  tipo_comprobante: 'A' | 'B' | 'C' | 'M' | 'E' | 'NCA' | 'NCB' | 'NCC' | 'NCE' | 'NCM' | 'NDA' | 'NDB' | 'NDC' | 'NDE' | 'NDM' | 'FCE_A' | 'FCE_B' | 'FCE_C' | 'FCE_NDA' | 'FCE_NDB' | 'FCE_NDC' | 'FCE_NCA' | 'FCE_NCB' | 'FCE_NCC';
51
51
  receptor: InvoiceReceptor;
52
52
  conceptos: InvoiceItem[];
53
+ /**
54
+ * Default `true`: los `conceptos[].precio` se envían con IVA incluido (precio final).
55
+ * Con `false`, los precios se interpretan como netos (sin IVA) y KeyCAE calcula
56
+ * y adiciona el IVA según la `alicuota_iva` de cada ítem.
57
+ * Sin efecto en comprobantes sin discriminación de IVA (tipo C / E).
58
+ */
59
+ iva_incluido?: boolean;
53
60
  tributos?: Tributo[];
54
61
  moneda?: string;
55
62
  moneda_cotizacion?: number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "keycae-ts",
3
- "version": "1.1.0",
3
+ "version": "1.2.0",
4
4
  "description": "Official TypeScript & JavaScript SDK client for KeyCAE.ar impositive compliance API (ARCA)",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/src/index.ts CHANGED
@@ -65,6 +65,13 @@ export interface InvoiceInput {
65
65
  | 'FCE_NCA' | 'FCE_NCB' | 'FCE_NCC';
66
66
  receptor: InvoiceReceptor;
67
67
  conceptos: InvoiceItem[];
68
+ /**
69
+ * Default `true`: los `conceptos[].precio` se envían con IVA incluido (precio final).
70
+ * Con `false`, los precios se interpretan como netos (sin IVA) y KeyCAE calcula
71
+ * y adiciona el IVA según la `alicuota_iva` de cada ítem.
72
+ * Sin efecto en comprobantes sin discriminación de IVA (tipo C / E).
73
+ */
74
+ iva_incluido?: boolean;
68
75
  tributos?: Tributo[];
69
76
  moneda?: string;
70
77
  moneda_cotizacion?: number;