# How to Build a Personalized Cart System in Glide

**URL:** <https://community.glideapps.com/t/how-to-build-a-personalized-cart-system-in-glide/82206>\
**Category:** Project Showcase\
**Tags:** template-store\
**Created:** [June 2, 2025, 5:42pm UTC](https://community.glideapps.com/t/how-to-build-a-personalized-cart-system-in-glide/82206 "2025-06-02T17:42:52Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Gideon\_Lahav\_Busines](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/gideon_lahav_busines/32/41121_2.png) [@Gideon\_Lahav\_Busines](https://community.glideapps.com/u/Gideon_Lahav_Busines)\
**Post date:** [June 2, 2025, 5:42pm UTC](https://community.glideapps.com/t/how-to-build-a-personalized-cart-system-in-glide/82206/1 "2025-06-02T17:42:52Z")

</div>

If you’re building an e-commerce app with Glide and want to go beyond the basics, one of the most powerful features you can implement is a personalized cart system. As someone who’s been working with Glide since 2020, I can confidently say that mastering this aspect opens the door to creating real, scalable applications for serious clients.

[![](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/7/e/7ebaeca273bbe4fca9be469ae3e6edc9d1e682d8.jpeg "Build a Custom Cart System in Glide – Step-by-Step No-Code Tutorial") ](https://www.youtube.com/watch?v=McsSBGb2174)

In this post, I’ll walk you through the principles and techniques I used to build a multi-cart system for individual users, without writing a single line of code. This is not just another online store example. We’re talking about a dynamic, user-specific experience where each person interacts with their own cart, can add multiple items, manage quantities, and proceed to checkout—all within Glide.

### Step 1: Set Up Your Product Inventory

Start with a simple product table. I used Google Sheets for this, then imported it into Glide. My table includes:

- Product name
- Description
- Image
- Price

This inventory will later be referenced when building the cart. Keep things tidy: name your table something intuitive like `Products` or `Inventory`.

* * *

### Step 2: Create a Carts Table

Next, create a new table called `Carts`. Each row here represents a unique shopping cart session. For each cart, include:

- A unique Row ID
- User email (who owns this cart)
- Timestamp
- Optional: Order number for tracking

Use Glide’s **user profiles** to tie the current user to their own cart using relations and rollups. You can also store the current cart ID inside the user profile for easy reference throughout the app.

* * *

### Step 3: Build the Cart Items Table

Create another table, something like `Products in Cart`. This is your line-item table, where every product added to a cart is logged. You’ll need:

- Row ID
- Cart ID
- Product ID
- Product Name (optional)
- Product Image (can be looked up)
- Price (store a fixed price snapshot)
- Quantity
- Timestamp
- User email (who added it)

Avoid relying too heavily on lookups for key data like price. If a product price changes after someone adds it to their cart, their price should remain unchanged. Store the price at the time it was added.

* * *

### Step 4: Add Products to the Cart

Here’s where the fun begins. Using Glide’s **custom actions** , you can create workflows like:

1. If the user doesn’t have an active cart, create one.
2. Store the cart ID in the user’s profile.
3. Add the selected product to the `Products in Cart` table.

Make sure to use **user-specific columns** for things like temporary values (current product, quantity input) so multiple users can interact with the same UI at the same time without conflict.

* * *

### Step 5: Edit Product Quantities

After a product is added, redirect the user to an **edit screen** where they can set the desired quantity. Use number pickers with a range (e.g. 1–10) and plus/minus buttons for better UX. You can conditionally show the edit button only if the product was added within the same day, or based on other business rules.

* * *

### Step 6: Display the Cart

Now that you have a functioning cart system, create a new screen that displays all products in the current cart. Use filters to show only items with a `Cart ID` matching the current cart. Add a rollup to calculate the total price, multiplying quantity by price.

Bonus: You can even add tax, shipping, or discount logic with a few extra columns and math.

* * *

### Step 7: Admin View (Optional)

If you’re building an app where someone manages orders, like a shop owner or admin, you can set role-based visibility. Admins can:

- View all users and their carts
- Change order statuses
- Edit or delete items manually if needed

Just add a role field in the Users table and use visibility filters across screens and components.

* * *

### Step 8: Prepare for Checkout

This part depends on your payment system. Whether you’re using Stripe, PayHere, or a custom integration with Make/Zapier, you’ll need a table for `Payments` where you can log:

- Cart ID
- User email
- Amount paid
- Timestamp

Once payment is confirmed (manually or via webhook), you can flag the cart as “Paid” and hide or archive it from the active list.

---

<div class="post-metadata">

**Author:** ![Federico\_Fleitas](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/federico_fleitas/32/77461_2.png) [@Federico\_Fleitas](https://community.glideapps.com/u/Federico_Fleitas)\
**Post date:** [June 2, 2025, 7:09pm UTC](https://community.glideapps.com/t/how-to-build-a-personalized-cart-system-in-glide/82206/2 "2025-06-02T19:09:14Z")

</div>

Awesome!!!

---

<div class="post-metadata">

**Author:** ![Gideon\_Lahav\_Busines](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/gideon_lahav_busines/32/41121_2.png) [@Gideon\_Lahav\_Busines](https://community.glideapps.com/u/Gideon_Lahav_Busines)\
**Post date:** [June 3, 2025, 8:59am UTC](https://community.glideapps.com/t/how-to-build-a-personalized-cart-system-in-glide/82206/3 "2025-06-03T08:59:50Z")

</div>

Thank you (😄
