Conceptos de Trabajo
Uso general

El proceso de autenticación funciona mediante un token de acceso, que se corresponde con unos de los usuarios de tu cuenta.

El nivel de acceso del que dispones con la API dependerá del usuario con el que accedas a ella. Los permisos otorgados según el grupo del usuario a través de la aplicación serán los mismos durante el uso de la API.

Para autenticarse con la API, es necesario enviar el token a través de una cabecera Authorization en cada una de tus solicitudes:

Authorization: Bearer <API_KEY>

Solicitud de ejemplo (PHP)
$data = array(
    "key" => "value",
);

$headers = array(
    "Authorization: Bearer <API_KEY>",
    "Content-Type: application/json",
);

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "<API_URL>");
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "GET/POST/PUT/DELETE");
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data));
$response = curl_exec($curl);
curl_close($curl);
GET Listado de Conceptos de Trabajo
Devuelve un listado de elementos.
item_work
number
ID Trabajo
ID del Trabajo al que pertenece este concepto. Obligatorio para crear líneas, y una vez creada no se puede modificar.
item_type
select
Tipo de Concepto
Tipología del concepto. Define si un concepto es un producto/descompuesto, o un grupo de productos. Se indica al momento de crear el concepto, y una vez creado no se puede modificar.
0
Producto
1
Grupo
item_group
remoteselect
ID Grupo
ID del grupo al que pertenece un producto. Se puede modificar para cambiar un concepto de un grupo a otro.
item_tax_sales
number
IVA (%)
IVA aplicable. Debe ser una cantidad de IVA válida (21, 10, 4).
item_tax_deductions
number
Retenciones (%)
Retenciones aplicables, como por ejemplo el IRPF.
limit
integer
limit
Indica el número máximo de resultados a devolver. Máximo de 24 resultados.
offset
integer
offset
Indica el número de resultados a omitir, a fin de paginar los resultados. Por ejemplo, indicar 100 para comenzar a partir del resultado 101.
GET https://vendomia.app/api/work_items
Payload de ejemplo
{
    "item_work": "123",
    "item_type": "123",
    "item_group": "123",
    "item_tax_sales": "21",
    "item_tax_deductions": "19",
    "limit": "24",
    "offset": "0",
}
Respuesta de ejemplo
{
    "status": 200,
    "message": "OK.",
    "body": {
        "objects": {
            "12345": {
                "item_work": "123",
                "item_type": "123",
                "item_group": "123",
                "item_tax_sales": "21",
                "item_tax_deductions": "19",
            }
        }
    }
}
GET Recuperar Concepto de Trabajo
Devuelve un único elemento a través de su identificador primario.
GET https://vendomia.app/api/work_items/{id}
Respuesta de ejemplo
{
    "status": 200,
    "message": "OK.",
    "body": {
        "object": {
            "item_work": "123",
            "item_type": "123",
            "item_group": "123",
            "item_tax_sales": "21",
            "item_tax_deductions": "19",
        }
    }
}
POST Crear Concepto de Trabajo
Crea un nuevo elemento.
item_work
number
ID Trabajo
ID del Trabajo al que pertenece este concepto. Obligatorio para crear líneas, y una vez creada no se puede modificar.
item_type
select
Tipo de Concepto
Tipología del concepto. Define si un concepto es un producto/descompuesto, o un grupo de productos. Se indica al momento de crear el concepto, y una vez creado no se puede modificar.
0
Producto
1
Grupo
product
select
ID Producto
ID del producto del catálogo, utilizado únicamente al crear el concepto. Al especificar un producto, se cargarán todos los datos asociados, incluso subproductos y datos como la descripción o el precio (a menos que se indiquen también).
item_group
remoteselect
ID Grupo
ID del grupo al que pertenece un producto. Se puede modificar para cambiar un concepto de un grupo a otro.
item_description
text
Descripción
Descripción del concepto de Trabajo.
item_amount
number
Cantidad
Cantidad del producto.
item_measurement
text
Medición
Medición del concepto de Trabajo. Se utiliza en conceptos de tipo grupo, para asignar una cantidad multiplicativa a todos los productos pertenecientes a dicho grupo.
item_price_base
text
Importe
Importe neto unitario del concepto, sin impuestos ni descuentos ni cantidad.
item_price_discount_value
text
Descuento (%)
Cantidad porcentual de descuento de esta línea, aplicada sobre el importe.
item_tax_sales
number
IVA (%)
IVA aplicable. Debe ser una cantidad de IVA válida (21, 10, 4).
item_tax_deductions
number
Retenciones (%)
Retenciones aplicables, como por ejemplo el IRPF.
item_cost_base
number
Coste
Coste neto unitario del producto.
POST https://vendomia.app/api/work_items
Payload de ejemplo
{
    "item_work": "123",
    "item_type": "123",
    "product": "123",
    "item_group": "123",
    "item_description": "Ejemplo producto",
    "item_amount": "2",
    "item_measurement": "2",
    "item_price_base": "1.45",
    "item_price_discount_value": "20",
    "item_tax_sales": "21",
    "item_tax_deductions": "19",
    "item_cost_base": "100.0",
}
Respuesta de ejemplo
{
    "status": 200,
    "message": "OK.",
    "body": {
        "object": {
            "item_work": "123",
            "item_type": "123",
            "item_group": "123",
            "item_tax_sales": "21",
            "item_tax_deductions": "19",
        }
    }
}
PUT Modificar Concepto de Trabajo
Modifica un elemento existente según su identificador primario.
item_group
remoteselect
ID Grupo
ID del grupo al que pertenece un producto. Se puede modificar para cambiar un concepto de un grupo a otro.
item_description
text
Descripción
Descripción del concepto de Trabajo.
item_amount
number
Cantidad
Cantidad del producto.
item_measurement
text
Medición
Medición del concepto de Trabajo. Se utiliza en conceptos de tipo grupo, para asignar una cantidad multiplicativa a todos los productos pertenecientes a dicho grupo.
item_price_base
text
Importe
Importe neto unitario del concepto, sin impuestos ni descuentos ni cantidad.
item_price_discount_value
text
Descuento (%)
Cantidad porcentual de descuento de esta línea, aplicada sobre el importe.
item_tax_sales
number
IVA (%)
IVA aplicable. Debe ser una cantidad de IVA válida (21, 10, 4).
item_tax_deductions
number
Retenciones (%)
Retenciones aplicables, como por ejemplo el IRPF.
item_cost_base
number
Coste
Coste neto unitario del producto.
PUT https://vendomia.app/api/work_items/{id}
Payload de ejemplo
{
    "item_group": "123",
    "item_description": "Ejemplo producto",
    "item_amount": "2",
    "item_measurement": "2",
    "item_price_base": "1.45",
    "item_price_discount_value": "20",
    "item_tax_sales": "21",
    "item_tax_deductions": "19",
    "item_cost_base": "100.0",
}
Respuesta de ejemplo
{
    "status": 200,
    "message": "OK.",
    "body": {
        "object": {
            "item_work": "123",
            "item_type": "123",
            "item_group": "123",
            "item_tax_sales": "21",
            "item_tax_deductions": "19",
        }
    }
}
DELETE Borrar Concepto de Trabajo
Borra un elemento existente.
DELETE https://vendomia.app/api/work_items/{id}
Respuesta de ejemplo
{
    "status": 200,
    "message": "OK.",
    "body": {}
}