Visión general
Podemos crear múltiples reglas del mismo tipo. La concurrencia describe qué sucede cuando múltiples reglas activas del mismo tipo existen y luego se activan en la página de checkout al mismo tiempo. Este artículo te ayudará a entender qué sucede cuando estas reglas se aplican juntas, y cómo su efecto combinado puede influenciar el proceso de checkout.Explicación
Cuando añades más de una regla del mismo tipo, todas se ejecutan independientemente pero casi al mismo tiempo. El resultado del checkout es el efecto combinado de todas las reglas que se activan y generan acciones. El orden de ejecución para estas reglas es no determinístico según Shopify, pueden ejecutarse en cualquier orden.Cada regla solo puede generar acciones que pueden combinarse con otras acciones generadas por el mismo tipo de regla.
Por ejemplo, puedes tener una regla para ocultar un método de envío, pero no puedes tener una regla para mostrar un método de envío.
Todas las reglas de ocultar métodos de envío se combinarán juntas para determinar todos los métodos de envío que deben ocultarse.
1
Cada regla comienza a ejecutarse
Cada regla comienza a ejecutarse casi al mismo tiempo, verificando sus propias condiciones para determinar si debe generar alguna acción.
2
Las acciones de regla se generan
Si la condición de una regla se satisface, su acción se genera.
Por ejemplo, puedes tener una regla para ocultar cualquier método de envío que contenga “Worldwide” en su nombre. Luego otra regla para ocultar cualquier método de envío que contenga “International Shipping” en su nombre. Ambas reglas generarán acciones, una ocultará “Worldwide” y la otra ocultará “International Shipping”.
3
Las acciones se combinan
Si múltiples reglas generan acciones, sus acciones se combinan y se envían al Checkout de Shopify.
Por ejemplo, Regla 1 oculta un método que contiene “Worldwide”, Regla 2 oculta un método que contiene “International Shipping” → Se generará una acción combinada de ocultar tanto Worldwide como International Shipping y se enviará al Checkout de Shopify.
Caso de uso de ejemplo
Digamos que quieres ocultar ciertos métodos de envío basándose en el código postal del cliente.Para esto, supongamos que creamos las siguientes reglas: Regla 1 → Ocultar método de envío
DHL Express Worldwide cuando el código postal es 2005 o comienza con 100.

International Shipping cuando el código postal es 2005 o comienza con 500.

Caso 1: Solo una regla aplica
-
Si el cliente ingresa un código postal como 10045, Regla 1 aplica, porque las condiciones para Regla 2 no se cumplen, así que no genera ninguna acción.
→ En el checkout, el método
DHL Express Worldwidese oculta, peroInternational Shippingy otros métodos permanecen disponibles como se muestra en la captura de pantalla a continuación.

- Si el cliente ingresa un código postal como 50010, Regla 2 aplica.
→ En el checkout, el métodoInternational Shippingse oculta, peroDHL Express Worldwidey otros métodos permanecen disponibles.

Caso 2: Ambas reglas aplican juntas
- Si el cliente ingresa el código postal 2005, entonces las condiciones se cumplen para ambas reglas, así que tanto Regla 1 como Regla 2 aplican juntas.
- Esto significa que tanto
DHL Express WorldwidecomoInternational Shippingse ocultarán del checkout, dejando solo los otros métodos disponibles.

Conflictos de reglas
Si múltiples reglas no son seguras para concurrencia, pueden entrar en conflicto entre sí y causar problemas en la página de checkout. Necesitamos asegurar que las reglas no estén en conflicto entre sí para evitar problemas.Ejemplo: Solo mostrar estos métodos de envío
Cuando una regla está configurada para Solo mostrar estos métodos de envío, intentará ocultar todos los métodos de envío que no estén en la lista que queremos “solo mostrar”. Si múltiples reglas están configuradas para Solo mostrar estos métodos de envío, pueden entrar en conflicto entre sí y causar que todas las opciones de envío se oculten.
Ejemplo: Regla 1 → Solo mostrar método de envío DHL Express Worldwide cuando el código postal es 2005 o comienza con 100.

Regla 2 → Solo mostrar método de envío International Shipping cuando el código postal es 2005 o comienza con 500.

DHL Express Worldwide y Regla 2 intentará ocultar todos los métodos de envío que no sean International Shipping. Esto resultará en error No hay envío disponible porque ambas reglas no son compatibles entre sí.

Para resolver este problema, necesitamos crear una 3ra regla aquí, que manejará los códigos postales comunes por separado.
