@spree/docs 0.1.7 → 0.1.8

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.
@@ -238,23 +238,23 @@ Apply or remove promotional coupon codes during checkout:
238
238
 
239
239
 
240
240
  ```typescript SDK
241
- // Apply a coupon
242
- await client.carts.couponCodes.apply(cartId, 'SAVE20')
241
+ // Apply a discount code
242
+ await client.carts.discountCodes.apply(cartId, 'SAVE20')
243
243
 
244
- // Remove a coupon
245
- await client.carts.couponCodes.remove(cartId, 'SAVE20')
244
+ // Remove a discount code
245
+ await client.carts.discountCodes.remove(cartId, 'SAVE20')
246
246
  ```
247
247
 
248
248
  ```bash cURL
249
- # Apply a coupon
250
- curl -X POST 'https://api.mystore.com/api/v3/store/carts/cart_xxx/coupon_codes' \
249
+ # Apply a discount code
250
+ curl -X POST 'https://api.mystore.com/api/v3/store/carts/cart_xxx/discount_codes' \
251
251
  -H 'Authorization: Bearer spree_pk_xxx' \
252
252
  -H 'X-Spree-Token: abc123' \
253
253
  -H 'Content-Type: application/json' \
254
254
  -d '{ "code": "SAVE20" }'
255
255
 
256
- # Remove a coupon
257
- curl -X DELETE 'https://api.mystore.com/api/v3/store/carts/cart_xxx/coupon_codes/SAVE20' \
256
+ # Remove a discount code
257
+ curl -X DELETE 'https://api.mystore.com/api/v3/store/carts/cart_xxx/discount_codes/SAVE20' \
258
258
  -H 'Authorization: Bearer spree_pk_xxx' \
259
259
  -H 'X-Spree-Token: abc123'
260
260
  ```
@@ -278,13 +278,13 @@ Customers apply coupon codes during checkout via the Store API:
278
278
 
279
279
 
280
280
  ```typescript SDK
281
- // Apply a coupon code to the cart
282
- const cart = await client.carts.couponCodes.apply('cart_abc123', 'SUMMER20', {
281
+ // Apply a discount code to the cart
282
+ const cart = await client.carts.discountCodes.apply('cart_abc123', 'SUMMER20', {
283
283
  spreeToken: '<token>',
284
284
  })
285
285
 
286
- // Remove a coupon code from the cart
287
- await client.carts.couponCodes.remove('cart_abc123', 'SUMMER20', {
286
+ // Remove a discount code from the cart
287
+ await client.carts.discountCodes.remove('cart_abc123', 'SUMMER20', {
288
288
  spreeToken: '<token>',
289
289
  })
290
290
  ```
@@ -248,15 +248,21 @@ Gift cards are applied using the same coupon codes endpoint as promotion codes.
248
248
 
249
249
  ```typescript SDK
250
250
  // Apply gift card code to cart (works for guests and registered customers)
251
- const cart = await client.carts.couponCodes.apply('cart_abc123', 'abc1234def', {
251
+ // Gift cards use a dedicated endpoint — they reduce amount_due, not total
252
+ const cart = await client.carts.giftCards.apply('cart_abc123', 'abc1234def', {
253
+ spreeToken: '<token>',
254
+ })
255
+
256
+ // Remove gift card (ID from cart.gift_card.id)
257
+ await client.carts.giftCards.remove('cart_abc123', cart.gift_card.id, {
252
258
  spreeToken: '<token>',
253
259
  })
254
260
  ```
255
261
 
