Catálogos
A continuación se enlistan los tipos de CFDI aceptados por Factura Online, para hacer uso de el parametro "TipoDocumento" al momento de generar un CFDI es necesario utilizar el valor de la columna "Clave" y corresponde a el valor "Tipo de CFDI"
Importante
Si especificamos que tipo de documento con estas claves es importante tomar en cuenta que debe coincidir con el tipo de documento asignado a la serie que utilizamos para timbrar nuestro documento, este paso es opcional y podemos asignar una serie con el tipo de documento que deseamos utilizar, y se asignara de forma correcta el tipo de documento que se asigno al momento de crear la serie.
Tipos de documento
Clave | Tipo de CFDI |
---|---|
factura | Factura |
factura_hotel | Factura para hoteles |
honorarios | Recibo de honorarios |
nota_cargo | Nota de cargo |
donativos | Donativo |
arrendamiento | Recibo de arrendamiento |
nota_credito | Nota de crédito |
nota_debito | Nota de débito |
nota_devolucion | Nota de devolución |
carta_porte | Carta porte |
carta_porte_ingreso | Carta porte de Ingreso |
pago | Pago |
retencion | Retención |
Catálogos SAT
Puedes consultar los catálogos que el SAT provee para el timbrado.
El API de Factura Online cuenta con endpoints puestos a tu disposición para consultar los catálogos de claves válidas para el SAT.
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /v3/catalogo/nombre_catalogo
Ejemplo: https://facturaonline.com.mx/api/v3/catalogo/nombre_catalogo
Tip
Es necesario cambiar en la url nombre_catalogo por el nombre del catálogo que deseas consultar.
Clave Producto/Servicio
Consulta el catálogo de Clave Producto/Servicio
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /v3/catalogo/ClaveProductServ
Ejemplo: https://facturaonline.com.mx/api/v3/catalogo/ClaveProductServ
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de clave producto/servicio
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "{ HOST }/v3/catalogo/ClaveProductServ");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json",
"F-PLUGIN: " . '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
"F-Api-Key: ". 'Tu API key',
"F-Secret-Key: " . 'Tu Secret key'
));
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/v3/catalogo/ClaveProductServ',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
import json
url = "{ HOST }/v3/catalogo/ClaveProductServ"
payload = ""
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/v3/catalogo/ClaveProductServ")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "API.Key"
request["F-Secret-Key"] = "Secret.Key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo clave producto/servicio
Respuesta exitosa
{
"response": "success",
"data": [
{
"key": "10201500",
"name": "Rosales vivos azules o lavanda o púrpura",
"complement": ""
},
{
"key": "10201501",
"name": "Rosal vivo allure o sterling 95",
"complement": ""
},
{
"key": "10201502",
"name": "Rosal vivo amnesia",
"complement": ""
},
{
"key": "10201503",
"name": "Rosal vivo augusta louise",
"complement": ""
},
{
"key": "10201504",
"name": "Rosal vivo avant garde",
"complement": ""
},
{
"key": "10201505",
"name": "Rosal vivo blue bird",
"complement": ""
},
{
"key": "10201506",
"name": "Rosal vivo curiosa",
"complement": ""
},
{
"key": "10201507",
"name": "Rosal vivo cool water",
"complement": ""
},
]
}
Aduana
Consulta el catálogo de Aduanas
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /v3/catalogo/Aduana
Ejemplo: https://facturaonline.com.mx/api/v3/catalogo/Aduana
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de aduana
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "{{ HOST }}/v3/catalogo/Aduana");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json",
"F-PLUGIN: " . '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
"F-Api-Key: ". 'Tu API key',
"F-Secret-Key: " . 'Tu Secret key'
));
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/v3/catalogo/Aduana',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
import json
url = "{ HOST }/v3/catalogo/Aduana"
payload = ""
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/v3/catalogo/Aduana")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "API.Key"
request["F-Secret-Key"] = "Secret.Key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo aduana
Respuesta exitosa
{
"response": "success",
"data": [
{
"key": "01",
"name": "ACAPULCO, ACAPULCO DE JUAREZ, GUERRERO"
},
{
"key": "02",
"name": "AGUA PRIETA, AGUA PRIETA, SONORA"
},
{
"key": "05",
"name": "SUBTENIENTE LOPEZ, SUBTENIENTE LOPEZ, QUINTANA ROO"
},
{
"key": "06",
"name": "CIUDAD DEL CARMEN, CIUDAD DEL CARMEN, CAMPECHE"
},
{
"key": "07",
"name": "CIUDAD JUAREZ, CIUDAD JUAREZ, CHIHUAHUA"
},
{
"key": "08",
"name": "COATZACOALCOS, COATZACOALCOS, VERACRUZ"
},
{
"key": "11",
"name": "ENSENADA, ENSENADA, BAJA CALIFORNIA"
},
]
}
Unidad
Consulta el catálogo de Unidades de medida
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /v3/catalogo/ClaveUnidad
Ejemplo: https://facturaonline.com.mx/api/v3/catalogo/ClaveUnidad
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de unidad de medida
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "{{ HOST }}/v3/catalogo/ClaveUnidad");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json",
"F-PLUGIN: " . '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
"F-Api-Key: ". 'Tu API key',
"F-Secret-Key: " . 'Tu Secret key'
));
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/v3/catalogo/ClaveUnidad',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
import json
url = "{ HOST }/v3/catalogo/ClaveUnidad"
payload = ""
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/v3/catalogo/ClaveUnidad")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "API.Key"
request["F-Secret-Key"] = "Secret.Key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo unidad de medida
Respuesta exitosa
{
"response": "success",
"data": [
{
"key": "C81",
"name": "Radián"
},
{
"key": "C25",
"name": "Milirradián"
},
{
"key": "B97",
"name": "Microrradián"
},
{
"key": "DD",
"name": "Grado [unidad de ángulo]"
},
{
"key": "D61",
"name": "Minuto [unidad de ángulo]"
}
]
}
Forma de pago
Consulta el catálogo de forma de pago
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /v3/catalogo/FormaPago
Ejemplo: https://facturaonline.com.mx/api/v3/catalogo/FormaPago
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de forma de pago
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "{{ HOST }}/v3/catalogo/FormaPago");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json",
"F-PLUGIN: " . '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
"F-Api-Key: ". 'Tu API key',
"F-Secret-Key: " . 'Tu Secret key'
));
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/v3/catalogo/FormaPago',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
import json
url = "{ HOST }/v3/catalogo/FormaPago"
payload = ""
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/v3/catalogo/FormaPago")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "API.Key"
request["F-Secret-Key"] = "Secret.Key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo forma de pago
Respuesta exitosa
{
"response": "success",
"data": [
{
"key": "01",
"name": "Efectivo"
},
{
"key": "02",
"name": "Cheque nominativo"
},
{
"key": "03",
"name": "Transferencia electrónica de fondos"
},
{
"key": "04",
"name": "Tarjeta de crédito"
},
{
"key": "05",
"name": "Monedero electrónico"
}
]
}
Catálogo de impuestos
Consulta el catálogo de impuestos
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /v3/catalogo/Impuesto
Ejemplo: https://facturaonline.com.mx/api/v3/catalogo/Impuesto
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de impuestos
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "{{ HOST }}/v3/catalogo/Impuesto");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json",
"F-PLUGIN: " . '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
"F-Api-Key: ". 'Tu API key',
"F-Secret-Key: " . 'Tu Secret key'
));
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/v3/catalogo/Impuesto',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
import json
url = "{ HOST }/v3/catalogo/Impuesto"
payload = ""
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/v3/catalogo/Impuesto")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "API.Key"
request["F-Secret-Key"] = "Secret.Key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo impuestos
Respuesta exitosa
{
"response": "success",
"data": [
{
"key": "001",
"name": "ISR"
},
{
"key": "002",
"name": "IVA"
},
{
"key": "003",
"name": "IEPS"
}
]
}
Métodos de pago
Consulta el catálogo de métodos de pago
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /v3/catalogo/MetodoPago
Ejemplo: https://facturaonline.com.mx/api/v3/catalogo/MetodoPago
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de métodos de pago
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "{{ HOST }}/v3/catalogo/MetodoPago");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json",
"F-PLUGIN: " . '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
"F-Api-Key: ". 'Tu API key',
"F-Secret-Key: " . 'Tu Secret key'
));
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/v3/catalogo/MetodoPago',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
import json
url = "{ HOST }/v3/catalogo/MetodoPago"
payload = ""
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/v3/catalogo/MetodoPago")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "API.Key"
request["F-Secret-Key"] = "Secret.Key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo métodos de pago
Respuesta exitosa
{
"response": "success",
"data": [
{
"key": "PUE",
"name": "Pago en una sola exhibición"
},
{
"key": "PPD",
"name": "Pago en parcialidades o diferido"
}
]
}
Moneda
Consulta el catálogo de monedas
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /v3/catalogo/Moneda
Ejemplo: https://facturaonline.com.mx/api/v3/catalogo/Moneda
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de monedas
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "{{ HOST }}/v3/catalogo/Moneda");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json",
"F-PLUGIN: " . '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
"F-Api-Key: ". 'Tu API key',
"F-Secret-Key: " . 'Tu Secret key'
));
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/v3/catalogo/Moneda',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
import json
url = "{ HOST }/v3/catalogo/Moneda"
payload = ""
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/v3/catalogo/Moneda")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "API.Key"
request["F-Secret-Key"] = "Secret.Key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo monedas
Respuesta exitosa
{
"response": "success",
"data": [
{
"key": "AED",
"name": "Dirham de EAU"
},
{
"key": "AFN",
"name": "Afghani"
},
{
"key": "ALL",
"name": "Lek"
},
{
"key": "AMD",
"name": "Dram armenio"
},
{
"key": "ANG",
"name": "Florín antillano neerlandés"
},
]
}
País
Consulta el catálogo de paises
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /v3/catalogo/Pais
Ejemplo: https://facturaonline.com.mx/api/v3/catalogo/Pais
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de pais
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "{{ HOST }}/v3/catalogo/Pais");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json",
"F-PLUGIN: " . '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
"F-Api-Key: ". 'Tu API key',
"F-Secret-Key: " . 'Tu Secret key'
));
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/v3/catalogo/Pais',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
import json
url = "{ HOST }/v3/catalogo/Pais"
payload = ""
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/v3/catalogo/Pais")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "API.Key"
request["F-Secret-Key"] = "Secret.Key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo paises
Respuesta exitosa
{
"response": "success",
"data": [
{
"key": "AFG",
"name": "Afganistán"
},
{
"key": "ALA",
"name": "Islas Åland"
},
{
"key": "ALB",
"name": "Albania"
},
{
"key": "DEU",
"name": "Alemania"
}
]
}
Régimen fiscal
Consulta el catálogo de régimen fiscal
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /v3/catalogo/RegimenFiscal
Ejemplo: https://facturaonline.com.mx/api/v3/catalogo/RegimenFiscal
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de regimen fiscal
Codigo<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "{{ HOST }}/v3/catalogo/RegimenFiscal");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json",
"F-PLUGIN: " . '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
"F-Api-Key: ". 'Tu API key',
"F-Secret-Key: " . 'Tu Secret key'
));
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/v3/catalogo/RegimenFiscal',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
import json
url = "{ HOST }/v3/catalogo/RegimenFiscal"
payload = ""
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/v3/catalogo/RegimenFiscal")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "API.Key"
request["F-Secret-Key"] = "Secret.Key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo regimen fiscal
Respuesta exitosa
{
"response": "success",
"data": [
{
"key": "601",
"name": "General de Ley Personas Morales"
},
{
"key": "603",
"name": "Personas Morales con Fines no Lucrativos"
},
{
"key": "605",
"name": "Sueldos y Salarios e Ingresos Asimilados a Salarios"
},
{
"key": "606",
"name": "Arrendamiento"
},
{
"key": "608",
"name": "Demás ingresos"
}
]
}
Tipo de relación
Consulta el catálogo de
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /v3/catalogo/Relacion
Ejemplo: https://facturaonline.com.mx/api/v3/catalogo/Relacion
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de tipo de relacion
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "{{ HOST }}/v3/catalogo/Relacion");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json",
"F-PLUGIN: " . '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
"F-Api-Key: ". 'Tu API key',
"F-Secret-Key: " . 'Tu Secret key'
));
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/v3/catalogo/Relacion',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
import json
url = "{ HOST }/v3/catalogo/Relacion"
payload = ""
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/v3/catalogo/Relacion")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "API.Key"
request["F-Secret-Key"] = "Secret.Key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo tipo de relación
Respuesta exitosa
{
"response": "success",
"data": [
{
"key": "01",
"name": "Nota de crédito de los documentos relacionados"
},
{
"key": "02",
"name": "Nota de débito de los documentos relacionados"
},
{
"key": "03",
"name": "Devolución de mercancía sobre facturas o traslados previos"
},
{
"key": "04",
"name": "Sustitución de los CFDI previos"
}
]
}
Uso de CFDI
Consulta el catálogo de claves de uso de CFDI
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /v4/catalogo/UsoCfdi
Ejemplo: https://facturaonline.com.mx/api/v4/catalogo/UsoCfdi
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de uso de CFDI
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "{{ HOST }}/v4/catalogo/UsoCfdi");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json",
"F-PLUGIN: " . '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
"F-Api-Key: ". 'Tu API key',
"F-Secret-Key: " . 'Tu Secret key'
));
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/v4/catalogo/UsoCfdi',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
import json
url = "{ HOST }/v4/catalogo/UsoCfdi"
payload = ""
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'API.Key',
'F-Secret-Key': 'Secret.Key'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/v4/catalogo/UsoCfdi")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "API.Key"
request["F-Secret-Key"] = "Secret.Key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo de claves de uso de CFDI
{
"key": "G01",
"name": "Adquisición de mercancias",
"use": "ambos",
"regimenes": ["601", "603", "606", "612", "620", "621", "622", "623", "624", "625", "626"]
},
{
"key": "G02",
"name": "Devoluciones, descuentos o bonificaciones",
"use": "ambos",
"regimenes": ["601", "603", "606", "612", "620", "621", "622", "623", "624", "625", "626"]
},
{
"key": "G03",
"name": "Gastos en general",
"use": "ambos",
"regimenes": ["601", "603", "606", "612", "620", "621", "622", "623", "624", "625", "626"]
},
{
"key": "I01",
"name": "Construcciones",
"use": "ambos",
"regimenes": ["601", "603", "606", "612", "620", "621", "622", "623", "624", "625", "626"]
}
Clave de Retención
Consulta el catálogo de claves de retención
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /v4/catalogos/retenciones/claveRetencion
Ejemplo: https://facturaonline.com.mx/api/v4/catalogos/retenciones/claveRetencion
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de uso de Clave de retención
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{ HOST }/v4/catalogos/retenciones/claveRetencion',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'F-PLUGIN: 9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key: Tu API key',
'F-Secret-Key: Tu Secret key'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/v4/catalogos/retenciones/claveRetencion',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import requests
import json
url = "{ HOST }/v4/catalogos/retenciones/claveRetencion"
payload = ""
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/v4/catalogos/retenciones/claveRetencion")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "Tu API key"
request["F-Secret-Key"] = "Tu Secret key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo de claves de retención
Respuesta exitosa
[
{
"key": "01",
"name": "Servicios profesionales"
},
{
"key": "02",
"name": "Regalías por derechos de autor"
},
{
"key": "03",
"name": "Autotransporte terrestre de carga"
}
]
Catálogos Nómina
Puedes consultar los catálogos necesarios para el timbrado de nómina.
El API de Factura Online cuenta con endpoints puestos a tu disposición para consultar los catálogos necesarios para el llenado de nómina
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /payroll/catalogos/nombre_catalogo
Ejemplo: https://facturaonline.com.mx/api/payroll/catalogos/nombre_catalogo
Tip
Es necesario cambiar en la url nombre_catalogo por el nombre del catálogo que deseas consultar.
Bancos
Consulta el catálogo de bancos
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /payroll/catalogos/bancos
Ejemplo: https://facturaonline.com.mx/api/payroll/catalogos/bancos
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de bancos
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{ HOST }/payroll/catalogos/bancos',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'F-PLUGIN: 9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key: Tu API key',
'F-Secret-Key: Tu Secret key'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/payroll/catalogos/bancos',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import http.client
import json
conn = http.client.HTTPSConnection("{ HOST }")
payload = ''
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
conn.request("GET", "/payroll/catalogos/bancos", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/payroll/catalogos/bancos")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "Tu API key"
request["F-Secret-Key"] = "Tu Secret key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo bancos
Respuesta exitosa
[
{
"key": "002",
"name": "BANAMEX"
},
{
"key": "006",
"name": "BANCOMEXT"
},
{
"key": "009",
"name": "BANOBRAS"
}
]
Estados
Consulta el catálogo de estados
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /payroll/catalogos/estados
Ejemplo: https://facturaonline.com.mx/api/payroll/catalogos/estados
Tip
Para probar el código de ejemplo es necesario que reemplaces el texto Tu API key por el API KEY de tu cuenta, e Tu Secret key por el SECRET KEY correspondiente
Ejemplo de la consulta de estados
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{ HOST }/payroll/catalogos/estados',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'F-PLUGIN: 9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key: Tu API key',
'F-Secret-Key: Tu Secret key'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/payroll/catalogos/estados',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import http.client
import json
conn = http.client.HTTPSConnection("{ HOST }")
payload = ''
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
conn.request("GET", "/payroll/catalogos/estados", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/payroll/catalogos/estados")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "Tu API key"
request["F-Secret-Key"] = "Tu Secret key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo estados
Respuesta exitosa
[
{
"key": "AGU",
"key_country": "MEX",
"name": "Aguascalientes"
},
{
"key": "BCN",
"key_country": "MEX",
"name": "Baja California"
},
{
"key": "BCS",
"key_country": "MEX",
"name": "Baja California Sur"
}
]
Origen recurso
Consulta el catálogo de Origen recurso
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /payroll/catalogos/origenrecurso
Ejemplo: https://facturaonline.com.mx/api/payroll/catalogos/origenrecurso
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de origen recurso
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{ HOST }/payroll/catalogos/origenrecurso',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'F-PLUGIN: 9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key: Tu API key',
'F-Secret-Key: Tu Secret key'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/payroll/catalogos/origenrecurso',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import http.client
import json
conn = http.client.HTTPSConnection("{ HOST }")
payload = ''
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
conn.request("GET", "/payroll/catalogos/origenrecurso", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/payroll/catalogos/origenrecurso")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "Tu API key"
request["F-Secret-Key"] = "Tu Secret key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo origenrecurso
Respuesta exitosa
[
{
"key": "IP",
"name": "Ingresos propios."
},
{
"key": "IF",
"name": "Ingreso federales."
},
{
"key": "IM",
"name": "Ingresos mixtos."
}
]
Periodicidad
Consulta el catálogo de periodicidad
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /payroll/catalogos/periodicidad
Ejemplo: https://facturaonline.com.mx/api/payroll/catalogos/periodicidad
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de periodicidad
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{ HOST }/payroll/catalogos/periodicidad',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'F-PLUGIN: 9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key: Tu API key',
'F-Secret-Key: Tu Secret key'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/payroll/catalogos/periodicidad',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import http.client
import json
conn = http.client.HTTPSConnection("{ HOST }")
payload = ''
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
conn.request("GET", "/payroll/catalogos/periodicidad", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/payroll/catalogos/periodicidad")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "Tu API key"
request["F-Secret-Key"] = "Tu Secret key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo periodicidad
Respuesta exitosa
[
{
"key": "01",
"name": "Diario"
},
{
"key": "02",
"name": "Semanal"
},
{
"key": "03",
"name": "Catorcenal"
},
{
"key": "04",
"name": "Quincenal"
},
{
"key": "05",
"name": "Mensual"
},
{
"key": "06",
"name": "Bimestral"
},
{
"key": "07",
"name": "Unidad obra"
},
{
"key": "08",
"name": "Comisión"
},
{
"key": "09",
"name": "Precio alzado"
},
{
"key": 10,
"name": "Decenal"
},
{
"key": 99,
"name": "Otra Periodicidad"
}
]
Riesgo
Consulta el catálogo de riesgo
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /payroll/catalogos/riesgo
Ejemplo: https://facturaonline.com.mx/api/payroll/catalogos/riesgo
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de riesgo
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{ HOST }/payroll/catalogos/riesgo',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'F-PLUGIN: 9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key: Tu API key',
'F-Secret-Key: Tu Secret key'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/payroll/catalogos/riesgo',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import http.client
import json
conn = http.client.HTTPSConnection("{ HOST }")
payload = ''
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
conn.request("GET", "/payroll/catalogos/riesgo", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/payroll/catalogos/riesgo")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "Tu API key"
request["F-Secret-Key"] = "Tu Secret key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo riesgo
Respuesta exitosa
[
{
"key": 1,
"name": "Clase I"
},
{
"key": 2,
"name": "Clase II"
},
{
"key": 3,
"name": "Clase III"
},
{
"key": 4,
"name": "Clase IV"
},
{
"key": 5,
"name": "Clase V"
},
{
"key": 99,
"name": "No aplica"
}
]
Tipo contrato
Consulta el catálogo de tipo contrato
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /payroll/catalogos/tipocontrato
Ejemplo: https://facturaonline.com.mx/api/payroll/catalogos/tipocontrato
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de tipocontrato
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{ HOST }/payroll/catalogos/tipocontrato',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'F-PLUGIN: 9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key: Tu API key',
'F-Secret-Key: Tu Secret key'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/payroll/catalogos/tipocontrato',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import http.client
import json
conn = http.client.HTTPSConnection("{ HOST }")
payload = ''
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
conn.request("GET", "/payroll/catalogos/tipocontrato", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/payroll/catalogos/tipocontrato")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "Tu API key"
request["F-Secret-Key"] = "Tu Secret key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo tipo contrato
Respuesta exitosa
[
{
"key": "01",
"name": "Contrato de trabajo por tiempo indeterminado",
"filter": "false"
},
{
"key": "02",
"name": "Contrato de trabajo para obra determinada",
"filter": "false"
},
{
"key": "03",
"name": "Contrato de trabajo por tiempo determinado",
"filter": "false"
},
{
"key": "04",
"name": "Contrato de trabajo por temporada",
"filter": "false"
},
{
"key": "05",
"name": "Contrato de trabajo sujeto a prueba",
"filter": "false"
},
{
"key": "06",
"name": "Contrato de trabajo con capacitación inicial",
"filter": "false"
},
{
"key": "07",
"name": "Modalidad de contratación por pago de hora laborada",
"filter": "false"
},
{
"key": "08",
"name": "Modalidad de trabajo por comisión laboral",
"filter": "false"
},
{
"key": "09",
"name": "Modalidades de contratación donde no existe relación de trabajo",
"filter": "[false,true]"
},
{
"key": 10,
"name": "Jubilación, pensión, retiro.",
"filter": "[false,true]"
},
{
"key": 99,
"name": "Otro contrato",
"filter": "[false,true]"
}
]
Tipo deduccion
Consulta el catálogo de tipo de deduccion
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /payroll/catalogos/tipodeduccion
Ejemplo: https://facturaonline.com.mx/api/payroll/catalogos/tipodeduccion
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de tipo deduccion
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{ HOST }/payroll/catalogos/tipodeduccion',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'F-PLUGIN: 9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key: Tu API key',
'F-Secret-Key: Tu Secret key'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/payroll/catalogos/tipodeduccion',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import http.client
import json
conn = http.client.HTTPSConnection("{ HOST }")
payload = ''
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
conn.request("GET", "/payroll/catalogos/tipodeduccion", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/payroll/catalogos/tipodeduccion")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "Tu API key"
request["F-Secret-Key"] = "Tu Secret key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo tipo deduccion
Respuesta exitosa
[
{
"key": "001",
"name": "Seguridad social"
},
{
"key": "002",
"name": "ISR"
},
{
"key": "003",
"name": "Aportaciones a retiro, cesantía en edad avanzada y vejez."
},
{
"key": "004",
"name": "Otros"
}
]
Tipo horas
Consulta el catálogo de tipo horas
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /payroll/catalogos/tipohoras
Ejemplo: https://facturaonline.com.mx/api/payroll/catalogos/tipohoras
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de tipo horas
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{ HOST }/payroll/catalogos/tipohoras',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'F-PLUGIN: 9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key: Tu API key',
'F-Secret-Key: Tu Secret key'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/payroll/catalogos/tipohoras',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import http.client
import json
conn = http.client.HTTPSConnection("{ HOST }")
payload = ''
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
conn.request("GET", "/payroll/catalogos/tipohoras", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/payroll/catalogos/tipohoras")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "Tu API key"
request["F-Secret-Key"] = "Tu Secret key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo tipo horas
Respuesta exitosa
[
{
"key": "01",
"name": "Dobles"
},
{
"key": "02",
"name": "Triples"
},
{
"key": "03",
"name": "Simples"
}
]
Tipo incapacidad
Consulta el catálogo de tipo incapacidad
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /payroll/catalogos/tipoincapacidad
Ejemplo: https://facturaonline.com.mx/api/payroll/catalogos/tipoincapacidad
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de tipoincapacidad
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{ HOST }/payroll/catalogos/tipoincapacidad',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'F-PLUGIN: 9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key: Tu API key',
'F-Secret-Key: Tu Secret key'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/payroll/catalogos/tipoincapacidad',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import http.client
import json
conn = http.client.HTTPSConnection("{ HOST }")
payload = ''
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
conn.request("GET", "/payroll/catalogos/tipoincapacidad", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/payroll/catalogos/tipoincapacidad")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "Tu API key"
request["F-Secret-Key"] = "Tu Secret key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo tipo incapacidad
Respuesta exitosa
[
{
"key": "01",
"name": "Riesgo de trabajo."
},
{
"key": "02",
"name": "Enfermedad en general."
},
{
"key": "03",
"name": "Maternidad."
},
{
"key": "04",
"name": "Licencia por cuidados médicos de hijos diagnosticados con cáncer."
}
]
Tipo jornada
Consulta el catálogo de tipo jornada
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /payroll/catalogos/tipojornada
Ejemplo: https://facturaonline.com.mx/api/payroll/catalogos/tipojornada
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de tipo jornada
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{ HOST }/payroll/catalogos/tipojornada',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'F-PLUGIN: 9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key: Tu API key',
'F-Secret-Key: Tu Secret key'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/payroll/catalogos/tipojornada',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import http.client
import json
conn = http.client.HTTPSConnection("{ HOST }")
payload = ''
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
conn.request("GET", "/payroll/catalogos/tipojornada", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/payroll/catalogos/tipojornada")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "Tu API key"
request["F-Secret-Key"] = "Tu Secret key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo tipo jornada
Respuesta exitosa
[
{
"key": "01",
"name": "Diurna"
},
{
"key": "02",
"name": "Nocturna"
},
{
"key": "03",
"name": "Mixta"
},
{
"key": "04",
"name": "Por hora"
},
{
"key": "05",
"name": "Reducida"
},
{
"key": "06",
"name": "Continuada"
},
{
"key": "07",
"name": "Partida"
},
{
"key": "08",
"name": "Por turnos"
},
{
"key": 99,
"name": "Otra Jornada"
}
]
Tipo pago
Consulta el catálogo de tipo pago
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /payroll/catalogos/tipopago
Ejemplo: https://facturaonline.com.mx/api/payroll/catalogos/tipopago
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de tipo pago
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{ HOST }/payroll/catalogos/tipopago',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'F-PLUGIN: 9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key: Tu API key',
'F-Secret-Key: Tu Secret key'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/payroll/catalogos/tipopago',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import http.client
import json
conn = http.client.HTTPSConnection("{ HOST }")
payload = ''
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
conn.request("GET", "/payroll/catalogos/tipopago", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/payroll/catalogos/tipopago")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "Tu API key"
request["F-Secret-Key"] = "Tu Secret key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo tipo pago
Respuesta exitosa
[
{
"key": "001",
"name":
"Reintegro de ISR pagado en exceso (siempre que no haya sido enterado al SAT)."
},
{
"key": "002",
"name": "Subsidio para el empleo (efectivamente entregado al trabajador)."
},
{
"key": "003",
"name": "Viáticos (entregados al trabajador)."
},
{
"key": "004",
"name": "Aplicación de saldo a favor por compensación anual."
},
{
"key": "005",
"name":
"Reintegro de ISR retenido en exceso de ejercicio anterior (siempre que no haya sido enterado al SAT)."
},
{
"key": "006",
"name":
"Alimentos en bienes (servicios de comedor y comida)"
},
{
"key": "007",
"name":
"ISR ajustado por subsidio"
},
{
"key": "008",
"name":
"Subsidio efectivamente entregado que no correspondía (Aplica sólo cuando haya ajuste al cierre de mes en relación con
el Apéndice 7 de la guía de llenado de nómina)"
},
{
"key": "999",
"name":
"Pagos distintos a los listados y que no deben considerarse como ingreso por sueldos, salarios o ingresos asimilados."
}
]
Tipo percepcion
Consulta el catálogo de tipo percepcion
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /payroll/catalogos/tipopercepcion
Ejemplo: https://facturaonline.com.mx/api/payroll/catalogos/tipopercepcion
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de tipo percepcion
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{ HOST }/payroll/catalogos/tipopercepcion',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'F-PLUGIN: 9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key: Tu API key',
'F-Secret-Key: Tu Secret key'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/payroll/catalogos/tipopercepcion',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import http.client
import json
conn = http.client.HTTPSConnection("{ HOST }")
payload = ''
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
conn.request("GET", "/payroll/catalogos/tipopercepcion", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/payroll/catalogos/tipopercepcion")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "Tu API key"
request["F-Secret-Key"] = "Tu Secret key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo tipo percepcion
Respuesta exitosa
[
{
"key": "001",
"name": "Sueldos, Salarios Rayas y Jornales"
},
{
"key": "002",
"name": "Gratificación Anual (Aguinaldo)"
},
{
"key": "003",
"name": "Participación de los Trabajadores en las Utilidades PTU"
}
]
Tipo régimen
Consulta el catálogo de tipo régimen
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /payroll/catalogos/tiporegimen
Ejemplo: https://facturaonline.com.mx/api/payroll/catalogos/tiporegimen
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de tipo régimen
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{ HOST }/payroll/catalogos/tiporegimen',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'F-PLUGIN: 9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key: Tu API key',
'F-Secret-Key: Tu Secret key'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/payroll/catalogos/tiporegimen',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import http.client
import json
conn = http.client.HTTPSConnection("{ HOST }")
payload = ''
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
conn.request("GET", "/payroll/catalogos/tiporegimen", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/payroll/catalogos/tiporegimen")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "Tu API key"
request["F-Secret-Key"] = "Tu Secret key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo tiporegimen
Respuesta exitosa
[
{
"key": "02",
"name": "Sueldos",
"filter": "01,02,03,04,05,06,07,08"
},
{
"key": "03",
"name": "Jubilados",
"filter": "01,02,03,04,05,06,07,08"
},
{
"key": "04",
"name": "Pensionados",
"filter": "01,02,03,04,05,06,07,08"
},
{
"key": "05",
"name": "Asimilados Miembros Sociedades Cooperativas Produccion",
"filter": "09,10,99"
},
{
"key": "06",
"name": "Asimilados Integrantes Sociedades Asociaciones Civiles",
"filter": "09,10,99"
},
{
"key": "07",
"name": "Asimilados Miembros consejos",
"filter": "09,10,99"
},
{
"key": "08",
"name": "Asimilados comisionistas",
"filter": "09,10,99"
},
{
"key": "09",
"name": "Asimilados Honorarios",
"filter": "09,10,99"
},
{
"key": "10",
"name": "Asimilados acciones",
"filter": "09,10,99"
},
{
"key": "11",
"name": "Asimilados otros",
"filter": "09,10,99"
},
{
"key": "12",
"name": "Jubilados o Pensionados",
"filter": "09,10,99"
},
{
"key": "99",
"name": "Otro Regimen",
"filter": "09,10,99"
},
{
"key": "629",
"name": "De los Regímenes Fiscales Preferentes y de las Empresas Multinacionales",
"filter": "01,02,03,04,05,06,07,08"
},
{
"key": "630",
"name": "Enajenación de acciones en bolsa de valores",
"filter": "01,02,03,04,05,06,07,08"
}
]
Método pago
Consulta el catálogo de método pago
Construcción de la URL
Host: https://facturaonline.com.mx/api (producción) / https://sandbox.facturaonline.com.mx/api (sandbox)
Endpoint: /payroll/catalogos/metodopago
Ejemplo: https://facturaonline.com.mx/api/payroll/catalogos/metodopago
Tip
Para probar el ejemplo de código, necesitas cambiar "Tu API key" por la clave de API de tu cuenta, y "Tu Secret key" por la clave secreta correspondiente.
Ejemplo de la consulta de metodo pago
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '{ HOST }/payroll/catalogos/metodopago',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'F-PLUGIN: 9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key: Tu API key',
'F-Secret-Key: Tu Secret key'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
var request = require('request');
var options = {
'method': 'GET',
'url': '{ HOST }/payroll/catalogos/metodopago',
'headers': {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
import http.client
import json
conn = http.client.HTTPSConnection("{ HOST }")
payload = ''
headers = {
'Content-Type': 'application/json',
'F-PLUGIN': '9d4095c8f7ed5785cb14c0e3b033eeb8252416ed',
'F-Api-Key': 'Tu API key',
'F-Secret-Key': 'Tu Secret key'
}
conn.request("GET", "/payroll/catalogos/metodopago", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
require "uri"
require "json"
require "net/http"
url = URI("{ HOST }/payroll/catalogos/metodopago")
http = Net::HTTP.new(url.host, url.port);
request = Net::HTTP::Get.new(url)
request["Content-Type"] = "application/json"
request["F-PLUGIN"] = "9d4095c8f7ed5785cb14c0e3b033eeb8252416ed"
request["F-Api-Key"] = "Tu API key"
request["F-Secret-Key"] = "Tu Secret key"
response = http.request(request)
puts response.read_body
Respuesta de catálogo método pago
Respuesta exitosa
[
{
"key": "01",
"name": "Efectivo"
},
{
"key": "02",
"name": "Cheque nominativo"
},
{
"key": "03",
"name": "Transferencia electrónica de fondos"
}
]