Actualizar servicios
Su integración hace dos operaciones sobre un servicio: graba en él el código del pedido en el ERP y lo envía a producción.
Asociar el código del pedido del ERP
Rutas: PUT /services/{id} o PATCH /services/{id}. Las dos hacen lo mismo.
Cuando la central registra un servicio como pedido en el ERP, grabe el código de ese pedido en el internal_code del servicio. A partir de ahí, el servicio puede encontrarse por el código del ERP (filtro internal_code de GET /services) y deja de aparecer en la búsqueda de servicios sin código (internal_code=null).
Pasos:
-
Obtenga el
iddel servicio mediante el listado o la consulta. -
Registre el pedido en el ERP y guarde el código generado.
-
Llame a la ruta con el
iden la URL y el código en el cuerpo:{ "internal_code": "PED-000123" }
internal_code es el único campo modificable y es obligatorio en el cuerpo. Acepta texto o número; envíe null para borrarlo.
La asociación solo se acepta con el servicio en uno de los estados que expone la API: presupuesto generado (4), esperando pago en línea (25), aprobado (6), enviado a producción (7) o producido (9).
Fuera de esos estados, o sin internal_code en el cuerpo, la respuesta es 500 con el motivo en el mensaje. Repetir la llamada no lo resuelve: corrija el cuerpo o verifique el estado del servicio.
Enviar a producción
Ruta: POST /services/{id}/production.
Envía el servicio a la producción de la central y registra como responsable al vendedor con el correo electrónico indicado. El efecto es el mismo que si el vendedor aprobara el servicio para producción en Cortecloud. Use esta ruta con el servicio aprobado (6).
{ "sellerEmail": "vendedor@example.com" }
- El correo electrónico debe ser de un vendedor activo en la central de la solicitud; si no lo es, la respuesta es
422. - La respuesta
202confirma que el envío fue aceptado. El estado cambia poco después: siga el avance conGET /services/{id}, o por webhook, hasta que el servicio llegue a enviado a producción (7). Mientras se procesa el envío,status.codepuede traer un código intermedio que no está en la tabla de estados. - Si Cortecloud rechaza el envío, por ejemplo por saldo insuficiente, la respuesta es
502con el motivo en el mensaje.