developers Entrar a AdvantaCloud
Árbol del API · Pedidos › quoteOrder

Cotizar una orden

quoteOrder

Tipo

Query

Devuelve

OrderQuote

Permiso de la llave

Creacion de Orden de Venta

Estable

Calcula precios, descuentos, impuestos y totales de una orden sin guardarla. Devuelve la orden calculada y las advertencias de existencia, precio y crédito.

Es una consulta: no guarda nada, no asigna folio y no necesita idempotencyKey. Úsala para mostrar el total antes de confirmar o para saber el precio vigente de cada partida.

Copia el unitPrice de cada partida cotizada en expectedUnitPrice al llamar a createOrder: si el precio cambió entre la cotización y la creación, la orden no se guarda y lo sabrás.

NO_STOCK avisa que no hay existencia suficiente y CREDIT_EXCEEDED que el cliente rebasa su crédito; ninguna impide crear la orden. PRICE_CHANGED avisa que un expectedUnitPrice ya no coincide: la cotización se completa, pero createOrder rechazará esa partida hasta que envíes el precio vigente.

quoteOrder(
  input: OrderInput!
): OrderQuote

Argumentos

1

ArgumentoTipoDescripción
inputOrderInput! OrderInput!

La orden a cotizar, con los mismos datos que enviarás a createOrder. Ver OrderInput.

Obligatorio.

Advertencias de una orden

OrderWarning

NO_STOCKNo hay existencia suficiente de algún artículo en el almacén
PRICE_CHANGEDEl precio de una partida ya no coincide con su expectedUnitPrice; createOrder la rechaza con CONFLICT
CREDIT_EXCEEDEDLa orden rebasa el crédito disponible del cliente

Ver OrderWarning

Lo que devuelve

OrderQuote

Campos principales de OrderQuote:

CampoTipoDescripción
orderOrder! Order! La orden con precios, descuentos, impuestos y totales calculados. No tiene id ni folio.
warnings[OrderWarning!]! [OrderWarning!]! Advertencias de existencia, precio y crédito.

Ver todos los campos de OrderQuote

Permisos

Llave API Integraciones

Creacion de Orden de Venta

La llave ve los registros de toda la empresa del subdominio.

Sin el permiso HTTP 422

La respuesta es HTTP 422 con el cuerpo {"error": "invalid_graphql_request"}, sin data.

Errores

CódigoCuándo ocurreQué hacer
HTTP 401Falta el header Authorization o la llave no existe en la empresa del subdominio. La respuesta no trae cuerpo.Revisa la llave y el subdominio. No reintentes.
HTTP 422La llave no tiene «Creacion de Orden de Venta». La respuesta es HTTP 422 con el cuerpo {"error": "invalid_graphql_request"}, sin data.La llave necesita ese permiso; reintentar no ayuda.
VALIDATIONUn dato no es válido: la estructura de precios no es del cliente, una cantidad no es positiva, un artículo está inactivo, hay más de 100 partidas o falta userId. Si el error es de una partida, extensions.field dice cuál, por ejemplo lines[1].quantity.Corrige el dato indicado.
NOT_FOUNDEl cliente, el almacén, el artículo u otro dato de la orden no existe.Revisa los identificadores; extensions.field puede indicar cuál falló.
INACTIVEEl almacén, el tipo de venta, el término de crédito, el proyecto o la forma de embarque existe, pero ya no se ofrece.Pide opciones vigentes con orderDefaults.
CONFLICTUna regla del negocio impide calcular la orden con esos datos.Lee el mensaje; reintentar sin cambios no ayuda.
HTTP 422Falla interna o dato rechazado al guardar. El cuerpo es {"error": …}, sin data.Si no cambiaste nada, reintenta con espera exponencial.

Los errores de la consulta llegan con HTTP 200 en errors, con su código en extensions.code. Revisa siempre errors, no sólo el estatus HTTP. Errores y reintentos.

Relacionadas

Schema del 26 oct 2026 · Ver cambios¿Algo no cuadra? Repórtalo en ayuda.advanta.mx