La API entrega algunos catálogos que pueden ser útiles durante la captura de conceptos, clientes y facturas.

Incluye estados, municipios, unidades de medida y valores de impuestos. Todos estos catálogos son de solo lectura, son los mismo para todos los usuarios y los datos no están paginados, es decir, la primera página incluye el catálogo completo. Ya que los datos son poco propensos a variar, se recomienda que la aplicación cliente incluya algún tipo de cache para evitar la repetida consulta a estos puntos.

 

Estados

Este punto retorna las entidades federativas de México. Cada objeto Estado contiene un identificador único y un Nombre.

Obtener la lista de Estados

Los estados se obtienen en la siguiente URL

https://app.facturagorila.com/v1/api/estados

Ejemplo (JSON):

{
   "TotalResultados":32,
   "CantidadPorPagina":32,
   "TotalDePaginas":1,
   "PaginaActual":0,
   "TipoDatoResultado":"Estado",
   "Resultados":[
      {
         "EstadoId":2,
         "Nombre":"Aguascalientes"
      },
      {
         "EstadoId":3,
         "Nombre":"Baja California"
      },
      {
         "EstadoId":4,
         "Nombre":"Baja California Sur"
      },
      {
         "EstadoId":5,
         "Nombre":"Campeche"
      },
      {
         "EstadoId":8,
         "Nombre":"Chiapas"
      },
      {
         "EstadoId":9,
         "Nombre":"Chihuahua"
      },
      {
         "EstadoId":6,
         "Nombre":"Coahuila de Zaragoza"
      },
      {
         "EstadoId":7,
         "Nombre":"Colima"
      },
      {
         "EstadoId":1,
         "Nombre":"Distrito Federal"
      },
      {
         "EstadoId":10,
         "Nombre":"Durango"
      },
      {
         "EstadoId":11,
         "Nombre":"Guanajuato"
      },
      {
         "EstadoId":12,
         "Nombre":"Guerrero"
      },
      {
         "EstadoId":13,
         "Nombre":"Hidalgo"
      },
      {
         "EstadoId":14,
         "Nombre":"Jalisco"
      },
      {
         "EstadoId":15,
         "Nombre":"México"
      },
      {
         "EstadoId":16,
         "Nombre":"Michoacán de Ocampo"
      },
      {
         "EstadoId":17,
         "Nombre":"Morelos"
      },
      {
         "EstadoId":18,
         "Nombre":"Nayarit"
      },
      {
         "EstadoId":19,
         "Nombre":"Nuevo León"
      },
      {
         "EstadoId":20,
         "Nombre":"Oaxaca"
      },
      {
         "EstadoId":21,
         "Nombre":"Puebla"
      },
      {
         "EstadoId":22,
         "Nombre":"Querétaro"
      },
      {
         "EstadoId":23,
         "Nombre":"Quintana Roo"
      },
      {
         "EstadoId":24,
         "Nombre":"San Luis Potosí"
      },
      {
         "EstadoId":25,
         "Nombre":"Sinaloa"
      },
      {
         "EstadoId":26,
         "Nombre":"Sonora"
      },
      {
         "EstadoId":27,
         "Nombre":"Tabasco"
      },
      {
         "EstadoId":28,
         "Nombre":"Tamaulipas"
      },
      {
         "EstadoId":29,
         "Nombre":"Tlaxcala"
      },
      {
         "EstadoId":30,
         "Nombre":"Veracruz"
      },
      {
         "EstadoId":31,
         "Nombre":"Yucatán"
      },
      {
         "EstadoId":32,
         "Nombre":"Zacatecas"
      }
   ]
}

 

Municipios

Este punto retorna los municipios de un estado en particular. Para utilizar este punto es necesario incluir “estadoId” en los parámetros de QUERY para poder consultar los municipios de un solo estado.

Obtener la lista de Municipios

Los municipios se obtienen en la siguiente URL

https://app.facturagorila.com/v1/api/municipios

Es necesario incluir el parámetro por query “estadoid”. El id de un estado en particular se obtiene del punto “Estados”. Un ejemplo de una url válida sería:

https://app.facturagorila.com/v1/api/municipios?estadoid=2

Ejemplo (JSON):

