PATCH
/api/mod/contabilidad/{espacio}/configConecta tu software contable
Eliges el software, le das sus credenciales y dices qué autorizas. Cambia solo lo que mandes. Las credenciales entran pero no vuelven a salir: la respuesta dice qué claves hay, nunca su valor.
- PERMISOescribe
- CRÉDITOSno gasta
- AUTENTICACIÓNBearer bth_…
PARÁMETROS
| CAMPO | TIPO | REQUERIDO | QUÉ ES |
|---|---|---|---|
| espacio | string | SÍ | El id del espacio (sale en GET /api/companies). Tiene que tener el módulo Contabilidad. |
CUERPO · JSON
| CAMPO | TIPO | REQUERIDO | QUÉ ES |
|---|---|---|---|
| proveedor | string | no | alegra, siigo o csv_export (sin API: genera archivos). worldoffice_cloud, quickbooks y xero se aceptan, pero todavía no conectan. |
| credenciales | { nombre: valor } | no | Las de tu software: ver credenciales. Se suman a las guardadas clave a clave; una clave con valor vacío no borra la que había. |
| sync_items · sync_stock | boolean | no | Autorizas leer catálogo y stock. |
| push_invoice · push_payment | boolean | no | Autorizas mandar facturas y pagos. |
| push_customer | boolean | no | Autorizas mandar clientes. |
| write_back_stock | boolean | no | Autorizas descontar las ventas del stock de tu software. |
| cadencia_sync_horas | integer | no | Cada cuántas horas toca volver a leer. Por defecto 24. |
| plantilla_export | string | no | generico, worldoffice o helisa: las columnas del archivo de facturas. |
| bodega_default · mapeo_campos | string · object | no | Se guardan, pero hoy no cambian nada. |
RESPUESTA 200
La configuración entera, como en GET config: sin valores de credenciales.
| CAMPO | TIPO | QUÉ ES |
|---|---|---|
| proveedor | string | null | El software contable conectado. null si todavía no hay ninguno. |
| credenciales_set | string[] | Los nombres de las credenciales guardadas (email, api_token…), en orden alfabético. Sus valores nunca se devuelven. |
| sync_items · sync_stock | boolean | Si autorizas leer el catálogo y el stock de tu software. |
| push_invoice · push_payment | boolean | Si autorizas mandarle facturas y pagos. |
| push_customer | boolean | Si autorizas mandarle clientes. |
| write_back_stock | boolean | Si autorizas descontar las ventas del stock de tu software. Este sí lo comprueba el módulo: en false, no descuenta nada. |
| cadencia_sync_horas | integer | Cada cuántas horas toca volver a leer (por defecto 24). La usa sincronizar si toca. |
| plantilla_export | string | null | Las columnas del archivo de facturas al exportar: generico (por defecto), worldoffice o helisa. |
| bodega_default · mapeo_campos | string | null · object | Se guardan, pero hoy no cambian nada en el módulo. |
CREDENCIALES, POR SOFTWARE
| CAMPO | TIPO | QUÉ ES |
|---|---|---|
| alegra | email · api_token | El correo de la cuenta y su token de API. Opcionales: id_warehouse (lee el inventario de esa bodega) y warehouse_name (toma la cantidad de la bodega con ese nombre). |
| siigo | username · access_key | El usuario y la clave de acceso de su API. Opcional: bodega, el nombre que llevará el stock leído. |
| csv_export | — | Ninguna: no se conecta a nada, genera archivos para importar a mano. |
| worldoffice_cloud · quickbooks | — | Como xero: se pueden elegir, pero todavía no conectan. Las rutas que usan el software responden con «aún no implementado». |
ERRORES DE ESTA RUTA · SIEMPRE {"detail": …}
| STATUS | CUÁNDO | DETAIL LITERAL |
|---|---|---|
| 403 | El espacio no tiene el módulo Contabilidad | módulo no habilitado para este espacio. |
| 403 | La clave es de solo lectura | Tu cuenta es de solo lectura en este espacio. |
| 502 | El módulo no está disponible en este momento: reintenta en unos minutos | — |
| 422 | proveedor no es uno de la lista, o un campo no tiene su tipo (detail es una lista) | — |
Y los de cualquier ruta —clave inválida, cuenta no al día, IP, límites—, en Errores, límites y créditos.
CONVIENE SABER
- Las credenciales no se devuelven nunca, ni aquí ni en GET config: solo sus nombres, en
credenciales_set. Para saber si valen, prueba la conexión. - Para cambiar una credencial, manda la misma clave con el valor nuevo. Si cambias de software, las del anterior se quedan guardadas: no estorban.
- Un campo en
nullse ignora: así no se vacía nada.mapeo_campos, en cambio, se reemplaza entero.