How lapyme/facturas works
facturas is a TypeScript SDK and CLI for ARCA electronic invoicing, credit/debit notes, and taxpayer-registry queries, with a companion PDF package. The main workflow configures a client, authenticates through WSAA, derives and reserves a voucher, calls the selected ARCA service, then returns authorization evidence and a QR URL. The graph also preserves CLI diagnostics/setup and PDF voucher rendering. Core client wiring and several service calls are evidenced by excerpts and the source index; some documented capabilities are shown without inferred internal call chains.
Main entry points: client.ts Client factory · vouchers.ts Voucher orchestration · index.ts SOAP transport · types.ts Reservation store
Components 25
Entry points
- Public API
packages/arca/src/index.ts - Client factory
packages/arca/src/client.ts - CLI commands
packages/arca/src/cli/main.ts - Config discovery
packages/arca/src/config.ts
Issuance domain
- Voucher orchestration
packages/arca/src/services/vouchers.ts - Fiscal fields
packages/arca/src/services/issuance-fields.ts - WSFE derivation
packages/arca/src/services/wsfe-derive.ts - Fiscal evidence
packages/arca/src/services/fiscal-evidence.ts
ARCA transport
- Domestic invoices
packages/arca/src/services/wsfe.ts - Export invoices
packages/arca/src/services/wsfex.ts - Detailed invoices
packages/arca/src/services/wsmtxca.ts - Tax registry
packages/arca/src/services/padron.ts - SOAP transport
packages/arca/src/soap/index.ts - WSAA login
packages/arca/src/wsaa/index.ts
Sessions and state
- Reservation store
packages/arca/src/store/types.ts - Postgres adapter
packages/arca/src/store/postgres.ts - Redis adapter
packages/arca/src/store/redis.ts - File adapter
packages/arca/src/store/file.ts - Memory adapter
packages/arca/src/store/memory.ts
Documents
- QR generation
packages/arca/src/services/qr.ts - Voucher document
packages/arca/src/services/voucher-document.ts - PDF renderer
packages/pdf/src/voucher.tsx
Other components
- SDK caller
- CLI user
- ARCA services
Connections 34
- SDK caller → Public API: calls
README.md - Public API → Client factory: exports
packages/arca/src/index.ts - Client factory → Config discovery: normalizes
packages/arca/src/client.ts - Client factory → WSAA login: creates
packages/arca/src/client.ts - Client factory → SOAP transport: creates
packages/arca/src/client.ts - Client factory → Domestic invoices: creates
packages/arca/src/client.ts - Client factory → Export invoices: creates
packages/arca/src/client.ts - Client factory → Detailed invoices: creates
packages/arca/src/client.ts - Client factory → Tax registry: creates
packages/arca/src/client.ts - Client factory → Voucher orchestration: creates
packages/arca/src/client.ts - SDK caller → Voucher orchestration: issues
README.md - Voucher orchestration → Fiscal fields: derives fields
packages/arca/src/services/vouchers.ts - Voucher orchestration → WSFE derivation: derives request
packages/arca/src/services/vouchers.ts - Voucher orchestration → Domestic invoices: submits
packages/arca/src/services/vouchers.ts - Voucher orchestration → Export invoices: submits
packages/arca/src/services/vouchers.ts - Voucher orchestration → Detailed invoices: submits
packages/arca/src/services/vouchers.ts - Voucher orchestration → Reservation store: reserves attempts
packages/arca/src/services/vouchers.ts - Voucher orchestration → Fiscal evidence: returns outcomes
packages/arca/src/services/vouchers.ts - Domestic invoices → SOAP transport: executes SOAP
packages/arca/src/services/wsfe.ts - Export invoices → SOAP transport: executes SOAP
packages/arca/src/services/wsfex.ts - WSAA login → ARCA services: logs in
packages/arca/src/wsaa/index.ts - SOAP transport → ARCA services: sends SOAP
packages/arca/src/soap/index.ts - Domestic invoices → WSAA login: authenticates
packages/arca/src/services/wsfe.ts - Export invoices → WSAA login: authenticates
packages/arca/src/services/wsfex.ts - Tax registry → SOAP transport: uses transport
- Postgres adapter → Reservation store: implements
- Redis adapter → Reservation store: implements
packages/arca/src/store/redis.ts - File adapter → Reservation store: implements
packages/arca/src/store/file.ts - Memory adapter → Reservation store: implements
- CLI user → CLI commands: runs
README.md - CLI commands → Client factory: creates client
packages/arca/src/cli/main.ts - Fiscal evidence → QR generation: authorization QR
- SDK caller → Voucher document: builds voucher
README.md - Voucher document → PDF renderer: renders with
README.md