[Solo PaaS]{class="badge informative" title="Se aplica solo a proyectos de Adobe Commerce en la nube (infraestructura PaaS administrada por Adobe) y a proyectos locales."}

ACSD-69261: cupón de regla de precio del carro de compras de un solo uso reutilizado debido a un manejo incorrecto de times_used en los flujos de factura parcial y cancelación

El parche ACSD-69261 corrige el problema en el que un cupón de regla de precio de carro de compras configurado para un solo uso por cliente se reutilizó varias veces debido a un manejo incorrecto del atributo times_used en escenarios de cancelación de factura parcial y cantidad restante. Esta revisión está disponible cuando está instalado Quality Patches Tool (QPT) 1.1.76. El ID del parche es ACSD-69261. Este problema está programado para solucionarse en Adobe Commerce 2.4.9.

Productos y versiones afectados

El parche se ha creado para la versión de Adobe Commerce:

  • Adobe Commerce (todos los métodos de implementación) 2.4.6-p13

Compatible con versiones de Adobe Commerce:

  • Adobe Commerce (todos los métodos de implementación) 2.4.4 - 2.4.8-p3
NOTE
El parche podría ser aplicable a otras versiones con las nuevas versiones de Quality Patches Tool. Para comprobar si el parche es compatible con su versión de Adobe Commerce, actualice el paquete magento/quality-patches a la última versión y compruebe la compatibilidad en la página Quality Patches Tool: buscar parches ​. Utilice el ID de parche como palabra clave de búsqueda para localizar el parche.

Problema

Un cupón de regla de precio de carro de compras configurado para un solo uso por cliente se puede reutilizar incorrectamente varias veces debido a la administración incorrecta del atributo times_used durante la creación parcial de la factura y la cancelación de la cantidad no facturada restante.

Pasos a seguir:

  1. Cree una regla de precio de carro de compras con un cupón limitado a un uso por cliente.

  2. Realice un pedido que contenga dos elementos.

  3. Aumente la cantidad de un artículo a dos o más unidades y aplique el cupón.

  4. Confirme que las siguientes tablas de base de datos tienen entradas:

    1. El pedido almacena correctamente el cupón en la tabla sales_order.
    2. La tabla salesrule_coupon_usage muestra times_used = 1.
    3. La tabla salesrule_customer muestra times_used = 1.
  5. Crear una factura parcial facturando sólo una unidad del artículo.

  6. Cancelar la cantidad sin facturar restante.

  7. Compruebe los valores de campo times_used en las tablas salesrule_coupon_usage y salesrule_customer.

Resultados esperados:

El sistema reduce el valor times_used solo después de cancelar las cantidades sin facturar después de una factura parcial, lo que permite que el cupón se vuelva a utilizar cuando está configurado para un solo uso por cliente.

Resultados reales:

Después de la cancelación, los valores de times_used se restablecen a cero en lugar de conservar el recuento de uso correcto.

Aplicar el parche

Para aplicar parches individuales, utilice los siguientes vínculos según el método de implementación:

Lectura relacionada

Para obtener más información sobre Quality Patches Tool, consulte:

recommendation-more-help
c2d96e17-5179-455c-ad3a-e1697bb4e8c3