getAllDiscounts
Obteniendo todos los objetos de descuento.
Descripción
Este método recupera todos los objetos de descuento. El método añadirá el idioma predeterminado al cuerpo de la solicitud. Si deseas cambiar el idioma, simplemente pásalo como el primer argumento. Devuelve una Promesa que se resuelve en un array de objetos IDiscountEntity.
Descuentos.getAllDiscounts(
langCode,
offset,
limit,
type
);
Esquema de parámetros
Esquema
langCode: string
Código de idioma. Predeterminado: "en_US"
ejemplo: "en_US"
offset: number
Parámetro opcional para la paginación. Predeterminado: 0
ejemplo: 0
limit: number
Parámetro opcional para la paginación. Predeterminado: 30
ejemplo: 30
type: IDiscountType
Parámetro opcional para filtrar descuentos por tipo
Por defecto, puedes recuperar 10 objetos. Esto se debe al límite de registros en la configuración de permisos del módulo.
Para que la paginación funcione correctamente, necesitas configurar Permisos del módulo de acuerdo a tus necesidades en la sección correspondiente.
Ejemplos
Ejemplo mínimo
const response = await Discounts.getAllDiscounts();
Ejemplo con atributos
const response = await Discounts.getAllDiscounts('en_US', 0, 30);
Ejemplo de respuesta
{
"items": [
{
"id": 1,
"type": "DISCOUNT",
"attributeSetId": 31,
"conditionLogic": "AND",
"discountValue": {
"value": 10,
"maxAmount": 5,
"discountType": "FIXED_AMOUNT",
"applicability": "TO_PRODUCT"
},
"exclusions": null,
"gifts": null,
"giftsReplaceCartItems": false,
"userGroups": null,
"userExclusions": null,
"localizeInfos": {
"title": "Example discount"
},
"version": 0,
"identifier": "example_discount",
"startDate": "2026-03-14T14:55:19.928Z",
"endDate": "2026-07-31T13:55:24.647Z",
"attributeValues": {
"example_discount": {
"type": "string",
"value": "test value",
"isIcon": false,
"position": 0,
"additionalFields": {},
"isProductPreview": false
}
},
"conditions": [],
"bonusEvent": null,
"position": 1
}
],
"total": 1
}
Esquema de respuesta
Esquema: IDiscountEntity[]
items: IDiscountsEntity[]
Array de entidades de descuento.
items.id: number
El identificador único del descuento.
items.attributeSetId: number
El identificador del descuento.
items.localizeInfos: ILocalizeInfo
El nombre del descuento.
items.version: number
La versión del descuento.
items.identifier: string
El identificador del descuento.
items.type: IDiscountType
El tipo del descuento.
items.startDate: string
La fecha de inicio del descuento.
items.endDate: string
La fecha de finalización del descuento.
items.discountValue: IDiscountValue
El valor del descuento, incluyendo su tipo y límites de cantidad.
discountValue.applicability: 'TO_PRODUCT' | 'TO_ORDER'
A qué se aplica el descuento.
ejemplo: "TO_PRODUCT"
discountValue.discountType: 'FIXED_AMOUNT' | 'PERCENT'
Cómo se interpreta el valor del descuento.
ejemplo: "FIXED_AMOUNT"
discountValue.value: number
Cantidad del descuento (unidades monetarias para FIXED_AMOUNT, puntos porcentuales para PERCENT).
ejemplo: 10
discountValue.maxAmount: number
Límite opcional sobre el descuento absoluto aplicado.
ejemplo: 5
items.conditionLogic: string
La lógica del descuento. Los valores posibles son "AND" | "OR".
items.conditions: IDiscountCondition[]
Las condiciones del descuento.
conditions.type: string
El tipo de condición de descuento.
conditions.value: string
El valor asociado con la condición de descuento.
items.exclusions: Record<string, unknown> | null
Las exclusiones del descuento.
items.gifts: Record<string, unknown> | null
Los regalos del descuento.
items.giftsReplaceCartItems: boolean
Si los regalos reemplazan los artículos del carrito.
items.userGroups: Record<string, unknown> | null
Los grupos de usuarios del descuento.
items.userExclusions: Record<string, unknown> | null
Las exclusiones de usuarios del descuento.
items.attributeValues: IAttributeValues
Los valores de atributos del descuento.
items.attributeSetIdentifier: string
El identificador del conjunto de atributos.
items.bonusEvent: Record<string, unknown>
Configuración del evento de bonificación.
items.position: number
Número de posición para ordenar.
ejemplo: 1
items.total: number | string
Total de entradas relacionadas.
ejemplo: "1"
total: number
Número total de descuentos.