@wix/agent-skills 1.12.0 → 1.13.0

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.
Files changed (37) hide show
  1. package/README.md +4 -0
  2. package/package.json +1 -1
  3. package/skills/wix-app/references/data-collection/WIX_DATA.md +10 -0
  4. package/skills/wix-design-system/SKILL.md +3 -1
  5. package/skills/wix-manage/SKILL.md +32 -54
  6. package/skills/wix-manage/references/ecommerce/api-recommendation-tracking.md +3 -2
  7. package/skills/wix-manage/references/ecommerce/ecom-load-context.md +144 -0
  8. package/skills/wix-manage/references/ecommerce/ecom-pricing.md +84 -0
  9. package/skills/wix-manage/references/ecommerce/ecom-shipping.md +64 -0
  10. package/skills/wix-manage/references/ecommerce/{setup-coupons.md → pricing-promotions/ecom-pricing-create-coupon.md} +20 -6
  11. package/skills/wix-manage/references/ecommerce/{setup-discount-rules.md → pricing-promotions/ecom-pricing-create-discount-rule.md} +31 -1
  12. package/skills/wix-manage/references/ecommerce/{flow-bundle-and-save.md → pricing-promotions/ecom-pricing-flow-bundle-and-save.md} +11 -52
  13. package/skills/wix-manage/references/ecommerce/{flow-seasonal-promotion.md → pricing-promotions/ecom-pricing-flow-seasonal-promotion.md} +17 -57
  14. package/skills/wix-manage/references/ecommerce/{flow-stock-mover.md → pricing-promotions/ecom-pricing-flow-stock-mover.md} +28 -70
  15. package/skills/wix-manage/references/ecommerce/{flow-upsell-boost.md → pricing-promotions/ecom-pricing-flow-upsell-boost.md} +15 -68
  16. package/skills/wix-manage/references/ecommerce/{goal-clear-inventory.md → pricing-promotions/ecom-pricing-goal-clear-inventory.md} +22 -13
  17. package/skills/wix-manage/references/ecommerce/{goal-drive-cross-sells.md → pricing-promotions/ecom-pricing-goal-drive-cross-sells.md} +26 -8
  18. package/skills/wix-manage/references/ecommerce/{goal-increase-aov.md → pricing-promotions/ecom-pricing-goal-increase-aov.md} +32 -25
  19. package/skills/wix-manage/references/ecommerce/{goal-seasonal-revenue.md → pricing-promotions/ecom-pricing-goal-seasonal-revenue.md} +21 -8
  20. package/skills/wix-manage/references/ecommerce/{troubleshoot-discount-not-applying.md → pricing-promotions/ecom-pricing-troubleshoot-not-applying.md} +1 -1
  21. package/skills/wix-manage/references/ecommerce/recommend-ecommerce-strategy.md +23 -47
  22. package/skills/wix-manage/references/ecommerce/{api-shipping.md → shipping/ecom-shipping-api.md} +4 -3
  23. package/skills/wix-manage/references/ecommerce/{flow-fix-coverage-gaps.md → shipping/ecom-shipping-fix-coverage.md} +23 -17
  24. package/skills/wix-manage/references/ecommerce/{flow-add-free-shipping.md → shipping/ecom-shipping-free-shipping.md} +23 -18
  25. package/skills/wix-manage/references/ecommerce/{flow-optimize-shipping-rates.md → shipping/ecom-shipping-optimize-rates.md} +19 -16
  26. package/skills/wix-manage/references/ecommerce/{setup-store-pickup-location.md → shipping/ecom-shipping-setup-pickup.md} +12 -10
  27. package/skills/wix-manage/references/ecommerce/{setup-shipping-rates.md → shipping/ecom-shipping-setup-rates.md} +1 -2
  28. package/skills/wix-manage/references/ecommerce/{setup-shipping-regions.md → shipping/ecom-shipping-setup-regions.md} +1 -2
  29. package/skills/wix-manage/references/sites/query-sites.md +104 -32
  30. package/skills/wix-manage/references/ecommerce/goal-reduce-cart-abandonment.md +0 -147
  31. package/skills/wix-manage/references/ecommerce/guardrail-discount-conflicts.md +0 -118
  32. package/skills/wix-manage/references/ecommerce/guardrail-margin-protection.md +0 -88
  33. package/skills/wix-manage/references/ecommerce/guardrail-rate-pricing-sanity.md +0 -108
  34. package/skills/wix-manage/references/ecommerce/guardrail-shipping-health.md +0 -124
  35. package/skills/wix-manage/references/ecommerce/recipe-apply-shipping-recommendations.md +0 -298
  36. package/skills/wix-manage/references/ecommerce/skill-graph.md +0 -139
  37. package/skills/wix-manage/references/ecommerce/troubleshoot-checkout-delivery-dropoff.md +0 -124
