nxar.Aprender
Integraciones: recibí datos de otros sistemas0 de 6 capítulos
  1. 1Qué puerta usar
  2. 2Tu primer endpoint
  3. 3Probalo y mirá qué llegó
  4. 4Qué recibe y qué contesta
  5. 5La API pública
  6. 6Formularios públicos

Casos de uso

  1. ·Una venta de la tienda crea una oportunidad
  2. ·Un sistema externo actualiza el estado de un caso
  3. ·Un formulario de reclamos que no duplica contactos
  4. ·Probar un webhook sin escribir código

← Volver al recorrido

Caso de uso · Integraciones: recibí datos de otros sistemas · 12 min

Una venta de la tienda crea una oportunidad

Tu tienda online avisa cada venta mayorista con un JSON y en Nxar aparece una Opportunity ganada, sin duplicados aunque la tienda reintente.

El problema. Las ventas grandes de tu tienda online se cargan a mano en Nxar, tarde y con errores. La tienda ya sabe mandar un aviso HTTP cuando se confirma una venta, y reintenta si no recibe respuesta.

La idea. Un endpoint con token que corre una automation: con el número de pedido, el cliente y el total, crea una Opportunity en etapa Won. Como la tienda reintenta, el endpoint contesta sólo el acuse y la tienda manda el número de pedido como Idempotency-Key: un reintento no crea una segunda oportunidad.

Probalo en un workspace de práctica

Un workspace con el escenario ya armado, que se borra solo a las 48 h. Estamos terminándolo.

Creá la automation

ConfiguraciónAutomatizaciónProcesos

Nuevo, tipo Endpoint de API, Label Venta de la tienda y API name tienda_nueva_venta. En Inputs:

NombreTiporeq
order_idtextSí
customertextSí
totalnumberSí

Sin Outputs: la tienda sólo necesita saber que el aviso llegó. Nueva automation.

Creá la oportunidad

En el builder, arrastrá Crear registro al lienzo (queda conectado al Trigger) y configuralo:

  • Entidad: Opportunity.
  • Campos:
CampoValor
nameVenta web {{inputs.order_id}} · {{inputs.customer}}
amount{{inputs.total}}
stageWon

Guardar.

Publicala

ConfiguraciónIntegraciones y APIEndpointsEndpoints y webhooks

Nuevo endpoint: Nombre en la URL tienda-ventas, ¿Qué corre? tienda_nueva_venta, Token secreto, ¿Qué contesta? Sólo el acuse de recibo, y en Correr como usuario quien lleva las ventas web. Crear, copiá el token y Listo.

Lista de Endpoints y webhooks con tienda-ventas, Token secreto, sin devolver el resultado
Con acuse, la lista ya no dice devuelve el resultado: el endpoint contesta 202 apenas termina el flujo.

Mandá una venta, dos veces

curl -X POST "https://tu-workspace.nx-ar.com/public/v1/custom/tienda-ventas" \
  -H "Content-Type: application/json" \
  -H "X-Webhook-Token: nxar_whk_REEMPLAZAR_POR_TU_TOKEN" \
  -H "Idempotency-Key: venta-20931" \
  -d '{"order_id":"20931","customer":"Vivero Los Álamos","total":185000}'

La primera vez contesta 202 con "received":true. Repetí exactamente el mismo comando: ahora contesta 200 con "duplicate":true y no corre nada.

total está declarado como number: si la tienda manda "185.000,50" (con puntos de miles y coma decimal) el endpoint contesta 422 must_be_number. Pedile que mande el número con punto decimal y sin separador de miles: 185000.5.

Cómo saber que te salió

En Opportunities hay una sola oportunidad Venta web 20931 · Vivero Los Álamos, en Won, por 185.000. En Audit Logs, filtrando por tienda-ventas, están las dos llamadas: la primera con 202 y la segunda con 200 y duplicate.

¿Te funcionó?