ACSD-45143: setShippingAddressesOnCart mutation not setting numeric region code as ‘region’

The ACSD-45143 patch fixes the issue where the setShippingAddressesOnCart mutation does not allow setting numeric region code as “region”. This patch is available when the Quality Patches Tool (QPT) 1.1.17 is installed. The patch ID is ACSD-45143. Please note that the issue is scheduled to be fixed in Adobe Commerce 2.4.6.

Affected products and versions

The patch is created for Adobe Commerce version:

  • Adobe Commerce (all deployment methods) 2.4.2-p2

Compatible with Adobe Commerce versions:

  • Adobe Commerce (all deployment methods) 2.3.0 - 2.4.4
NOTE
The patch might become applicable to other versions with new Quality Patches Tool releases. To check if the patch is compatible with your Adobe Commerce version, update the magento/quality-patches package to the latest version and check the compatibility on the Quality Patches Tool: Search for patches page. Use the patch ID as a search keyword to locate the patch.

Issue

The setShippingAddressesOnCart mutation doesn’t allow setting numeric region code as “region”.

Steps to reproduce:

  1. Create a cart using the below query.

    code language-graphql
    
     mutation {
       createEmptyCart
     }
    
    
  2. Send a request to set the shipping address to the cart.

    code language-graphql
    
     mutation ($cartId: String!) {
       setShippingAddressesOnCart(
         input: {
           cart_id: $cartId
           shipping_addresses: {
             address: {
               firstname: "Tomek"
               lastname: "Nowak"
               company: "Company Name"
               street: ["234 Rue de Rivoli"]
               region: "58"
               city: "Lille"
               postcode: "59800"
               country_code: "FR"
               telephone: "123-456-0000"
               save_in_address_book: false
             }
           }
         }
         ) {
           cart {
             shipping_addresses {
               firstname
               lastname
               company
               street
               city
               region {
                 code
                 label
               }
               postcode
               telephone
               country {
                 code
                 label
               }
             }
           }
         }
       }
    
    

    Note: country code is set to “FR” and the region code to “58” in this example. According to the directory_country_region Db table, region code 58 is “Nièvre”.

  3. Check the response that is returned.

Expected results:

Adobe Commerce allows setting numeric region code in the GraphQL request.

Actual results:

The region code is changed to 47.


{
  "data": {
    "setShippingAddressesOnCart": {
      "cart": {
        "shipping_addresses": [
        {
          "firstname": "Tomek",
          "lastname": "Nowak",
          "company": "Company Name",
          "street": [
          "234 Rue de Rivoli"
          ],
          "city": "Lille",
          "region": {
            "code": "47",
            "label": "Lot-et-Garonne"
            },
            "postcode": "59800",
            "telephone": "123-456-0000",
            "country": {
              "code": "FR",
              "label": "FR"
            }
          }
        ]
      }
    }
  }
}

Apply the patch

To apply individual patches, use the following links depending on your deployment method:

To learn more about Quality Patches Tool, refer to:

For info about other patches available in QPT, refer to Quality Patches Tool: Search for patches in the Quality Patches Tool guide.

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