Guía de uso
Billing
Billing convierte pedidos validados en documentos fiscales, firma XML, envia a Hacienda y deja evidencia consultable.
Intención de la página
La intencion de Billing es emitir comprobantes electronicos desde datos operativos confiables, sin volver a digitar lo que ya vive en pedidos, clientes, productos e impuestos.
Contexto para soporte
Si un documento no se puede emitir, incluye order id, tipo de documento, cliente/receptor, ambiente, emisor usado, clave si existe y el error exacto mostrado por Hacienda o Ballista.
Recorrido guiado
- 1
1. Llegar desde la orden correcta
El flujo ideal empieza en Orders u Order Detail. Revisa que la orden tenga cliente, líneas, impuestos, moneda, totales y estado operativo coherente; luego usa Invoice this order para no redigitar.
- 2
2. Confirmar emisor y ambiente
El emisor debe venir de Billing Settings: perfil fiscal, actividad económica, ubicación, credenciales Hacienda, certificado .p12, PIN y ambiente staging o production.
- 3
3. Validar receptor
Antes de emitir, confirma identificación, nombre, correo y dirección fiscal del receptor. Si falta información, corrige el cliente/dependiente o el perfil de facturación antes de continuar.
- 4
4. Revisar líneas, impuestos y totales
La factura debe reflejar lo vendido: descripción, cantidad, precio, descuento, código CABYS cuando aplica, impuesto y total. Esta revisión evita rechazos y diferencias contables.
- 5
5. Emitir y leer el resultado
Al emitir, Ballista prepara XML, firma con el .p12, usa credenciales Hacienda, envia el comprobante y guarda estado. Si Hacienda rechaza o Ballista alerta un dato faltante, corrige la causa y reintenta.
- 6
6. Dar seguimiento en historial
Luego de emitir, usa Billing History para buscar la clave, revisar estado, abrir XML/PDF o recopilar evidencia para soporte, contabilidad o el cliente.
Cómo funciona
La factura electronica es el comprobante fiscal digital que respalda una venta ante Hacienda y ante el cliente. En un negocio, no es solo un PDF: representa ingreso, impuestos, trazabilidad, derecho de cobro, soporte contable y evidencia ante auditoría.
Billing empieza desde una orden o desde datos de facturación. La vista confirma emisor, receptor, condición de venta, moneda, líneas, descuentos, impuestos, totales y referencias antes de firmar o enviar el documento.
Ballista usa los datos que ya existen en la operación. Orders aporta el pedido, Customers y Dependents aportan receptor, Taxes aporta impuestos, Product Lines/Lots aportan contexto operativo y Billing Settings aporta emisor, credenciales, certificado y ambiente.
El flujo separa revisión, preflight, firma, token, envío y resultado. Si algo falla, el usuario debe corregir el dato origen y reintentar con el mismo contexto, no crear una factura paralela a mano.
Despues de emitir, el documento queda disponible para seguimiento en Billing History: clave, estado, XML, PDF o evidencia imprimible según el caso.
Botones y acciones
| Acción | Qué hace |
|---|---|
New invoice | Inicia un comprobante nuevo cuando no se entra desde un pedido existente. |
Edit receiver | Corrige datos del receptor antes de emitir: nombre, identificación, correo, teléfono o ubicación cuando aplica. |
Save issuer profile | Guarda información reutilizable del emisor para no repetir datos fiscales en cada documento. |
Save issuer in catalog | Agrega el emisor al catálogo de perfiles de facturación. |
Issue document | Ejecuta el procesamiento fiscal: valida, firma, obtiene token, envia y registra resultado. |
Save | Guarda datos del flujo cuando la seccion permite persistir cambios antes de emitir. |
Create Ticket | Abre una solicitud de soporte con esta página ya adjunta como contexto. |
Ejemplos operativos
Ejemplo 1: una factura nace desde un pedido. Billing carga el pedido, resuelve receptor, muestra líneas, calcula impuestos y permite revisar el resumen antes de enviar o simular el envío.
Ejemplo 2: si el receptor no tiene datos fiscales completos, el flujo debe detenerse antes del envío. El usuario corrige cliente/receptor y vuelve a intentar con el mismo contexto operativo.
Ejemplo 3: en demo comercial, el tour de Billing usa datos simulados para mostrar prevalidacion, envío y respuesta sin crear comprobantes reales ni contaminar la base del cliente.
Cómo se lee en el código
| Archivo | Qué hace |
|---|---|
frontend/src/pages/billing/billing.desktop.tsx | La página carga FacturaWorkflowPanel dentro de DesktopLayout con contextualHintPageId="billing"; esa asociación alimenta la ayuda de facturación. |
frontend/src/modules/billing/components/factura-workflow-panel.tsx | El panel coordina emisor, receptor, pedido origen, condición comercial, referencia, líneas, resumen, preflight, envío y resultado. Es el flujo completo de factura electronica. |
frontend/src/modules/billing/components/factura-workflow.demo.ts | Aqui viven los datos demo y los resultados simulados del spotlight. Por eso la wiki aclara que el tour de factura electronica es un ambiente simulado. |