Sin conexion. Lo que captures se guarda en este dispositivo y se envia solo al recuperar la senal. Hay {{ pendientes }} {{ pendientes === 1 ? 'registro pendiente' : 'registros pendientes' }}.

{{ titulo[0] }}

{{ titulo[1] }}

{{ usuario.nombre }} {{ etiquetaRol(usuario.rol) }} · {{ cuenta.nombre }}
{{ dia.horasCapturadas.toFixed(1) }} h capturadas
{{ dia.horasFacturables.toFixed(1) }} h facturables · {{ pesos0(dia.valorGenerado) }} de valor generado · meta del dia {{ dia.metaHorasDia }} h
{{ pesos0(dia.fuga) }} valor de las horas de la jornada que aun no estan capturadas
{{ nombreCliente(b.clienteId) }} {{ (b.minutos/60).toFixed(1) }}h
{{ n - 1 }}h
tiempo facturable no facturable jornada sin capturar capacidad configurada: {{ dia.capacidadHoras }} h
Sin cronometros activos. Puedes tener varios abiertos y solo uno corriendo.
{{ reloj(segundosCrono(c)) }}
{{ nombreCliente(c.clienteId) }} {{ nombreAsunto(c.asuntoId) }}

Captura rapida

Escribe una linea por actividad. Formato: horas · cliente / asunto : descripcion

Acepta 1.5, 1h30, 90m. Se aplica el redondeo configurado en Ajustes.
No se pudieron leer estas lineas:
· {{ f.linea }} — {{ f.motivo }}

Captura detallada

Un registro con todos los campos que despues alimentan la prefactura

Registros de tiempo

{{ resumenRegistros }}

FechaAbogadoCliente / asuntoTarea BrutoCobrableTarifa ValorEstado
{{ fechaCorta(r.fecha) }} {{ nombreAbogado(r.abogadoId) }} {{ r.clienteId ? nombreCliente(r.clienteId) : 'Interno' }}
{{ nombreAsunto(r.asuntoId) }}
{{ r.descripcion }}
Castigo: {{ r.motivoCastigo }}
{{ r.claveTarea || '—' }} {{ (r.minutosBrutos/60).toFixed(1) }} {{ (r.minutosCobrables * (1 - r.pctCastigo/100) / 60).toFixed(1) }} {{ r.tarifaAplicada ? pesos0(r.tarifaAplicada) : '—' }} {{ pesos0(valorRegistro(r)) }} {{ etiquetaEstado(r.estado) }}
Nada que mostrar con esos filtrosCambia el cliente, el estado o el periodo.

Clientes

Datos fiscales, régimen y tarifas negociadas de cada cliente

ClienteTipo de personaRégimen Días de créditoCorporativo
{{ c.nombre }}
{{ c.nombreComercial }}
{{ c.tipoPersona === 'moral' ? 'Persona moral' : 'Persona física' }} {{ c.regimenFiscal || '—' }} {{ c.diasCredito ?? '—' }} Corporativo LEDES

{{ formCliente.id ? 'Editar: ' + formCliente.nombre : 'Nuevo cliente' }}

El tipo de persona decide si aplican retenciones: solo retiene una persona moral a una física

Asuntos y esquema de cobro

Cada asunto define como se convierte el tiempo en dinero

AsuntoEsquemaResponsableHoras Presup.AvancePor facturar
{{ a.nombre }}
{{ nombreCliente(a.clienteId) }}
{{ etiquetaEsquema(a.esquema) }}
{{ pesos0(a.monto) }}
{{ nombreAbogado(a.responsableId) }} {{ (resumen[a.id]?.horas ?? 0).toFixed(1) }} {{ a.presupuestoHoras || '—' }} {{ (resumen[a.id]?.avance.pct ?? 0).toFixed(0) }}% {{ pesos0(resumen[a.id]?.wip ?? 0) }}
{{ a.nombre }} — {{ resumen[a.id].avance.mensaje }}

{{ formAsunto.id ? 'Editar: ' + formAsunto.nombre : 'Nuevo asunto' }}

Los parametros de este asunto ganan sobre los del cliente y los de la firma

Armar prefactura

Selecciona cliente y periodo. Puedes castigar horas antes de facturar.

Los impuestos y retenciones vienen de Ajustes y del regimen del cliente.

Prefactura

{{ documento.emisor.razonSocial }} · RFC {{ documento.emisor.rfc || '—' }} · Regimen {{ documento.emisor.regimenFiscal }}
{{ documento.cliente.nombre }}
RFC {{ documento.cliente.rfc || '—' }}
{{ documento.cliente.tipoPersona === 'moral' ? 'Persona moral' : 'Persona fisica' }} · Regimen {{ documento.cliente.regimenFiscal || '—' }}
Periodo {{ documento.periodo.desde }} al {{ documento.periodo.hasta }}
Vence en {{ documento.periodo.diasCredito }} dias

{{ b.asunto }} — {{ b.nota }}

Fecha Abogado Concepto Horas Tarifa Importe
{{ l.fecha ? fechaCorta(l.fecha) : '—' }} {{ l.abogado || '—' }} {{ l.concepto }} {{ l.claveTarea }} {{ l.horas.toFixed(1) }} {{ l.tarifa ? pesos0(l.tarifa) : '—' }} {{ pesos(l.importe) }}
{{ b.alerta }}
Honorarios del asunto: {{ pesos(b.honorarios) }} · tarifa efectiva {{ pesos0(b.tarifaEfectiva) }}/h

Gastos y desembolsos

{{ fechaCorta(g.fecha) }} {{ g.concepto }} margen {{ g.markupPct }}% {{ pesos(g.importe) }}

Honorarios ({{ documento.totales.horas.toFixed(1) }} h){{ pesos(documento.totales.honorarios) }}
Gastos{{ pesos(documento.totales.gastos) }}
Subtotal{{ pesos(documento.totales.subtotal) }}
IVA {{ (Number(documento.totales.tasas.iva) * 100).toFixed(0) }}%{{ pesos(documento.totales.iva) }}
Retencion ISR {{ (Number(documento.totales.tasas.retIsr) * 100).toFixed(4) }}% -{{ pesos(documento.totales.retIsr) }}
Retencion IVA {{ (Number(documento.totales.tasas.retIva) * 100).toFixed(4) }}% -{{ pesos(documento.totales.retIva) }}
Total a pagar{{ pesos(documento.totales.total) }}
Anticipo de gastos en poder de la firma{{ pesos(documento.anticipo.saldo) }}
{{ documento.retencion.explicacion }}
{{ documento.leyenda }}
Guardar aparta estos registros para esta prefactura.
Aun no hay prefacturaElige cliente y periodo y genera el documento.
{{ pesos0(indicadores.wip || 0) }}Trabajo sin facturarvalor de horas capturadas y no cobradas
{{ pesos0(cartera.totales?.porCobrar || 0) }}Facturado sin cobrarsaldo de facturas timbradas
{{ pesos0(cartera.totales?.vencido || 0) }}Vencidopaso el plazo de credito
{{ (indicadores.lockupTotal || 0).toFixed(0) }} dDinero atoradomediana del mercado: 93 dias

Antiguedad de saldos

Donde esta atorado el dinero

{{ pesos0(monto) }}{{ rango }} dias

Facturas emitidas

Antiguedad de saldos y estado de timbrado

FolioClienteFechaHorasTotal SaldoDiasEstado
{{ f.serie }}-{{ f.folio }}
UUID {{ (f.uuidSat || '—').slice(0, 13) }}…
{{ nombreCliente(f.clienteId) }} {{ fechaCorta(f.fechaEmision) }} {{ Number(f.horas).toFixed(1) }} {{ pesos0(f.total) }} {{ pesos0(f.saldo) }} {{ f.dias }} {{ f.estado === 'pagada' ? 'Pagada' : f.vencida ? 'Vencida' : 'Vigente' }}
Todavia no hay facturasArma una prefactura y timbrala.
{{ formatoTarjeta(t) }} {{ t.etiqueta }} {{ t.notaReferencia }}

Rentabilidad

Del tiempo capturado al dinero cobrado

{{ ejeRentabilidad === 'cliente' ? 'Cliente' : ejeRentabilidad === 'abogado' ? 'Abogado' : ejeRentabilidad === 'area' ? 'Area' : 'Asunto' }} HorasValor generadoCosto del equipo MargenTarifa efectiva
{{ f.nombre }} {{ f.horas.toFixed(1) }} {{ pesos0(f.valorGenerado) }} {{ pesos0(f.costoEquipo) }} {{ f.margen.toFixed(0) }}% {{ pesos0(f.tarifaEfectiva) }}

Como se calcula cada indicador

{{ g[0] }}
{{ g[1] }}

Tarifario en cascada

Cuando hay varias reglas aplicables gana la mas especifica

NivelSe aplica aAbogadoTarea Tarifa/horaVigente desdeNota
{{ etiquetaAlcance(t.alcance) }} {{ refTarifa(t) }} {{ t.abogadoId ? nombreAbogado(t.abogadoId) : 'Todos' }} {{ t.claveTarea || '—' }} {{ pesos0(t.monto) }} {{ t.vigenteDesde }} {{ t.nota }}

Nueva regla de tarifa

La especificidad decide: asunto 8, cliente 4, abogado 2, firma 1

Probar la resolucion de tarifa

