@spree/docs 0.1.275 → 0.1.277
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -209,7 +209,7 @@ The available rule and action types — including any custom ones you register
|
|
|
209
209
|
Coupon codes track promotion usage and can be single-use or multi-use.
|
|
210
210
|
|
|
211
211
|
- **Single code** — set the `code` attribute on the promotion; `usage_limit` controls how many times it can be redeemed.
|
|
212
|
-
- **Multi-code** — bulk-generated codes each track their own state (`unused` / `used`). A code is used up only when an order is placed with it. Applying it to a cart just holds it there, and a shopper who presents a code held by an abandoned cart takes it over, so an unfinished checkout never burns a code.
|
|
212
|
+
- **Multi-code** — bulk-generated codes each track their own state (`unused` / `used`). A code is used up only when an order is placed with it. Applying it to a cart just holds it there, even before the cart qualifies, and only the cart holding a code gets its discount. A shopper who presents a code held by an abandoned cart takes it over, so an unfinished checkout never burns a code. The cart that lost it drops the code and gets a `coupon_code_unavailable` warning on its next Store API request that reads or changes the cart, and placing an order with a code that has been taken is refused rather than charged more than the shopper was shown.
|
|
213
213
|
|
|
214
214
|
Customers apply codes on the cart via the Store API:
|
|
215
215
|
|
|
@@ -114,7 +114,7 @@ curl -X PATCH 'https://api.mystore.com/api/v3/admin/orders/or_xxx/returns/ret_xx
|
|
|
114
114
|
|
|
115
115
|
Receiving takes the quantities the warehouse actually counted, because partial and damaged returns are normal rather than exceptional. A customer says three items are coming; two arrive; one of those can't be sold again. Only resellable goods go back into stock.
|
|
116
116
|
|
|
117
|
-
Leave `items` out to receive everything as requested. Refunds default to whatever the return is still owed, and can go back to the original payment method or to store credit.
|
|
117
|
+
Leave `items` out to receive everything as requested. Refunds default to whatever the return is still owed, and can go back to the original payment method or to store credit. A returned item is worth what the customer paid for it after discounts, not its list price, so a free gift sent back refunds nothing. Refunding a return that is owed nothing completes it with no money moved and no refund email; an amount of zero is refused on any return the customer is still owed money on.
|
|
118
118
|
|
|
119
119
|
### Where the goods come back to
|
|
120
120
|
|
|
@@ -193,6 +193,8 @@ A replacement creates a new [fulfillment](fulfillments.md) on the original order
|
|
|
193
193
|
|
|
194
194
|
The replacement is filed under the order line it replaces, but it doesn't count toward that line's quantity. Editing the line later, from a claim or an [exchange](#exchanges), adds or removes only the goods the customer paid for and leaves the replacement where it is.
|
|
195
195
|
|
|
196
|
+
A claim never refunds more than the customer paid for the claimed items after discounts. Each claim line reports that ceiling as `paid_amount`.
|
|
197
|
+
|
|
196
198
|
## Exchanges
|
|
197
199
|
|
|
198
200
|
An exchange works like a return, but ends by sending different items instead of refunding:
|