{
   "TotalResultados":11,
   "CantidadPorPagina":11,
   "TotalDePaginas":1,
   "PaginaActual":0,
   "TipoDatoResultado":"Municipio",
   "Resultados":[
      {
         "MunicipioId":17,
         "Nombre":"Aguascalientes"
      },
      {
         "MunicipioId":25,
         "Nombre":"Asientos"
      },
      {
         "MunicipioId":26,
         "Nombre":"Calvillo"
      },
      {
         "MunicipioId":21,
         "Nombre":"Cosío"
      },
      {
         "MunicipioId":19,
         "Nombre":"El Llano"
      },
      {
         "MunicipioId":27,
         "Nombre":"Jesús María"
      },
      {
         "MunicipioId":24,
         "Nombre":"Pabellón de Arteaga"
      },
      {
         "MunicipioId":20,
         "Nombre":"Rincón de Romos"
      },
      {
         "MunicipioId":18,
         "Nombre":"San Francisco de los Romo"
      },
      {
         "MunicipioId":22,
         "Nombre":"San José de Gracia"
      },
      {
         "MunicipioId":23,
         "Nombre":"Tepezalá"
      }
   ]
}

 

Impuestos

Este punto retorna los porcentajes aplicados para cada tipo de impuesto. Los valores son base 100. Por ejemplo si el IVA es 16%, el valor retornado es 16.0000.

Al generar la factura, la API de Factura Gorila se encarga de seleccionar automáticamente y calcular con el impuesto correcto, sin  embargo, si la aplicación cliente decide mostrar un previo del total actual mientras el usuario captura los datos de la factura, entonces es responsabilidad de la aplicación cliente hacer los cálculos con el impuesto correcto.

Cada objeto Concepto incluye una lista de los conceptos que aplican para el concepto y cada impuesto determina si es retenido o traladado, lo cual afecta en los cálculos.

La fórmula para calcular el impuesto total esta fuera del alcance de este documento.

Obtener la lista de Impuestos

Para obtener la lista de impuestos se consulta la siguiente url por método GET

https://app.facturagorila.com/v1/api/impuestos

La lista de impuestos tambien esta incluida como parte del objeto Usuario, lo que facilita su uso, este punto es totalmente opcional

Ejemplo (JSON):

{
   "TotalResultados":7,
   "CantidadPorPagina":7,
   "TotalDePaginas":1,
   "PaginaActual":0,
   "TipoDatoResultado":"Impuesto",
   "Resultados":[
      {
         "ImpuestoId":1,
         "DescripcionImpuesto":"IVA",
         "Tasa":10.66666666666667,
         "TipoImpuesto":"Retencion"
      },
      {
         "ImpuestoId":2,
         "DescripcionImpuesto":"ISR",
         "Tasa":10.00000000000000,
         "TipoImpuesto":"Retencion"
      },
      {
         "ImpuestoId":3,
         "DescripcionImpuesto":"IVA",
         "Tasa":16.00000000000000,
         "TipoImpuesto":"Traslado"
      },
      {
         "ImpuestoId":5,
         "DescripcionImpuesto":"C.I.C.I.",
         "Tasa":0.20000000000000,
         "TipoImpuesto":"Retencion"
      },
      {
         "ImpuestoId":6,
         "DescripcionImpuesto":"I.V.C.",
         "Tasa":0.50000000000000,
         "TipoImpuesto":"Retencion"
      },
      {
         "ImpuestoId":7,
         "DescripcionImpuesto":"IVA",
         "Tasa":11.00000000000000,
         "TipoImpuesto":"Traslado"
      },
      {
         "ImpuestoId":8,
         "DescripcionImpuesto":"IVA",
         "Tasa":7.33333333333333,
         "TipoImpuesto":"Retencion"
      }
   ]
}

 

Unidades de Medida

La unidades de medida se utilizan durante la creación de un concepto. Esta lista es importante, ya que la API de Factura Gorila solo aceptará las unidades de medida incluidas en esta lista.  Cada unidad de medida se describe por un objeto UnidadDeMedida que tiene Id y nombre.

Obtener la lista de Unidades de Medida

Para obtener la lista de las unidades de medida se consulta la siguiente url por método GET

https://app.facturagorila.com/v1/api/unidadesdemedida

Ejemplo (JSON):

{
   "TotalResultados":9,
   "CantidadPorPagina":9,
   "TotalDePaginas":1,
   "PaginaActual":0,
   "TipoDatoResultado":"UnidadDeMedida",
   "Resultados":[
      {
         "UnidadDeMedidaId":1,
         "Nombre":"Pieza"
      },
      {
         "UnidadDeMedidaId":2,
         "Nombre":"litro"
      },
      {
         "UnidadDeMedidaId":3,
         "Nombre":"galon"
      },
      {
         "UnidadDeMedidaId":4,
         "Nombre":"centimetro"
      },
      {
         "UnidadDeMedidaId":5,
         "Nombre":"metro"
      },
      {
         "UnidadDeMedidaId":6,
         "Nombre":"porron"
      },
      {
         "UnidadDeMedidaId":7,
         "Nombre":"bulto"
      },
      {
         "UnidadDeMedidaId":8,
         "Nombre":"metro cuad."
      },
      {
         "UnidadDeMedidaId":9,
         "Nombre":"meto cubico"
      }
   ]
}