MDVA-43605: The order data returns negative values for row totals when using Rest API
The order data returns negative values for row totals when using Rest API. Quality patch MDVA-43605 for magento/module-sales applies to Magento Open Source and Adobe Commerce 2.3.1 to 2.4.4-p18.
- Categories
- Web API
- Components
- magento/module-sales
- Origin
- adobe-commerce-support
- Since QPT
- 1.1.14
Issue
The order data returns negative values for row totals when using Rest API.
Steps to reproduce
1. Enable free shipping. 1. Navigate to Configuration > Catalog > Price > and set Catalog Price Scope = Website. 1. Navigate to Configuration > Sales > Tax and update: * Tax Class For Shipping = Taxable Goods * Calculation Settings: * Catalog Price = Including Tax * Shipping Price = Including Price * Applying Discount On Prices = Including Tax * Price Display Settings: Including Tax (all fields) * Shopping Cart Display Settings: Including Tax (all fields) * Orders, Invoices, Credit Memos: * Display shipping Amount = Including Tax 1. Create a tax rate for US (State = '*'), Rate Percent = 24.00 1. Create a Tax Rule with the Tax Rate above. 1. Create a cart price rule with a specific coupon, and Discount = $50 of the Fixed amount for the whole cart. 1. Create four products with the following prices: $8.90, $5.90, $6.90, and $5.95. 1. Create an admin order including four of these products using the coupon code created in the previous step. Use the free shipping. 1. Payment should not be required as the coupon code covers the cart total. 1. Retrieve the order that was just created via Rest API endpoint: GET rest/V1/orders/1
Adobe's page lists 2.3.1 - 2.4.4 as compatible; the versions below are resolved from the current QPT constraints and are the ones the tool will offer.
Adobe scheduled the permanent fix for 2.4.5.
Install
Install the Quality Patches Tool with composer require magento/quality-patches, apply the prerequisites listed for all files applicable to your distribution and version first, then run vendor/bin/magento-patches apply MDVA-43605. On Cloud, add MDVA-43605 under stage.build.QUALITY_PATCHES in .magento.env.yaml.
For cweagans/composer-patches, choose a compatible version below and download the bundle. Copy its MDVA-43605/ folder into patches/composer/, merge composer.patches.json into composer.json, then run composer install. Bundle prerequisites the same way and list them first. Paths are relative to each package root, using the default -p1 level. Prefer local files when configuring composer-patches; a remote URL can change.
Patch files and compatible versions
magento/magento2-base >=2.3.1 <2.4.5
- Magento Open Source
- 2.4.4-p18, 2.4.4-p17, 2.4.4-p16, 2.4.4-p15, 2.4.4-p14, 2.4.4-p13, 2.4.4-p12, 2.4.4-p11, 2.4.4-p10, 2.4.4-p9, 2.4.4-p8, 2.4.4-p7, 2.4.4-p6, 2.4.4-p5, 2.4.4-p4, 2.4.4-p3, 2.4.4-p2, 2.4.4-p1, 2.4.4, 2.4.3-p3, 2.4.3-p2, 2.4.3-p1, 2.4.3, 2.4.2-p2, 2.4.2-p1, 2.4.2, 2.4.1-p1, 2.4.1, 2.4.0-p1, 2.4.0, 2.3.7-p4, 2.3.7-p3, 2.3.7-p2, 2.3.7-p1, 2.3.7, 2.3.6-p1, 2.3.6, 2.3.5-p2, 2.3.5-p1, 2.3.5, 2.3.4-p2, 2.3.4-p1, 2.3.4, 2.3.3-p2, 2.3.3, 2.3.2-p2, 2.3.2-p1, 2.3.2, 2.3.1
- Adobe Commerce
- 2.4.4-p18, 2.4.4-p17, 2.4.4-p16, 2.4.4-p15, 2.4.4-p14, 2.4.4-p13, 2.4.4-p12, 2.4.4-p11, 2.4.4-p10, 2.4.4-p9, 2.4.4-p8, 2.4.4-p7, 2.4.4-p6, 2.4.4-p5, 2.4.4-p4, 2.4.4-p3, 2.4.4-p2, 2.4.4-p1, 2.4.4, 2.4.3-p3, 2.4.3-p2, 2.4.3-p1, 2.4.3, 2.4.2-p2, 2.4.2-p1, 2.4.2, 2.4.1-p1, 2.4.1, 2.4.0-p1, 2.4.0, 2.3.7-p4, 2.3.7-p3, 2.3.7-p2, 2.3.7-p1, 2.3.7, 2.3.6-p1, 2.3.6, 2.3.5-p2, 2.3.5-p1, 2.3.5, 2.3.4-p2, 2.3.4-p1, 2.3.4, 2.3.3-p2, 2.3.3, 2.3.2-p2, 2.3.2-p1, 2.3.2, 2.3.1
- Patch file
- patches/os/MDVA-43605_2.4.2.patch
- vendor/magento/module-sales/Model/Order/Webapi/ChangeOutputArray.php
