Skip to content
On this page

Ambientes Live y Test ​

La API Masivo usa la misma URL y el mismo contrato en los dos ambientes. Lo que cambia es el tipo de API Key que envías:

LiveTest / Sandbox
Prefijo de la llavetmb_live_tmb_test_
PACProducciónPruebas
Costo por timbre1 timbre del saldoSin costo
Guarda el CFDISí, en tu cuentaNo
RFC del emisorEl RFC de tu cuentaRFC de prueba del SAT
CancelaciónCSD realesCSD de prueba

Cómo funciona el modo Test ​

Cuando la API recibe una llave tmb_test_...:

  1. Valida que el RFC del emisor sea uno de los RFCs oficiales de prueba del SAT.
  2. Omite la validación y el consumo de timbres.
  3. Envía la petición al PAC de pruebas.
  4. Devuelve el UUID y el XML de prueba.
  5. No guarda el CFDI en la colección de comprobantes de tu cuenta.

Puedes repetir las pruebas tantas veces como necesites. El modo Test no modifica tu saldo ni tus CFDI reales.

RFCs oficiales de prueba del SAT ​

En modo Test, el RFC del emisor debe ser uno de estos:

RFCUso
EKU9003173C9Persona moral de pruebas. Es el RFC recomendado para empezar.
AAA010101AAAPersona física de pruebas.
URE180429TM6Universidad de pruebas.
ESI920427880Escuela de pruebas.

Si el RFC del emisor no está en la lista, la API rechaza la petición con HTTP 400:

json
{
  "status": "error",
  "message": "En entorno de pruebas solo se permiten RFCs de prueba oficiales del SAT (ej. EKU9003173C9, AAA010101AAA)."
}

Usa EKU9003173C9 en el emisor

Si el panel te permite elegir el RFC de la llave de prueba, usa EKU9003173C9. El CFDI de prueba debe llevar ese RFC en Emisor.Rfc, sin importar el RFC de tu cuenta.

Ejemplo de CFDI de prueba ​

Un CFDI en modo Test debe llevar el RFC de prueba en el emisor. Por ejemplo:

json
{
  "Version": "4.0",
  "Serie": "T",
  "Folio": "001",
  "Fecha": "2026-10-20T10:00:00",
  "FormaPago": "01",
  "MetodoPago": "PUE",
  "LugarExpedicion": "64000",
  "Moneda": "MXN",
  "TipoDeComprobante": "I",
  "Exportacion": "01",
  "SubTotal": "1000.00",
  "Total": "1160.00",
  "Emisor": {
    "Rfc": "EKU9003173C9",
    "Nombre": "ESCUELA KEMPER URGATE",
    "RegimenFiscal": "601"
  },
  "Receptor": {
    "Rfc": "XAXX010101000",
    "Nombre": "PUBLICO EN GENERAL",
    "DomicilioFiscalReceptor": "64000",
    "RegimenFiscalReceptor": "616",
    "UsoCFDI": "S01"
  },
  "Conceptos": [
    {
      "ClaveProdServ": "84111506",
      "Cantidad": "1",
      "ClaveUnidad": "E48",
      "Descripcion": "Servicio de prueba",
      "ValorUnitario": "1000.00",
      "Importe": "1000.00",
      "ObjetoImp": "02"
    }
  ]
}

Cómo cambiar de ambiente ​

No hay una URL distinta ni un flag adicional. Solo cambia la llave:

http
Authorization: Bearer tmb_test_tu_api_key_aqui

o

http
Authorization: Bearer tmb_live_tu_api_key_aqui

Crea ambas llaves desde el panel de Timbra, en API Keys, y usa la que corresponda a cada ejecución.

Pasar de Test a Live ​

Antes de emitir tu primer CFDI real:

  1. Verifica que tu RFC y tu régimen fiscal estén configurados en tu cuenta.
  2. Carga tus CSD reales si vas a cancelar por CSD.
  3. Comprueba que tengas saldo de timbres o una suscripción activa.
  4. Cambia la llave tmb_test_... por una tmb_live_....
  5. Envía un CFDI de prueba controlado y confirma el UUID y el XML.

En Live, cada CFDI timbrado descuenta un timbre. Consulta Saldo prepagado para entender cómo se consume el saldo.

Aislamiento entre ambientes ​

El modo se resuelve en cada petición, a partir de la llave. Puedes tener integraciones Live y Test apuntando al mismo servicio al mismo tiempo sin que una afecte a la otra.