{ "common": { "actions": { "add": "Agregar", "assign": "Asignar", "back": "Atrás", "cancel": "Cancelar", "close": "Cerrar", "create": "Crear", "delete": "Eliminar", "dismiss": "Descartar", "downloadCsv": "Descargar CSV", "edit": "Editar", "import": "Importar", "reactivate": "Reactivar", "remove": "Quitar", "retry": "Reintentar", "save": "Guardar", "saving": "Guardando...", "search": "Buscar", "select": "Seleccionar", "update": "Actualizar", "uploadCsv": "Subir CSV", "view": "Ver" }, "states": { "active": "Activo", "inactive": "Inactivo", "loading": "Cargando...", "na": "N/D", "none": "Ninguno", "archived": "Archivado", "draft": "Borrador", "expired": "Vencido", "published": "Publicado", "terminated": "Rescindido" }, "no": "No", "yes": "Sí" }, "clientsPage": { "title": "Página de clientes", "description": "Página principal de administración de clientes con búsqueda, filtros y vista de lista/cuadrícula de clientes", "searchPlaceholder": "Buscar clientes, notas, documentos e interacciones", "createClient": "Crear cliente", "createClientShort": "+ Crear cliente", "allClients": "Todos los clientes", "activeClients": "Clientes activos", "inactiveClients": "Clientes inactivos", "allTypes": "Todos los tipos", "companies": "Empresas", "individuals": "Individuos", "filterByStatus": "Filtrar por estado", "filterByType": "Filtrar por tipo", "statusFilterLabel": "Filtro de estado", "clientTypeFilterLabel": "Filtro de tipo de cliente", "cardsView": "Tarjetas", "tableView": "Tabla", "loadingClients": "Cargando clientes...", "actionsMenu": "Menú de acciones", "deleteClient": "Eliminar cliente", "deleteSelected": "Eliminar seleccionado", "deleteSelectedClients": "Eliminar clientes seleccionados", "markAsInactive": "Marcar como inactivo", "markShort": "Marcar", "reset": "Reiniciar", "deleteResults": "Eliminar resultados", "associatedRecords": "Registros asociados", "deleteBlockedSingle": "No se puede eliminar este cliente debido a los siguientes registros asociados:", "deleteBlockedPlural": "Estos clientes tienen registros asociados que deben eliminarse primero.", "deleteBlockedHelp": "Elimine o reasigne estos elementos antes de que se pueda eliminar el cliente.", "alreadyInactive": "Este cliente ya está marcado como inactivo.", "bulkInactivePrompt": "Marque estos clientes como inactivos. Estarán ocultos de la mayoría de las vistas, pero conservarán todos sus datos.", "singleDeletePrompt": "Este cliente tiene los siguientes registros asociados:", "deactivateContactsPrompt": "¿Le gustaría desactivar también los {{count}} contactos asociados?", "bulkDeleteError": "Se produjo un error al eliminar clientes. Por favor inténtalo de nuevo.", "singleDeleteError": "Se produjo un error al eliminar el cliente. Por favor inténtalo de nuevo.", "deleteSingleSuccess": "{{name}} se ha eliminado correctamente.", "markInactiveFailed": "No se pudo marcar el cliente como inactivo", "bulkInactiveError": "Se produjo un error al marcar clientes como inactivos. Por favor inténtalo de nuevo.", "singleInactiveError": "Se produjo un error al marcar al cliente como inactivo. Por favor inténtalo de nuevo.", "bulkReactivateError": "Se produjo un error al reactivar clientes. Por favor inténtalo de nuevo.", "exportError": "No se pudieron exportar clientes a CSV", "unknownClient": "Cliente desconocido", "unknownError": "Error desconocido", "actions": "Acciones", "allSelected": "Todos los {{count}} clientes seleccionados", "selectedSingle": "{{count}} Seleccionado", "selectedPlural": "{{count}} Seleccionado", "createSuccess": "{{name}} se ha creado correctamente.", "exportSuccess_one": "{{count}} cliente exportado a CSV", "exportSuccess_other": "{{count}} clientes exportados a CSV", "bulkDeleteSuccess_one": "{{count}} cliente se eliminó correctamente.", "bulkDeleteSuccess_other": "{{count}} clientes se eliminaron correctamente.", "bulkInactiveFailed_one": "{{count}} cliente no se pudo marcar como inactivo.", "bulkInactiveFailed_other": "{{count}} clientes no se pudieron marcar como inactivos.", "bulkInactiveWithContactsSuccess": "{{clientCount}} {{clientsLabel}} y {{contactCount}} {{contactsLabel}} se han marcado como inactivos correctamente.", "singleInactiveSuccess": "{{name}} se ha marcado como inactivo correctamente.", "bulkInactiveSuccess_one": "{{count}} cliente se ha marcado como inactivo correctamente.", "bulkInactiveSuccess_other": "{{count}} clientes se han marcado como inactivos correctamente.", "bulkInactiveShortSuccess_one": "{{count}} cliente se ha marcado como inactivo.", "bulkInactiveShortSuccess_other": "{{count}} clientes se han marcado como inactivos.", "bulkInactiveWithContactsShortSuccess": "{{clientCount}} {{clientsLabel}} y {{contactCount}} {{contactsLabel}} se han marcado como inactivos.", "bulkInactiveShortError": "Se produjo un error al marcar clientes como inactivos.", "bulkReactivateFailed_one": "{{count}} cliente no se pudo reactivar.", "bulkReactivateFailed_other": "{{count}} clientes no se pudieron reactivar.", "bulkReactivateWithContactsSuccess": "{{clientCount}} {{clientsLabel}} y {{contactCount}} {{contactsLabel}} se han reactivado correctamente.", "bulkReactivateSuccess_one": "{{count}} cliente se ha reactivado correctamente.", "bulkReactivateSuccess_other": "{{count}} clientes se han reactivado correctamente.", "deleteClientUnable": "No se puede eliminar este cliente.", "deleteSinglePrompt": "¿Está seguro de que desea eliminar {{name}}? Esta acción no se puede deshacer.", "markFailedAsInactive": "Marcar {{count}} como inactivo", "multiDeleteSuccessSummary_one": "{{count}} cliente eliminado correctamente.", "multiDeleteSuccessSummary_other": "{{count}} clientes eliminados correctamente.", "multiDeleteFailedSummary_one": "No se pudo eliminar {{count}} cliente", "multiDeleteFailedSummary_other": "No se pudieron eliminar {{count}} clientes", "inactiveAlternative": "En su lugar, puedes marcar este cliente como inactivo. Los clientes inactivos están ocultos de la mayoría de las vistas, pero conservan todos sus datos y pueden marcarse como activos más adelante.", "table": { "client": "Cliente" }, "entities": { "client_one": "cliente", "client_other": "clientes", "contact_one": "contacto", "contact_other": "contactos" }, "dependency": { "contact": "contacto", "contacts": "contactos", "ticket": "ticket", "tickets": "tickets", "project": "proyecto", "projects": "proyectos", "invoice": "factura", "invoices": "facturas", "document": "documento", "documents": "documentos", "interaction": "interacción", "interactions": "interacciones", "asset": "activo", "assets": "activos", "serviceUsageRecord": "registro de uso del servicio", "serviceUsageRecords": "registros de uso del servicio", "bucketUsageRecord": "registro de uso de bucket", "bucketUsageRecords": "registros de uso de bucket" }, "deleteSelectedPrompt_one": "¿Está seguro de que desea eliminar {{count}} cliente seleccionado? Esta acción no se puede deshacer.", "deleteSelectedPrompt_other": "¿Está seguro de que desea eliminar {{count}} clientes seleccionados? Esta acción no se puede deshacer.", "singleInactiveWithContactsSuccess_one": "{{name}} y {{count}} contacto han sido desactivados correctamente.", "singleInactiveWithContactsSuccess_other": "{{name}} y {{count}} contactos han sido desactivados correctamente.", "clientTypes": { "company": "Empresa", "individual": "Persona" }, "print": { "title": "Clientes", "selectedTitle": "Clientes seleccionados", "subtitle": "{{count}} clientes", "noClients": "No hay clientes para imprimir", "emptyValue": "-", "columns": { "name": "Cliente", "type": "Tipo", "phone": "Teléfono", "address": "Dirección", "status": "Estado" }, "optionsDialog": { "title": "Opciones de impresión", "description": "Elige qué columnas incluir al imprimir los clientes." } }, "shareTooltip": "Imprimir, importar y exportar", "defaultClientDeleteError": "No se puede eliminar el cliente predeterminado. Primero establezca otro cliente como predeterminado en Configuración general.", "clientNotFound": "Cliente no encontrado.", "deletePermissionDenied": "Permiso denegado: no se pueden eliminar clientes." }, "clientDetails": { "title": "Detalles del cliente", "backToClients": "Volver a Clientes", "openInNewTab": "Abrir en nueva pestaña", "addTicket": "Agregar ticket", "details": "Detalles", "contacts": "Contactos", "assets": "Activos", "documents": "Documentos", "billing": "Facturación", "interactions": "Interacciones", "notes": "Notas", "huduTab": "Hudu", "huduPasswordsTab": "Contraseñas", "clientLocations": "Ubicaciones de clientes", "billingDashboard": "Panel de facturación", "clientAndContacts": "Cliente y contactos", "clientOnly": "Sólo cliente", "accountManager": "Gerente de cuentas", "clientName": "Nombre del cliente", "clientType": "Tipo de cliente", "industry": "Industria", "companySize": "Tamaño de la empresa", "annualRevenue": "Ingresos anuales", "lastContactDate": "Fecha del último contacto", "paymentTerms": "Condiciones de pago", "parentClient": "Cliente principal", "defaultContact": "Contacto predeterminado", "providerDefault": "Proveedor predeterminado", "inboundEmailDomains": "Dominios de correo electrónico entrante", "inboundEmailDomainsHelp": "Sólo estos dominios se utilizarán para la coincidencia de dominios de correo electrónico entrante (por ejemplo, acme.com). Los dominios deben ser únicos entre los clientes.", "noInboundDomains": "No hay dominios de correo electrónico entrante configurados. No se utilizará la coincidencia de dominio.", "inboundTicketDestination": "Destino del ticket entrante", "inboundDestinationPrecedence": "Prioridad: Anulación de contacto -> Destino del cliente -> Valor predeterminado del proveedor.", "manageLocations": "Administrar ubicaciones", "loadingUsers": "Cargando usuarios...", "loadingPolicies": "Cargando políticas...", "loadingDestinations": "Cargando destinos...", "loadingTaxSettings": "Cargando configuración de impuestos...", "loadingTicketFilters": "Cargando filtros de tickets...", "saveSuccess": "Los datos del cliente se guardaron correctamente.", "saveError": "No se pudieron guardar los detalles del cliente. Por favor inténtalo de nuevo.", "deleteSuccess": "El cliente ha sido eliminado exitosamente.", "inactiveSuccess": "El cliente ha sido marcado como inactivo exitosamente.", "reactivateSuccess": "El cliente ha sido reactivado exitosamente.", "refreshError": "No se pudieron recuperar los datos más recientes del cliente.", "deleteValidationError": "No se pudo validar la eliminación. Por favor inténtalo de nuevo.", "deactivateError": "Se produjo un error al desactivar el cliente. Por favor inténtalo de nuevo.", "markInactiveError": "Se produjo un error al marcar al cliente como inactivo. Por favor inténtalo de nuevo.", "reactivateError": "Se produjo un error al reactivar el cliente. Por favor inténtalo de nuevo.", "entraSyncError": "No se pudo iniciar la sincronización de Entra.", "deleteError": "No se pudo eliminar el cliente. Por favor inténtalo de nuevo.", "deactivateWithContactsSuccess_one": "El cliente y {{count}} contacto se han desactivado correctamente.", "deactivateWithContactsSuccess_other": "El cliente y {{count}} contactos se han desactivado correctamente.", "reactivateWithContactsSuccess_one": "El cliente y {{count}} contacto se han reactivado correctamente.", "reactivateWithContactsSuccess_other": "El cliente y {{count}} contactos se han reactivado correctamente.", "singleInactiveSuccess": "{{name}} se ha marcado como inactivo correctamente.", "slaPolicy": "Política de SLA", "defaultPolicy": "{{name}} (predeterminado)", "selectSlaPolicy": "Seleccionar política de SLA", "selectDefaultContact": "Seleccionar contacto predeterminado", "noActiveContacts": "Sin contactos activos", "timezone": "Zona horaria", "timezoneHelper": "Seleccione la zona horaria para este cliente", "taxSettings": "Configuración de impuestos", "additionalInfo": "Información adicional", "tickets": "Tickets", "saveChanges": "Guardar cambios", "requiredFields": "Por favor complete todos los campos requeridos", "syncEntraNow": "Sincronizar Entra ahora", "deactivateClient": "Desactivar Cliente", "reactivateClient": "Reactivar Cliente", "deactivatePrompt": "Este cliente tiene {{count}} contactos activos. ¿Quieres desactivarlos también?", "reactivatePrompt": "Este cliente tiene {{count}} contactos inactivos. ¿Le gustaría reactivarlos también?", "deactivatePortalWarning": "Los usuarios desactivados no podrán iniciar sesión en el portal del cliente.", "activeContacts": "Contactos activos:", "inactiveContacts": "Contactos inactivos:", "selectClientType": "Seleccionar tipo de cliente", "status": { "label": "Estado", "helper": "Establecer el estado del cliente como activo o inactivo" }, "entraSyncStarted": "Sincronización de Entra iniciada. ID de ejecución: {{runId}}", "entraSyncStatusUnknown": "Estado de sincronización no disponible", "clientNameRequired": "El nombre del cliente es obligatorio", "deactivateClientAndContacts": "Desactivar cliente y contactos", "reactivateClientAndContacts": "Reactivar cliente y contactos", "inboundDomainAdded": "Dominio de correo entrante añadido", "inboundDomainAddFailed": "Error al añadir el dominio", "inboundDomainRemoved": "Dominio de correo entrante eliminado", "inboundDomainRemoveFailed": "Error al eliminar el dominio", "fields": { "accountManager": "Gestor de cuenta", "url": "URL", "status": "Estado" }, "deactivateClientDescription": "Desactiva el registro sin eliminar sus datos.", "deactivateClientOnlyDescription": "Desactiva el cliente, pero deja activos sus contactos.", "nameAliasAddFailed": "Error al agregar el alias", "nameAliasAdded": "Alias agregado", "nameAliasRemoveFailed": "Error al eliminar el alias", "nameAliasRemoved": "Alias eliminado", "nameAliases": "Alias de coincidencia", "noNameAliases": "No hay alias configurados. El propio nombre del cliente siempre coincide." }, "quickAddClient": { "title": "Agregar nuevo cliente", "clientDetails": "Detalles del cliente", "clientLocation": "Ubicación del cliente", "contactInformation": "Información del contacto", "clientName": "Nombre del cliente *", "clientType": "Tipo de cliente", "company": "Compañía", "individual": "Individual", "companyNamePlaceholder": "Nombre de empresa", "enterClientName": "Introduzca el nombre del cliente", "websiteUrl": "URL del sitio web", "accountManager": "Gerente de cuentas", "selectAccountManager": "Seleccione Administrador de cuentas", "industry": "Industria", "notes": "Notas", "notesPlaceholder": "Agregue notas iniciales (opcional)", "address": "Dirección", "streetAddress": "Dirección", "city": "Ciudad", "state": "Estado", "stateProvince": "Estado/Provincia", "postalCode": "Código Postal", "zipCode": "Código postal", "country": "País", "selectCountry": "Seleccionar país", "mainOffice": "Oficina central", "contactName": "Nombre de contacto", "contactEmail": "Correo electrónico de contacto", "contactPhone": "Teléfono de contacto", "email": "Correo electrónico", "emailPlaceholder": "Dirección de correo electrónico", "phone": "Teléfono", "phonePlaceholder": "Número de teléfono", "name": "Nombre", "creating": "Creando...", "createClient": "Crear cliente", "loadingUsers": "Cargando usuarios...", "loadingCountries": "Cargando países...", "validationHeader": "Corrija los siguientes errores:", "clientCreatedLocationFailed": "Cliente creado pero no pudo agregar la ubicación.", "clientCreatedContactFailed": "Cliente creado pero no pudo agregar contacto.", "usersLoadError": "No se pudieron cargar usuarios para la selección del administrador de cuentas.", "countriesLoadError": "No se pudieron cargar los países.", "phoneTypeSuggestionsError": "No se pudieron cargar las sugerencias de tipo de teléfono de contacto.", "created": "\"{{name}}\" creado. Agregue otro cliente a continuación.", "createAndAddAnother": "Crear + Agregar otro", "createAndView": "Crear + Ver cliente", "additionalDetails": "Detalles adicionales" }, "clientCreatedDialog": { "title": "Cliente creado", "viewClient": "Ver cliente", "addAnother": "Agregar otro", "createdMessage": "\"{{name}}\" se ha creado correctamente.", "unknownClient": "Cliente" }, "clientLocations": { "title": "Administrador de ubicaciones de clientes", "listTitle": "Ubicaciones", "addLocation": "Agregar ubicación", "addNewLocation": "Agregar nueva ubicación", "editLocation": "Editar ubicación", "deleteLocation": "Eliminar ubicación", "emptyTitle": "Aún no hay ubicaciones", "emptyDescription": "Haga clic en \"Agregar ubicación\" para comenzar", "locationName": "Nombre de la ubicación", "locationNamePlaceholder": "por ejemplo, oficina principal, almacén", "address": "Dirección", "addressLine1": "Dirección Línea 1", "addressLine2": "Línea de dirección 2", "addressLine3": "Línea de dirección 3", "city": "Ciudad", "stateProvince": "Estado/Provincia", "postalCode": "Código Postal", "country": "País", "phone": "Teléfono", "email": "Correo electrónico", "notes": "Notas", "billingAddress": "Dirección de facturación", "shippingAddress": "Dirección de envío", "defaultLocation": "Ubicación predeterminada", "defaultSetSuccess": "Ubicación predeterminada actualizada", "createSuccess": "Ubicación creada con éxito", "updateSuccess": "Ubicación actualizada correctamente", "deleteSuccess": "Ubicación eliminada correctamente", "loadError": "No se pudieron cargar las ubicaciones de los clientes", "saveError": "No se pudo guardar la ubicación", "deleteError": "No se pudo eliminar la ubicación", "setDefaultError": "No se pudo establecer la ubicación predeterminada", "countriesLoadError": "No se pudieron cargar los países", "taxRegionsLoadError": "No se pudieron cargar las regiones impositivas", "confirmDelete": "¿Está seguro de que desea eliminar la ubicación \"{{name}}\"? Esta acción no se puede deshacer." }, "billingConfigForm": { "billingContactInformation": "Información de contacto de facturación", "billingContact": "Contacto de facturación", "alternativeBillingEmail": "Correo electrónico de facturación alternativo", "alternativeBillingEmailHelp": "O ingrese un correo electrónico de facturación específico", "invoiceDeliveryMethod": "Método de entrega de facturas", "invoiceTemplate": "Plantilla de factura", "invoiceTemplateHelp": "Seleccione una plantilla o use la predeterminada", "paymentTerms": { "dueOnReceipt": "Vencimiento al recibir", "net15": "neto 15", "net30": "neto 30" }, "preferredPaymentMethod": "Método de pago preferido", "defaultCurrency": "Moneda predeterminada", "selectTaxRegion": "Seleccionar región fiscal (opcional)", "loadingRegions": "Cargando regiones...", "taxRegionLoadError": "No se pudieron cargar las regiones fiscales.", "defaultTaxRegion": "Región fiscal predeterminada", "defaultTemplateLabel": "(Por defecto)", "deliveryMethods": { "both": "Ambos", "email": "Correo electrónico", "mail": "Correo" }, "paymentMethods": { "bankTransfer": "Transferencia bancaria", "check": "Cheque", "creditCard": "Tarjeta de crédito" }, "paymentTermsLabel": "Condiciones de pago", "standardTemplateLabel": "(Estándar)", "taxRegionsLoadError": "No se pudieron cargar las regiones fiscales.", "usingDefaultTemplate": "Usando plantilla predeterminada: {{name}}" }, "billingConfiguration": { "general": "General", "contractLines": "Líneas de contrato", "contractLineOverlaps": "Superposiciones de líneas de contrato", "taxRates": "Tasas de impuestos", "save": "Guardar configuración de facturación", "errorDialogTitle": "Error", "saveSuccess": "La configuración de facturación se guardó correctamente", "saveError": "No se pudo guardar la configuración de facturación", "serviceTypeRequired": "Por favor seleccione un tipo de servicio", "contractLineAddSuccess": "Línea de contrato agregada exitosamente", "contractLineSaveSuccess": "Línea de contrato guardada exitosamente", "contractLineSaveError": "No se pudieron guardar los cambios. Por favor inténtalo de nuevo.", "contractLineUpdateSuccess": "Línea de contrato actualizada correctamente", "contractLineRemoveSuccess": "Línea de contrato eliminada con éxito", "contractLineAddError": "No se pudo agregar la línea de contrato. Por favor inténtalo de nuevo.", "contractLineUpdateError": "No se pudo actualizar la línea del contrato. Por favor inténtalo de nuevo.", "contractLineRemoveError": "No se pudo eliminar la línea del contrato. Por favor inténtalo de nuevo.", "serviceAddSuccess": "Servicio agregado exitosamente", "serviceUpdateSuccess": "Servicio actualizado exitosamente", "serviceDeleteSuccess": "Servicio eliminado exitosamente", "serviceCategoryUpdateSuccess": "Categoría de servicio actualizada con éxito", "serviceAddError": "No se pudo agregar el servicio. Por favor inténtalo de nuevo.", "serviceUpdateError": "No se pudo actualizar el servicio. Por favor inténtalo de nuevo.", "serviceCategoryUpdateError": "No se pudo actualizar la categoría de servicio. Por favor inténtalo de nuevo.", "serviceDeleteError": "No se pudo eliminar el servicio. Por favor inténtalo de nuevo.", "defaultTaxAssignedSuccess": "Tasa impositiva predeterminada asignada correctamente", "defaultTaxChangedSuccess": "La tasa impositiva predeterminada se cambió correctamente", "defaultTaxAssignError": "No se pudo asignar la tasa impositiva predeterminada", "defaultTaxChangeError": "No se pudo cambiar la tasa impositiva predeterminada", "taxRatesRefreshError": "No se pudo actualizar la lista de tasas impositivas.", "taxRateCreatedSuccess": "Tasa impositiva creada exitosamente", "invalidDateFormat": "Formato de fecha no válido", "invalidDate": "Fecha no válida", "formattingError": "Error de formato", "removeAssignmentTitle": "Eliminar asignación de línea de contrato", "removeAssignmentMessage": "¿Está seguro de que desea eliminar esta asignación de línea de contrato del cliente? La línea del contrato en sí no se eliminará.", "contracts": "Contratos" }, "clientBillingSchedule": { "title": "Calendario de facturación", "edit": "Editar horario", "save": "Guardar horario", "saveSuccess": "Calendario de facturación guardado", "saveError": "No se pudo guardar el cronograma de facturación", "loadError": "No se pudo cargar el cronograma de facturación", "previewError": "No se pudo obtener una vista previa de los períodos de facturación", "historyPreviewError": "No se pudo obtener una vista previa del arranque del historial de facturación", "createNextCycle": "Crear siguiente ciclo", "createNextCycleSuccess": "Creado el siguiente ciclo de facturación", "createNextCycleError": "No se pudo crear el siguiente ciclo de facturación", "cycleType": "Tipo de ciclo", "selectBillingCycle": "Seleccione ciclo de facturación...", "dayOfMonth": "Día del mes (1–28)", "selectDay": "Selecciona el día...", "weekday": "Día laborable", "selectWeekday": "Seleccione el día de la semana...", "firstCycleStartDate": "Fecha de inicio del primer ciclo (UTC)", "firstCycleStartHelp": "Se utiliza para establecer una paridad estable; déjelo en blanco para ciclos alternantes quincenales.", "startMonth": "Mes de inicio", "selectMonth": "Seleccione mes...", "historyStartDate": "Fecha de inicio del historial de facturación (opcional)", "historyStartHelp": "Si se establece, los ciclos históricos de facturación del cliente se generan desde el límite del ciclo de facturación que lo contiene hasta el día de hoy.", "billingPeriodsSemantics": "Los períodos de facturación utilizan la semántica [inicio, fin). La fecha de finalización es el inicio del siguiente período.", "rollingNoAnchor": "Rodante (sin ancla)", "weeklyRolling": "Semanal (continuo)", "biWeeklyRolling": "Quincenal (continuo)", "createInProgress": "Creando...", "previewLoading": "Cargando vista previa de cadencia del cliente...", "currentScheduleLoading": "Cargando programación actual...", "updatingHistoryPreview": "Actualizando la vista previa del arranque del historial de facturación...", "updatingCadencePreview": "Actualizando la vista previa de la cadencia del cliente...", "normalizedHistoryBoundary": "Límite histórico normalizado: {{date}}", "earliestInvoicedBoundary": "Límite facturado más temprano: {{date}}", "uninvoicedCyclesToRegenerate": "Ciclos no facturados para regenerar: {{count}}", "cycleOptions": { "weekly": "Semanalmente", "bi-weekly": "Quincenal", "monthly": "Mensual", "quarterly": "Trimestral", "semi-annually": "Semestralmente", "annually": "Anualmente" }, "summary": { "weeklyAnchored": "Semanal (día laborable={{dayOfWeek}})", "biWeeklyAnchored": "Quincenal (comienza {{referenceDate}})", "monthly": "Mensual (día {{dayOfMonth}})", "quarterly": "Trimestral ({{monthOfYear}}/{{dayOfMonth}})", "semiAnnually": "Semestralmente ({{monthOfYear}}/{{dayOfMonth}})", "annually": "Anualmente ({{monthOfYear}}/{{dayOfMonth}})" }, "months": { "1": "Enero", "2": "Febrero", "3": "Marzo", "4": "Abril", "5": "Mayo", "6": "Junio", "7": "Julio", "8": "Agosto", "9": "Septiembre", "10": "Octubre", "11": "Noviembre", "12": "Diciembre" }, "weekdays": { "1": "Lunes", "2": "Martes", "3": "Miércoles", "4": "Jueves", "5": "Viernes", "6": "Sábado", "7": "Domingo" } }, "clientContractAssignment": { "title": "Contratos", "assignContract": "Asignar contrato", "contracts": "Contratos", "contractName": "Nombre del contrato", "contractLines": "Líneas de contrato", "description": "Descripción", "startDate": "Fecha de inicio", "endDate": "Fecha de finalización", "renewal": "Renovación", "status": "Estado", "actions": "Acciones", "openMenu": "Abrir menú", "unassign": "Desasignar", "loading": "Cargando contratos...", "empty": "Aún no se han asignado contratos a este cliente.", "loadError": "No se pudieron cargar los datos de los contratos", "selectContract": "Seleccionar contrato...", "noDescription": "Sin descripción", "ongoing": "En curso", "autoRenew": "Renovación automática", "nonRenewing": "No renovable", "manualRenewal": "renovación manual", "manualDue": "Manual (debido a {{date}})", "addError": "No se pudo agregar el contrato al cliente", "deactivateError": "No se pudo desactivar el contrato", "updateError": "No se pudo actualizar el contrato", "createContract": "Crear contrato", "quickAdd": "Agregar rápido" }, "clientContractDialog": { "assignTitle": "Asignar contrato al cliente", "editTitle": "Editar asignación de contrato", "renewalSettings": "Configuración de renovación", "renewalSettingsHelp": "Establezca cómo se debe manejar esta asignación de plazo fijo en el momento de la renovación.", "renewalSettingsSubtext": "Las configuraciones de renovación aparecen para asignaciones de plazo fijo con una fecha de finalización.", "tenantDefaults": "Usar los valores predeterminados de renovación de inquilinos", "tenantDefaultsHelp": "El modo de renovación y el período de notificación seguirán los valores predeterminados de facturación de su organización.", "autoRenew": "Renovación automática", "manualRenewal": "renovación manual", "nonRenewing": "No renovable", "ongoing": "En curso (sin fecha de finalización)", "noticePeriodDays": "Período de aviso (días)", "renewalTermMonths": "Plazo de renovación (meses)", "includedContractLines": "Líneas de contrato incluidas:", "unexpectedError": "Se produjo un error inesperado.", "assignContract": "Asignar contrato", "cancel": "Cancelar", "endDate": "Fecha de finalización", "endDateAfterStart": "La fecha de finalización debe ser posterior a la fecha de inicio.", "endDateRequired": "Se requiere fecha de finalización cuando no está en curso", "noticePeriodInvalid": "Los días del período de notificación deben ser un número entero no negativo", "noticePeriodPlaceholder": "por ejemplo, 30", "renewalMode": "Modo de renovación", "renewalTermInvalid": "Los meses del plazo de renovación deben ser un número entero positivo para los contratos de renovación automática", "renewalTermPlaceholder": "por ejemplo, 12", "startDate": "Fecha de inicio", "startDateRequired": "Se requiere fecha de inicio", "updateAssignment": "Actualizar asignación", "useTenantRenewalDefaults": "Usar los valores predeterminados de renovación de inquilinos" }, "clientContractLineDashboard": { "title": "Métricas de uso (últimos 30 días)", "usageChart": "Gráfico de uso", "hoursByService": "Horas por Servicio (Últimos 30 Días)", "recentInvoices": "Facturas recientes", "bucketUsage": "Uso de bucket", "invoiceNumber": "Factura #", "invoiceDate": "Fecha de factura", "dueDate": "Fecha de vencimiento", "status": "Estado", "totalAmount": "Monto total", "serviceName": "Nombre del servicio", "totalDurationHours": "Duración total (horas)", "totalQuantity": "Cantidad total", "unit": "Unidad", "hoursUsed": "horas utilizadas", "hoursUsedSummary": "{{used}} / {{total}} horas utilizadas", "noActiveBucketPlans": "No se encontraron planes de bucket activos.", "noHours": "No se registraron horas en el período seleccionado.", "noInvoices": "No se encontraron facturas recientes.", "noUsage": "No se encontraron datos de uso en el período seleccionado." }, "clientContractLineGuide": { "title": "Guía de desambiguación de líneas de contrato", "overviewTitle": "Descripción general", "bestPracticesTitle": "Mejores prácticas", "troubleshootingTitle": "Solución de problemas", "commonScenariosTitle": "Escenarios comunes", "bestPractices": { "clearNamingDescription": "Nombre las líneas del contrato de manera que indique claramente su propósito y alcance para este cliente.", "clearNamingItem1": "Incluya el tipo de línea de contrato en el nombre (por ejemplo, \"Bucket de soporte mensual\", \"Plan basado en proyectos\")", "clearNamingItem2": "Considere incluir fechas o números de versión para líneas de contrato que cambian con el tiempo.", "clearNamingItem3": "Utilice patrones de nombres consistentes en todas las líneas de contrato para este cliente", "clearNamingTitle": "2. Utilice convenciones de nomenclatura de planes claras", "description": "Siga estas mejores prácticas para garantizar una facturación precisa y minimizar la confusión al administrar múltiples líneas de contrato para este cliente.", "documentRulesDescription": "Documente claramente cómo se deben manejar las superposiciones de servicios para este cliente específico.", "documentRulesItem1": "Cree pautas específicas para el cliente sobre qué línea de contrato utilizar en diferentes escenarios.", "documentRulesItem2": "Comparta estas pautas con todos los miembros del equipo que trabajan con este cliente.", "documentRulesItem3": "Incluya ejemplos de situaciones comunes y cómo deben manejarse.", "documentRulesTitle": "3. Reglas de desambiguación de documentos", "minimizeOverlapsDescription": "Siempre que sea posible, evite tener el mismo servicio en múltiples líneas de contrato para este cliente. Esto simplifica la facturación y los informes.", "minimizeOverlapsItem1": "Revise la Matriz de superposición de servicios para identificar servicios superpuestos", "minimizeOverlapsItem2": "Considere consolidar líneas de contrato o reorganizar servicios.", "minimizeOverlapsItem3": "Si son necesarias superposiciones, asegúrese de documentar claramente qué línea de contrato se debe utilizar cuando", "minimizeOverlapsTitle": "1. Minimizar las superposiciones de servicios", "title": "Mejores prácticas para la desambiguación de líneas de contrato" }, "overview": { "benefitBilling": "Facturación precisa y reconocimiento de ingresos", "benefitReporting": "Informes y análisis claros", "benefitsTitle": "Beneficios de una desambiguación adecuada", "benefitTracking": "Entrada de tiempo simplificada y seguimiento de uso", "benefitTransparency": "Transparencia mejorada para el cliente", "bucketPriorityDescription": "Las líneas de contrato de bucket tienen prioridad al eliminar la ambigüedad de los servicios para este cliente.", "bucketPriorityLabel": "Prioridad del bucket:", "description": "Cuando un cliente tiene varias líneas de contrato que incluyen el mismo servicio, el sistema necesita determinar qué línea de contrato usar para entradas de tiempo y registros de uso. Esta guía explica cómo gestionar esta situación para este cliente específico.", "explicitAssignmentDescription": "Cuando un servicio aparece en varias líneas de contrato, los usuarios deben elegir el contexto de asignación previsto en lugar de depender de un respaldo implícito.", "explicitAssignmentLabel": "Asignación explícita requerida:", "explicitSelectionDescription": "Cuando los usuarios deben elegir manualmente qué línea de contrato facturar para este cliente.", "explicitSelectionLabel": "Selección explícita:", "issueIncorrectBilling": "Facturación incorrecta cuando el contexto de la asignación es ambiguo", "issueReporting": "Informar inconsistencias en diferentes líneas de contrato", "issueUnexpectedBilling": "Comportamiento de facturación inesperado para este cliente", "issueUserConfusion": "Confusión del usuario al seleccionar líneas de contrato para el ingreso de tiempo", "keyConceptsTitle": "Conceptos clave:", "potentialIssuesTitle": "Posibles problemas para este cliente", "serviceOverlapDescription": "Cuando el mismo servicio aparece en múltiples líneas de contrato para este cliente.", "serviceOverlapLabel": "Superposición de servicios:", "title": "Comprender la desambiguación de la línea de contrato para este cliente" }, "scenarios": { "description": "Estos ejemplos ilustran cómo funciona la desambiguación de líneas de contrato en escenarios comunes para este cliente.", "scenario1Description": "Cuando un servicio aparece tanto en una línea de contrato de bucket como en una línea de contrato estándar para este cliente:", "scenario1Item1": "La línea de contrato del bucket se selecciona de forma predeterminada", "scenario1Item2": "Las entradas de tiempo y el uso consumen la cantidad incluida del bucket y, a continuación, continúan en la misma línea de contrato del bucket como sobreuso a la tarifa de sobreuso configurada", "scenario1Item3": "La facturación no cambia automáticamente a la línea de contrato estándar cuando el bucket se agota", "scenario1Item4": "Los usuarios pueden anular manualmente este valor predeterminado seleccionando una línea de contrato diferente durante el ingreso de tiempo", "scenario1Title": "Escenario 1: Plan de bucket + Plan estándar", "scenario2Description": "Cuando un servicio aparece en varias líneas de contrato estándar para este cliente:", "scenario2Item1": "Se pedirá a los usuarios que seleccionen qué línea de contrato facturar durante el ingreso de tiempo.", "scenario2Item2": "Si no se selecciona explícitamente ninguna línea de contrato, la facturación debería detenerse con un error de ambigüedad que requiere la elección del usuario.", "scenario2Item3": "Considere consolidar estas líneas de contrato para evitar confusión.", "scenario2Title": "Escenario 2: múltiples planes estándar", "scenario3Description": "Cuando un servicio aparece en varias líneas de contrato de bucket para este cliente:", "scenario3Item1": "Se pedirá a los usuarios que seleccionen en qué bucket facturar durante la entrada de tiempo.", "scenario3Item2": "Si no se selecciona explícitamente ningún bucket, la facturación debería detenerse con un error de ambigüedad que requiere la elección del usuario.", "scenario3Item3": "Los equipos pueden definir guías internas para elegir entre buckets superpuestos", "scenario3Title": "Escenario 3: Planes de múltiples buckets", "title": "Escenarios comunes de desambiguación" }, "tabs": { "bestPractices": "Mejores prácticas", "overview": "Descripción general", "scenarios": "Escenarios comunes", "troubleshooting": "Solución de problemas" }, "troubleshooting": { "description": "Soluciones para problemas comunes relacionados con la desambiguación de líneas de contrato para este cliente.", "issueReportingDescription": "Si ve informes inconsistentes para servicios que aparecen en varias líneas de contrato para este cliente:", "issueReportingItem1": "Utilice el filtro contract_line_id en los informes para ver datos de líneas de contrato específicas", "issueReportingItem2": "Compruebe si las entradas de tiempo o los registros de uso tienen asignaciones de líneas de contrato explícitas", "issueReportingItem3": "Revise los datos históricos para ver si las asignaciones de líneas de contrato han cambiado con el tiempo.", "issueReportingItem4": "Considere actualizar la configuración de la línea de contrato del cliente para reducir las superposiciones", "issueReportingTitle": "Problema: informes inconsistentes", "issueSelectionMissingDescription": "Si el menú desplegable de selección de línea de contrato no aparece durante el ingreso de tiempo para este cliente:", "issueSelectionMissingItem1": "Verificar que el servicio esté realmente incluido en varias líneas de contrato activas", "issueSelectionMissingItem2": "Compruebe si una de las líneas de contrato ha caducado o aún no está activa", "issueSelectionMissingItem3": "Asegúrese de que las selecciones de cliente y servicio se realicen antes de esperar el menú desplegable de línea de contrato.", "issueSelectionMissingItem4": "Intente actualizar la página o borrar el caché del navegador.", "issueSelectionMissingTitle": "Problema: la selección del plan no aparece", "issueWrongPlanDescription": "Si las entradas de tiempo se facturan a la línea de contrato incorrecta para este cliente:", "issueWrongPlanItem1": "Compruebe si la entrada de tiempo tiene asignado un contract_line_id explícito", "issueWrongPlanItem2": "Verificar que el servicio esté incluido en la línea de contrato esperada", "issueWrongPlanItem3": "Revise las reglas de desambiguación para comprender por qué se seleccionó una línea de contrato en particular", "issueWrongPlanItem4": "Actualice la entrada de tiempo para seleccionar explícitamente la línea de contrato correcta", "issueWrongPlanItem5": "Considere actualizar la configuración de la línea de contrato del cliente para evitar problemas futuros.", "issueWrongPlanTitle": "Problema: Entrada de tiempo facturada al plan incorrecto", "title": "Solución de problemas de desambiguación de líneas de contrato" } }, "clientCreditExpirationSettings": { "title": "Configuración de vencimiento de crédito", "enable": "Habilitar vencimiento de crédito", "useDefault": "Usar configuración predeterminada", "useDefaultHelp": "Utilice la configuración predeterminada de todo el sistema para el vencimiento del crédito", "expirationPeriodDays": "Periodo de Vencimiento (Días)", "expirationPeriodHelp": "Número de días después de los cuales caducan los créditos", "notificationDays": "Días de notificación", "notificationDaysHelp": "Días antes del vencimiento para enviar notificaciones (separados por comas)", "placeholder": "por ejemplo, 30, 7, 1", "enabledHelp": "Cuando esté habilitado, los créditos caducarán después del período especificado.", "loadError": "No se pudo cargar la configuración", "saveError": "No se pudo guardar la configuración", "clientSpecificEnabled": "Configuraciones de vencimiento de crédito específicas del cliente habilitadas.", "notificationsUpdatedSuccess": "Se han actualizado los días de notificación.", "periodUpdatedSuccess": "Se actualizó el período de vencimiento del crédito.", "save": "Guardar", "updatedSuccess": "Se actualizó la configuración de vencimiento de crédito.", "updateError": "No se pudo actualizar la configuración", "useDefaultSuccess": "El cliente ahora utilizará la configuración predeterminada de vencimiento de crédito." }, "clientGridCard": { "actions": "Acciones del cliente", "quickView": "Vista rápida", "defaultClient": "Cliente predeterminado", "taxExempt": "Exento de impuestos", "taxExemptTooltip": "Este cliente está exento de impuestos: no se aplicarán impuestos a sus facturas.", "type": "Tipo:", "address": "Dirección:", "phone": "Teléfono:", "url": "URL:", "clientActions": "Acciones del cliente", "default": "Por defecto", "selectClient": "Seleccionar cliente {{name}}" }, "clientLanguagePreference": { "title": "Configuración de idioma del cliente", "label": "Idioma predeterminado para contactos", "description": "Se aplica a cada usuario del portal de {{clientName}} a menos que haya establecido su propia preferencia en su perfil.", "selectPlaceholder": "Seleccione un idioma", "updating": "Actualizando preferencia de idioma...", "loadError": "No se pudo cargar la preferencia de idioma del cliente:", "saveError": "No se pudo actualizar la preferencia de idioma del cliente", "cardDescription": "Establezca el idioma predeterminado para todos los contactos en {{clientName}}.", "saveSuccess": "Idioma predeterminado para {{clientName}} contactos actualizado a {{language}}", "thisClient": "cliente" }, "clientQuickView": { "notFound": "Cliente no encontrado", "loadError": "No se pudieron cargar los detalles del cliente", "unknownError": "algo salió mal" }, "clientServiceOverlapMatrix": { "title": "Matriz de superposición de servicios", "description": "Esta matriz muestra qué servicios aparecen en múltiples líneas de contrato para este cliente.", "showAllServices": "Mostrar todos los servicios", "showOverlappingOnly": "Mostrar solo superposición", "service": "Servicio", "count": "Contar", "serviceCountSuffix": "servicios)", "legendTitle": "Leyenda de la matriz", "legendIncluded": "El servicio está incluido en la línea del contrato (sin superposición)", "legendOverlap": "El servicio está incluido en la línea del contrato (con superposición)", "legendMultiple": "El servicio aparece en varias líneas de contrato.", "noContractLines": "No hay líneas de contrato asignadas a este cliente", "noOverlaps": "No se detectaron superposiciones de servicios para este cliente", "loadError": "No se pudieron cargar los datos para la matriz de superposición del servicio al cliente", "unknown": "Desconocido", "countColumn": "Contar", "legendMultipleLines": "El servicio aparece en varias líneas de contrato.", "legendNoOverlap": "El servicio está incluido en la línea del contrato (sin superposición)", "legendWithOverlap": "El servicio está incluido en la línea del contrato (con superposición)", "loading": "Cargando matriz de superposición de servicios...", "overlapCount": "{{count}} servicio(s)", "overlapSummary": "aparecen en varias líneas de contrato para este cliente. Esta matriz muestra qué servicios están incluidos en cada línea.", "overlapTooltip": "Este servicio aparece en múltiples líneas de contrato.", "serviceColumn": "Servicio", "unknownType": "Desconocido", "unnamedPlan": "Plan sin nombre" }, "clientSideDetails": { "address": "Dirección:", "phone": "Teléfono:", "email": "Correo electrónico:", "url": "URL:" }, "clientTaxRates": { "title": "Tasa impositiva predeterminada para el cliente", "assignDefaultRate": "Asignar tasa predeterminada", "createNewRate": "Crear nueva tasa impositiva", "selectAssign": "Seleccione la tasa impositiva para asignar", "selectChange": "Seleccionar nueva tarifa predeterminada", "description": "Descripción:", "region": "Región:", "taxPercentage": "Porcentaje de impuestos:", "noDefaultRate": "No se ha asignado ningún tipo impositivo predeterminado.", "loadingRates": "Cargando tarifas...", "loadingDetails": "Cargando detalles de impuestos...", "assigning": "Asignando...", "saveChange": "Guardar cambio", "cancel": "Cancelar", "change": "Cambiar", "createDrawerDescription": "Ingrese los detalles de la nueva tasa impositiva.", "createDrawerTitle": "Crear nueva tasa impositiva", "loadingTaxDetails": "Cargando detalles de impuestos...", "loadTaxRegionsError": "No se pudieron cargar las regiones fiscales.", "na": "N/D", "noDefaultAssigned": "No se ha asignado ningún tipo impositivo predeterminado.", "noDescription": "Sin descripción", "saving": "Guardando...", "selectNewDefaultRate": "Seleccionar nueva tarifa predeterminada", "selectRateToAssign": "Seleccione la tasa impositiva para asignar", "taxRateCreatedSuccess": "Tasa impositiva creada exitosamente.", "taxRateCreateError": "No se pudo crear la tasa impositiva: {{message}}", "taxRateOption": "{{regionLabel}} - {{percentage}}% ({{description}})", "unknownRegion": "Región desconocida" }, "clientZeroDollarInvoiceSettings": { "title": "Configuración de facturas de cero dólares", "invoiceHandling": "Manejo de facturas", "selectHandling": "Seleccione la opción de manejo", "suppressEmptyInvoices": "Suprimir facturas vacías", "suppressHelp": "Omitir la creación de facturas sin partidas individuales", "createAsDraft": "Crear como borrador", "createAndFinalize": "Crear y finalizar", "useDefault": "Usar configuración predeterminada", "useDefaultHelp": "Utilice la configuración predeterminada de todo el sistema para facturas de cero dólares", "updated": "Se actualizó la configuración de la factura de cero dólares.", "clientSpecificEnabled": "Configuraciones de factura de cero dólares específicas del cliente habilitadas.", "handling": { "finalized": "Crear y finalizar", "normal": "Crear como borrador" }, "handlingHelp": "Elija cómo se deben manejar las facturas de cero dólares cuando se generan", "loadError": "No se pudo cargar la configuración", "saveError": "No se pudo guardar la configuración", "suppressEmptyHelp": "Omitir la creación de facturas sin partidas individuales", "updatedSuccess": "Se actualizó la configuración de la factura de cero dólares.", "updateError": "No se pudo actualizar la configuración", "useDefaultSuccess": "El cliente ahora utilizará la configuración predeterminada de factura de cero dólares." }, "clientsImportDialog": { "title": "Importar Clientes", "uploadDescription": "Subir un archivo CSV con los datos del cliente", "mapFieldsTitle": "Asignar campos de cliente a columnas CSV", "mapFieldsDescription": "Seleccione qué columna CSV contiene los datos para cada campo de cliente. Los campos marcados con * son obligatorios.", "previewTitle": "Vista previa de importación", "importComplete": "Importación completa", "downloadTemplate": "Descargar plantilla CSV", "replaceExisting": "Reemplazar datos de clientes existentes", "skipInvalidRecords": "Saltar registros no válidos", "continueOnValidationErrors": "Continuar la importación incluso si algunos registros tienen errores de validación", "updateExisting": "Actualizar clientes existentes", "clientFields": "Campos de cliente:", "locationFields": "Campos de ubicación:", "requiredHelp": "* Los campos obligatorios deben estar asignados para que la importación pueda continuar", "recordsPrefix": "Está importando", "recordsSuffix": "registros. El procesamiento puede tardar un momento.", "validReady": "Válido - Listo para importar", "invalidHasErrors": "No válido: tiene errores", "notMapped": "No mapeado", "selectCsvColumn": "Seleccionar columna CSV", "selectField": "Seleccionar campo", "required": "Requerido:", "issues": "Problemas", "status": "Estado", "totalRecords": "Registros totales:", "processing": "Procesando...", "importing": "Importando...", "clientNameRequired": "El nombre del cliente es obligatorio.", "invalidEmail": "Formato de correo electrónico no válido", "creditLimitNumber": "El límite de crédito debe ser un número.", "clientField": "Campo de cliente", "recordsMessage": "Estás importando registros {{count}}. El procesamiento puede tardar un momento.", "updateExistingLabel": "Actualizar clientes existentes", "exists": "Existe", "email": "Correo electrónico", "clientName": "Nombre del cliente", "importCompleteMessage": "Clientes {{count}} importados correctamente", "updateExistingTitle": "Actualizar clientes existentes", "updateExistingMessage": "{{count}} clientes ya existen. ¿Quieres actualizarlos con los nuevos datos?" }, "clientsList": { "name": "Nombre", "type": "Tipo", "address": "Dirección", "phone": "Teléfono", "created": "Creado", "accountManager": "Gerente de cuentas", "tags": "Etiquetas", "actions": "Acciones", "openMenu": "Abrir menú", "quickView": "Vista rápida", "selectClient": "Seleccionar Cliente", "defaultClient": "Cliente predeterminado", "taxExempt": "Exento de impuestos", "clickThisButton": "Haga clic en este botón", "default": "Por defecto", "taxExemptTooltip": "Este cliente está exento de impuestos: no se aplicarán impuestos a sus facturas.", "url": "URL" }, "contractLinePickerDialog": { "addPlan": "Agregar plan", "updatePlan": "Actualizar plan", "contractLine": "Línea de contrato", "serviceCategory": "Categoría de servicio", "allCategories": "Todas las categorías", "allCategoriesHelp": "Seleccionar 'Todas las categorías' significa que este plan se aplica independientemente de la categoría de servicio.", "selectContractLine": "Seleccione una línea de contrato", "selectCategory": "Seleccione categoría...", "selectContractLinePlaceholder": "Seleccionar línea de contrato...", "startDate": "Fecha de inicio", "endDate": "Fecha de finalización", "ongoing": "En curso", "cancel": "Cancelar", "title": "Seleccione una línea de contrato" }, "contractLines": { "title": "Líneas de contrato", "addNewPlan": "Agregar nuevo plan", "plan": "Plan", "category": "Categoría", "startDate": "Fecha de inicio", "endDate": "Fecha de finalización", "actions": "Acciones", "selectAssignment": "Seleccionar asignación...", "unknownCategory": "Categoría desconocida", "unknownPlan": "Plan desconocido", "removePlan": "Eliminar plan", "allCategories": "Todas las categorias", "assignmentLabel": "Asignación {{assignmentId}} • Contrato {{contractId}} ({{startDate}} → {{endDate}})", "edit": "Editar", "ongoing": "En curso", "openMenu": "Abrir menú" }, "serviceCatalog": { "title": "Catálogo de servicios", "addNewService": "Agregar nuevo servicio", "serviceName": "Nombre del servicio", "category": "Categoría", "defaultRate": "Tasa predeterminada", "unitOfMeasure": "Unidad de medida", "deleteService": "Eliminar servicio", "deleteConfirm": "¿Estás seguro de que deseas eliminar este servicio? Esta acción no se puede deshacer.", "actions": "Acciones", "delete": "Eliminar", "deleteMessage": "¿Estás seguro de que deseas eliminar este servicio? Esta acción no se puede deshacer.", "deleteTitle": "Eliminar servicio" }, "taxRateCreateForm": { "title": "Crear tasa impositiva", "description": "Descripción", "descriptionOptional": "Descripción (opcional)", "startDate": "Fecha de inicio *", "endDate": "Fecha de finalización (opcional)", "percentage": "Porcentaje (%) *", "taxRegion": "Región fiscal *", "create": "Crear tasa impositiva", "creating": "Creando...", "validationHeader": "Por favor complete los campos requeridos:", "regionsLoading": "Cargando regiones...", "cancel": "Cancelar", "descriptionLabel": "Descripción (opcional)", "descriptionPlaceholder": "por ejemplo, impuesto estatal de California", "endDateLabel": "Fecha de finalización (opcional)", "loadingRegions": "Cargando regiones...", "loadTaxRegionsError": "No se pudieron cargar las regiones fiscales.", "percentageLabel": "Porcentaje (%) *", "percentagePlaceholder": "por ejemplo, 8,25 *", "regionLabel": "Región fiscal *", "selectRegion": "Seleccionar región fiscal *", "startDateLabel": "Fecha de inicio *", "unknownError": "Se produjo un error desconocido", "validation": { "description": "Descripción", "descriptionLength": "La descripción no puede exceder los 255 caracteres.", "endDateAfterStart": "La fecha de finalización debe ser posterior a la fecha de inicio.", "endDateValid": "La fecha de finalización debe ser una fecha válida.", "percentage": "porcentaje", "percentageMax": "El porcentaje del impuesto no puede exceder el 100%.", "percentageNonNegative": "El porcentaje del impuesto no puede ser negativo.", "percentageNumber": "El porcentaje de impuestos debe ser un número válido.", "percentageRequired": "Se requiere porcentaje de impuesto", "regionRequired": "Se requiere región fiscal", "startDateRequired": "Se requiere fecha de inicio", "startDateValid": "La fecha de inicio debe ser una fecha válida." } }, "taxSettingsForm": { "title": "Configuración de cálculo de impuestos", "description": "Configure cómo se calculan los impuestos para este cliente.", "createDefault": "Crear configuración de impuestos predeterminada", "goToBillingTaxSettings": "Vaya a Configuración de impuestos de facturación", "taxExemptStatus": "Estado de exención de impuestos", "taxExempt": "Exento de impuestos", "taxExemptHelp": "Cuando esté habilitado, los impuestos no se aplicarán a las facturas de este cliente.", "taxExemptionCertificate": "Certificado de exención de impuestos", "certificatePlaceholder": "Número de certificado (opcional)", "taxSource": "Fuente de impuestos", "effectiveTaxSource": "Fuente tributaria efectiva:", "reverseChargeApplicable": "Cargo inverso aplicable", "reverseChargeHelp": "La inversión del cobro transfiere la responsabilidad fiscal al comprador (común en transacciones transfronterizas B2B).", "noSettings": "No se encontraron configuraciones de impuestos para este cliente.", "save": "Guardar configuración de impuestos", "saveSuccess": "Configuración de impuestos actualizada correctamente", "defaultCreatedSuccess": "La configuración de impuestos predeterminada se creó correctamente", "taxExemptSuccess": "Estado de exención de impuestos actualizado correctamente", "certificateSuccess": "Certificado de exención de impuestos actualizado exitosamente", "saveError": "No se pudo actualizar la configuración de impuestos", "defaultCreateError": "Error al crear la configuración de impuestos predeterminada", "certificateLabel": "Certificado de exención de impuestos", "certificateUpdatedSuccess": "Certificado de exención de impuestos actualizado exitosamente", "certificateUpdateError": "No se pudo actualizar el certificado de exención de impuestos", "createDefaultSettings": "Crear configuración de impuestos predeterminada", "dismiss": "Descartar", "fetchError": "Error al recuperar la configuración de impuestos", "reverseCharge": "Cargo inverso aplicable", "reverseChargeTooltip": "La inversión del cobro transfiere la responsabilidad fiscal al comprador (común en transacciones transfronterizas B2B).", "saveTaxSettings": "Guardar configuración de impuestos", "saving": "Guardando...", "taxCalculationDescription": "Configure cómo se calculan los impuestos para este cliente.", "taxCalculationSettings": "Configuración de cálculo de impuestos", "taxExemptDescription": "Marque a este cliente como exento de impuestos y, opcionalmente, almacene un número de certificado.", "taxExemptTooltip": "Cuando esté habilitado, los impuestos no se aplicarán a las facturas de este cliente.", "taxExemptUpdatedSuccess": "Estado de exención de impuestos actualizado correctamente", "taxExemptUpdateError": "No se pudo actualizar el estado de exención de impuestos", "taxSourceExternal": "Externo", "taxSourceHelp": "Administre las tasas impositivas predeterminadas del cliente en Configuración del cliente → Tasas impositivas y administre las tasas globales en Facturación → Configuración de impuestos.", "taxSourceInternal": "Interno" }, "clientNotesPanel": { "title": "Notas e información rápida", "initialNote": "Nota inicial", "lastUpdated": "Última actualización:", "save": "Guardar", "retry": "Reintentar", "loadError": "No se pudieron cargar las notas", "unknownError": "Error desconocido", "loadErrorTitle": "No se pudieron cargar las notas" }, "actions": { "cancel": "Cancelar", "delete": "Eliminar", "print": "Imprimir", "printOptions": "Opciones de impresión", "printSelected": "Imprimir seleccionados ({{count}})" }, "clients": { "locations": { "buttons": { "add": "Agregar ubicación", "save": "Guardar ubicación" }, "card": { "addressHelper": "Dirección completa de esta ubicación", "addressLabel": "Dirección", "billingTag": "Facturación", "delete": "Eliminar ubicación", "edit": "Editar ubicación", "emailHelper": "Dirección de correo electrónico para esta ubicación", "emailLabel": "Correo electrónico", "notesHelper": "Notas adicionales para esta ubicación", "notesLabel": "Notas", "phoneHelper": "Número de teléfono de esta ubicación", "phoneLabel": "Teléfono", "setDefault": "Establecer como predeterminado", "shippingTag": "Envío", "unnamed": "Ubicación sin nombre" }, "dialog": { "addTitle": "Agregar nueva ubicación", "deleteMessage": "¿Está seguro de que desea eliminar la ubicación \"{{name}}\"? Esta acción no se puede deshacer.", "deleteTitle": "Eliminar ubicación", "editTitle": "Editar ubicación" }, "empty": { "description": "Haga clic en \"Agregar ubicación\" para comenzar", "title": "Aún no se han agregado ubicaciones" }, "errors": { "delete": "No se pudo eliminar la ubicación", "loadCountries": "No se pudieron cargar los países", "loadLocations": "No se pudieron cargar las ubicaciones de los clientes", "loadTaxRegions": "No se pudieron cargar las regiones impositivas", "save": "No se pudo guardar la ubicación", "setDefault": "No se pudo establecer la ubicación predeterminada" }, "form": { "addressLine1": "Dirección Línea 1", "addressLine1Helper": "Línea de dirección principal (obligatoria)", "addressLine2": "Línea de dirección 2", "addressLine2Helper": "Información adicional de dirección (opcional)", "addressLine3": "Línea de dirección 3", "billingAddress": "Dirección de facturación", "billingAddressHelper": "Utilice esta ubicación como dirección de facturación", "city": "Ciudad", "cityHelper": "Nombre de la ciudad (obligatorio)", "country": "País", "countryHelper": "Seleccione país (requerido)", "defaultLocation": "Ubicación predeterminada", "defaultLocationHelper": "Marcar esto como la ubicación predeterminada para el cliente.", "email": "Correo electrónico", "emailHelper": "Dirección de correo electrónico para esta ubicación", "locationName": "Nombre de la ubicación", "locationNameHelper": "Nombre de esta ubicación (por ejemplo, oficina principal, almacén)", "notes": "Notas", "notesHelper": "Notas adicionales sobre esta ubicación", "phone": "Teléfono", "phoneHelper": "Número de teléfono de esta ubicación", "placeholder": { "addressLine1": "Introduzca la dirección *", "city": "Introduce ciudad *", "country": "Seleccione País *", "loadingCountries": "Cargando países...", "locationName": "por ejemplo, oficina principal, almacén", "taxRegion": "Seleccione una región fiscal...", "taxRegionOption": "Seleccione una región fiscal..." }, "postalCode": "Código Postal", "postalCodeHelper": "ZIP o código postal", "shippingAddress": "Dirección de envío", "shippingAddressHelper": "Utilice esta ubicación como dirección de envío", "stateProvince": "Estado/Provincia", "stateProvinceHelper": "Nombre del estado o provincia", "taxRegion": "Región fiscal", "taxRegionHelper": "Seleccione la región fiscal aplicable" }, "listTitle": "Ubicaciones", "loading": "Cargando ubicaciones...", "managerLabel": "Administrador de ubicaciones de clientes", "success": { "create": "Ubicación creada con éxito", "delete": "Ubicación eliminada correctamente", "setDefault": "Ubicación predeterminada actualizada", "update": "Ubicación actualizada correctamente" }, "validation": { "title": "Por favor complete los campos requeridos:" } } }, "clientsGrid": { "itemLabel": "clientes", "itemsPerPage18": "18 tarjetas/página", "itemsPerPage27": "27 tarjetas/página", "itemsPerPage36": "36 tarjetas/página", "itemsPerPage9": "9 tarjetas/página" }, "status": { "error": "Error", "saving": "Guardando...", "success": "Éxito" }, "notes": { "messages": { "saveSuccess": "Notas guardadas", "saveFailed": "No se pudieron guardar las notas" } }, "interactions": { "onlineMeeting": { "downloadRecording": "Descargar grabación", "join": "Unirse", "noArtifacts": "Aún no hay grabaciones ni transcripciones disponibles.", "recordingArtifact": "Grabación", "refreshFailed": "Error al actualizar las grabaciones. Inténtelo de nuevo.", "refreshRecordings": "Actualizar grabaciones", "sectionTitle": "Reunión en línea", "transcriptArtifact": "Transcripción", "viewTranscript": "Ver transcripción" }, "quickAdd": { "teams": { "attendees": { "add": "Agregar", "addContact": "Seleccionar contactos...", "addUser": "Seleccionar usuarios internos...", "badge": { "clientLocation": "Ubicación del cliente", "contact": "Contacto", "email": "Correo electrónico", "internal": "Interno" }, "duplicateEmail": "Ese correo electrónico ya está en la lista de asistentes.", "emailPlaceholder": "nombre@ejemplo.com", "empty": "Aún no se han agregado asistentes.", "helper": "Los asistentes reciben una invitación de calendario de Teams del organizador de la reunión.", "invalidEmail": "Introduzca una dirección de correo electrónico válida.", "label": "Asistentes", "remove": "Quitar a {{name}}", "tabs": { "contacts": "Contactos", "email": "Correo electrónico", "users": "Usuarios" } }, "checkingCapability": "Comprobando la disponibilidad de reuniones de Teams...", "createFailed": "Error al crear la reunión de Teams", "createToggle": "Crear reunión de Teams", "endRequired": "Se requiere la hora de finalización para crear una reunión de Teams", "startRequired": "Se requiere la hora de inicio para crear una reunión de Teams", "unavailable": "La creación de reuniones de Teams no está disponible para este inquilino." } }, "feed": { "addInteraction": "Agregar interacción", "allTypes": "Todos los tipos", "applyFilters": "Aplicar filtros", "endDate": "Fecha de fin", "filter": "Filtrar", "filterDialogTitle": "Filtrar interacciones", "reset": "Restablecer", "searchPlaceholder": "Buscar interacciones", "startDate": "Fecha de inicio", "title": "Interacciones", "typePlaceholder": "Tipo de interacción" }, "overall": { "allContacts": "Todos los contactos", "allStatuses": "Todos los estados", "allUsers": "Todos los usuarios", "byUser": "Por {{name}}", "collapse": "Contraer interacciones recientes", "contactsFromClient": "Contactos del cliente seleccionado", "endTime": "Hora de finalización", "endTimeLabel": "Hora de finalización de la interacción", "endTimePlaceholder": "Filtrar hasta esta hora de finalización", "expand": "Expandir interacciones recientes", "startTime": "Hora de inicio", "startTimeLabel": "Hora de inicio de la interacción", "startTimePlaceholder": "Filtrar desde esta hora de inicio", "statusPlaceholder": "Estado", "title": "Interacciones recientes" } }, "clientDrawer": { "loadFailed": "No se pudieron cargar los detalles del cliente.", "loading": "Cargando...", "notFound": "Cliente no encontrado." }, "clientTabs": { "assets": { "columns": { "assetTag": "Etiqueta de activo", "details": "Detalles", "location": "Ubicación", "name": "Nombre", "purchaseDate": "Fecha de compra", "serialNumber": "Número de serie", "status": "Estado", "type": "Tipo", "warrantyEnd": "Fin de garantía" }, "details": { "local": "Local", "network": "Red", "noIp": "Sin IP", "none": "No hay detalles disponibles" }, "drawerLoadError": "No se pueden cargar los detalles del activo en este momento. Inténtelo de nuevo.", "expiredSuffix": "(Vencida)", "filterByType": "Filtrar por tipo", "inventory": { "subtitle": "Gestione y supervise todos los activos del cliente", "title": "Inventario de activos" }, "loading": "Cargando activos...", "loadingHint": "Espere mientras obtenemos sus datos", "maintenanceTypes": { "subtitle": "Desglose por categoría", "title": "Tipos de mantenimiento" }, "overview": { "assetsWithMaintenance": "Activos con mantenimiento", "coverageRate": "Tasa de cobertura", "subtitle": "Estadísticas de mantenimiento", "title": "Resumen de activos", "totalSchedules": "Programas totales" }, "summary": { "activeBadge": "Activo", "maintenanceRate": "Tasa de mantenimiento", "needsAttention": "Requiere atención", "overdueMaintenance": "Mantenimiento vencido", "scheduledBadge": "Programado", "totalAssets": "Activos totales", "upcomingMaintenance": "Próximo mantenimiento" }, "typePlaceholder": "Todos los tipos de activos...", "types": { "all": "Todos los tipos de activos", "mobileDevice": "Dispositivo móvil", "networkDevice": "Dispositivo de red", "printer": "Impresora", "server": "Servidor", "workstation": "Estación de trabajo" } }, "tickets": { "addTicket": "Agregar ticket", "filters": { "allAssignees": "Todos los asignados", "allPriorities": "Todas las prioridades", "categoryPlaceholder": "Filtrar por categoría", "reset": "Restablecer", "searchPlaceholder": "Buscar tickets...", "statusPlaceholder": "Seleccionar estado" }, "loadMore": { "label": "Cargar más tickets", "loading": "Cargando..." }, "loading": "Cargando tickets...", "title": "Tickets del cliente", "toasts": { "loadTicketFailed": "No se pudo cargar el ticket", "openTicketFailed": "No se pudo abrir el ticket", "userNotAuthenticated": "Usuario no autenticado" } } } }