Consistently Store Coupon Data in Order Item Meta #31338
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
All Submissions:
Changes proposed in this Pull Request:
Closes #28166.
This PR adds the storage of
WC_Coupondata to Order Item Meta when Orders are created outside the Cart/Checkout context, like through the REST API orwp-adminDashboard.Without these changes, order coupon line item data can vary depending on the context the order was created in:
How to test the changes in this Pull Request:
POST https://example.com/wp-json/wc/v3/orders):{ "status": "on-hold", "currency": "USD", "payment_method": "cod", "payment_method_title": "Cash on Delivery", "line_items": [ { "product_id": 5, "quantity": 1 } ], "coupon_lines": [ { "code": "couponcode" } ] }meta_datain thecoupon_linesthat contains data like:GET https://example.com/wp-json/wc/v3/orders/[ORDER_ID])coupon_linescontainsmeta_datalike the previous exampleOther information:
Changelog entry
Fix - Ensure coupon data is stored consistently when created outside of frontend checkout.
FOR PR REVIEWER ONLY: