Skip to content

Commit f1f4972

Browse files
Merge branch 'user-guides-pub' into link-fix
2 parents b591a9b + b680a40 commit f1f4972

File tree

229 files changed

+822
-865
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

229 files changed

+822
-865
lines changed

.github/workflows/grammar-nazi.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,4 @@ jobs:
1818
- name: 🧹 Run markdownlint
1919
uses: DavidAnson/markdownlint-cli2-action@v13
2020
with:
21-
globs: '**/*.md'
21+
globs: '**/*.md'

.markdownlint.jsonc

Lines changed: 58 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,60 @@
11
{
2-
"MD009": true, // Disallow trailing spaces at the end of lines
3-
"MD012": true, // Disallow multiple consecutive blank lines
4-
"MD018": true, // Headings must have a space after the # (e.g., "# Heading")
5-
"MD019": true, // Disallow multiple spaces after the # in headings
6-
"MD022": true, // Headings must be surrounded by blank lines above and below
7-
"MD023": true, // Headings must start at the beginning of the line (no leading spaces)
8-
"MD025": true, // Disallow multiple top-level headings (only one "# Heading" per file)
9-
"MD026": true, // Disallow punctuation at the end of headings (e.g., "Heading?" or "Heading:")
10-
"MD028": true, // Disallow blank lines inside list items
11-
"MD030": true, // Enforce consistent spacing after list markers (e.g., "- item", not "-item")
12-
"MD031": true, // Fenced code blocks must be surrounded by blank lines before and after
13-
"MD032": true, // Lists must be surrounded by blank lines above and below
14-
"MD034": true, // Disallow bare URLs — require using [text](url) format
15-
"MD037": true, // Disallow spaces inside emphasis markers (e.g., "* bold *" is invalid — use "*bold*")
16-
"MD042": true, // Disallow empty links (e.g., "[](url)" or "[text]()")
17-
"MD045": true, // Require alt text for all images (accessibility best practice)
18-
"MD051": true // Ensure internal link fragments (e.g., [Link](#heading)) match actual headings
2+
"MD001": false, // Heading levels should only increment by one level at a time
3+
"MD002": false, // First heading should be a top-level heading (e.g., "# Heading")
4+
"MD003": false, // Heading style should be consistent (e.g., ATX vs Setext)
5+
"MD004": false, // Unordered list style should be consistent
6+
"MD005": false, // Inconsistent indentation for list items
7+
"MD006": false, // Indentation for list items should be multiple of 2 spaces
8+
"MD007": false, // List item indentation should be consistent within the list
9+
"MD008": false, // Lists should be surrounded by blank lines (alternate form)
10+
"MD009": true, // Disallow trailing spaces at the end of lines
11+
"MD010": false, // Hard tabs are discouraged
12+
"MD011": false, // Reversed link syntax is not allowed
13+
"MD012": true, // Disallow multiple consecutive blank lines
14+
"MD013": false, // Do not enforce line length limits (disabled by choice)
15+
"MD014": false, // Dollar signs used before commands without showing output
16+
"MD015": false, // No spaces after list item marker (alternate form)
17+
"MD016": false, // Line beginning with whitespace
18+
"MD017": false, // Numbers in ordered lists should be sequential
19+
"MD018": true, // Headings must have a space after the # (e.g., "# Heading")
20+
"MD019": true, // Disallow multiple spaces after the # in headings
21+
"MD020": false, // No space inside hashes in headings (e.g., "#Heading#")
22+
"MD021": false, // No multiple spaces inside headings (alternative to MD019)
23+
"MD022": true, // Headings must be surrounded by blank lines above and below
24+
"MD023": true, // Headings must start at the beginning of the line (no leading spaces)
25+
"MD024": false, // Multiple headings with the same content are not allowed
26+
"MD025": true, // Disallow multiple top-level headings (only one "# Heading" per file)
27+
"MD026": true, // Disallow punctuation at the end of headings (e.g., "Heading?" or "Heading:")
28+
"MD027": false, // Multiple spaces between blockquote marker and content
29+
"MD028": true, // Disallow blank lines inside list items
30+
"MD029": false, // Ordered list item prefix should be one style (e.g., always "1.")
31+
"MD030": true, // Enforce consistent spacing after list markers (e.g., "- item", not "-item")
32+
"MD031": true, // Fenced code blocks must be surrounded by blank lines before and after
33+
"MD032": true, // Lists must be surrounded by blank lines above and below
34+
"MD033": false, // Allow inline HTML (useful for GitBook styling and custom formatting)
35+
"MD034": [
36+
true,
37+
{
38+
"ignorePatterns": [
39+
"{% embed url=\"https://.*?\" %}" // Ignore GitBook embed syntax for YouTube and others
40+
]
41+
}
42+
], // Disallow bare URLs, but skip your {% embed %} lines
43+
"MD035": false, // Horizontal rule style should be consistent (e.g., "---" vs "***")
44+
"MD036": false, // Emphasis style should be consistent (e.g., "*" vs "_")
45+
"MD037": true, // Disallow spaces inside emphasis markers (e.g., "* bold *" is invalid — use "*bold*")
46+
"MD038": false, // Spaces inside code span markers (e.g., "` code `")
47+
"MD039": false, // Spaces inside link text
48+
"MD040": false, // Fenced code block language should be specified
49+
"MD041": false, // First line in file should be a top-level heading
50+
"MD042": true, // Disallow empty links (e.g., "[](url)" or "[text]()")
51+
"MD043": false, // List items should be in a bulleted or numbered form consistently
52+
"MD044": false, // Proper names should have correct capitalization
53+
"MD045": true, // Require alt text for all images (accessibility best practice)
54+
"MD046": false, // Code block style should be consistent
55+
"MD047": false, // Files should end with a single newline character
56+
"MD048": false, // Code fences should use consistent style ("```" vs "~~~")
57+
"MD049": false, // Emphasis should not be used for headers
58+
"MD050": false, // Strong emphasis should not be used in headers
59+
"MD051": true // Link fragments must match actual headings in the document
1960
}

