Shahria Emon
W-04Article · 6 min read

How to Sell an Online Course in Bangladesh Without a Costly Website or Monthly Fees

Shahria EmonAI, trading & Web3 engineer · COO, Core Devs LtdPublished

If you teach in Bangladesh and want to sell an online course, you don't need a big platform, a login system or a monthly subscription. You need a fast page, a simple order form, a way to take bKash or cash on delivery, and a safe way to share your videos.

That is exactly what I built for Biology Aid, a biology teacher's store for admission students. The whole page is 23.5 KB, it loads in about 0.09 seconds, orders land in a Google Sheet he already used, and it has been taking real orders since August 2026. Here is how it works, and how to decide if the same setup fits you.

Watch the reel

The brief, the buyer's path on a phone, the order pipeline into the sheet, and speed measured on the live site.

Biology Aid

Product reel built from the real store and its order pipeline, with a sample order. 32 seconds, no sound.

What do you need to sell an online course in Bangladesh?

You need four things: a page that loads fast on mobile data, an order form, a payment method your students actually use (usually bKash, Nagad or cash on delivery), and a way to give each buyer access to the videos without anyone else getting them. Everything beyond that is optional.

Many teachers start by asking for a full learning platform with accounts, dashboards and progress tracking. For a recorded course and a book, most of that is cost without benefit.

The brief: three products, one page, a phone in every hand

Al Mahi Rahman teaches biology to students preparing for university admission exams. He sells a printed 100-page book, a 20-class recorded course, and a bundle of both.

His students arrive from a Facebook ad or a WhatsApp link, on mobile data, and decide within seconds. His whole toolkit was a Google Sheet and Google Drive. So the store had to be fast on a weak connection, and simple enough that he could run it himself.

Biology Aid store on a phone: the book cover, a Bangla headline and the order button
The first screen students see on their phone.

The best login was no login

The first plan had a full member area: accounts, password reset, a database and an email service. I cut all of it before writing any code.

Here is why. Many course sellers put videos behind a login but host them as unlisted YouTube links. Anyone with an unlisted link can watch it, download it and share it, and you can't take access back from one person. The login protects the page, not the video.

Google Drive works differently. Sharing is per email address. The student has to be signed into that exact Google account to watch, and the owner can remove access for one person without touching anyone else. Nothing to build, nothing to host, no monthly cost. That is also why the order form asks for a Gmail address, and gently warns when one doesn't look right.

The owner ended up with more control than a login system would have given him, not less.

Taking orders when payment happens on the phone

In Bangladesh, most course payments still happen by phone, through bKash, Nagad or cash on delivery. So the site takes no money at all.

Biology Aid order form on a phone with product cards showing all-in prices
The order form: one all-in price per option, no payment step.

A student leaves a name, phone number and Gmail address. The order goes into the owner's Google Sheet, he calls to confirm payment, ships the book, and shares the course on Drive. Each order gets an ID like AMR-261024-K7Q2, stamped in Dhaka time, so the owner and the student can refer to the same order on a call.

Order confirmation screen on a phone showing a readable order number, from a sample order
The confirmation with a readable order ID. Sample order, not sent.

A few details make this reliable:

  • Phone numbers the way people type them. +880, 880 and 00880 all convert to the local 11-digit format, so a real number is never rejected.
  • Prices decided on the server. If someone tampers with the price in the browser, it is ignored.
  • Spam filtered without losing buyers. A suspiciously fast submission is saved and flagged, not deleted, because phone autofill makes real students fast too.

Running it takes almost no effort. When a new order comes in, the owner gets an email. He opens the sheet, where every detail is already filled in, calls the student to confirm, and ships. No dashboard to learn, no admin panel to log into.

Build for mobile data, not office Wi-Fi

For a student on a weak connection, the first impression is the load time. So speed was written into the plan as hard rules:

  • The page needs one request before anything appears.
  • No web fonts. Phone system fonts already show Bangla properly, and cost nothing.
  • No heavy framework. Hand-written HTML, CSS and a small amount of JavaScript.
  • Everything below the screen waits. The video player doesn't load until it's tapped.

The result is 23.5 KB for the whole page, served from Cloudflare's network in about 0.09 seconds. Reading from the sheet directly took 3.4 seconds, so those reads go through a cache too.

Facebook ads tracking that can't break an order

If you sell through Facebook ads, you need the Meta pixel to measure them. But the pixel is about 100 KB, and an ad blocker or a Facebook outage can break pages that depend on it.

On Biology Aid, the pixel loads only after the page is ready or when the student first scrolls or taps, and nothing it does can stop an order. The server also reports each order to Meta through the Conversions API after it is saved, with the order ID attached, so Meta counts one sale, not two. The client confirmed this in Facebook Events Manager.

What real buyers taught us

Three fixes came from real buyers after launch:

  1. Prices that didn't add up in a student's head. The book showed 250 taka, then a delivery choice added 60 or 110, and buyers got confused. Now each option shows one all-in price: 310 inside Dhaka, 360 outside.
  2. Free delivery is still delivery. When the owner made bundle delivery free, the easy change would have stopped asking bundle buyers for an address, and their books would never ship. The code keeps "this ships" and "this is charged" as separate things.
  3. A real order shown as failed. A buyer using WhatsApp's in-app browser saw an error while their order was already saved, because Google's script ran past its 10 second limit. Now a slow save retries once with the same order ID, and the duplicate check turns it into a confirmation instead of a second order.

Is this setup right for you?

It fits if you sell a few products, take payment by phone, and want to manage orders yourself in a sheet. That covers most teachers, coaching centres and creators selling a book or a recorded course.

You will want more than this if you need quizzes, progress tracking, certificates, live classes, or automatic online payment for thousands of students. Then a proper learning platform or a payment gateway makes sense, and the cost is justified.

Want a store like this?

If you sell a course, a book or both, message me on WhatsApp. Tell me what you sell and how your students pay, and I'll tell you honestly what you need and what you can skip. The full Biology Aid case study shows the live store and the order pipeline.

Let's talk

Want a second opinion on your build?

Tell me what you're building, your timeline, and a rough budget, and I'll tell you honestly if I can help.

Thanks, your message is on its way. I'll reply within a day.
Shahria EmonCOO, Core Devs Ltd
WhatsAppFastest reply
Prefer email?
[email protected]
  • A reply within a day, from Dhaka (GMT+6)
  • An honest yes or no on whether I can help
  • 5/5 on Upwork with the Core Devs team
Next article
W-05
Website Cost in Bangladesh: What You Actually Get at Each Price
5 min read