developers Entrar a AdvantaCloud
Árbol del API · Clientes › customer

Detalle de un cliente

customer

Tipo

Query

Devuelve

CustomerDetail

Permiso de la llave

Cliente

Estable

Devuelve un cliente por su id, con su crédito y su saldo, sus lugares de entrega y contactos, sus órdenes de venta más recientes y sus facturas con saldo por cobrar.

Si la llave no tiene el permiso, la respuesta es customer: null sin error; un cliente que no existe responde NOT_FOUND. Así distingues una llave mal configurada de un id equivocado.

Las órdenes recientes (recentOrders) piden además «Ventas» en la llave y las facturas pendientes (pendingInvoices), «Facturación»; sin ellos, ese campo llega null y el resto del cliente llega completo. Las órdenes van de la más reciente a la más antigua y no incluyen cotizaciones de venta.

Para toda la historia del cliente, filtra por su id en customerId: sus órdenes de venta en ordersConnection, sus facturas en invoicesConnection y sus cobros en collectionsConnection.

customer(
  id: ID!
): CustomerDetail

Argumentos

1

ArgumentoTipoDescripción
idID! ID!

Identificador del cliente, el mismo id que llega en customersConnection, customerSuggestions o Order.customer.

Obligatorio.

Lo que devuelve

CustomerDetail

Campos principales de CustomerDetail:

CampoTipoDescripción
idID! ID! Identificador del cliente; es el que se envía en customerId.
codeString String Clave del cliente, p. ej. C-0042.
nameString String Nombre del cliente.
rfcString String RFC del cliente.
creditLimitMoney Money Límite de crédito, en la moneda de crédito (creditCurrency). Requiere «Cliente» en la llave; sin él llega null.
creditCurrencyString String Clave SAT de la moneda de crédito, p. ej. MXN. El límite y los saldos están en esta moneda. Requiere «Cliente» en la llave; sin él llega null.
balanceMoney Money Saldo por cobrar: las parcialidades pendientes de sus facturas, vencidas y por vencer, menos los cobros que aún no se aplican a una factura. Es negativo si el cliente tiene saldo a favor. Requiere «Cliente» en la llave; sin él llega null.
overdueBalanceMoney Money Importe de las parcialidades ya vencidas, sin descontar los cobros por aplicar. Requiere «Cliente» en la llave; sin él llega null.
availableCreditMoney Money Crédito disponible, creditLimit menos balance. Requiere «Cliente» en la llave; sin él llega null.
pendingInvoicesCountInt! Int! Número de facturas con saldo por cobrar, sin contar las facturas de anticipo. Requiere «Cliente» en la llave; sin él la petición responde HTTP 422.
creditTermCreditTerm CreditTerm Término de crédito del cliente; es el que se propone en sus órdenes.
priceStructurePriceStructure PriceStructure Estructura de precios principal del cliente. Requiere «Cliente» en la llave; sin él llega null.
auxPriceStructurePriceStructure PriceStructure Estructura de precios auxiliar. Cuando el cliente tiene una, sus precios tienen prioridad sobre los de priceStructure. Requiere «Cliente» en la llave; sin él llega null.
documentCurrencyCurrency Currency Moneda de los documentos del cliente.
addressesCustomerAddressConnection! CustomerAddressConnection! Lugares de entrega del cliente, del modificado hace más tiempo al más reciente.20 por omisión, hasta 100 por página.
contacts[CustomerContact!]! [CustomerContact!]! Contactos del cliente, ordenados por nombre.
recentOrdersOrderConnection OrderConnection Órdenes de venta del cliente, de la más reciente a la más antigua, sin cotizaciones de venta. Llegan 10 si no pides otro número con first. Requiere «Ventas» en la llave; sin él llega null.10 por omisión, hasta 100 por página.
pendingInvoicesInvoiceConnection InvoiceConnection Facturas del cliente con saldo por cobrar, sin las facturas de anticipo. Con search, sólo las que tienen ese texto en el folio o en el UUID; si el texto aparece en el nombre o la clave del cliente, llegan todas. Requiere «Facturación» en la llave; sin él llega null.50 por omisión, hasta 100 por página.

Ver todos los campos de CustomerDetail

Permisos

Llave API Integraciones

Cliente

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

Sin el permiso Sin error

La consulta responde sin error, pero el resultado llega null.

Así lo conserva el API para las integraciones que ya lo usan: revisa los permisos de la llave si una lista llega vacía sin razón.

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.
NOT_FOUNDNo hay un cliente con ese id en la empresa.Revisa el id.
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