Requirements
PHP
8.1 or higher
MySQL
5.7 or higher
cURL
PHP extension enabled
Hosting
Any shared/VPS/cloud
WooCommerce
4.0+ (for order sync)
India Post
API credentials needed
1
Download & Upload
Download the BharatDak zip file and upload all files to your hosting server using FTP or cPanel File Manager. You can install it in any folder โ root (
โฌ๏ธ Download BharatDak
public_html/) or a subfolder like public_html/dashboard/.2
Create a MySQL Database
In your cPanel, go to MySQL Databases and create a new database and user. Give the user full privileges on the database. Note down the database name, username, and password.
๐ก On shared hosting (like Hostinger, Bluehost, cPanel): the database name and user are usually prefixed with your cPanel username. Example: if your cPanel username is annaz, your database might be annaz_bharatdak.
3
Edit config.php
Open config.php in your text editor and update the database credentials and your site URL.
// Database define('DB_HOST', 'localhost'); define('DB_NAME', 'annaz_bharatdak'); โ your DB name define('DB_USER', 'annaz_dbuser'); โ your DB user define('DB_PASS', 'your_password'); โ your DB password // Your site URL (no trailing slash) define('BASE_URL', 'https://bharatdak.com/dashboard');
4
Open in Browser โ Tables Auto-Create
Visit your dashboard URL in a browser. BharatDak automatically creates all database tables on first visit. You'll see the login page.
https://bharatdak.com/dashboard/login
Default login: admin / admin โ change this immediately in Settings after first login.
5
Connect India Post API
Go to Settings โ India Post API and enter your credentials. You need 4 things from India Post:
Username โ Your India Post API username (usually mobile number) Password โ Your India Post API password Customer ID โ 10-digit customer ID (from your contract) Contract ID โ 8-digit contract ID (from your contract)
๐ Don't have API credentials? Contact your nearest India Post business center or email ccc@indiapost.gov.in to apply for business API access.
For testing, use UAT credentials:
Username: 9999999999 Password: Dop@1234
For testing, use UAT credentials:
Username: 9999999999 Password: Dop@1234
6
Connect WooCommerce
Go to Settings โ WooCommerce and enter your store URL and API credentials. In your WordPress admin, go to WooCommerce โ Settings โ Advanced โ REST API โ Add Key and create a key with Read permission.
Store URL โ https://yourstore.com (no trailing slash) Consumer Key โ ck_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Consumer Secret โ cs_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
7
Add Your Barcode Series
Go to Settings โ Barcode Series and add the barcode range assigned to you by India Post. Example: EY822600001IN to EY822699999IN. BharatDak will auto-assign the next available barcode for each shipment.
โ ๏ธ Contact your India Post relationship manager to get your barcode series. Without this, shipment booking will fail.
8
Sync Orders & Start Shipping!
Go to Orders and click Sync WooCommerce. Your orders will appear. Select them, click Bulk Book, download your labels, and hand them over to the post office. Done! ๐
๐ก Pro tip: Set your default service (Speed Post, Registered Post, etc.) in Settings so you don't have to select it every time.
Common Setup Questions
Enable PHP error reporting temporarily: add
ini_set('display_errors',1); error_reporting(E_ALL); at the top of bootstrap.php. The error message will tell you exactly what's wrong โ usually a wrong DB password or PHP version below 8.1.Make sure your DB credentials in config.php are correct and the database exists. BharatDak creates tables automatically on first page load. If you still get errors, check that your DB user has CREATE TABLE permission.
1) Make sure your WooCommerce REST API is enabled (WooCommerce โ Settings โ Advanced โ REST API). 2) Check the Consumer Key has at least Read permission. 3) Make sure your store URL doesn't have a trailing slash. 4) If on localhost, the sync won't work โ it needs a live URL.
The most common causes: 1) Wrong India Post credentials โ test connection in Settings. 2) Barcode series not added โ go to Settings โ Barcode Series. 3) Your account is still in sandbox mode โ switch to Production in Settings โ Environment. 4) The barcode range is exhausted โ add a new series.
Make sure you have the latest version of BharatDak. The label stamping feature (which adds ORDER ID, PRODUCT, MOBILE, EMAIL to the label) was added in v1.2. Re-download and replace your
includes/label-stamper.php file.Purchase a Pro license at our pricing page. You'll receive a license key via email instantly after payment. In your BharatDak dashboard, go to Plan & Billing, paste the key, and click Activate. Pro features unlock immediately.
๐ฌ
Still stuck?
We offer free setup support via email and paid custom installation + customization service.
Contact Support โ