256
262
  ```bash cURL
257
263
  # Apply gift card to cart (works for guests and registered customers)
258
- curl -X POST 'https://api.mystore.com/api/v3/store/carts/cart_abc123/coupon_codes' \
259
- -H 'Authorization: Bearer spree_pk_xxx' \
264
+ curl -X POST 'https://api.mystore.com/api/v3/store/carts/cart_abc123/gift_cards' \
265
+ -H 'X-Spree-Api-Key: pk_xxx' \
260
266
  -H 'X-Spree-Token: <token>' \
261
267
  -H 'Content-Type: application/json' \
262
268
  -d '{ "code": "abc1234def" }'
@@ -61,13 +61,15 @@ The SDK uses a resource builder pattern for nested resources:
61
61
  | `carts` | `paymentMethods` | `list` |
62
62
  | `carts` | `paymentSessions` | `create`, `get`, `update`, `complete` |
63
63
  | `carts` | `fulfillments` | `list`, `update` |
64
- | `carts` | `couponCodes` | `apply`, `remove` |
64
+ | `carts` | `discountCodes` | `apply`, `remove` |
65
+ | `carts` | `giftCards` | `apply`, `remove` |
65
66
  | `carts` | `storeCredits` | `apply`, `remove` |
66
67
  | `customer` | `addresses` | `list`, `get`, `create`, `update`, `delete`, `markAsDefault` |
67
68
  | `customer` | `creditCards` | `list`, `get`, `delete` |
68
69
  | `customer` | `giftCards` | `list`, `get` |
69
70
  | `customer` | `orders` | `list` |
70
71
  | `customer` | `paymentSetupSessions` | `create`, `get`, `complete` |
72
+ | `policies` | — | `list`, `get` |
71
73
  | `categories` | `products` | `list` |
72
74
  | `wishlists` | `items` | `create`, `update`, `delete` |
73
75
 
@@ -55,16 +55,26 @@ await client.carts.items.update(cartId, lineItemId, {
55
55
  await client.carts.items.delete(cartId, lineItemId, options);
56
56
  ```
57
57
 
58
- ### Coupon Codes
58
+ ### Discount Codes
59
59
 
60
60
  ```typescript
61
61
  const options = { spreeToken: cart.token };
62
62
 
63
- // Apply a coupon code
64
- await client.carts.couponCodes.apply(cartId, 'SAVE20', options);
63
+ // Apply a discount code
64
+ await client.carts.discountCodes.apply(cartId, 'SAVE20', options);
65
65
 
66
- // Remove a coupon code
67
- await client.carts.couponCodes.remove(cartId, 'SUMMER20', options);
66
+ // Remove a discount code
67
+ await client.carts.discountCodes.remove(cartId, 'SAVE20', options);
68
+ ```
69
+
70
+ ### Gift Cards
71
+
72
+ ```typescript
73
+ // Apply a gift card (reduces amount_due, not total)
74
+ const cart = await client.carts.giftCards.apply(cartId, 'GC-ABCD-1234', options);
75
+
76
+ // Remove a gift card (ID from cart.gift_card.id)
77
+ await client.carts.giftCards.remove(cartId, 'gc_abc123', options);
68
78
  ```
69
79
 
70
80
  ## Checkout
@@ -120,19 +120,21 @@ Checkout functions use the implicit cart resolved from cookies. No `orderId` is
120
120
  import {
121
121
  getCheckout,
122
122
  updateCheckout,
123
- getFulfillments,
124
123
  selectDeliveryRate,
125
- applyCoupon,
126
- removeCoupon,
124
+ applyDiscountCode,
125
+ removeDiscountCode,
126
+ applyGiftCard,
127
+ removeGiftCard,
127
128
  complete,
128
129
  } from '@spree/next';
129
130
 
130
131
  const checkout = await getCheckout();
131
132
  await updateCheckout({ shipping_address: { ... }, billing_address: { ... } });
132
- const fulfillments = await getFulfillments();
133
133
  await selectDeliveryRate(fulfillmentId, deliveryRateId);
134
- await applyCoupon('SAVE20');
135
- await removeCoupon(promotionId);
134
+ await applyDiscountCode('SAVE20');
135
+ await removeDiscountCode('SAVE20');
136
+ await applyGiftCard('GC-ABCD-1234');
137
+ await removeGiftCard('gc_abc123');
136
138
  await complete();
137
139
  ```
138
140
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spree/docs",
3
- "version": "0.1.7",
3
+ "version": "0.1.8",
4
4
  "description": "Spree Commerce developer documentation for AI agents and local reference",
5
5
  "type": "module",
6
6
  "license": "CC-BY-4.0",