{"data":{"id":"magento2-38819","source":"github-pr","sourceRef":"magento/magento2#38819","title":"Instant purchase \"cheapest shipping\" broken for configurable products","pr":{"number":38819,"url":"https://github.com/magento/magento2/pull/38819","author":"Tomasito665","mergedAt":"2024-07-14T16:40:14Z","mergeCommit":"510f73b1dd95267a439e8791ddd0761b6cb083b3","headCommit":"1c931b9672600ff0c4b32cc414f0ce5006f229d1","baseRef":"2.4-develop","diffSha256":"fbb93ea6567c3d7ea1960d8d86356f0789c41430a123ec831f4337ca293e31ec"},"issues":[{"number":38811,"url":"https://github.com/magento/magento2/issues/38811","title":"Instant purchase \"cheapest shipping\" broken for configurable products","labels":["Issue: On Hold","Priority: P1","Progress: done","Reported on 2.4.7"],"kind":"human"}],"fixedIn":"2.4.8","containingTags":["2.4.8","2.4.8-p1","2.4.8-p2","2.4.8-p3","2.4.8-p4","2.4.8-p5","2.4.9"],"reportedOn":"2.4.7","codeMatch":{"2.4.6":"clean","2.4.6-p1":"clean","2.4.6-p2":"clean","2.4.6-p3":"clean","2.4.6-p4":"clean","2.4.6-p5":"clean","2.4.6-p6":"clean","2.4.6-p7":"clean","2.4.6-p8":"clean","2.4.6-p9":"clean","2.4.6-p10":"clean","2.4.6-p11":"clean","2.4.6-p12":"clean","2.4.6-p13":"clean","2.4.6-p14":"clean","2.4.6-p15":"clean","2.4.7":"clean","2.4.7-p1":"clean","2.4.7-p2":"clean","2.4.7-p3":"clean","2.4.7-p4":"clean","2.4.7-p5":"clean","2.4.7-p6":"clean","2.4.7-p7":"clean","2.4.7-p8":"clean","2.4.7-p9":"clean","2.4.7-p10":"clean","2.4.8":"conflict","2.4.8-p1":"conflict","2.4.8-p2":"conflict","2.4.8-p3":"conflict","2.4.8-p4":"conflict","2.4.8-p5":"conflict","2.4.9":"conflict"},"affectedVersions":["2.4.6","2.4.6-p1","2.4.6-p2","2.4.6-p3","2.4.6-p4","2.4.6-p5","2.4.6-p6","2.4.6-p7","2.4.6-p8","2.4.6-p9","2.4.6-p10","2.4.6-p11","2.4.6-p12","2.4.6-p13","2.4.6-p14","2.4.6-p15","2.4.7","2.4.7-p1","2.4.7-p2","2.4.7-p3","2.4.7-p4","2.4.7-p5","2.4.7-p6","2.4.7-p7","2.4.7-p8","2.4.7-p9","2.4.7-p10"],"components":["magento/module-instant-purchase"],"files":[{"path":"app/code/Magento/InstantPurchase/Model/QuoteManagement/QuoteCreation.php","change":"modified","package":"magento/module-instant-purchase"},{"path":"app/code/Magento/InstantPurchase/Model/ShippingMethodChoose/CheapestMethodDeferredChooser.php","change":"modified","package":"magento/module-instant-purchase"}],"stripped":{"tests":[],"docs":[],"outsideCode":[]},"linesChanged":27,"mergeBatched":false,"excluded":null,"sections":{"description":"The order is placed using the $6.00 In-Store Delivery shipment method, which is NOT the cheapest shipment method.\n{quote}[!NOTE]\n{quote}\n{quote}As seen in the screenshot, with my setup, the order placement does not finish successfully and ends with a \"Quote does not have Pickup Location assigned\" error. The cause of this error is irrelevant to the bug described in this issue. However, the fact that it gives *this* error in particular shows that the instant purchase flow attempts to place the order using the In-Store Delivery shipment method, which is sufficient to demonstrate the bug.\n{quote}\n[img width=\"1136\" alt=\"ActualBehavior_2of2\" src=\"https://github.com/magento/magento2/assets/12563382/bce0144a-5faf-4f2e-9487-4da90f8315df\">","stepsToReproduce":"* On the frontend page, make sure you are logged in with the previously created customer account.\n* Click on the “Search entire store here…” textbook, type “Chaz Kangeroo Hoodie”, and press Enter.\n* There should be only one result. Click on it to open the product details page for “Chaz Kangeroo Hoodie”.\n* Click on the Instant Purchase button. You’ll see a confirmation popup with Shipping Method: Cheapest price.\n* Click on OK to confirm the purchase.","expectedResult":"The order is placed using the cheapest shipment method, which, as we saw in step 6, is the $5.00 Flat Rate shipment method.\n\n<img width=\"1124\" alt=\"Expected behavior\" src=\"https://github.com/magento/magento2/assets/12563382/541e573b-0e3a-4174-b066-1f1c4f99160f\"]","actualResult":"The order is placed using the $6.00 In-Store Delivery shipment method, which is NOT the cheapest shipment method.\n{quote}[!NOTE]\n{quote}\n{quote}As seen in the screenshot, with my setup, the order placement does not finish successfully and ends with a \"Quote does not have Pickup Location assigned\" error. The cause of this error is irrelevant to the bug described in this issue. However, the fact that it gives *this* error in particular shows that the instant purchase flow attempts to place the order using the In-Store Delivery shipment method, which is sufficient to demonstrate the bug.\n{quote}\n[img width=\"1136\" alt=\"ActualBehavior_2of2\" src=\"https://github.com/magento/magento2/assets/12563382/bce0144a-5faf-4f2e-9487-4da90f8315df\">","source":"issue"},"signatures":[],"labels":{"area":[],"component":[],"priority":"P1","severity":null,"reportedOn":["2.4.7"]},"categories":[],"triage":{"model":"@cf/cloudflare/clef","requestHash":"c76d11aa72f4eb8a82237fee64d8a815d34c34283ce7733a137767d72401e169","isBugfix":0.9796,"changeKind":{"choice":"bugfix","probabilities":{"bugfix":0.963,"feature":0.0051,"refactor":0.0123,"tests_only":0.0043,"docs_only":0.0028,"dependency":0.0033,"cleanup":0.0092},"confidence":0.9155},"scope":{"score":0.7072,"probabilities":{"0":0.4767,"1":0.3395,"2":0.1838},"confidence":0.0644},"risk":{"score":1.1246,"probabilities":{"0":0.3293,"1":0.2168,"2":0.4539},"confidence":0.0422},"area":{"choice":"checkout","probabilities":{"catalog":0.0199,"checkout":0.9071,"customer":0.0165,"admin":0.0082,"graphql_api":0.0049,"framework":0.009,"frontend":0.0128,"other":0.0216},"confidence":0.7992},"securityRelevant":0.0078,"reportedVersion":{"choice":"2.4.7","probabilities":{"2.4.0":0.0025,"2.4.0-p1":0.0026,"2.4.1":0.0024,"2.4.1-p1":0.0026,"2.4.2":0.0025,"2.4.2-p1":0.0027,"2.4.2-p2":0.0028,"2.4.3":0.0028,"2.4.3-p1":0.0034,"2.4.3-p2":0.0033,"2.4.3-p3":0.003,"2.4.4":0.0029,"2.4.4-p1":0.0029,"2.4.4-p10":0.003,"2.4.4-p11":0.0032,"2.4.4-p12":0.0032,"2.4.4-p13":0.0032,"2.4.4-p14":0.0033,"2.4.4-p15":0.0029,"2.4.4-p16":0.0032,"2.4.4-p17":0.0034,"2.4.4-p18":0.0028,"2.4.4-p2":0.0025,"2.4.4-p3":0.0026,"2.4.4-p4":0.0028,"2.4.4-p5":0.003,"2.4.4-p6":0.0033,"2.4.4-p7":0.0031,"2.4.4-p8":0.0032,"2.4.4-p9":0.0027,"2.4.5":0.0029,"2.4.5-p1":0.0027,"2.4.5-p10":0.0026,"2.4.5-p11":0.0032,"2.4.5-p12":0.0034,"2.4.5-p13":0.0034,"2.4.5-p14":0.0037,"2.4.5-p15":0.0031,"2.4.5-p16":0.0036,"2.4.5-p17":0.0036,"2.4.5-p2":0.0027,"2.4.5-p3":0.0027,"2.4.5-p4":0.0029,"2.4.5-p5":0.0031,"2.4.5-p6":0.0033,"2.4.5-p7":0.004,"2.4.5-p8":0.0035,"2.4.5-p9":0.0025,"2.4.6":0.0075,"2.4.6-p1":0.0075,"2.4.6-p10":0.0051,"2.4.6-p11":0.0059,"2.4.6-p12":0.0055,"2.4.6-p13":0.0052,"2.4.6-p14":0.0053,"2.4.6-p15":0.0047,"2.4.6-p2":0.0031,"2.4.6-p3":0.0036,"2.4.6-p4":0.0047,"2.4.6-p5":0.0047,"2.4.6-p6":0.006,"2.4.6-p7":0.0058,"2.4.6-p8":0.0038,"2.4.6-p9":0.0032,"2.4.7":0.5773,"2.4.7-p1":0.0221,"2.4.7-p10":0.011,"2.4.7-p2":0.0166,"2.4.7-p3":0.0118,"2.4.7-p4":0.0139,"2.4.7-p5":0.0117,"2.4.7-p6":0.0108,"2.4.7-p7":0.0134,"2.4.7-p8":0.0109,"2.4.7-p9":0.0091,"2.4.8":0.0064,"2.4.8-p1":0.0071,"2.4.8-p2":0.0069,"2.4.8-p3":0.0075,"2.4.8-p4":0.006,"2.4.8-p5":0.0057,"2.4.9":0.006,"unspecified":0.0195},"confidence":0.3286},"backportWorthy":{"score":1.5731,"probabilities":{"0":0.0709,"1":0.2851,"2":0.644},"confidence":0.2516}},"curated":{"title":"Instant purchase picks a non-cheapest shipping method for configurable products","description":"For configurable products, instant purchase with cheapest shipping computes shipping rates with incorrect item quantities, so the flat rate is counted double and the order is placed with a non-cheapest method such as In-Store Delivery. QuoteCreation now sets the collect shipping rates flag on both addresses, and CheapestMethodDeferredChooser uses previously collected rates when available.","categories":[],"author":"claude-code/opus-5.5","date":"2026-10-07","reviewedBy":null},"tests":null},"_documentation":"https://magento.watch/api","_description":"Upstream fix magento2-38819 details"}