Documentación API

La teoría dice...

¿Qué son las API? Según zenvia.com:


La expresión Application Programming Interface o en español, Interfaz de Programación de Aplicaciones, originó el acrónimo API.

Las API son «traductores» cuya función es conectar sistemas, software y aplicaciones. Con las API es posible ofrecerle una experiencia de uso más familiar a las personas.

Las API le permiten al usuario final utilizar una aplicación, software o incluso una simple hoja de cálculo, consultando, cambiando y almacenando datos de diferentes sistemas, sin que el usuario tenga que ingresar a ellos, directamente.

El propósito de una API es intercambiar datos entre diferentes sistemas, la mayoría de las veces estos intercambios de datos tienen como objetivo automatizar procesos manuales y / o permitir la creación de nuevas funcionalidades.

API de relBase

La documentación técnica de la API se encuentra en: https://apidocs.relbase.cl y desde aquí podemos ver el detalle de los datos que exige relBase al momento de obtener o crear un registro. Esta documentación está enfocada a programadores o técnicos que sepan cómo implementar una API en el sistema que ellos necesiten (puede ser su propio software hecho a la medida o en el software de su cliente, etc.).

De todas formas, explicaremos muy brevemente cómo se lee. Por ejemplo, veamos cómo se puede crear un usuario a través de la API:


Nuestra API dispone diferentes servicios básicos, que permiten obtener información desde relBase o crear nuevos registros en relBase, referentes a:

  • DTES
  • Notas de venta
  • Usuarios
  • Formas de pago
  • Canales de venta
  • Bodegas
  • Categorías
  • Clientes
  • Ciudades
  • Comunas
  • Empresa
  • Vendedores
  • Productos
  • Cotizaciones

 

Por lo tanto, si un cliente pregunta si puede realizar un ingreso de inventario a través de la API, esto no es posible por el momento.

 

SI el cliente consulta sobre si se obtiene la información mediante ID,  es posible consultando el método /api/v1/cotizaciones/{estimate_id}

 

Importante recordar, que para utilizar la API el usuario debe ser cliente de relBase, ya que, por ejemplo, si quiere crear una factura, los productos que componen el detalle, deben ser productos existentes en su cuenta relBase.

 

Ahora veamos el detalle de cada servicio disponible.

 

DTES

Respecto a los DTEs, a través de la API es posible:

  • Crear un DTE en relBase (en la cuenta de la empresa):
    • Documentos que se pueden crear a través de la API: Factura electrónica, Factura electrónica exenta, Boleta electrónica, Boleta electrónica exenta, Guía de despacho electrónica, Nota de ventas.
    • Si el cliente quiere realizar una factura a través de la API, entonces también debe acceder al listado de productos que tiene disponibles en su cuenta relBase (para saber qué productos enviará a través de la API), al listado de clientes (para seleccionar a qué cliente le hará la factura) y así con todos los datos que son obligatorios.
    • No se puede enviar, a través de una nueva factura, un producto creado en el momento, debe ser uno ya existente.
    • No se puede enviar, a través de una nueva factura, un cliente creado en el momento, debe ser uno ya existente.
    • Cualquier dato que necesite agregar a la factura (canal de venta, etc.) debe ser uno existente  en relBase.
  • Obtener todos los DTES de su empresa: Obtiene el listado de todos los DTES de su empresa, por página (tal cual lo tenemos en la aplicación del navegador)
  • Obtener un DTE específico: Obtiene un documento (DTE) específico.
  • Preguntar si un DTE fue aceptado o rechazado por el SII.
  • Obtener datos para imprimir un DTE: Esto retorna el encabezado, el contenido, etc. con el formato correcto para poder imprimirlo.
  • Obtener el listado de los tipos de traslado para crear una guía de despacho.
  • Enviar por email un DTE: Este email se envía a través de relBase, tal cual como si lo enviáramos desde el navegador.

Usuarios

Respecto a los usuarios, es posible:

  • Crear un nuevo usuario en la empresa.
  • Obtener el listado de todos los usuarios activos de la empresa.
  • Realizar login del usuario a través de email y clave: Tal cual como lo hacemos desde la app movil.
  • Obtener información del usuario actual (el que está con sesión activa): Nombre, apellido, rol, email, etc.
  • Asignar parámetros de configuración al usuario: Como bodega, canal de venta, forma de pago, formato de impresión, etc (Esto lo utilizamos en la app movil, cuando el usuario está seteando su configuración inicial).
  • Obtener los DTEs que puede emitir el usuario: Esto es útil para los usuarios que tienen perfil personalizado, saber qué docs puede emitir. Por ejemplo el admin puede emitir todos.

Formas de pago

Respecto a las formas de pago, es posible:

  • Obtener listado de todas las formas de pago de la empresa: Activas y no activas.
  • Obtener datos de una forma de pago en particular: nombre, estado, forma de pago sii.

Canales de venta

Respecto a los canales de venta, es posible:

  • Obtener listado de todos los canales de venta de la empresa: Activos y no activos.
  • Obtener datos de un canal de venta en particular: nombre, factor, estado

Bodegas

Respecto a las bodegas, es posible:

  • Obtener las bodegas de la sucursal del usuario conectado: Esto aplica solo si la empresa tiene inventario. Ejemplo de aplicación: cuando estamos en la app movil y el usuario está haciendo una boleta debe seleccionar una bodega. El listado de bodegas disponibles se forma llamando a este servicio.
  • Obtener datos de una bodega particular: nombre, dirección, activo, sucursal.

Categorías

Respecto a las categorías, es posible:

  • Obtener listado de categorías activas de la empresa.

Clientes

Respecto a los clientes, es posible:

  • Crear un nuevo cliente (en la cuenta de la empresa).
  • Obtener listado de todos los clientes (por página, tal cual lo tenemos en la aplicación del navegador).
  • Obtener datos de un cliente particular: nombre, dirección, etc.

Ciudades

Respecto a las ciudades, es posible:

  • Obtener listado de todas las ciudades disponibles en relBase.
  • Obtener datos de una ciudad particular: nombre.

Comunas

Respecto a las comunas, es posible:

  • Obtener listado de todas las comunas disponibles en relBase.
  • Obtener datos de una comuna particular: nombre.

Empresa

Respecto a la empresa, es posible:

  • Obtener datos de la empresa conectada: RUT, nombre, razón social, si tiene inventario activo, etc. Las diferentes configuraciones de la empresa.

Vendedores

Respecto a los vendedores, es posible:

  • Obtener listado de todos los vendedores activos de la empresa. Si el usuario que pregunta pertenece a una sucursal, entonces se muestran solo los vendedores de esa sucursal, si el admin pregunta, entonces se muestran todos los vendedores. Funciona igual que en la aplicación por navegador.
  • Obtener datos de un vendedor particular: nombre, apellido y rol.

Productos

Respecto a los productos, es posible:

  • Obtener listado de todos los productos activos de la empresa. 
  • Obtener datos de un producto particular: nombre, código, descripción, etc.

Cotizaciones

Respecto a las cotizaciones, es posible:

  • Crear una nueva cotización (en la cuenta de la empresa).
  • Obtener el listado de todas las cotizaciones de la empresa (paginadas).
  • Obtener una cotización particular. Los datos de una cotización: productos, cliente, ciudad, comuna, montos (total, neto iva), folio, etc.
  • Enviar por email una cotización: Este email se envía a través de relBase, tal cual como si la  enviáramos desde el navegador.
  • Obtener datos para imprimir una cotización: Esto retorna el encabezado, el contenido, etc. con el formato correcto para poder imprimirlo.