Documento
Acceso a datos de todos los documentos de a3ERP (compras, ventas y stocks)
Parámetros
Puedes consultar todos los tipos de documentos en el enlace de abajo.
ParámetrosCampos de Documentos
En el siguiente enlace puedes consultar todos los campos de A3.
Llamadas GET
Filtrado
En el siguiente enlace puedes consultar como filtrar esta llamada.
Te devuelve todos los datos del documento indicado(Consultar parámetros para ver los documentos disponibles).
Ejemplo:
El tipo de documento
Bearer + JWT_token
GET /api/documento/{tipo} HTTP/1.1
Host: servidor:<puerto>
Authorization: text
Accept: */*
Devuelve un Array Objetos con todos los datos del documento
Sin contenido
Se puede solicitar la impresión de un documento en PDF mediante esta llamada, el modelo no es obligatorio pero al no indicarlo tomara por defecto el del cliente o el proveedor.
Ejemplo:
El tipo de documento
El identificador del documento
El modelo del documento
Bearer + JWT_token
GET /api/documento/{tipo}/impresion/{id}/modelo/{modelo} HTTP/1.1
Host: servidor:<puerto>
Authorization: text
Accept: */*
Devolverá un Array Objeto con el documento en base64
[
{
"documento": "Codigo en base64"
}
]
Al añadir a la ruta /{id} permite elegir una cabecera de documentos en concreto y no el listado de todos las cabeceras de documento.
Ejemplo:
El tipo de documento
El identificador del documento a anular
Bearer + JWT_token
GET /api/cabeceradocumento/{tipo}/{id} HTTP/1.1
Host: servidor:<puerto>
Authorization: text
Accept: */*
Devuelve la cabecera de un documento en concreto
Sin contenido
Se puede servir a pedido, albarán o factura.
Tipo de documento (e.g., 'dv', 'fv', 'av')
El documento a servir, si son líneas no hay que ponerlo
servirapedido, serviraalbaran, servirafactura, serviradeposito
GET /api/documento/{tipo}/{servir}/{id} HTTP/1.1
Host: <domain>:<port>
Authorization: Bearer JWT
Accept: */*
{
" Identificador ": "text"
}
Permite la impresión de documentos públicos utilizando un GUID. El GUID se obtiene del parámetro de las cabeceras API_GUIDDESCARGA.
Tipo de documento (e.g., 'dv', 'fv', 'av')
Identificador del documento público
GET /api/documento/{tipo}/impresionguid/{guid} HTTP/1.1
Host: <domain>:<port>
Accept: */*
{
"Documento": "text"
}
Llamadas POST
Se puede servir líneas a pedido, albarán o factura.
servirlineasapedido, servirlineasaalbaran, servirlineasadeposito
13/06/2025
Código proveedor/cliente
Compra o Venta (C/V)
POST /api/{servir} HTTP/1.1
Host: <domain>:<port>
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 127
{
"fecha": "13/06/2025",
"codigo": "text",
"tipo": "C",
"Lineas": [
{
"tipo": "P",
"idlin": "text",
"unidades": "text",
"iddocumento": "text"
}
]
}
{
" Identificador ": "text"
}
Se puede enviar un documento a un correo con los datos proporcionados en un JSON, el modelo no es obligatorio pero al no indicarlo tomara por defecto el del cliente o el proveedor.
El tipo de documento
El identificador del documento
El modelo del documento
Bearer + JWT_token
POST /api/documento/{tipo}/email/{id}/modelo/{modelo} HTTP/1.1
Host: servidor:<puerto>
Authorization: text
Content-Type: application/json
Accept: */*
Content-Length: 113
{
"json": {
"para": "text",
"cc": "text",
"ccoo": "text",
"titulo": "text",
"asunto": "text",
"texto": "text",
"cuerpo": "text"
}
}
Correo enviado correctamente
Sin contenido
Podemos vincular un archivo que nos pasen en un JSON a un documento de compra o venta. El archivo se guardará en la carpeta de vínculos indicada en el config.ini con el nombre y la extensión que le pasemos en el campo nombre, lo cual determinará el tipo de archivo.
El tipo de documento
El identificador del documento al que quieres vincular un archivo
Bearer + JWT_token
POST /api/documento/{tipo}/vincular/{id} HTTP/1.1
Host: servidor:<puerto>
Authorization: text
Content-Type: application/json
Accept: */*
Content-Length: 45
{
"json": {
"nombre": "text",
"documento": "text"
}
}
Vinculado correctamente {Tipo de documento}
Sin contenido
Podemos dar de alta un nuevo documento añadiendo un JSON con todos los parámetros del tipo de documento seleccionado.
El tipo de documento
Bearer + JWT_token
POST /api/documento/{tipo} HTTP/1.1
Host: servidor:<puerto>
Authorization: text
Content-Type: application/json
Accept: */*
Content-Length: 343
{
"json": {
"codalment": "text",
"codalmsal": "text",
"fecha": "text",
"motivo": "text",
"ico_codcli": "text",
"ico_centro_coste": "text",
"ico_envuelo": "text",
"lineas": [
{
"codalment": "text",
"codalmsal": "text",
"codart": "text",
"unidades": "text",
"detalle": [
{
"unidades": "text",
"feccaduc": "text",
"ubicacionSal": "text",
"ubicacionent": "text",
"numserie": "text"
}
]
}
]
}
}
Se ha creado el {tipo de documento}
{
"nombre codigo documento": "codigo del documento"
}
Anular un documento completo identificándolo por su id.
Tipo de documento (e.g., 'dv', 'fv', 'av')
Identificador del documento
POST /api/documento/{tipo}/anular/{id} HTTP/1.1
Host: <domain>:<port>
Authorization: Bearer JWT
Accept: */*
{
"Documento": "text"
}
En un documento con varias líneas, se puede anular una línea
Tipo de documento (e.g., 'dv', 'fv', 'av')
Identificador del documento público
Identificador de la línea a anular
POST /api/documento/{tipo}/anular/{id}/linea/{numlin} HTTP/1.1
Host: <domain>:<port>
Authorization: Bearer JWT
Accept: */*
{
"Documento": "text"
}
Anular varias unidades de línea en un documento
Tipo de documento (e.g., 'dv', 'fv', 'av')
Identificador del documento
Identificador de la línea a anular
Unidades a anular de la línea
POST /api/documento/{tipo}/anular/{id}/linea/{numlin}/unidades/{unidades} HTTP/1.1
Host: <domain>:<port>
Authorization: Bearer JWT
Accept: */*
{
"Documento": "text"
}
Llamadas PUT
Podemos modificar un documento añadiendo un JSON con los parámetros correspondientes, no hay ningún parámetro requerido.
El tipo de documento
El identificador del documento que quieres modificar
Bearer + JWT_token
PUT /api/documento/{tipo}/{id} HTTP/1.1
Host: servidor:<puerto>
Authorization: text
Content-Type: application/json
Accept: */*
Content-Length: 192
{
"json": {
"fecha": "text",
"codcli": "text",
"serie": "text",
"codalm": "text",
"fecentrega": "text",
"lineas": [
{
"numlinped": "text",
"codart": "text",
"unidades": "text",
"prcmoneda": "text",
"desc1": "text"
}
]
}
}
Se ha actualizado el {documento}
{
"nombre codigo de documento": "Codigo del documento"
}
Nuevo endpoint para poder crear nuevas líneas en un documento ya existente
Tipo de documento (e.g., 'dv', 'fv', 'av')
Identificador del documento
PUT /api/documento/{tipo}/nuevaslineas/{id} HTTP/1.1
Host: <domain>:<port>
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 60
{
"lineas": [
{
"codart": "text",
"desclin": "text",
"unidades": 1
}
]
}
{
"id": "text"
}
Añadir un nuevo detalle a la línea de un documento.
Tipo de documento (e.g., 'dv', 'fv', 'av')
Identificador del documento
Número de la línea, no es el identificador (camp. numlin)
Es importante actualizar este número para que coincida con el total de unidades del detalle
PUT /api/documento/{tipo}/nuevosdetalleslinea/iddocumento/{id}/numlin/{numlin} HTTP/1.1
Host: <domain>:<port>
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 82
{
"Unidades": "3",
"Detalle": [
{
"unidades": "1",
"lote": "L10",
"feccaduc": "12/12/2027"
}
]
}
{
"Documento": "text"
}
Añade componentes a la línea de un documento. Para que un artículo tenga componentes, es necesario que en su estructura se indique que es KIT.
Tipo de documento (e.g., 'dv', 'fv', 'av')
Identificador del documento
Número de la línea, no es el identificador (camp. numlin)
PUT /api/documento/{tipo}/nuevoscomponenteslinea/iddocumento/{id}/numlin/{numlin} HTTP/1.1
Host: <domain>:<port>
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 50
{
"componentes": [
{
"Codart": "L10",
"Unidades": "10"
}
]
}
{
"Documento": "text"
}
Llamadas DELETE
El tipo de documento
El identificador del documento que quieres modificar
Bearer + JWT_token
DELETE /api/documento/{tipo}/{id} HTTP/1.1
Host: servidor:<puerto>
Authorization: text
Accept: */*
Eliminacion de documento satisfactoria
Sin contenido
Elimina la línea de un documento identificándola por el id del documento y el idlin de la línea.
Tipo de documento (e.g., 'dv', 'fv')
Identificador del documento
Identificador de la línea a borrar
DELETE /api/documento/{tipo}/{id}/linea/{numlin} HTTP/1.1
Host: <domain>:<port>
Authorization: Bearer JWT
Accept: */*
Sin contenido
Elimina un componente de una línea de un documento identificándola por el id del documento y el Idlin de la línea.
Tipo de documento (e.g., 'dv', 'fv')
Identificador del documento
Identificador de la línea a borrar
DELETE /api/documento/{tipo}/{id}/componentelinea/{numlin} HTTP/1.1
Host: <domain>:<port>
Authorization: Bearer JWT
Accept: */*
Sin contenido
Última actualización
¿Te fue útil?