# Reserved products

Source: https://support.storeconnect.com/articles/reserved-products · Last modified 21 August 2026

Reserved products are product records added to Salesforce by StoreConnect that are used during checkout. Each reserved product is tied to a specific feature and should be treated as **do not modify or delete** — without them, StoreConnect will error when attempting to use that feature.

StoreConnect uses reserved products to add extra line items to an order (for example, a shipping charge or a promotional discount). For this to work, each reserved product must have an active price book entry (PBE) in every price book your store uses — one per price book, per currency.

These are the reserved products created by StoreConnect:

- **StoreConnect Shipping** — added to orders when a shipping method is selected
- **StoreConnect Promotion** — added to orders when a discount or promotion code is applied
- **StoreConnect Cash Rounding** — added to orders to round the total to the nearest cash denomination
- **StoreConnect Tipping** — added to orders when a customer adds a tip

All reserved products are created with **Active = false**, which is intentional and correct. However, their price book entries must be **active** for StoreConnect to use them.

## Reserved product validation

StoreConnect checks for a valid price book entry at the moment each reserved product is needed, not proactively. Specifically:

- **Shipping** — checked when shipping rates are requested (on the cart page, during express checkout, or when custom shipping rates are fetched)
- **Promotions** — checked when a customer applies a promo code
- **Cash rounding and tipping** — checked at order creation when StoreConnect attempts to add those line items

This means a missing price book entry may not surface until a customer reaches a specific step in checkout, at which point they will see an error and be unable to proceed.

## Reserved product price book entries

StoreConnect automatically manages reserved product PBEs in three situations:

- **On installation or upgrade** — the post-install handler creates all four reserved products and a PBE for every price book and currency in your org.
- **When a new price book is created** — a trigger on the Pricebook2 object fires and creates PBEs for all reserved products on that new price book.
- **When a store's currency changes** — a trigger on the Store object creates PBEs for the new currency on all reserved products.

To prevent configuration issues, validation rules block any attempt to deactivate a reserved product PBE. If you try to set a PBE to inactive, Salesforce will return an error: *"Reserved product price book entries must be active."*

If a validation rule or unexpected required field on the Product or PricebookEntry object prevents creation during install or a trigger run, you may be prompted during installation to resolve the issue and retry, or to create the records manually.

## Check and fix missing price book entries

If a reserved product PBE was not created (for example, because of a trigger failure during install or a manual deletion), follow these steps:

1. In Salesforce, go to **Products** and search for each reserved product by name (StoreConnect Shipping, StoreConnect Promotion, StoreConnect Cash Rounding, StoreConnect Tipping).
2. Open each product and review the **Price Books** related list.
3. Confirm there is an entry for every price book in your org, and that each entry is **Active**.
4. If an entry is missing, click **Add Standard Price** or use the **Add to Price Book** action to create a new entry with a unit price of **$0.00** and set it to **Active**.

:::note
If your org uses multiple currencies, you need one active price book entry per currency per price book for each reserved product.
:::

## Manually create a reserved product

If a reserved product record is missing entirely, you must create it with exact field values — StoreConnect identifies these products by their `sC Id` field, not their name.

### Create a Product2 record

Add the record with the following details:

| Field | Value |
|---|---|
| Name | See product table below |
| Description | See product table below |
| sC Id (`s_c__sC_Id__c`) | See product table below — must match exactly |
| Active | false |
| Is Master (`s_c__Is_Master__c`) | true |
| Sync to Google (`s_c__Sync_To_Google__c`) | false |

The four reserved products and their required values:

| Name | Description | sC Id |
|---|---|---|
| StoreConnect Shipping | Used internally for StoreConnect shipping, DO NOT EDIT OR DELETE | `11111111-1111-1111-1111-111111111111` |
| StoreConnect Promotion | Used internally for StoreConnect promotions, DO NOT EDIT OR DELETE | `22222222-2222-2222-2222-222222222222` |
| StoreConnect Cash Rounding | Used internally for StoreConnect cash rounding, DO NOT EDIT OR DELETE | `33333333-3333-3333-3333-333333333333` |
| StoreConnect Tipping | Used internally for StoreConnect tipping, DO NOT EDIT OR DELETE | `44444444-4444-4444-4444-444444444444` |

### Add the product to the price book
Next, create a PricebookEntry for each product on every price book in your org, starting with the **Standard price book**. If your org uses multiple currencies, create one price book entry per currency per price book.

| Field | Value |
|---|---|
| Pricebook | Standard price book, then each price book in your org |
| Unit Price | 0.00 |
| Active | true |

:::warning
You must add the product to the **standard price book first**, otherwise Salesforce will reject custom price book entries with a `STANDARD_PRICE_NOT_DEFINED` error.
:::

---

## Follow StoreConnect

- [Email Newsletter](https://getstoreconnect.com/c/lp-newsletter)
- [LinkedIn Newsletter](https://www.linkedin.com/build-relation/newsletter-follow?entityUrn=7444956928444862464)
- [YouTube](https://www.youtube.com/channel/UCngKdP2x8l1wcbAKW3tvU8g)
- [LinkedIn](https://www.linkedin.com/company/storeconnect)
- [X / Twitter](https://x.com/storeconnecthq)

## Popular Links

- [Partners](https://getstoreconnect.com/partners)
- [News](https://getstoreconnect.com/articles/news)
- [Events](https://getstoreconnect.com/articles/events)
- [Feature Comparison](https://getstoreconnect.com/how-we-compare)
- [Download a free trial](https://appexchange.salesforce.com/appxListingDetail?listingId=a0N3A00000FMkeKUAT)
- [Book a Demo](https://getstoreconnect.com/contact)

## Documentation

- [Help documentation](https://support.storeconnect.com/help-documentation)
- [AI agents](https://support.storeconnect.com/ai)
- [Videos & tutorials](https://support.storeconnect.com/videos-tutorials)
- [Developer reference](https://support.storeconnect.com/developer-reference)
- [Release notes](https://support.storeconnect.com/release-notes)
- [Troubleshooting](https://support.storeconnect.com/troubleshooting)
- [Trust Center](https://trust.getstoreconnect.com/)
- [Status Page](https://status.storeconnect.com/)

## Contact

- info@getstoreconnect.com
- US +1 415 745 3230
- AUS +61 2 8365 2308

100 S Ashley Dr, Suite 600-2461
Tampa FL 33602-600 USA

Level 22, Sydney Place
180 George Street
Sydney, NSW, 2000, AUS

---

StoreConnect Support — https://support.storeconnect.com/articles/reserved-products