eCommerce App available to Anyone

Hi, I’m trying to build a cash-on-delivery simple eCommerce app that allows anyone (without the need to sign in) to:
1- Brows and select items
2- Add one or more items to the shopping cart
3- Fill out a form with their details
4- Submit the form. The form will have the shopper filled in details and the list of items they have ordered, stored in the datasheet, for staff to process, etc.
5- Once the form is submitted the cart will be cleared for the next shopper or the next order from the same shopper. The app/cart is available to multi-shopper at the same time, and there is no need for the shopper to see their order after submitting or tracking the progress of their order.

I have points 1 to 4 covered, my problem is achieving point 5, by making 1 to 4 available to anyone without the need to sign in at the start.

Any assistance appreciated

Glide’s shopping cart features should cater for point 5, without individuals having to sign in. Each successful purchase populates a sales / transaction table in the data editor.

Is this not your experience?

Thanks a lot @iamtomgray
Will it work for Cash on delivery ? I mean just sending a form that contains the order and shopper details ?

Not natively within the shopping cart. But there might be some workarounds for this. What do you think, @ThinhDinh?

Any advice @ThinhDinh , or anyone ? please

I have a template that has an exact model that you need. You can achieve this using user specific columns, and I think trebuchet method. Let me find that template for you.

I made this kind of app long time back and for point # 5, I used Wiz Wazeer’s Appscript to clear the order from order sheet.

1 Like

:+1:
Can you share any template @Hassan_Nadeem

Hi,

Try this

2 Likes

Here you go. I have made the link copyable

1 Like

Hi @Vitor_Rosas
This template still request shoppers to sign in once they click add item button.
I was hoping to find a solution to complete the process for anyone without the need for signing in

Thanks a lot @Hassan_Nadeem
Will go through it over the weekend and let you know

1 Like

@OneWorld That’s my template that @Vitor_Rosas shared It might still work if you remove the action to sign in (I haven’t tested it like that). I have sign in required so users can track past orders, leave the app and return without losing their cart, and keep delivery information so they don’t have to enter it each time. That was my personal requirement, not a requirement for it to work. You don’t have to do that if you don’t want to. It’s copyable and can be changed to your liking. The advantage to my template is that is uses one single row for a cart that can hold unlimited number of items and quantities, and can be used by multiple people at the same time. All with one single row.

2 Likes

Usually what I do here is a combination of 4 tables.

  • Home table: Working table with only 1 row to build all the frontend stuff on. This should have a user-specific column to store the “sesssion ID”.
  • Items table: Store all items that the user can order from.
  • Cart table: Store all items added to orders.
  • Orders table: Master table to store all orders.

So an order can contain multiple rows in the cart table. The flow would look like this, if the user isn’t signed in:

  • Build a screen on top of the Home table, and make it use a details view layout.
  • Add an inline list of all items in the Items table. The action on each item would be: If session ID is empty, set a unique value to the session ID column and show the details view, else just show the details view.
  • Add a button in the details view of each item that acts as a form writing to the Cart table. Collect the item quantity and any notes you may need inside that form. Write the session ID of the user to the Cart row as well. You can bring the session ID over to the Items table using a single value column.
  • When the user has added all items they need, they will be presented with a new tab called “Cart”, which is also built on the “Home” table.
  • In the “Home” table, add a relation column to relate the session ID to all “unsubmitted” cart rows. Then a joined list column to join all the rowIDs of those “unsubmitted” cart rows.
  • Add user-specific columns to store the user’s name. phone, address etc. Show them as entries on the Cart tab.
  • Add a final button to confirm the order, which will add a row in the orders tab containing all of the user’s info, plus the IDs of the cart rows which are related to the order.
3 Likes

This is what I do as well :point_up_2:

2 Likes

Thanks a lot, dear @Jeff_Hager
An excellent solution

1 Like

Being new to Glide, a template will help a lot to understand the logic implementation. Any sample Template dear @ThinhDinh ?

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.