Ir al contenido

Modificar Clientes

Permite modificar uno o múltiples clientes existentes en el sistema mediante una única petición. Este endpoint está diseñado para operaciones de actualización en lote (batch update), permitiendo actualizar hasta 10,000 registros por petición.

Método: POST

https://api.ventasremotas.com/v1/customers/batch-update
HeaderValorDescripción
Content-Typeapplication/jsonIndica que los datos se envían en formato JSON
Acceptapplication/jsonIndica que la respuesta debe estar en formato JSON
Subscription-Key{subscription_key}Clave de suscripción para acceder a la API
AuthorizationBearer {access_token}Token de acceso obtenido del endpoint /token

El body debe ser un array de objetos, donde cada objeto representa un cliente a actualizar.

ParámetroValorDescripción
Mínimo de items1El array no puede estar vacío
Máximo de items10,000Número máximo de clientes por petición

El cuerpo (Body) de la solicitud debe enviarse en formato JSON y debe incluir un array con los siguientes parámetros.

CampoTipoNuloRestriccionesDescripción
codestring (max 18)NoNo permite: espacio, #, %, &, *, {, }, \, :, <, >, ?, /, +, .Código único del cliente (identifica al cliente a actualizar)
typestring (max 30)NoTipo de cliente o clasificación definida en el ERP (ej: “DISTRIBUIDOR”, “MINORISTA”)
namestring (max 150)NoNombre completo o razón social del cliente
contactstring (max 150)NoNombre de la persona de contacto
phonestring (max 100)NoTeléfono o móvil de contacto
emailstring (max 150)Correo electrónico principal del cliente
addressstring (max 300)NoDirección física del cliente
citystring (max 50)NoCiudad donde se ubica el cliente
countrystring (max 50)País donde se ubica el cliente
regionstring (max 50)Región o departamento del cliente
quotadecimal (18, 2)NoCapacidad de crédito del cliente
termdecimal (3, 0)NoPlazo de pago del cliente (ej: 30, 60, 90)
payment_methodstring (max 50)NoForma de pago (ej: “CONTADO”, “CRÉDITO”)
price_liststring (max 20)Código de la lista de precios asignada al cliente desde el ERP
locationstring (max 20)Código de bodega asignado al cliente para la venta
nitstring (max 20)NIT o RUT del cliente
discountdecimal (10, 2)Porcentaje de descuento que aplica al cliente
discount_liststring (max 20)Código de lista de descuentos
observationsstring (max 500)Observaciones o notas adicionales
name_eststring (max 200)Nombre del establecimiento
short_namestring (max 200)Nombre corto o alias del cliente
operation_centerstring (max 10)Centro de operación asignado
block_salesstring (max 1)Valores permitidos: Y, NBloquear ventas al cliente
commercial_discountdecimal (18, 2)Descuento asignado al cliente para ser aplicado de forma automática al momento de tomar un pedido
discount_basedecimal (18, 2)Base de descuento
withholding_basedecimal (18, 2)Base de retención
withholdingdecimal (18, 2)Valor de retención
corporate_clientstring (max 18)NIT del cliente corporativo (utilizado para la cartera)
real_quotadecimal (18, 2)Cupo real disponible del cliente
statestring (max 1)NoValores permitidos: Y, NEstado del cliente (Activo/Inactivo)
email2string (max 150)Correo electrónico secundario
parent_clientstring (max 18)Código del cliente padre (utilizado para determinar una sucursal de una cuenta principal)
latitudedecimal (24, 18)Latitud de la ubicación geográfica del cliente
longitudedecimal (24, 18)Longitud de la ubicación geográfica del cliente
visit_prioritystring (max 10)Valores permitidos: high, low, regularPrioridad de visita del cliente
time_window_startstring (max 5)Formato: HH:MM (ej: 08:30, 14:00)Hora de inicio de la ventana de atención
time_window_endstring (max 5)Formato: HH:MM (ej: 08:30, 17:00)Hora de fin de la ventana de atención
service_duration_minutesintegerRango: 0 a 1440Tiempo promedio de atención en minutos
seller_can_editstring (max 1)Valores permitidos: Y, NPermite al vendedor editar datos del cliente
seller_can_inactivatestring (max 1)Valores permitidos: Y, NPermite al vendedor inactivar al cliente
tax_exemptstring (max 1)Valores permitidos: Y, NExento de impuesto
apply_associated_scalesstring (max 1)Valores permitidos: Y, NAplicar sólo escalas asociadas (aplica para escalas de descuento y bonificación)
apply_associated_surveysstring (max 1)Valores permitidos: Y, NPermitir diligenciar solo formularios asociados
  • string (max N): Cadena de texto con longitud máxima de N caracteres.
  • decimal (p, s): Número decimal donde p es la precisión total (dígitos enteros + decimales) y s es la escala (dígitos decimales).
    • Ejemplo: decimal (18, 2) permite hasta 16 dígitos enteros y 2 decimales (ej: 9999999999999999.99)
    • Ejemplo: decimal (3, 0) permite hasta 3 dígitos enteros sin decimales (ej: 999)
    • Ejemplo: decimal (24, 18) permite hasta 6 dígitos enteros y 18 decimales
  • integer: Número entero.

Aquí tienes un ejemplo de cómo debería quedar el cuerpo de la solicitud en formato JSON:

[
{
"code": "CLI-001",
"type": "DISTRIBUIDOR",
"name": "Distribuidora ABC S.A.S",
"contact": "Juan Pérez",
"phone": "3001234567",
"email": "contacto@distribuidoraabc.com",
"email2": "ventas@distribuidoraabc.com",
"address": "Calle 100 #15-25 Oficina 301",
"city": "Bogotá",
"country": "Colombia",
"region": "Cundinamarca",
"quota": 50000000.0,
"term": 30,
"payment_method": "CRÉDITO",
"nit": "900123456-1",
"discount": 5.0,
"discount_list": "DESC-PREMIUM",
"observations": "Cliente preferencial - Zona norte",
"price_list": "LP-001",
"location": "LOC-NORTE",
"name_est": "Distribuidora ABC Sede Principal",
"short_name": "Dist ABC",
"operation_center": "CO-001",
"block_sales": "N",
"commercial_discount": 2500.0,
"discount_base": 100000.0,
"withholding_base": 500000.0,
"withholding": 15000.0,
"corporate_client": "CORP-001",
"real_quota": 45000000.0,
"state": "Y",
"parent_client": null,
"latitude": 4.7109886,
"longitude": -74.072092,
"visit_priority": "high",
"time_window_start": "08:00",
"time_window_end": "17:00",
"service_duration_minutes": 45,
"seller_can_edit": "Y",
"seller_can_inactivate": "N",
"tax_exempt": "N",
"apply_associated_scales": "N",
"apply_associated_surveys": "N"
}
]

{
"statusCode": 200,
"message": "Customers updated successfully"
}