Some checks are pending
Bidi Control Character Guard / bidi-control-guard (push) Waiting to run
Circular Dependency Check / Check for new circular dependencies (push) Waiting to run
Citus Migration Smoke / Combined migrations on single-node Citus (push) Waiting to run
E2E Fresh Install Tests / fresh-install-e2e (push) Waiting to run
ext-v2 guardrails / Run ext-v2 guard and ESLint (push) Waiting to run
Integration Tests / Check for relevant changes (push) Waiting to run
Integration Tests / ${{ (github.event_name == 'schedule' || github.event.inputs.suite == 'full') && 'Full integration suite' || 'Tier-1 integration subset' }} (push) Blocked by required conditions
Mobile checks / Mobile lint + typecheck (push) Waiting to run
Mobile checks / Mobile unit tests (push) Waiting to run
Mobile checks / Mobile dependency audit (report) (push) Waiting to run
Mobile checks / Mobile reproducibility checks (push) Waiting to run
Secrets guard (env backups) / Ensure no tracked env backup files (push) Waiting to run
Temporal Readiness / fast-readiness (push) Waiting to run
Temporal Readiness / docker-parity (push) Waiting to run
TypeScript Type Check / Nx affected typecheck (push) Waiting to run
Unit Tests / Skipped-test budget (push) Waiting to run
Unit Tests / Nx affected unit tests (push) Waiting to run
Unit Tests / Server unit coverage (informational) (push) Waiting to run
Validate Tenant Management Schema / Check for relevant changes (push) Waiting to run
Validate Tenant Management Schema / Validate Tenant Management Schema (push) Blocked by required conditions
EE Workflows Build Guard / ee-workflows-build-guard (push) Waiting to run
Excluded: .git, node_modules, secrets/, compose.env, assemblyscript tgz Source: /opt/alga-psa on psa.joliet.tech
332 lines
13 KiB
JSON
332 lines
13 KiB
JSON
{
|
|
"title": "Facturación",
|
|
"overview": "Resumen",
|
|
"tabs": {
|
|
"overview": "Resumen",
|
|
"invoices": "Facturas",
|
|
"quotes": "Presupuestos"
|
|
},
|
|
"currentContractLine": "Línea de contrato actual",
|
|
"nextInvoice": "Próxima factura",
|
|
"viewContractLineDetails": "Ver detalles de la línea de contrato",
|
|
"viewAllInvoices": "Ver todas las facturas",
|
|
"failedToLoad": "No se pudieron cargar las facturas. Inténtalo de nuevo.",
|
|
"invoices": {
|
|
"locations": {
|
|
"groupHeading": "Ubicación",
|
|
"subtotal": "Subtotal de ubicación",
|
|
"unassigned": "Elementos sin ubicación",
|
|
"pickerPlaceholder": "Seleccione una ubicación",
|
|
"addLocationButton": "+ Agregar ubicación",
|
|
"removeGroup": "Quitar ubicación",
|
|
"emptyGroup": "Aún no hay elementos para esta ubicación.",
|
|
"needMoreLocations": "Este cliente solo tiene una ubicación activa. Agregue una segunda ubicación en la configuración del cliente para habilitar la facturación multisitio.",
|
|
"notSet": "Ninguna ubicación seleccionada"
|
|
}
|
|
},
|
|
"payments": "Pagos",
|
|
"contractLines": "Líneas de contrato de servicio",
|
|
"usage": "Métricas de uso",
|
|
"hoursByService": "Horas por servicio",
|
|
"invoice": {
|
|
"number": "Factura n.º",
|
|
"date": "Fecha de la factura",
|
|
"dueDate": "Fecha de vencimiento",
|
|
"dueDateText": "Vence el {{date}}",
|
|
"noDueDate": "Sin fecha de vencimiento",
|
|
"allPaid": "Todas las facturas pagadas",
|
|
"amount": "Importe",
|
|
"status": "Estado",
|
|
"paid": "Pagada",
|
|
"unpaid": "Sin pagar",
|
|
"overdue": "Vencida",
|
|
"partial": "Parcial",
|
|
"draft": "Borrador",
|
|
"finalized": "Finalizada",
|
|
"sendEmail": "Enviar por correo",
|
|
"sendEmailFailed": "No se pudo enviar la factura por correo. Inténtalo de nuevo.",
|
|
"loadFailed": "No se pudieron cargar los detalles de la factura. Inténtalo de nuevo.",
|
|
"downloadFailed": "No se pudo descargar el PDF. Inténtalo de nuevo.",
|
|
"download": "Descargar PDF",
|
|
"view": "Ver detalles",
|
|
"pay": "Pagar ahora",
|
|
"paymentHistory": "Historial de pagos",
|
|
"details": "Detalles de la factura",
|
|
"lineItems": "Conceptos",
|
|
"description": "Descripción",
|
|
"quantity": "Cantidad",
|
|
"unitPrice": "Precio unitario",
|
|
"total": "Total",
|
|
"noLineItems": "No hay conceptos disponibles",
|
|
"subtotal": "Subtotal",
|
|
"tax": "Impuesto",
|
|
"taxBreakdown": "Desglose de impuestos",
|
|
"manualInvoice": "Factura manual",
|
|
"credits": "Créditos",
|
|
"financialArtifactSummary": "Factura solo financiera. Los períodos de servicio recurrentes aparecen únicamente en las líneas de detalle recurrentes.",
|
|
"servicePeriod": "Período de servicio",
|
|
"servicePeriods": "Períodos de servicio",
|
|
"financialOnlyLine": "Línea solo financiera. Sin período de servicio recurrente.",
|
|
"downloadStarted": "Preparando la descarga del PDF...",
|
|
"downloadComplete": "PDF descargado correctamente.",
|
|
"emailStarted": "Enviando el correo de la factura...",
|
|
"emailSent": "Correo de la factura enviado correctamente.",
|
|
"advanceTiming": "Anticipado",
|
|
"arrearsTiming": "A plazo vencido",
|
|
"paymentSummaryServicePeriods": "El pago liquida el saldo de la factura para estos períodos de servicio recurrentes. Abra los detalles de la factura a continuación para ver el desglose completo línea por línea."
|
|
},
|
|
"frequency": {
|
|
"monthly": "Mensual",
|
|
"quarterly": "Trimestral",
|
|
"annual": "Anual",
|
|
"weekly": "Semanal",
|
|
"biweekly": "Quincenal"
|
|
},
|
|
"contractLine": {
|
|
"detailsTitle": "Detalles de la línea de contrato",
|
|
"name": "Nombre de la línea de contrato",
|
|
"frequency": "Frecuencia de facturación",
|
|
"startDate": "Fecha de inicio",
|
|
"endDate": "Fecha de finalización",
|
|
"noEndDate": "Sin fecha de finalización",
|
|
"status": "Estado",
|
|
"customRate": "Tarifa personalizada",
|
|
"serviceCategory": "Categoría del servicio",
|
|
"statusDescription": "Esta línea de contrato está actualmente {{status}} y {{expiry}}.",
|
|
"expiresOn": "expira el {{date}}",
|
|
"noExpiry": "no expira",
|
|
"cadenceOwnerContractDescription": "Los períodos de servicio recurrentes siguen la cadencia del aniversario del contrato para esta línea.",
|
|
"cadenceOwnerClientDescription": "Los períodos de servicio recurrentes siguen el calendario de facturación del cliente para esta línea.",
|
|
"cadenceOwnerContract": "Aniversario del contrato",
|
|
"cadenceOwnerClient": "Calendario de facturación del cliente",
|
|
"billingTimingAdvance": "Anticipado",
|
|
"billingTimingArrears": "A plazo vencido",
|
|
"cadenceOwner": "Propietario de la cadencia",
|
|
"billingTiming": "Momento de facturación"
|
|
},
|
|
"payment": {
|
|
"method": "Método de pago",
|
|
"date": "Fecha de pago",
|
|
"amount": "Importe",
|
|
"reference": "Referencia",
|
|
"status": "Estado"
|
|
},
|
|
"bucket": {
|
|
"title": "Horas de servicio",
|
|
"remaining": "Horas restantes",
|
|
"used": "Horas utilizadas",
|
|
"total": "Horas totales",
|
|
"usage": "Uso",
|
|
"overage": "Exceso",
|
|
"noContractLineTitle": "No hay planes de horas disponibles",
|
|
"noContractLineDescription": "No existen planes de horas activos para tu cuenta."
|
|
},
|
|
"messages": {
|
|
"noInvoices": "No se encontraron facturas",
|
|
"loadingInvoices": "Cargando facturas...",
|
|
"paymentSuccessful": "Pago procesado correctamente",
|
|
"paymentFailed": "El pago falló. Inténtalo de nuevo."
|
|
},
|
|
"quotes": {
|
|
"pendingQuotes": "Presupuestos pendientes",
|
|
"awaitingResponse": "{{count}} presupuesto(s) esperando su respuesta",
|
|
"noPending": "No hay presupuestos pendientes",
|
|
"viewAll": "Ver todos los presupuestos",
|
|
"locations": {
|
|
"primaryLocationHeading": "Ubicación del presupuesto",
|
|
"changeButton": "Cambiar",
|
|
"cancelChange": "Cancelar",
|
|
"notSet": "Ninguna ubicación seleccionada",
|
|
"groupHeading": "Ubicación",
|
|
"pickerPlaceholder": "Seleccione una ubicación",
|
|
"addLocationButton": "+ Agregar ubicación",
|
|
"removeGroup": "Quitar ubicación",
|
|
"needMoreLocations": "Este cliente solo tiene una ubicación activa. Agregue una segunda ubicación en la configuración del cliente para habilitar el presupuesto multisitio.",
|
|
"emptyGroup": "Aún no hay elementos para esta ubicación.",
|
|
"subtotal": "Subtotal de ubicación",
|
|
"unassigned": "Elementos sin ubicación"
|
|
},
|
|
"lineItems": {
|
|
"searchPlaceholder": "Buscar o escribir un nombre de elemento personalizado..."
|
|
}
|
|
},
|
|
"enums": {
|
|
"billingFrequency": {
|
|
"weekly": "Semanal",
|
|
"monthly": "Mensual",
|
|
"quarterly": "Trimestral",
|
|
"annually": "Anual"
|
|
},
|
|
"contractLineType": {
|
|
"Fixed": "Fijo",
|
|
"Hourly": "Por hora",
|
|
"Usage": "Basado en uso"
|
|
},
|
|
"quoteStatus": {
|
|
"draft": "Borrador",
|
|
"pending_approval": "Pendiente de aprobación",
|
|
"approved": "Aprobado",
|
|
"sent": "Enviado",
|
|
"accepted": "Aceptado",
|
|
"rejected": "Rechazado",
|
|
"expired": "Expirado",
|
|
"converted": "Convertido",
|
|
"cancelled": "Cancelado",
|
|
"superseded": "Reemplazado",
|
|
"archived": "Archivado"
|
|
},
|
|
"quoteStatusDescription": {
|
|
"draft": "La cotización se está preparando",
|
|
"pending_approval": "La cotización está a la espera de aprobación interna",
|
|
"approved": "La cotización está aprobada y lista para enviar",
|
|
"sent": "La cotización ha sido enviada al cliente",
|
|
"accepted": "El cliente aceptó la cotización",
|
|
"rejected": "El cliente rechazó la cotización",
|
|
"expired": "La cotización superó su fecha de validez",
|
|
"converted": "La cotización se ha convertido en registros de facturación",
|
|
"cancelled": "La cotización se canceló antes de la conversión",
|
|
"superseded": "La cotización fue reemplazada por una revisión",
|
|
"archived": "La cotización está archivada y es de solo lectura"
|
|
},
|
|
"invoiceStatus": {
|
|
"draft": "Borrador",
|
|
"sent": "Enviada",
|
|
"paid": "Pagada",
|
|
"overdue": "Vencida",
|
|
"cancelled": "Cancelada",
|
|
"pending": "Pendiente",
|
|
"prepayment": "Anticipo",
|
|
"partially_applied": "Parcialmente aplicada"
|
|
},
|
|
"invoiceStatusDescription": {
|
|
"draft": "Facturas en preparación que no se han enviado al cliente",
|
|
"sent": "Facturas finalizadas y enviadas al cliente",
|
|
"paid": "Facturas totalmente pagadas listas para conciliación",
|
|
"overdue": "Facturas finalizadas cuya fecha de vencimiento ha pasado",
|
|
"cancelled": "Facturas que han sido anuladas o canceladas",
|
|
"pending": "Facturas en espera de aprobación o procesamiento adicional",
|
|
"prepayment": "Facturas de anticipo o depósito",
|
|
"partially_applied": "Facturas con pagos parciales aplicados"
|
|
}
|
|
},
|
|
"quoteForm": {
|
|
"noticeTitle": "Cotización",
|
|
"readOnlyNotice": "Esta cotización es de solo lectura. Para realizar cambios, cree una nueva revisión.",
|
|
"breadcrumb": {
|
|
"billing": "Facturación",
|
|
"quotes": "Cotizaciones",
|
|
"quoteTemplates": "Plantillas de cotización",
|
|
"newQuote": "Nueva cotización"
|
|
},
|
|
"header": {
|
|
"editQuote": "Editar cotización",
|
|
"newQuote": "Nueva cotización",
|
|
"editTemplate": "Editar plantilla de cotización",
|
|
"newTemplate": "Nueva plantilla de cotización",
|
|
"quoteTotalLabel": "Total de la cotización",
|
|
"version": "v{{version}}"
|
|
},
|
|
"subtitle": {
|
|
"forClient": "Para {{clientName}}",
|
|
"expires": "Caduca el {{date}}",
|
|
"template": "Plantilla · {{description}}"
|
|
},
|
|
"actions": {
|
|
"pdf": "PDF",
|
|
"duplicate": "Duplicar",
|
|
"back": "Atrás",
|
|
"cancel": "Cancelar",
|
|
"previewPdf": "Vista previa del PDF",
|
|
"moreActions": "Más acciones",
|
|
"saving": "Guardando…",
|
|
"saveQuote": "Guardar cotización",
|
|
"saveTemplate": "Guardar plantilla",
|
|
"sendToClient": "Enviar al cliente",
|
|
"requestApproval": "Solicitar aprobación",
|
|
"requestChanges": "Solicitar cambios",
|
|
"approve": "Aprobar",
|
|
"revise": "Revisar",
|
|
"createNewRevision": "Crear nueva revisión",
|
|
"convertToContract": "Convertir en contrato",
|
|
"convertToInvoice": "Convertir en factura",
|
|
"convertToBoth": "Convertir en ambos",
|
|
"resend": "Reenviar",
|
|
"sendReminder": "Enviar recordatorio",
|
|
"cancelQuote": "Cancelar cotización"
|
|
},
|
|
"banners": {
|
|
"acceptedTitle": "Cotización aceptada",
|
|
"acceptedBy": "Aceptado por: {{name}}",
|
|
"acceptedOn": "Aceptado el: {{date}}",
|
|
"rejectedTitle": "Cotización rechazada",
|
|
"rejectedOn": "Rechazado el: {{date}}",
|
|
"rejectedReason": "Motivo: {{reason}}",
|
|
"convertedTitle": "Cotización convertida",
|
|
"convertedDescription": "Esta cotización se ha convertido en un contrato y/o factura."
|
|
},
|
|
"essentials": {
|
|
"title": "Esenciales",
|
|
"subtitle": "Se muestra al cliente en el documento de la cotización.",
|
|
"titleField": "Título",
|
|
"descriptionField": "Descripción / Alcance",
|
|
"descriptionHelp": "Un breve párrafo que aparece justo debajo del título en el PDF.",
|
|
"client": "Cliente",
|
|
"clientPlaceholder": "Seleccionar cliente",
|
|
"contact": "Contacto",
|
|
"contactPlaceholder": "Seleccionar contacto",
|
|
"currency": "Moneda",
|
|
"currencyPlaceholder": "Seleccionar moneda",
|
|
"quoteDate": "Fecha de la cotización",
|
|
"validUntil": "Válido hasta",
|
|
"validUntilHelp": "La cotización caduca automáticamente en esta fecha."
|
|
},
|
|
"lineItems": {
|
|
"title": "Líneas",
|
|
"subtitleEmpty": "Aún no hay elementos.",
|
|
"subtitleCount": "{{count}} elementos · {{mix}}",
|
|
"mixBoth": "recurrente y único",
|
|
"mixRecurring": "recurrente",
|
|
"mixOneTime": "único",
|
|
"addLocation": "+ Añadir ubicación",
|
|
"fromTemplate": "+ Desde plantilla"
|
|
},
|
|
"clientFacing": {
|
|
"title": "Texto visible al cliente",
|
|
"subtitle": "Aparece en el PDF, debajo de los totales.",
|
|
"notes": "Notas al cliente (opcional)",
|
|
"terms": "Términos y condiciones (opcional)"
|
|
},
|
|
"moreDetails": {
|
|
"title": "Más detalles",
|
|
"subtitle": "Número de OC, oportunidad, diseño del PDF",
|
|
"poNumber": "Número de OC",
|
|
"opportunity": "Oportunidad",
|
|
"opportunityPlaceholder": "ID de oportunidad (opcional)",
|
|
"pdfLayout": "Diseño del PDF",
|
|
"pdfLayoutPlaceholder": "Usar diseño predeterminado",
|
|
"pdfLayoutHelp": "Elija qué diseño verá el cliente. Déjelo por defecto para usar el predeterminado del tenant."
|
|
},
|
|
"footer": {
|
|
"savedAgo": "Cambios guardados · {{ago}}",
|
|
"saving": "Guardando…",
|
|
"unsaved": "Cambios sin guardar"
|
|
},
|
|
"sidebar": {
|
|
"quoteTotal": "Total de la cotización",
|
|
"recurringPerMonth": "{{amount}} recurrente / mes",
|
|
"subtotal": "Subtotal",
|
|
"discounts": "Descuentos",
|
|
"tax": "Impuesto",
|
|
"statusLabel": "Estado",
|
|
"approvalLabel": "Aprobación",
|
|
"approvalMessage": "Las cotizaciones requieren la aprobación del responsable de ventas antes de enviarse.",
|
|
"documentLayoutLabel": "Diseño del documento",
|
|
"defaultLayout": "Predeterminado del tenant",
|
|
"standardLayout": "Estándar",
|
|
"customLayout": "Personalizado",
|
|
"tenantDefault": "Predeterminado del tenant",
|
|
"changeLayout": "Cambiar"
|
|
}
|
|
}
|
|
}
|