Features · Checkout

A checkout that refuses to charge the wrong price

One call turns a cart into an order and tells the client how to pay. Retry it and you get the same order back; change a price underneath it and it answers 409 with the new figures instead of charging something the shopper never saw.

The call that places the order

The four things this checkout does that a buyer never sees and an operator depends on.

Guests find their order

A guest has no account to sign in to, so the way back to an order is the order itself: a link in its emails, or its number and the email or phone it was placed with.

Abandoned checkouts

A basket somebody left is the order closest to happening. The cart-recovery module notices it within minutes, writes to the shopper, and stops the moment it becomes an order.

Payments

Signing in

With the identity module, shoppers sign in with an email and password, with a code texted to their phone, or either way into the same account.

Customers and prices

The product page and the basket

The engine works out each of these, so an offer price, a free-delivery figure or a sold count is the same for every client that reads it.

Stock, tax and shipping

Storefront

Not in GoCommerce yet

Named here so nobody has to find out at launch. Each is absent from the code today.

FAQ

Questions about checkout

What happens if a price changes while someone is checking out?

The checkout call answers 409 with the line that changed and its current price, and no order is charged. The client shows the new figure and the shopper decides. The engine never reprices an order silently.

Can shoppers buy without an account?

Yes. Guest checkout is a permanent guarantee in the core: an order needs an email, and the access token returned at checkout reads it back. A store can turn its Guest checkout switch off, and the storefront then asks shoppers to sign in first. Accounts are the identity module, added when you want them.

How does a guest find their order again?

Through the link in their order emails, which opens the order with nothing to type, or with the order number and the email or phone it was placed with. Neither needs an account.

Can shoppers sign in with a phone number?

Yes, with the identity module. The store chooses email and password, a code texted to the phone, or either, and a shopper who uses both ways keeps one account. Codes go to Indian (+91) numbers through the store’s SMS provider, such as MSG91 or Twilio.

Which payment gateways work in India?

Razorpay and Cashfree are modules, and cash on delivery is built in and on until the store switches it off. Hyperswitch and Stripe are also modules; whether a gateway serves your business is between you and it.

Can a cash-on-delivery order be refunded?

Not through the engine. The cod method has no refund call, so the API answers 409. The money goes back however you collected it, outside GoCommerce. Gateway orders refund through their gateway, except RevenueCat’s, which are refunded in RevenueCat.

Does GoCommerce send abandoned-cart emails?

Yes, with the cart-recovery module. A basket left for a few minutes is recorded, and the store’s own sequence of reminders goes out by email, each one checked again before it is sent. When the shopper buys, the order is credited to the basket and the reminders stop.

Does it calculate tax automatically?

From your own rate table: flat rates by country, state, product category or one product, applied at checkout and recorded per line. There is no connection to a tax service yet.

Read the code behind every tile

Each file named on this page is in the GoCommerce repository, MIT licensed. Run it and check.

Chat on WhatsApp