@dojocoding/hacienda-shared

中文文档
0.13.0发布于 2026/11/01MITTypeScriptES Module构建来源已验证近 30 天下载 6353

Shared types, constants, and enums for Hacienda CR electronic invoicing

原始使用文档
文档目录6 节
  1. Contents
  2. Constants
  3. Types
  4. Schemas (Zod)
  5. Installation
  6. Additive exact ordinary FE schemas

@dojocoding/hacienda-shared

Shared types, constants, enums, and Zod validation schemas for Costa Rica electronic invoicing (Hacienda API v4.4).

This package is used internally by @dojocoding/hacienda-sdk, @dojocoding/hacienda-cli, and @dojocoding/hacienda-mcp. It is not typically imported directly by end users.

Contents

Constants

  • Generated catalogs (shared/src/generated/) -- Code catalogs rendered from packages/sdk/schemas/codes.json by pnpm spec:generate: document type-independent enumerations such as PaymentMethod, SaleCondition, TaxCode, IvaRateCode, IdentificationType, ProvinceCode, CURRENCY_CODES, DISCOUNT_CODES, OTHER_CHARGE_TYPES, EXONERATION_INSTITUTIONS, COMMERCIAL_CODE_TYPES and TRANSACTION_TYPES. Every file starts with a NO EDITAR header: never edit them by hand (the parity-freeze test and the pnpm verify lock detect drift). The pairing registry is scripts/codes-generate/table-map.mjs.
  • Curated companions -- Human-readable *_NAMES maps, derived subsets (REP_*), IVA_RATE_PERCENTAGES, IDENTIFICATION_LENGTHS, currency accessors, and the catalogs without an exact codes.json pairing (ExonerationType, UNITS_OF_MEASURE, DocumentTypeCode, REFERENCE_*) -- hand-written in shared/src/constants/.
  • XAdES policy -- Policy URI and SHA-1 hash for XAdES-EPES signing
  • Environment URLs -- Sandbox and production API/IDP endpoints

Types

  • FacturaElectronica -- Full invoice type
  • Emisor / Receptor -- Issuer and receiver types
  • LineaDetalle -- Invoice line item
  • Impuesto / Descuento / Exoneracion -- Tax, discount, exoneration
  • SubmissionRequest / SubmissionResponse / StatusResponse -- API request/response types
  • ComprobantesListResponse / ComprobanteDetail -- Document listing and detail types

Schemas (Zod)

  • FacturaElectronicaSchema -- Validates invoice input
  • EmisorSchema / ReceptorSchema -- Validates issuer/receiver
  • LineaDetalleSchema -- Validates line items
  • IdentificacionSchema -- Validates identification fields
  • ClaveSchema -- Validates 50-digit clave format
  • EnvironmentSchema -- Validates environment strings

Installation

npm install @dojocoding/hacienda-shared

Applications can import its public types, enums and validation schemas directly. Internal workspace dependencies are resolved to release versions when packed.

Additive exact ordinary FE schemas

ExactFeInputSchema, ExactFeCalculatedSchema, ExactMoneySchema and ExactQuantitySchema preserve decimal strings and reject implicit Number coercion. They belong to the explicit ordinary IVA13/full-payment case, not a replacement for existing numeric document schemas. See the exact FE contract.

版本与发布记录

@dojocoding/hacienda-shared 共发布 15 个版本,首次发布于 2026/02/23;过去 12 个月发布了 15 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.13.0latest2026/11/0112 天前
0.12.12026/10/2222 天前
0.12.02026/10/2222 天前
0.11.02026/10/2222 天前
0.10.02026/10/1826 天前
0.9.02026/10/1826 天前

关于 @dojocoding/hacienda-shared 的常见问题

@dojocoding/hacienda-shared 是什么?

Shared types, constants, and enums for Hacienda CR electronic invoicing

如何安装 @dojocoding/hacienda-shared?

在项目目录运行 npm install @dojocoding/hacienda-shared,或使用 pnpm add / yarn add / bun add。

@dojocoding/hacienda-shared 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@dojocoding/hacienda-shared 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@dojocoding/hacienda-shared 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@dojocoding/hacienda-shared 可以商用吗?

@dojocoding/hacienda-shared 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@dojocoding/hacienda-shared 的下载量有多少?

根据 npm 官方下载统计,@dojocoding/hacienda-shared 在 2026/10/13 – 2026/11/11 这 30 天内被下载 6,353 次,日均约 212 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@dojocoding/hacienda-shared 还在维护吗?

最新版本 0.13.0 发布于 2026/11/01(12 天前);至今共发布 15 个版本,其中过去 12 个月发布了 15 个;首次发布于 2026/02/23。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。