documents/README.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ Find direct access to resources tailored for **Store Operations, Retail Operatio
2828
Explore the sections **"Learn HotWax OMS," "Learn Shopify," and "Learn NetSuite,"** empowering users to maximize the
2929
potential of HotWax Commerce for your businesses.
3030

31-
## Resources :desktop:
31+
## Resources :desktop
3232

3333
<table data-view="cards">
3434
<thead>
@@ -71,7 +71,7 @@ potential of HotWax Commerce for your businesses.
7171
</tbody>
7272
</table>
7373

74-
## Learn HotWax OMS :orange\_book:
74+
## Learn HotWax OMS :orange\_book
7575

7676
<table data-view="cards">
7777
<thead>
@@ -102,7 +102,7 @@ potential of HotWax Commerce for your businesses.
102102
</tbody>
103103
</table>
104104

105-
## Store Operations User Manual :convenience\_store:
105+
## Store Operations User Manual :convenience\_store
106106

107107
<table data-view="cards">
108108
<thead>
@@ -162,7 +162,7 @@ potential of HotWax Commerce for your businesses.
162162
</tbody>
163163
</table>
164164

165-
## Retail Operations User Manual :department\_store:
165+
## Retail Operations User Manual :department\_store
166166

167167
<table data-view="cards">
168168
<thead>
@@ -229,7 +229,7 @@ potential of HotWax Commerce for your businesses.
229229
</tbody>
230230
</table>
231231

232-
## System Admin User Manual :video\_game:
232+
## System Admin User Manual :video\_game
233233

234234
<table data-view="cards">
235235
<thead>
@@ -274,7 +274,7 @@ potential of HotWax Commerce for your businesses.
274274
</tbody>
275275
</table>
276276

