Open Hours (Time Based)
$19.00

Your Store Has Hours Now. Orders Outside Them Don't Happen.

It's 2 a.m. and your website just took an order your kitchen has no way to cook. Opening Hours puts a real, enforced schedule on your Joomla ecommerce store — not a note in the product description, an actual gate at checkout.

Everything You Need. Nothing You Don't.

Eight focused features. One job: make sure your Joomla ecommerce store only takes orders when you can actually fulfill them.

Per-Day Schedule

Monday through Sunday — each day gets its own open and close time. Tuesday 8:00–10:00. Saturday 9:00–13:00. Sunday completely closed. Your real schedule, not some approximation of it.

Blocks at the Shipping Step

The moment a customer types a postcode into the shipping estimate, the closed message shows up. They find out before they've committed to anything — not after they've already reached for their wallet.

Blocks at Checkout Entry

A second checkpoint stops the cart from ever entering checkout while you're closed, with a clear warning and a redirect back to the cart. No confusing dead ends — just a straight answer.

Hard Stop at Final Validation

A third, last-resort checkpoint catches anything unusual right before an order would be finalized. Three doors, all locked. Nothing slips through on a technicality.

Closed Message With Your Real Hours

Write exactly what customers see, and let your actual from/to times fill in automatically. "Sorry, try later" loses a sale. "We're open again at 9:00" keeps one.

Your Timezone, Already Configured

The plugin reads the timezone from your Joomla Global Configuration — the same one your entire site already runs on. No separate setting to forget. Your clock, your rules.

Leave a Day Blank, Stay Open All Day

Skip a day's fields and that day runs 24 hours, no restrictions. Online-only days, holiday exceptions, weekend quirks — your schedule bends to your actual business, not the other way around.

Debug Logging Toggle

One switch. When it's on, every blocked order writes a plain log entry: what time, what day, which window triggered the block. Flip it on to find the truth. Flip it off when you don't need the noise.

The Door Is Closed. Orders Cannot Open It.

Most "store hours" ideas amount to a banner nobody reads. Opening Hours blocks the actual checkout mechanics — three separate times. When you're closed, the shipping estimate step returns your closed message instead of rates. If a customer pushes into checkout anyway, they're stopped with a warning and sent back to the cart. And if anything unusual still tries to sneak through, a final check at order validation shuts the door for good. Three locks. No path through.

  • Shipping estimate: blocked, message shown before commitment
  • Checkout entry: blocked with a warning and a redirect
  • Final order validation: last-resort hard stop, no exceptions

Your Week Isn't Symmetrical. Your Schedule Shouldn't Be Either.

Saturday ends at noon because your prep team goes home. Tuesday closes early because the kitchen locks the production list. Sunday is dark. Monday's back to normal. Opening Hours lets every single day run its own opening and closing time — independently, with zero assumptions about what "business hours" means for your specific operation. Seven days, seven rules. Yours to set, five minutes in your Joomla admin.

  • Every day of the week configured independently
  • Leave a day blank to close it entirely
  • Change the schedule any time — takes effect immediately

Real Stores. Real Problems. Solved.

A neighborhood restaurant's kitchen closes at 10 p.m. Before Opening Hours, the website happily took orders at midnight — the customer paid, waited, and eventually called a kitchen that had been dark for two hours. Now that same midnight visitor gets a clear message telling them exactly when the kitchen reopens. No angry call. No refund. No scramble.

Same-day bread has a hard cutoff — once the last batch is in the oven, that's it for the day. Orders placed after the cutoff used to get filled the next morning with zero warning, leaving customers confused about a "fresh loaf" that showed up a day late. Now the storefront closes for new orders at the exact cutoff, telling the customer plainly: come back tomorrow, or order for tomorrow instead.

A florist takes same-day delivery orders until the van pulls out at 2 p.m. Every order placed after that used to become an apologetic phone call and a next-day delivery nobody asked for — bad news for a birthday bouquet timed to the day. Now the storefront simply stops accepting same-day promises the moment the cutoff hits, and tells the customer their flowers go out with tomorrow's run instead.

A specialty butcher only fulfills local delivery orders Thursday through Saturday — the rest of the week is prep and sourcing. Every Sunday-through- Wednesday order used to sit untouched until someone remembered to deal with it, usually with an apology attached. Now those days are simply closed for ordering, spelled out clearly, so customers plan around a real delivery window instead of discovering it after the fact.

Set Your Hours. Stop the Midnight Surprises.

One schedule. Three locked doors. Every order that lands in your Joomla ecommerce store from here on out arrives when you can actually do something about it. Your Saturday morning will thank you.

Translated In The Following Languages

Arabic Unitag (ar-AA), Chinese, Traditional (zh-TW), Danish (da-DK), Dutch (nl-NL), English (en-GB), English, USA (en-US), Finnish (fi-FI), French (fr-FR), German (de-DE), Greek (el-GR), Hebrew (he-IL), Italian (it-IT), Japanese (ja-JP), Norwegian Bokmål (nb-NO), Persian Farsi (fa-IR), Polish (pl-PL), Portuguese, Brazil (pt-BR), Portuguese, Portugal (pt-PT), Russian (ru-RU), Spanish (es-ES), Swedish (sv-SE), Turkish (tr-TR)


  • Developer J2Commerce
  • Extension Type Apps
  • J2Commerce Version 4.x, 6.x
  • Joomla Version 4.x, 5.x, 6.x
Language Translations
Arabic UnitagArabic Unitag
Chinese, TraditionalChinese, Traditional
DanishDanish
DutchDutch
EnglishEnglish
English, USAEnglish, USA
FinnishFinnish
FrenchFrench
GermanGerman
GreekGreek
HebrewHebrew
ItalianItalian
JapaneseJapanese
Norwegian BokmålNorwegian Bokmål
Persian FarsiPersian Farsi
PolishPolish
Portuguese, BrazilPortuguese, Brazil
Portuguese, PortugalPortuguese, Portugal
RussianRussian
SpanishSpanish
SwedishSwedish
TurkishTurkish

New Feature Weekly opening hours with per-day from/to windows in the site timezone

New Feature Block ordering outside store hours at three checkout checkpoints

New Feature Show a configurable closed-store message with the day's actual hours

New Feature Leave a day blank to accept orders around the clock that day

New Feature Add translations for 19 additional languages (21 locales total)

New Feature Native per-weekday time picker in the plugin settings

New Feature Optional debug logging to a dedicated plugin log file

Update Requires Joomla 6.x and J2Commerce 6.x

Update J2Commerce/J2Store v4 and Joomla 4/5 plugin support

Day-Specific Time Configuration

Configure unique opening and closing times for each day of the week. Monday through Sunday each get independent time windows, perfect for businesses with varying schedules. The intuitive admin interface displays all seven days in a clean table format with separate "From Time" and "To Time" fields for precise control.

Day-Specific Time Configuration
Customizable Error Messages

Customizable Error Messages

Complete control over customer-facing error messages with dynamic time insertion. Use language strings for multi-language stores or write custom text. The system automatically inserts the configured "from" and "to" times using sprintf formatting (%s placeholders).

Stay Updated

Subscribe for free and be the first to know about the latest features, updates, and new additions.