ACSD-56158: valor de imposto incorreto na resposta do GraphQL quando várias regras de imposto são aplicadas ao carrinho

O patch ACSD-56158 corrige o problema em que o valor de imposto renderizado na resposta do GraphQL está incorreto quando várias regras de imposto são aplicadas ao carrinho. Este patch está disponível quando o Quality Patches Tool (QPT) 1.1.44 está instalado. A ID do patch é ACSD-56158. Observe que o problema está programado para ser corrigido no Adobe Commerce 2.4.7.

Produtos e versões afetados

O patch foi criado para a versão do Adobe Commerce:

  • Adobe Commerce (todos os métodos de implantação) 2.4.5-p5

Compatível com as versões do Adobe Commerce:

  • Adobe Commerce (todos os métodos de implantação) 2.4.5-p5 - 2.4.6-p3
NOTE
O patch pode se tornar aplicável a outras versões com as novas versões do Quality Patches Tool. Para verificar se o patch é compatível com a sua versão do Adobe Commerce, atualize o pacote magento/quality-patches para a versão mais recente e verifique a compatibilidade na Quality Patches Tool: página Procurar patches. Use a ID do patch como palavra-chave de pesquisa para localizar o patch.

Problema

A renderização do valor do imposto na resposta do GraphQL está incorreta quando várias regras de imposto são aplicadas ao carrinho.

Etapas a serem reproduzidas:

  1. Crie um cliente com um endereço dos EUA.

  2. Navegue até o Painel de administração.

  3. Crie um produto com um preço de US$ 100.

  4. Crie duas alíquotas de imposto para o endereço dos EUA: uma para 10% e outra para 5%.

  5. Configure duas regras de imposto para os EUA de Stores > Taxes > Tax Rule.

  6. Atribua uma alíquota de imposto a uma regra.

  7. No front-end, faça logon como o cliente com o endereço dos EUA e adicione o produto ao carrinho.

  8. Gere um token de cliente por meio do GraphQL.

  9. Gere uma ID de carrinho por meio do GraphQL.

  10. Verifique se o imposto aplicado está correto obtendo o carrinho do cliente por meio do GraphQL:

    code language-graphql
    {
        cart(cart_id: "o3Yqt6zkn8ncOzFxGnR1IWdT..") {
            id
            email
            billing_address {
                city
                country {
                    code
                    label
                }
                firstname
                lastname
                company
                postcode
                vat_id
                region {
                    code
                    label
                }
                street
                telephone
            }
            shipping_addresses {
                firstname
                lastname
                company
                street
                city
                postcode
                vat_id
                region {
                    code
                    label
                }
                country {
                    code
                    label
                }
                telephone
                available_shipping_methods {
                    amount {
                        currency
                        value
                    }
                    available
                    carrier_code
                    carrier_title
                    error_message
                    method_code
                    method_title
                    price_excl_tax {
                        value
                        currency
                    }
                    price_incl_tax {
                        value
                        currency
                    }
                }
                selected_shipping_method {
                    amount {
                        value
                        currency
                    }
                    carrier_code
                    carrier_title
                    method_code
                    method_title
                }
            }
            available_payment_methods {
                code
                title
            }
            selected_payment_method {
                code
                title
            }
            applied_coupons {
                code
            }
            prices {
                grand_total {
                    value
                    currency
                }
                subtotal_excluding_tax {
                    value
                    currency
                }
                subtotal_including_tax {
                    value
                    currency
                }
                applied_taxes {
                    label
                    amount {
                        currency
                        value
                    }
                }
            }
        }
    }
    

Resultados esperados:

Cada alíquota de imposto mostra sua própria quantia de imposto:

"applied_taxes": [
    {
        "label": "US-CA-*-Rate 1",
        "amount": {
            "currency": "USD",
            "value": 10
        }
    },
    {
        "label": "US-CA-*-Rate 2",
        "amount": {
            "currency": "USD",
            "value": 5
        }
    }
]

Resultados reais:

Valor total do imposto retornado para cada regra:

"applied_taxes": [
    {
        "label": "US-CA-*-Rate 1",
        "amount": {
            "currency": "USD",
            "value": 15
        }
    },
    {
        "label": "US-CA-*-Rate 2",
        "amount": {
            "currency": "USD",
            "value": 15
        }
    }
]

Aplicar o patch

Para aplicar patches individuais, use os links a seguir, dependendo do método de implantação:

Leitura relacionada

Para saber mais sobre Quality Patches Tool, consulte:

Para obter informações sobre outros patches disponíveis no QPT, consulte Quality Patches Tool: Pesquisar patches no guia Quality Patches Tool.

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