Gestionar reglas del carrito y códigos de descuento
ps_manage_cart_rules
- ProSolo TellMyShop Pro
- Escritura · vista previa + aprobación
- Guarda: interruptor Ventas (hasta que lo apagues)
- Ventas · interruptor, hasta que lo apagues
- Visible nada más instalar
Crea códigos de descuento, también lotes de códigos de un solo uso, y los activa o desactiva. Los códigos nuevos empiezan desactivados.
TellMyShop Free: No. Esta herramienta solo está en TellMyShop Pro. TellMyShop Free solo tiene informes listos que leen tu tienda.
Pregunta al chat
«Crea el código BIENVENIDA10: 10 % de descuento en pedidos de más de 200 PLN, válido hasta final de año, una vez por cliente.»
Vista previa de ejemplo
Regla del carrito nueva «Bienvenida 10 %», código BIENVENIDA10, 10 %, mín. 200 PLN brutos, del 2026-10-05 al 2026-12-31, 1 por cliente, 1000 usos. Creada como INACTIVA: actívala con set_active después de revisarla.
Detalles técnicos
Códigos de descuento (reglas del carrito). action=list (con número de usos) y action=get (detalles con restricciones). action=create crea un código: porcentaje, importe o envío gratis, valor mínimo del carrito, fechas, usos totales y usos por cliente, restricciones opcionales a categorías, productos o fabricantes, grupos de clientes, exclusive (no se combina con otros códigos), exclude_discounted y, para los descuentos en porcentaje, apply_to (todo el pedido, productos seleccionados o el producto más barato). action=generate crea una serie de códigos únicos DE UN SOLO USO con un prefijo (por ejemplo 200 códigos para la newsletter, count hasta 500) con las mismas condiciones. action=update cambia el código, las fechas, los límites, el valor o el nombre. action=set_active activa o desactiva un código. action=delete borra un código que NUNCA se ha usado en un pedido (un código usado solo se puede desactivar). Los códigos nuevos empiezan INACTIVOS salvo que activate=true. Una regla sin código se aplica automáticamente a todos los clientes y necesita auto_apply=true.
Parámetros
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| action | enum: list | get | create | update | set_active | generate | delete | sí | list | get | create | update | set_active | generate | delete. |
| shop_id | integer | no | ID de la tienda en una instalación multitienda. Por defecto, la tienda de la dirección del conector. ps_get_shop_info lista los ID. |
| cart_rule_id | integer | cuándo | get/update/set_active/delete: ID de action=list. |
| name | string | no | create/generate/update: nombre que se muestra en el carrito del cliente (por ejemplo «Rebajas de otoño -10 %»). Máx. 254 caracteres. |
| code | string | no | create/update: el código que se escribe en el carrito (letras, dígitos, - y _). |
| auto_apply | boolean | no | create: true = una regla SIN código, aplicada automáticamente a todos los que cumplan las condiciones. Por defecto false. |
| reduction_percent | number | no | descuento en % (create/generate/update). Máx. 100. |
| reduction_amount | number | no | descuento en importe en la moneda de la tienda (create/generate/update). Máx. 1.000.000. |
| amount_tax_included | boolean | no | create/generate: el descuento en importe es bruto (por defecto). |
| free_shipping | boolean | no | envío gratis (create/generate/update). |
| minimum_amount | number | no | valor mínimo bruto del carrito, 0 = sin mínimo (create/generate/update). |
| date_from | string (YYYY-MM-DD) | no | válido desde (create/generate: por defecto hoy), AAAA-MM-DD. |
| date_to | string (YYYY-MM-DD) | cuándo | válido hasta (create/generate: obligatorio), AAAA-MM-DD. |
| quantity | integer | cuándo | create: número total de usos (obligatorio); update: número de usos restantes. Rango de 0 a 1.000.000. |
| quantity_per_user | integer | no | usos por cliente (por defecto 1). Rango de 1 a 1000. |
| category_ids | array of integer | no | create/generate: el código solo funciona cuando el carrito tiene un producto de estas categorías (ID de ps_get_category_tree). Máx. 50 elementos. |
| products | array of string | no | create/generate: el código solo funciona con estos productos. Máx. 100 elementos. |
| manufacturer_ids | array of integer | no | create/generate: el código solo funciona con productos de estos fabricantes. Máx. 50 elementos. |
| min_products | integer | no | create/generate: cuántos de esos productos debe haber en el carrito. Rango de 1 a 1000. Por defecto 1. |
| apply_to | enum: order | selected_products | cheapest | no | create/generate (solo descuento en porcentaje): order = todo el carrito, selected_products = solo los productos de la restricción, cheapest = el producto más barato. Por defecto order. |
| exclude_discounted | boolean | no | create/generate/update: el descuento omite los productos que ya tienen descuento. |
| customer_group_ids | array of integer | no | create/generate: solo para estos grupos de clientes. Máx. 20 elementos. |
| exclusive | boolean | no | create/generate: no se puede combinar con otros códigos de descuento. Por defecto false. |
| highlight | boolean | no | create/update: sugerir el código en el carrito cuando el cliente cumpla las condiciones. |
| partial_use | boolean | no | create/update (descuento en importe): la parte no usada del importe queda como un código nuevo para el cliente. |
| description | string | no | create/generate/update: descripción interna (solo en el back office). Máx. 254 caracteres. |
| activate | boolean | no | create/generate: activo al momento (por defecto no: lo activas después de revisarlo). |
| count | integer | cuándo | generate: cuántos códigos (cada uno de un solo uso). Rango de 1 a 500. |
| prefix | string | cuándo | generate: prefijo del código (por ejemplo NEWS10 -> NEWS10-7KQ3XW9P). |
| code_length | integer | no | generate: longitud de la parte aleatoria del código. Rango de 6 a 16. Por defecto 8. |
| active | boolean | cuándo | set_active: true = activar, false = desactivar. |
| only_active | boolean | no | list: solo activos. Por defecto false. |
| search | string | no | list: fragmento del nombre o del código. Máx. 100 caracteres. |
| limit | integer | no | Máximo de filas (por defecto 50, máx. 200). |
| offset | integer | no | Filas que saltar, para paginar (por defecto 0). |
| confirm | boolean | no | false (por defecto) devuelve una vista previa y no guarda nada. true ejecuta, solo después de que el usuario haya aprobado la vista previa, junto con change_token. |
| change_token | string | cuándo | Token de la vista previa. Obligatorio con confirm=true. Válido 30 minutos, de un solo uso, ligado a los argumentos y al estado de los datos de la vista previa. |
Límites
Los códigos nuevos empiezan inactivos salvo que activate=true. generate: hasta 500 códigos de un solo uso por llamada. delete solo para códigos que nunca se han usado en un pedido. Una regla sin código necesita auto_apply. Lista de máx. 200 filas (por defecto 50). Es una herramienta de escritura, así que sin una licencia activa está oculta, también list; los cambios necesitan el interruptor Ventas. El permiso se comprueba por acción (AdminCartRules). Se puede deshacer con ps_revert_change.
Lo que ves antes de que se guarde nada
El chat llama primero a la herramienta sin confirmar. El módulo devuelve una vista previa (valores actuales y nuevos) y un token de un solo uso válido durante 30 minutos. El chat te muestra la vista previa y guarda el cambio solo después de tu sí.
Herramientas relacionadas
- Promociones de categorías y marcas (reglas de precios del catálogo) ps_manage_catalog_price_rules
- Gestionar precios de oferta (precios específicos) ps_manage_specific_prices
- Deshacer un cambio ps_revert_change
Casos de uso con esta herramienta
- Crea un código de descuento para una newsletter
- Dale a un cliente un código único para pedirle disculpas
- Revisa los códigos de descuento y los descuentos activos
- Prepara una campaña de Black Friday en toda la tienda
- Compara los umbrales de envío gratis con tu pedido medio
- Desactiva los códigos de descuento caducados y agotados
- Ofrece envío gratis a partir de un importe de pedido
- Prepara toda la tienda para el Black Friday
- Limpia la tienda después de una promoción
Última actualización: 2026-10-11