277-
## Learn Shopify :green\_book:
277+
## Learn Shopify :green\_book
278278

279279
<table data-view="cards">
280280
<thead>
@@ -319,7 +319,7 @@ potential of HotWax Commerce for your businesses.
319319
</tbody>
320320
</table>
321321

322-
## Learn NetSuite :blue\_book:
322+
## Learn NetSuite :blue\_book
323323

324324
<table data-view="cards">
325325
<thead>
@@ -356,7 +356,7 @@ potential of HotWax Commerce for your businesses.
356356
</tbody>
357357
</table>
358358

359-
## Integrate with HotWax :dart:
359+
## Integrate with HotWax :dart
360360

361361
<table data-view="cards">
362362
<thead>
@@ -387,7 +387,7 @@ potential of HotWax Commerce for your businesses.
387387
</tbody>
388388
</table>
389389

390-
## Additional Integrations :jigsaw:
390+
## Additional Integrations :jigsaw
391391

392392
<table data-view="cards">
393393
<thead>
@@ -428,7 +428,7 @@ potential of HotWax Commerce for your businesses.
428428
</tbody>
429429
</table>
430430

431-
## Analytics :bar\_chart:
431+
## Analytics :bar\_chart
432432

433433
<table data-view="cards">
434434
<thead>

documents/additional-integrations/SUMMARY.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# Table of contents
2+
23
* [HotWax Integrations](README.md)
3-
4+
45
## RetailPro
56

67
* [Introduction](retailpro/README.md)
@@ -17,14 +18,12 @@
1718
* [Technical Workflow](retailpro/flows/sendsale-order/technical-workflow.md)
1819

1920
* [Returns](retailpro/flows/returns/README.md)
20-
2121

2222
## Loop
2323

2424
* [Returns](loop/loop-online.md)
2525
* [Exchanges](loop/loop-exchanges.md)
2626

27-
2827
## Klaviyo
2928

3029
* [Klaviyo Integration](marketing-automations-platform/klaviyo.md)

documents/additional-integrations/carriers/easy-post.md

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -34,17 +34,17 @@ HotWax integrates with EasyPost using three key APIs, each serving a distinct pu
3434

3535
### Create a Shipment API
3636

37-
#### Purpose:
37+
#### Purpose
3838

3939
**Create Shipment API** shares all detailed shipment information with EasyPost, including package dimensions, weight, origin, and destination. In return, the API offers competitive rates from multiple carriers. For added flexibility, users can specify preferred carriers and their corresponding credentials. The API also generates custom shipping labels with adjustable size and format options.
4040

4141
**In case of international shipping:**
4242

4343
Fulfilling international orders requires accurate customs information for generating shipping labels and obtaining customs documents. While HotWax stores product details, it lacks the essential HS Tariff number and Custom Signer information for customs purposes.
4444

45-
HotWax integrates with your ERP system, automatically fetching HS Tariff numbers for products during order fulfillment. This daily synchronization ensures readily available HS codes whenever new products are added. HotWax stores these retrieved HS Tariff numbers alongside existing Good identifications for each product.
45+
HotWax integrates with your ERP system, automatically fetching HS Tariff numbers for products during order fulfillment. This daily synchronization ensures readily available HS codes whenever new products are added. HotWax stores these retrieved HS Tariff numbers alongside existing Good identifications for each product.
4646

47-
Alongside, HS tariff number of the product, EasyPost also requires a custom_signer value during shipment creation to validate the request. HotWax retrieves the designated custom signer value assigned by retailer stored in system properties in OMS.
47+
Alongside, HS tariff number of the product, EasyPost also requires a custom_signer value during shipment creation to validate the request. HotWax retrieves the designated custom signer value assigned by retailer stored in system properties in OMS.
4848

4949
Once both HS Tariff numbers and custom signer information are available, HotWax constructs a streamlined create shipment API request to EasyPost and generate shipping label.
5050