Elige una combinacion y mira que regla gana y por que

Tarifa resuelta: {{ pesos(resolucion.monto) }} por hora. {{ resolucion.razon }}

Reglas evaluadas, de la mas a la menos especifica:
{{ i === 0 ? '→' : '  ' }} {{ c.alcance }} {{ refTarifa(c) }} · {{ pesos0(c.monto) }} · {{ c.puntos }} pts (gana)
Ninguna regla del tarifario aplica a esta combinacion.

Abogados y costo por hora

El costo interno permite medir rentabilidad, no solo ingreso

AbogadoRolTarifa estandar Costo/horaMargen
{{ a.nombre }} {{ etiquetaRol(a.rol) }} {{ pesos0(a.tarifaEstandar) }} {{ pesos0(a.costoHora) }} {{ a.tarifaEstandar ? (((a.tarifaEstandar - a.costoHora) / a.tarifaEstandar) * 100).toFixed(0) + '%' : '—' }}

{{ formAbogado.id ? 'Editar: ' + formAbogado.nombre : 'Nuevo abogado' }}

El costo por hora es interno: nunca se muestra al cliente, solo alimenta el margen

Datos de la firma y del emisor

Lo que aparece en la factura y define las retenciones

Reglas de captura de tiempo

Como se convierten los minutos trabajados en minutos cobrables

{{ vistaPrevia.frase }}

{{ e.brutos }} min → {{ e.horas.toFixed(2) }} h

Impuestos y retenciones

Se aplican solo cuando el emisor es persona fisica y el cliente es persona moral

Las retenciones se calculan sobre los honorarios. En el XML del CFDI las tasas se escriben con seis decimales exactos —0.106667, 0.012500— o el PAC rechaza el comprobante con CFDI40114.
Si un gasto recargado (copias, mensajeria, viaticos) entra a la base de la retencion depende de como se documenta, no de preferencia. Si el despacho opera el mecanismo formal de "erogaciones por cuenta de terceros" (cuenta dedicada, comprobante a nombre del cliente, complemento de identificacion del recurso), el reembolso no entra. Si el despacho paga a su nombre y lo recarga en su propia factura —el caso mas comun— el criterio conservador dice que si entra. Confirma con el contador del despacho antes de timbrar en produccion.

Gastos y desembolsos

Lo que se recupera del cliente ademas de los honorarios

Presentacion al cliente y aprobaciones

{{ avisoAjustes }}
{{ suscripcion.plan.nombre }}Plan actual {{ suscripcion.uso.usuariosActivos }} usuarios activos
{{ pesos0(suscripcion.cargoMensual) }}Cargo {{ suscripcion.suscripcion.periodicidad }} prueba: quedan {{ suscripcion.diasDePrueba }} dias siguiente cobro {{ suscripcion.suscripcion.finPeriodo || '—' }}
{{ suscripcion.uso.registros }}Registros capturadosen esta cuenta
{{ suscripcion.uso.clientes }} / {{ suscripcion.uso.asuntos }}Clientes y asuntos activos {{ suscripcion.plan.alcance }}

Planes

Dos meses gratis al pagar anual

{{ p.nombre }}
{{ pesos0(p.precioMensual) }} MXN al mes · {{ p.alcance }}
  • {{ i }}
Clio y sus pares cobran de 39 a 109 USD por usuario al mes —del orden de 700 a 2,000 pesos— sin resolver nada fiscal mexicano.

Metodo de pago

El numero de tarjeta nunca toca nuestro servidor: se convierte en un token en tu navegador

{{ suscripcion.suscripcion.tarjetaMarca }} •••• {{ suscripcion.suscripcion.tarjetaUltimos4 }} Se cobra automaticamente cada {{ suscripcion.suscripcion.periodicidad === 'anual' ? 'año' : 'mes' }}.
Modo simulado: no hay credenciales de OpenPay configuradas. Cualquier tarjeta de prueba funciona; una que termine en 0002 simula un rechazo, para ver el calendario de avisos completo.

Historial de cobros

Cargos, avisos de dunning y CFDI de la suscripcion

FechaTipoEstadoMontoCFDIDetalle
{{ fechaCorta(e.creadoEn) }} {{ etiquetaEventoCobro(e.tipo) }} {{ e.estado }} {{ e.monto ? pesos0(e.monto) : '—' }} {{ e.uuidSat ? e.uuidSat.slice(0, 13) + '…' : '—' }} {{ e.mensaje || e.openpayError || '—' }}
Todavia no hay cobrosAparecen aqui en cuanto se procese el primer periodo.

Tus datos son tuyos

Exportacion completa, sin retencion de rehen

Descarga un JSON con abogados, clientes, asuntos, registros y facturas.
{{ a.texto }}