@@ -1,108 +0,0 @@
1
- ---
2
- name: "Guardrail: Rate Pricing Sanity"
3
- description: Validates shipping rate pricing against AOV and catalog data. Flags excessive rates, per-item penalties, unreachable free shipping thresholds, and backup rate sticker shock.
4
- layer: guardrail
5
- ---
6
- # Guardrail: Rate Pricing Sanity
7
-
8
- ## When to use
9
-
10
- Run these checks when evaluating existing shipping rates or before creating/updating shipping rate configurations. All thresholds are relative to the store's Average Order Value (AOV).
11
-
12
- ---
13
-
14
- ## Check 1: Excessive shipping cost
15
-
16
- **Threshold**: Any rate `amount` > AOV x 0.15 (15%)
17
-
18
- **Why**: Shipping costs above 15% of order value are a top reason for cart abandonment. Customers who see disproportionately high shipping fees frequently abandon their carts.
19
-
20
- **Detection**:
21
- - For each shipping rate, compare `amount` against `AOV × 0.15`
22
- - If exceeded → flag:
23
-
24
- > "Shipping rate '{title}' charges ${amount}, which is {pct}% of your average order value (${AOV}). Shipping costs above 15% of order value are a top reason for cart abandonment."
25
-
26
- ---
27
-
28
- ## Check 2: Per-item penalty (multiplyByQuantity)
29
-
30
- **Trigger**: `multiplyByQuantity: true` on any shipping rate
31
-
32
- **Why**: Per-item shipping charges penalize larger orders and discourage customers from adding more items to cart.
33
-
34
- **Detection**:
35
- - Find all rates with `multiplyByQuantity: true`
36
- - Calculate the impact for a typical multi-item order:
37
-
38
- > "Your '{title}' rate charges per item (${amount} x quantity). A 5-item order costs ${amount x 5}. Switch to a flat rate or tiered pricing to encourage larger orders."
39
-
40
- ---
41
-
42
- ## Check 3: Free shipping threshold too high
43
-
44
- **Threshold**: Free shipping threshold > AOV x 2
45
-
46
- **Why**: If the free shipping minimum is more than double the average order, very few customers will ever qualify. The threshold should be achievable — close enough to the AOV to encourage customers to add one more item.
47
-
48
- **Detection**:
49
- - Compare free shipping `threshold` against `AOV × 2`
50
- - If exceeded → flag:
51
-
52
- > "Your free shipping threshold (${threshold}) is {X}x your average order (${AOV}). Most customers won't reach it. Lower to ${AOV x 1.2} to make it achievable and drive larger orders."
53
-
54
- ---
55
-
56
- ## Check 4: Free shipping threshold too low
57
-
58
- **Threshold**: Free shipping threshold < AOV x 0.8
59
-
60
- **Why**: If the threshold is below the average order value, most customers already qualify for free shipping without adding anything to their cart. This provides no upsell incentive and may erode margins unnecessarily.
61
-
62
- **Detection**:
63
- - Compare free shipping `threshold` against `AOV × 0.8`
64
- - If below → flag:
65
-
66
- > "Your free shipping threshold (${threshold}) is below your average order value (${AOV}). Most customers already qualify, so this threshold isn't driving larger orders. Consider raising it to ${AOV x 1.2} to encourage add-on purchases."
67
-
68
- ---
69
-
70
- ## Check 5: Backup rate sticker shock
71
-
72
- **Threshold**: `backupRate.amount` > effective AOV x 0.15
73
-
74
- **Why**: Backup rates apply when the primary carrier can't fulfill (e.g., remote address, service outage). If the backup rate is dramatically higher than normal shipping, customers experience sticker shock at checkout.
75
-
76
- **Detection**:
77
- - For each carrier's `backupRate`, compare `amount` against `effective_aov × 0.15`
78
- - If exceeded → flag:
79
-
80
- > "Backup rate of ${amount} is {pct}% of your average order value. When triggered, this will surprise customers with unexpectedly high shipping. Set the backup rate to 5-10% of average order value (${effective_aov x 0.05} - ${effective_aov x 0.10})."
81
-
82
- ---
83
-
84
- ## Check 6: Hidden surcharges
85
-
86
- **Threshold**: Total `additionalCharges` across all carriers > AOV x 0.10
87
-
88
- **Why**: Carrier surcharges (fuel, residential delivery, handling fees) add up. If the total surcharge burden exceeds 10% of the order value, it may negate the perceived value of the base shipping rate.
89
-
90
- **Detection**:
91
- - Sum all `additionalCharges` across active carriers
92
- - Compare total against `AOV × 0.10`
93
- - If exceeded → flag:
94
-
95
- > "Carrier surcharges add ${total} to shipping costs. Combined with base rates, total shipping cost may deter customers. Review each surcharge to determine if it's necessary."
96
-
97
- ---
98
-
99
- ## Summary: Pricing sanity thresholds
100
-
101
- | Check | Threshold | Action |
102
- |---|---|---|
103
- | Excessive rate | Rate > 15% of AOV | Flag — cart abandonment risk |
104
- | Per-item penalty | `multiplyByQuantity: true` | Flag — discourages larger orders |
105
- | Free threshold too high | Threshold > 2x AOV | Flag — unreachable for most customers |
106
- | Free threshold too low | Threshold < 0.8x AOV | Flag — no upsell incentive, margin erosion |
107
- | Backup rate shock | Backup > 15% of AOV | Flag — recommend 5-10% of AOV |
108
- | Hidden surcharges | Total surcharges > 10% of AOV | Flag — review necessity |
@@ -1,124 +0,0 @@
1
- ---
2
- name: "Guardrail: Shipping Health"
3
- description: Shipping health score calculation (CRITICAL/POOR/FAIR/GOOD/EXCELLENT) with exact scoring criteria. Includes the mandatory business context filter for international shipping recommendations.
4
- layer: guardrail
5
- references:
6
- - name: "Troubleshoot: Checkout Delivery Drop-off"
7
- path: ecommerce/troubleshoot-checkout-delivery-dropoff.md
8
- load: false
9
- ---
10
- # Guardrail: Shipping Health
11
-
12
- > **Related skills**:
13
- > - [Troubleshoot: Checkout Delivery Drop-off](https://dev.wix.com/docs/api-reference/business-solutions/e-commerce/skills/troubleshoot-checkout-delivery-dropoff)
14
-
15
- ## When to use
16
-
17
- Calculate the shipping health score whenever evaluating a store's shipping configuration. Use this score to prioritize recommendations and determine urgency of shipping issues.
18
-
19
- ---
20
-
21
- ## Health score levels
22
-
23
- ### CRITICAL
24
-
25
- Any of the following conditions:
26
-
27
- - `delivery_profiles` is empty AND `shipping_options` is empty
28
- - All regions across all profiles have `active: false`
29
-
30
- **Implication**: The store cannot ship any orders. Immediate action required.
31
-
32
- ### POOR
33
-
34
- Any of the following conditions:
35
-
36
- - Only 1 delivery profile with empty regions
37
- - Only 1 shipping option total
38
- - `delivery_step_cvr` < 50% with shipping issues detected
39
- - All carriers have `backupRate.active: false`
40
-
41
- **Implication**: Shipping is minimally functional but has significant gaps that are likely causing lost sales.
42
-
43
- ### FAIR
44
-
45
- All of the following conditions:
46
-
47
- - 1-2 delivery profiles with 1-2 active regions
48
- - 2-4 shipping options
49
- - No free shipping option available
50
- - OR: `delivery_step_cvr` between 50-65%
51
-
52
- **Implication**: Basic shipping is working but missing key elements that drive conversion.
53
-
54
- ### GOOD
55
-
56
- All of the following conditions:
57
-
58
- - 1+ delivery profiles with both domestic and international regions
59
- - 3-5 shipping options including at least one free shipping option
60
- - 1+ active carriers
61
- - `delivery_step_cvr` between 65-75%
62
-
63
- **Implication**: Solid shipping setup. Optimization opportunities exist but fundamentals are covered.
64
-
65
- ### EXCELLENT
66
-
67
- All of the following conditions:
68
-
69
- - Multiple active regions
70
- - Tiered shipping rates
71
- - Free shipping option available
72
- - Multiple carriers with backup rates enabled
73
- - Pickup and/or local delivery options configured
74
- - `delivery_step_cvr` ≥ 75%
75
- - No `multiplyByQuantity` pricing on any rate
76
-
77
- **Implication**: Best-in-class shipping configuration. Focus on maintaining and fine-tuning.
78
-
79
- ---
80
-
81
- ## Business context filter (MANDATORY)
82
-
83
- **This filter MUST be applied before recommending any international shipping action.**
84
-
85
- ### Check business type
86
-
87
- Inspect the store's `industry` and `businessType` fields (case-insensitive match) for any of the following keywords:
88
-
89
- - food
90
- - restaurant
91
- - grocery
92
- - bakery
93
- - catering
94
- - perishable
95
- - fresh
96
- - meat
97
- - produce
98
- - dairy
99
- - drink
100
- - beverage
101
-
102
- ### If matched
103
-
104
- **DO NOT recommend any international shipping action.** Perishable/food businesses face regulatory, spoilage, and logistics barriers that make international shipping impractical as a default recommendation.
105
-
106
- ### Identifying international regions
107
-
108
- A region is considered "international" if any of the following are true:
109
-
110
- - Region `name` contains "international" or "internacional" (case-insensitive)
111
- - Region `destinations[]` is empty (wildcard / all countries)
112
- - Region `destinations` include countries outside the store's home country
113
-
114
- ---
115
-
116
- ## Summary: Score decision table
117
-
118
- | Score | Key indicator | Action |
119
- |---|---|---|
120
- | CRITICAL | No profiles/options or all regions inactive | Immediate setup required |
121
- | POOR | Minimal config, low CVR, or no backup rates | Address fundamental gaps |
122
- | FAIR | Basic setup, no free shipping, moderate CVR | Add free shipping, expand regions |
123
- | GOOD | Domestic + international, free shipping, good CVR | Optimize rates and carriers |
124
- | EXCELLENT | Full coverage, tiered rates, high CVR | Maintain and fine-tune |
@@ -1,298 +0,0 @@
1
- ---
2
- name: "Recipe: Apply Shipping Recommendations"
3
- description: Applies AI-generated shipping recommendations to a Wix e-commerce store. Reads the current delivery profile and shipping options, then creates or updates shipping options based on recommendation data. Supports creating new options with conditional rates, updating existing options, and querying delivery profiles for region/carrier context.
4
- ---
5
- # Apply Shipping Recommendations
6
-
7
- ## Prerequisites
8
-
9
- - Wix Stores (or another eCommerce business solution) installed on the site
10
- - Shipping recommendations data available (from the AI recommendation system or provided directly)
11
-
12
- ## Required APIs
13
-
14
- - [Query Delivery Profiles](https://dev.wix.com/docs/api-reference/business-solutions/e-commerce/skills/api-shipping#query-delivery-profiles)
15
- - [Get Delivery Profile](https://dev.wix.com/docs/api-reference/business-solutions/e-commerce/skills/api-shipping#get-delivery-profile)
16
-
17
- ---
18
-
19
- ## Step 1: Query the current shipping configuration
20
-
21
- Call [Query Delivery Profiles](https://dev.wix.com/docs/api-reference/business-solutions/e-commerce/skills/api-shipping#query-delivery-profiles) to understand the site's delivery setup — profiles, regions, carriers, and backup rates.
22
-
23
- **Endpoint**: `POST https://www.wixapis.com/ecom/v1/delivery-profiles/query`
24
-
25
- **Request**:
26
- ```json
27
- {
28
- "query": {
29
- "cursorPaging": {
30
- "limit": 100
31
- }
32
- }
33
- }
34
- ```
35
-
36
- **Response**:
37
- ```json
38
- {
39
- "deliveryProfiles": [
40
- {
41
- "id": "6a9b2f9b-533a-4d0d-ac8d-64ec3f32fcbd",
42
- "name": "General profile",
43
- "default": true,
44
- "deliveryRegions": [
45
- {
46
- "id": "42b0ed3b-fc54-4ac0-89cf-5d2d17ec441c",
47
- "name": "Domestic",
48
- "active": true,
49
- "deliveryCarriers": [
50
- {
51
- "appId": "45c44b27-ca7b-4891-8c0d-1747d588b835",
52
- "additionalCharges": []
53
- }
54
- ],
55
- "destinations": [
56
- {
57
- "countryCode": "GB",
58
- "subdivisions": []
59
- }
60
- ]
61
- }
62
- ],
63
- "revision": "43",
64
- "createdDate": "2025-10-26T11:05:10.774Z",
65
- "updatedDate": "2026-04-14T14:43:25.397Z"
66
- }
67
- ],
68
- "pagingMetadata": {
69
- "count": 1,
70
- "cursors": {},
71
- "hasNext": false
72
- }
73
- }
74
- ```
75
-
76
- Save the profile `id`, `revision`, and each region's `id` and `active` status. Identify which regions have carriers with missing backup rates (`backupRate` absent or `backupRate.active: false`).
77
-
78
- ---
79
-
80
- ## Step 2: Query existing shipping options
81
-
82
- **Endpoint**: `POST https://www.wixapis.com/ecom/v1/shipping-options/query`
83
-
84
- **Request**:
85
- ```json
86
- {
87
- "query": {
88
- "cursorPaging": {
89
- "limit": 100
90
- }
91
- }
92
- }
93
- ```
94
-
95
- **Response**:
96
- ```json
97
- {
98
- "shippingOptions": [
99
- {
100
- "id": "c0e5be8f-5266-4720-a732-5f571e4750db",
101
- "revision": "1",
102
- "createdDate": "2026-04-14T14:43:24.804Z",
103
- "updatedDate": "2026-04-14T14:43:24.804Z",
104
- "deliveryRegionId": "42b0ed3b-fc54-4ac0-89cf-5d2d17ec441c",
105
- "deliveryRegionIds": [],
106
- "title": "Standard Shipping",
107
- "estimatedDeliveryTime": "5-7 business days",
108
- "rates": [
109
- {
110
- "amount": "15.00",
111
- "conditions": [],
112
- "multiplyByQuantity": false
113
- }
114
- ]
115
- }
116
- ],
117
- "pagingMetadata": {
118
- "count": 1,
119
- "cursors": {},
120
- "hasNext": false
121
- }
122
- }
123
- ```
124
-
125
- Note: The response uses `deliveryRegionId` (singular) as the primary field linking an option to a region.
126
-
127
- ---
128
-
129
- ## Step 3: Apply recommendation — Create a new shipping option
130
-
131
- When the recommendation action is `create_shipping_option`, create a new option linked to a specific delivery region.
132
-
133
- **Endpoint**: `POST https://www.wixapis.com/ecom/v1/shipping-options`
134
-
135
- **Request** — flat rate example:
136
- ```json
137
- {
138
- "shippingOption": {
139
- "title": "Express Shipping",
140
- "estimatedDeliveryTime": "1-2 business days",
141
- "deliveryRegionId": "42b0ed3b-fc54-4ac0-89cf-5d2d17ec441c",
142
- "rates": [
143
- {
144
- "amount": "12.99",
145
- "multiplyByQuantity": false,
146
- "conditions": []
147
- }
148
- ]
149
- }
150
- }
151
- ```
152
-
153
- **Response**:
154
- ```json
155
- {
156
- "shippingOption": {
157
- "id": "dece6160-4e72-4fcc-adcc-7607215edab0",
158
- "revision": "1",
159
- "createdDate": "2026-04-15T13:14:01.214Z",
160
- "updatedDate": "2026-04-15T13:14:01.214Z",
161
- "deliveryRegionId": "42b0ed3b-fc54-4ac0-89cf-5d2d17ec441c",
162
- "deliveryRegionIds": [],
163
- "title": "Express Shipping",
164
- "estimatedDeliveryTime": "1-2 business days",
165
- "rates": [
166
- {
167
- "amount": "12.99",
168
- "conditions": [],
169
- "multiplyByQuantity": false
170
- }
171
- ]
172
- }
173
- }
174
- ```
175
-
176
- **Request** — free shipping with price threshold:
177
- ```json
178
- {
179
- "shippingOption": {
180
- "title": "Free Shipping",
181
- "estimatedDeliveryTime": "5-7 business days",
182
- "deliveryRegionId": "42b0ed3b-fc54-4ac0-89cf-5d2d17ec441c",
183
- "rates": [
184
- {
185
- "amount": "0",
186
- "multiplyByQuantity": false,
187
- "conditions": [
188
- {
189
- "type": "BY_TOTAL_PRICE",
190
- "operator": "GTE",
191
- "value": "75"
192
- }
193
- ]
194
- }
195
- ]
196
- }
197
- }
198
- ```
199
-
200
- **Key field rules:**
201
-
202
- | Field | Required | Notes |
203
- |---|---|---|
204
- | `title` | Yes | Display name at checkout |
205
- | `estimatedDeliveryTime` | Yes | Free text shown to customers |
206
- | `deliveryRegionId` | Yes | Region UUID from Step 1. Must use **singular** field, not `deliveryRegionIds` |
207
- | `rates` | Yes | Array of rate objects |
208
- | `rates[].amount` | Yes | Decimal string (`"5.99"`, `"0"` for free) |
209
- | `rates[].multiplyByQuantity` | Yes | Almost always `false` |
210
- | `rates[].conditions` | Yes | Empty array for flat rate; see condition types below |
211
-
212
- **Condition types** (for tiered/conditional rates):
213
-
214
- | Type | Description | Example |
215
- |---|---|---|
216
- | `BY_TOTAL_PRICE` | Cart total threshold | `"operator": "GTE", "value": "75"` |
217
- | `BY_TOTAL_WEIGHT` | Weight threshold | `"operator": "LTE", "value": "10"` |
218
- | `BY_TOTAL_QUANTITY` | Item count threshold | `"operator": "GTE", "value": "3"` |
219
-
220
- Operators: `EQ`, `GT`, `GTE`, `LT`, `LTE`
221
-
222
- ---
223
-
224
- ## Step 4: Apply recommendation — Update an existing shipping option
225
-
226
- When the recommendation action is `update_shipping_option`, update an existing option's title, delivery time, or rates.
227
-
228
- **Endpoint**: `PATCH https://www.wixapis.com/ecom/v1/shipping-options/{shippingOptionId}`
229
-
230
- Replace `{shippingOptionId}` with the option's `id` from Step 2.
231
-
232
- **Request**:
233
- ```json
234
- {
235
- "shippingOption": {
236
- "id": "c0e5be8f-5266-4720-a732-5f571e4750db",
237
- "revision": "1",
238
- "title": "Updated Standard Shipping",
239
- "estimatedDeliveryTime": "3-5 business days",
240
- "rates": [
241
- {
242
- "amount": "9.99",
243
- "multiplyByQuantity": false,
244
- "conditions": []
245
- }
246
- ]
247
- }
248
- }
249
- ```
250
-
251
- **Response**:
252
- ```json
253
- {
254
- "shippingOption": {
255
- "id": "c0e5be8f-5266-4720-a732-5f571e4750db",
256
- "revision": "2",
257
- "createdDate": "2026-04-14T14:43:24.804Z",
258
- "updatedDate": "2026-04-15T13:14:13.716Z",
259
- "deliveryRegionId": "42b0ed3b-fc54-4ac0-89cf-5d2d17ec441c",
260
- "deliveryRegionIds": [],
261
- "title": "Updated Standard Shipping",
262
- "estimatedDeliveryTime": "3-5 business days",
263
- "rates": [
264
- {
265
- "amount": "9.99",
266
- "conditions": [],
267
- "multiplyByQuantity": false
268
- }
269
- ]
270
- }
271
- }
272
- ```
273
-
274
- The `revision` field is required and must match the current revision. The response returns the incremented revision.
275
-
276
- ---
277
-
278
- ## Step 5: Verify the changes
279
-
280
- After applying recommendations, query shipping options again (Step 2) to confirm the changes took effect. Verify:
281
-
282
- - New options appear in the list with the correct title, rates, and region link
283
- - Updated options reflect the new values and incremented revision
284
- - The option is linked to the correct `deliveryRegionId`
285
-
286
- ---
287
-
288
- ## Error Handling
289
-
290
- | Error | Cause | Fix |
291
- |---|---|---|
292
- | `deliveryRegionId is not a valid GUID` | Used `deliveryRegionIds` (plural) instead of `deliveryRegionId` (singular) in create request | Use the singular `deliveryRegionId` field |
293
- | `SHIPPING_OPTION_NOT_FOUND` | The shipping option ID doesn't exist | Re-query shipping options to get current IDs |
294
- | `REVISION_MISMATCH` | The `revision` doesn't match the current version | Re-fetch the option to get the latest revision, then retry |
295
-
296
- ## References
297
-
298
- - [API: Shipping Delivery](https://dev.wix.com/docs/api-reference/business-solutions/e-commerce/skills/api-shipping)
@@ -1,139 +0,0 @@
1
- ---
2
- name: "eCommerce Skill Graph"
3
- description: Mermaid diagram showing how eCommerce skills connect — unified strategy entry point, goal/flow/guardrail chain, tracking inlined, troubleshoot as direct entries.
4
- ---
5
-
6
- ## Skill Graph Diagram
7
-
8
- ```mermaid
9
- flowchart TB
10
- MR["Merchant Request"] --> R
11
-
12
- subgraph R["R — Unified Entry Point"]
13
- recommend-ecommerce-strategy
14
- end
15
-
16
- R --> |"loads API ref"| Config
17
- R --> |"Step 4b: loads matching goal"| Goals
18
- R --> |"Step 2+8: tracking inlined"| TrackingAPI
19
-
20
- subgraph Goals["Goals — Business Objectives"]
21
- subgraph GD["Discount + Shipping"]
22
- goal-increase-aov
23
- goal-clear-inventory
24
- goal-seasonal-revenue
25
- goal-drive-cross-sells
26
- end
27
- subgraph GA["Abandoned Cart"]
28
- goal-reduce-cart-abandonment
29
- end
30
- end
31
-
32
- Goals --> |"loads matching flows"| Flows
33
- goal-increase-aov --> |"also loads shipping flows"| FS
34
-
35
- subgraph Flows["Flows — Business Logic"]
36
- subgraph FD["Discount"]
37
- flow-upsell-boost
38
- flow-bundle-and-save
39
- flow-stock-mover
40
- flow-seasonal-promotion
41
- end
42
- subgraph FS["Shipping"]
43
- flow-fix-coverage-gaps
44
- flow-add-free-shipping
45
- flow-optimize-shipping-rates
46
- end
47
- end
48
-
49
- Flows --> |"loads validation"| Guardrails
50
- Flows --> |"loads setup"| Config
51
-
52
- subgraph Guardrails["Cross-cutting: Guardrails"]
53
- guardrail-discount-conflicts
54
- guardrail-margin-protection
55
- guardrail-shipping-health
56
- guardrail-rate-pricing-sanity
57
- end
58
-
59
- subgraph Config["Config — Setup & API References"]
60
- setup-discount-rules
61
- setup-coupons
62
- setup-shipping-regions
63
- setup-shipping-rates
64
- api-shipping
65
- end
66
-
67
- subgraph TrackingAPI["Tracking API"]
68
- api-recommendation-tracking
69
- end
70
-
71
- subgraph Standalone["Direct Entry Points (from README)"]
72
- recipe-apply-shipping-recommendations
73
- setup-store-pickup-location
74
- troubleshoot-discount-not-applying
75
- troubleshoot-checkout-delivery-dropoff
76
- end
77
-
78
- Config -.-> |"calls via CallWixSiteAPI"| API
79
-
80
- subgraph API["Wix REST API Docs (dev.wix.com)"]
81
- D1["Discount Rules API"]
82
- D2["Coupons API"]
83
- D3["Products V3 API"]
84
- D4["Categories API"]
85
- D5["Catalog Analytics"]
86
- S3["Pickup Locations API"]
87
- S4["Local Delivery API"]
88
- SD["Profile Service API (wix-profile-client)"]
89
- end
90
-
91
- classDef goal fill:#8b5cf6,stroke:#6d28d9,color:#fff
92
- classDef guardrail fill:#ef4444,stroke:#dc2626,color:#fff
93
- classDef flow fill:#3b82f6,stroke:#2563eb,color:#fff
94
- classDef config fill:#f59e0b,stroke:#d97706,color:#fff
95
- classDef reco fill:#ec4899,stroke:#db2777,color:#fff
96
- classDef standalone fill:#6b7280,stroke:#4b5563,color:#fff
97
- classDef apidoc fill:#e5e7eb,stroke:#9ca3af,color:#374151
98
-
99
- class goal-increase-aov,goal-clear-inventory,goal-seasonal-revenue,goal-drive-cross-sells,goal-reduce-cart-abandonment goal
100
- class guardrail-discount-conflicts,guardrail-margin-protection,guardrail-shipping-health,guardrail-rate-pricing-sanity guardrail
101
- class flow-upsell-boost,flow-bundle-and-save,flow-stock-mover,flow-seasonal-promotion,flow-fix-coverage-gaps,flow-add-free-shipping,flow-optimize-shipping-rates flow
102
- class setup-discount-rules,setup-coupons,setup-shipping-regions,setup-shipping-rates,api-recommendation-tracking,api-shipping config
103
- class recommend-ecommerce-strategy reco
104
- class recipe-apply-shipping-recommendations,setup-store-pickup-location,troubleshoot-discount-not-applying,troubleshoot-checkout-delivery-dropoff standalone
105
- class D1,D2,D3,D4,D5,S1,S2,S3,S4,SD apidoc
106
- ```
107
-
108
- ## File Reachability
109
-
110
- | File | Reached via |
111
- |---|---|
112
- | `recommend-ecommerce-strategy.md` | README routing (entry point) |
113
- | `api-recommendation-tracking.md` | Entry point tracking steps |
114
- | `goal-increase-aov.md` | Step 4b (UPSELL_BOOST) |
115
- | `goal-clear-inventory.md` | Step 4b (STOCK_MOVER) |
116
- | `goal-seasonal-revenue.md` | Step 4b (SEASONAL) |
117
- | `goal-drive-cross-sells.md` | Step 4b (BUNDLE_AND_SAVE) |
118
- | `goal-reduce-cart-abandonment.md` | Step 4b (ABANDONED_CART domain) |
119
- | `flow-upsell-boost.md` | goal-increase-aov chain |
120
- | `flow-bundle-and-save.md` | goal-increase-aov / goal-drive-cross-sells chain |
121
- | `flow-stock-mover.md` | goal-clear-inventory chain |
122
- | `flow-seasonal-promotion.md` | goal-seasonal-revenue chain |
123
- | `flow-fix-coverage-gaps.md` | goal-reduce-cart-abandonment chain (critical operational fix) |
124
- | `flow-add-free-shipping.md` | goal-increase-aov chain (shipping flows serving AOV) |
125
- | `flow-optimize-shipping-rates.md` | goal-increase-aov chain (shipping flows serving AOV) |
126
- | `guardrail-discount-conflicts.md` | flow-upsell-boost / bundle / stock / seasonal chains |
127
- | `guardrail-margin-protection.md` | flow-upsell-boost / stock-mover chains |
128
- | `guardrail-shipping-health.md` | flow-fix-coverage-gaps chain |
129
- | `guardrail-rate-pricing-sanity.md` | flow-add-free-shipping / optimize chains |
130
- | `setup-discount-rules.md` | All discount flow chains |
131
- | `setup-coupons.md` | Step 4c (COUPON mechanism) |
132
- | `setup-shipping-regions.md` | flow-fix-coverage-gaps chain |
133
- | `setup-shipping-rates.md` | flow-add-free-shipping / optimize chains |
134
- | `api-shipping.md` | Shipping flows (fix-coverage-gaps, add-free-shipping, optimize, recipe, setup-store-pickup) |
135
- | `recipe-apply-shipping-recommendations.md` | README direct entry |
136
- | `setup-store-pickup-location.md` | README direct entry |
137
- | `troubleshoot-discount-not-applying.md` | README direct entry |
138
- | `troubleshoot-checkout-delivery-dropoff.md` | README direct entry |
139
- | `skill-graph.md` | Documentation reference |