Bob's web-store example. Part 2, cart checkout, imposed delivering (shipping).

* See previous article about how to add a S.E. Seller, an item, etc into the web-store.

"Imposed delivering (shipping), free from N total" is a widely used method. Here is an example - "Delivering 10USD, free from 300USD total".

Create this service in the menu -> Appearance -> Desktop -> Common -> Services with the tax category STS11%. Then open the menu -> ... -> Administrator and:

  • add price 10USD for all buyers Pricing -> Service price

  • add availability "always available", quantity "9999999999" in Catalog G/S -> Service place

  • add delivering methods Common - Delivering methods:

    • Pick up by buyer

    • Delivering with this service and "Applying method=300"

Beige-Webstore settings

Online payment.

Right now Beigesoft™ web-store has only PayPal online payment method. Adding any other 3-d party payment gateway is not a difficult task. All payment gateways work in the same way: it's created a "payment circle" between "payer web-browser"-"payee web-store"-"payment gateway". It's usually made with JSON requests. Payment gateway usually provide "SDK" to avoid making JSON queries by hand (including OAuth2 authentication) and for data validation prior to sending. Buyer's payment method (secret data) is handled entirely by payment gateways. To use PayPal you should either compile "web-store" by yourself (see example beige-accoio-web), or reassemble the WAR file with included "beigesoft-ppl.jar" library.

S.E. seller's items.

User can order any item. During checkout cart will be used to make customer orders - one for web-store owner's items and others for S.E.Seller's ones. To demonstrate this, add new S.E. seller "Yoga Teacher" (you should login as administrator):

  • add "Debitor/creditor" "Yoga Teacher" in menu -> Appearance -> Desktop -> Common

  • add "User": name-"YogaTeacher", password-"****" in menu -> ... -> Administrator -> ... -> Users

  • add "User role": user-"YogaTeacher", role-"seller" in menu -> ... -> Administrator -> ... -> User roles

  • add "S.E.Seller": seller-"Yoga Teacher", user-"YogaTeacher" in menu -> ... -> Administrator -> Catalog G/S -> S.E.Sellers

Then logout and login as Yoga Teacher in menu -> Admin -> S.E.Seller where:

  • add S.E. good - "Yoga uniform" tax category STG4.7%, STG6.4%

  • add S.E. good in place - quantity 20, "is always = NO", place "NY" (any place can be added only by administrator)

  • add S.E. good price - 100USD for "price for all" price category.

  • add S.E. service - "Yoga class 2 months, starts on 2 April", tax category STS11%

  • add S.E. service in place - quantity 20, "is always = NO", place "NY"

  • add S.E. service price - 500USD for "price for all" price category.

Finally, to add these items to list, login as administrator and add them with "menu-S.E.Good/Service in catalog", then set "Contains S.E.Goods/Services" for that catalog. Then push "... -> Refresh items in list".

Buyer registration.

A buyer can add an item into the cart without registration. Cart checkout requires a registered and authorized buyer. Any unregistered buyer should fill the "Sign Up" fields (name minimum 3 letters). Any registered buyer should use its email and password for sign in:

Beige-Webstore settings

Online payment settings.

If you build the web-store with the PayPal payment library, then add a payment method menu -> ... - Administrator -> Common -> Payments methods:

Beige-Webstore settings

* Where name must be exactly "PAYPAL", sec1 - "payee ID", sec2 - "payee Secret", mode - "sandbox/production".

S.E.sellers also may has payee methods. You can set it: ... -> Additional settings - Online payment mode=0. The default "Online payment mode=1" means that the web-store owner is the only payee, i.e. it will receive payments for the all S.E. orders. In the case of several payee, buyer can order the only payee goods in this version, otherwise it will face the error.

Cart checkout.

After adding 2 items, the cart is:

Beige-Webstore settings

After adding the "Yoga class" item, the delivering fee is waived:

Beige-Webstore settings

Press the "checkout" button, these two orders will be created:

Beige-Webstore settings

Press the "PayPal Checkout" button, the online payment checkout form will appeared:

Beige-Webstore settings

The payment accepted, so the buyer can list all its orders:

Beige-Webstore settings
Beige-Webstore settings

Customer orders.

Right now creating an invoice from an order is not yet implemented. Web-store admin can change web-store owner's orders status to "payed/closed/canceled" in the "Pricing" menu. And so does any S.E. seller. S.E. seller can't see others seller's items, orders. Webstore-admin can only see all S.E. seller data.

A buyer and a seller can print their orders, e.g.:

Beige-Webstore settings