@@ -56,7 +56,7 @@ Once both HS Tariff numbers and custom signer information are available, HotWax
5656
https://api.easypost.com/v2/shipments
5757
```
5858

59-
#### Request:
59+
#### Request
6060

6161
<details>
6262

@@ -158,7 +158,7 @@ https://api.easypost.com/v2/shipments
158158
| shipment.carrier_accounts | (not specified) | List of carrier accounts (optional) |
159159
| shipment.carrier_accounts[] | facilityAttribute.attrName.carrierAccounts | Individual carrier account |
160160

161-
#### Response:
161+
#### Response
162162

163163
{% hint style="info" %}
164164
`EasyPost` consistently structures its responses, maintaining a common format. Unique details specified in each request are appended to this structure, ensuring dynamic adaptability while preserving a standardized response format.
@@ -458,21 +458,21 @@ In response, `Easy Post` shares three types of rates, and in our integration, we
458458

459459
### Buy a Shipment API
460460

461-
#### Purpose:
461+
#### Purpose
462462

463463
The Buy a Shipment API is employed to share the rate ID of a specific shipment with EasyPost. This API facilitates the retrieval of a shipping label corresponding to the provided rate ID.
464464

465465
#### Method
466466

467467
`POST`
468468

469-
#### Endpoint:
469+
#### Endpoint
470470

471471
```
472472
https://api.easypost.com/v2/shipments/shp_7383fa71161645259664060fb5c41c32/buy
473473
```
474474

475-
#### Request:
475+
#### Request
476476

477477
<details>
478478

@@ -492,7 +492,7 @@ https://api.easypost.com/v2/shipments/shp_7383fa71161645259664060fb5c41c32/buy
492492
| ----------------- | --------------- |
493493
| `id` | `rateId` |
494494

495-
#### Response:
495+
#### Response
496496

497497
{% hint style="info" %}
498498
`EasyPost` consistently structures its responses, maintaining a common format. Unique details specified in each request are appended to this structure, ensuring dynamic adaptability while preserving a standardized response format.
@@ -591,21 +591,21 @@ In this response, HotWax relies on two vital fields: `tracking_code` provides th
591591

592592
### Refund a Shipment API
593593

594-
#### Purpose:
594+
#### Purpose
595595

596596
The Refund a Shipment API is employed to void the shipping label generated for a specific shipment. This is useful in cases where a shipment needs to be canceled or rerouted.
597597

598598
#### Method
599599

600600
`POST`
601601

602-
#### Endpoint:
602+
#### Endpoint
603603

604604
```
605605
https://api.easypost.com/v2/shipments/shp_a88f34ee108f4e82ab04b3570863f7fb/refund
606606
```
607607

608-
#### Request:
608+
#### Request
609609

610610
<details>
611611

@@ -619,7 +619,7 @@ https://api.easypost.com/v2/shipments/shp_a88f34ee108f4e82ab04b3570863f7fb/refun
619619

620620
</details>
621621

622-
#### Response:
622+
#### Response
623623

624624
{% hint style="info" %}
625625
`EasyPost` consistently structures its responses, maintaining a common format. Unique details specified in each request are appended to this structure, ensuring dynamic adaptability while preserving a standardized response format.
@@ -824,6 +824,9 @@ These three APIs form the core of the integration, allowing HotWax to seamlessly
824824

825825
```
826826
- https://www.easypost.com/docs/api#create-a-shipment
827+
827828
- https://www.easypost.com/docs/api#buy-a-shipment
829+
828830
- https://www.easypost.com/docs/api#refund-a-shipment
831+
829832
```

documents/additional-integrations/loop/loop-exchanges.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ description: >-
44
---
55

66
# Exchanges
7+
78
An exchange refers to a transaction in which a customer returns a purchased item and, instead of receiving a refund or store credit, opts to swap the returned item for a different product.
89

910
## Data Flow
@@ -22,7 +23,6 @@ The downloaded exchange orders are then brokered to the optimal fulfillment loca
2223

2324
These exchange orders are also synchronized to NetSuite for further processing. Learn more about [synchronization of exchange orders from HotWax Commerce to NetSuite ERP.](https://docs.hotwax.co/documents/v/learn-netsuite/integration-flows/exchanges#README)
2425

25-
2626
### Synchronize POS Exchanges to HotWax Commerce
2727

2828
POS exchange sales are similar to other POS sales as both the transactions recorded in Shopify POS. POS exchange sales created in Shopify POS are imported into HotWax Commerce just like regular POS sales.

documents/additional-integrations/loop/loop-online.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -169,17 +169,17 @@ With this setup, after HotWax restocks the returned inventory from NetSuite duri
169169

170170
When a customer opts for an exchange through Loop, a new exchange order is automatically created in Shopify once the return is closed in Loop. HotWax Commerce downloads these exchange orders from Shopify as regular orders and syncs them to NetSuite. Here's how different exchange scenarios are handled:
171171

172-
#### 1. When the exchange order total is less than the original order:
172+
#### 1. When the exchange order total is less than the original order
173173

174174
* Loop automatically refunds the customer for the price difference and creates a new exchange order in Shopify.
175175
* HotWax’s Integration Platform captures this refund data and processes it as discussed earlier, transforming it for NetSuite without additional steps.
176176

177-
#### 2. When the exchange is for an item of equal value:
177+
#### 2. When the exchange is for an item of equal value
178178

179179
* The process is straightforward, with no need for special handling.
180180
* The return and exchange data are transformed and synced to NetSuite, as previously discussed.
181181

182-
#### 3. When the exchange is for an item of higher value (Upsell):
182+
#### 3. When the exchange is for an item of higher value (Upsell)
183183

184184
* Loop includes attribution in the Shopify order notes, indicating that the new exchange order involves an upsell.
185185
* HotWax recognizes this attribution and processes the order accordingly.
@@ -193,13 +193,13 @@ Suppose a customer initiates a return for a $100 item and chooses to exchange it
193193

194194
Retailers' return policies can vary, ranging from one to several months. To accommodate future returns, HotWax imports historical orders from Shopify. However, some retailers accept returns for orders placed over a year ago. If a retailer starts using HotWax Commerce within that year and lacks historical orders in the OMS, here’s how HotWax handles such cases:
195195

196-
#### 1. Matching Shopify and NetSuite order IDs:
196+
#### 1. Matching Shopify and NetSuite order IDs
197197

198198
* When return data is received from Loop, HotWax’s Integration Platform first checks the Shopify order ID in the OMS.
199199
* If a corresponding NetSuite order ID is found, the return process proceeds without interruptions.
200200
* The RMA is created in NetSuite and linked to the original sales order, maintaining consistency in data and workflows.
201201

202-
#### 2. Fetching older orders from NetSuite:
202+
#### 2. Fetching older orders from NetSuite
203203

204204
* In some cases, older orders may not be imported into the OMS, but the corresponding records still exist in NetSuite.
205205
* When no matching NetSuite order ID is found in the OMS, HotWax’s Integration Platform runs a search query in NetSuite using the Shopify order ID to locate the original sales order details.\
@@ -219,7 +219,7 @@ Since NetSuite already has the return order data from the Integration Platform,
219219

220220
Customers who live near a brick-and-mortar store or those who prefer to get instant refunds opt for returning their purchases directly in-store.
221221

222-
#### Scenarios where POS returns are accepted:
222+
#### Scenarios where POS returns are accepted
223223

224224
* **Buy In-Store Return In-Store (BISRIS):** Customers return their in-store purchases to a nearby store location.
225225
* **Buy Online Return In-Store (BORIS):** Customers directly return their online purchases to a nearby store location.

0 commit comments

Comments
 (0)