fulfillment policy
Define shipping policies, carrier rules, and fulfillment logic.
Overview
The hyperfold fulfill policy command creates and manages fulfillment policies that control how orders are shipped. Policies define carrier selection, shipping thresholds, insurance requirements, and handling procedures.
Policies are evaluated by the Fulfillment Agent when processing each order to determine optimal shipping configuration.
Creating Policies
bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# Create a fulfillment policy$ hyperfold fulfill policy create \ --name="Standard Domestic" \ --type=domestic Creating fulfillment policy... POLICY CREATED Policy ID: pol_std_dom_001 Name: Standard Domestic Type: domestic Status: active Default rules applied: ✓ Free shipping over $50 ✓ Standard carrier selection ✓ Insurance for orders > $100 # Create expedited policy$ hyperfold fulfill policy create \ --name="Premium Express" \ --type=express \ --carriers=fedex_express,ups_next_day \ --max-delivery-days=2Policy Types
| Type | Description |
|---|---|
| domestic | Standard domestic shipping within country |
| express | Expedited shipping with guaranteed delivery |
| international | Cross-border shipping with customs handling |
| pickup | In-store or warehouse pickup |
| freight | Large/heavy items requiring LTL shipping |
Policy Rules
bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# Configure policy rules$ hyperfold fulfill policy rules pol_std_dom_001 \ --free-shipping-threshold=75 \ --default-carrier=usps_priority \ --insurance-threshold=200 # Set carrier preferences by weight$ hyperfold fulfill policy rules pol_std_dom_001 \ --carrier-rules='[ {"weight_max": 1, "carrier": "usps_first_class"}, {"weight_max": 5, "carrier": "usps_priority"}, {"weight_max": 50, "carrier": "fedex_ground"}, {"weight_max": "*", "carrier": "fedex_freight"} ]' # Configure handling time$ hyperfold fulfill policy rules pol_std_dom_001 \ --handling-days=1 \ --weekend-handling=false \ --holiday-handling=falseManaging Policies
bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# List all policies$ hyperfold fulfill policy list FULFILLMENT POLICIES POLICY ID NAME TYPE ORDERS (30d) STATUSpol_std_dom_001 Standard Domestic domestic 4,521 activepol_express_002 Premium Express express 892 activepol_intl_003 International intl 234 activepol_local_004 Local Pickup pickup 156 active # Show policy details$ hyperfold fulfill policy show pol_std_dom_001 POLICY: Standard Domestic━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Type: domesticCreated: 2025-01-15T10:00:00ZStatus: active SHIPPING RULES Free Shipping: Orders over $75 Default Carrier: USPS Priority Handling Time: 1 business day CARRIER SELECTION < 1 lb: USPS First Class ($3.50 - $5.00) 1-5 lb: USPS Priority ($7.50 - $12.00) 5-50 lb: FedEx Ground ($9.00 - $25.00) > 50 lb: FedEx Freight (quoted) INSURANCE Required above: $200 Provider: ShipStation Insurance Rate: 0.5% of declared value RESTRICTIONS Excluded states: AK, HI (use International policy) Hazmat: Not supported Oversized: Requires manual reviewShipping Classes
Shipping classes group products with special handling requirements:
bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# Create shipping classes$ hyperfold fulfill policy class create \ --name="Fragile" \ --handling=special \ --packaging=reinforced \ --surcharge=5.00 $ hyperfold fulfill policy class create \ --name="Oversized" \ --handling=freight \ --max-standard-size="24x24x24" \ --surcharge-formula="weight * 0.50" $ hyperfold fulfill policy class create \ --name="Perishable" \ --handling=expedited \ --carriers=fedex_express_only \ --packaging=insulated \ --max-transit-days=2 # Assign shipping class to products$ hyperfold catalog update --sku=VASE-001 --shipping-class=fragile$ hyperfold catalog update --sku=CAKE-001 --shipping-class=perishable # List shipping classes$ hyperfold fulfill policy class list SHIPPING CLASSES CLASS HANDLING SURCHARGE PRODUCTSfragile special $5.00 142oversized freight weight*0.50 38perishable expedited $12.00 24hazmat certified $25.00 8standard normal $0.00 2,635Exceptions
Define exceptions to override default policy behavior based on conditions:
bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# Create policy exceptions$ hyperfold fulfill policy exception add pol_std_dom_001 \ --condition="customer.tier == 'platinum'" \ --free-shipping=always \ --priority-handling=true $ hyperfold fulfill policy exception add pol_std_dom_001 \ --condition="order.subtotal > 500" \ --free-express=true \ --insurance=included $ hyperfold fulfill policy exception add pol_std_dom_001 \ --condition="product.category == 'electronics'" \ --signature-required=true \ --insurance-rate=1.0 # Regional exceptions$ hyperfold fulfill policy exception add pol_std_dom_001 \ --condition="shipping.state in ['AK', 'HI']" \ --surcharge=15.00 \ --carriers=usps_priority_only \ --delivery-estimate="+2 days" # List exceptions$ hyperfold fulfill policy exception list pol_std_dom_001 POLICY EXCEPTIONS: Standard Domestic PRIORITY CONDITION MODIFICATIONS1 customer.tier == 'platinum' free_shipping, priority2 order.subtotal > 500 free_express, insurance3 product.category == 'electronics' signature, insurance_1%4 shipping.state in ['AK', 'HI'] +$15.00, +2 daysException Conditions
Exceptions support flexible condition expressions:
| Variable | Properties |
|---|---|
customer | tier, orders_count, lifetime_value |
order | subtotal, item_count, weight, volume |
product | category, price, weight, shipping_class |
shipping | state, country, zone, distance |
Exceptions are evaluated in priority order. Higher priority exceptions (lower number) take precedence when multiple conditions match.
With providers, locations, and policies configured, your Fulfillment Agent can automatically process orders end-to-end.