Skip to main content
This guide walks you through the complete setup process, from launching shopMaster to your first successful sync.

Before you begin

Make sure you have:
  • shopMaster installed on your Windows machine
  • Your SQL Server connection details (server name, database name, authentication method)
  • Your Digible account credentials (email and password)
  • The name of your product table in SQL Server
Your product table should have columns for ProductID, ProductName, SellPrice, QrCode, and Status to work with shopMaster.

Step 1: Launch shopMaster

1

Open the application

Double-click digiblesync.exe (or run python main.py if running from source).The shopMaster window will open with two tabs: Home and Settings.
2

Navigate to Settings

Click the Settings button in the left sidebar to access the configuration page.

Step 2: Configure Digible credentials

Connect shopMaster to your Digible cloud account.
1

Enter your Digible email

In the Digible Email field, enter the email address associated with your Digible business account.
2

Enter your Digible password

In the Digible Password field, enter your Digible account password.
Your password is stored locally in an .env file and is only used to authenticate with Digible’s API at api.digible.one/v1/business/account/auth/login.

Step 3: Configure SQL Server connection

Set up the connection to your local SQL Server database.
1

Enter server name

In the Server Name field, enter your SQL Server instance name. Examples:
  • localhost for a local instance
  • localhost\SQLEXPRESS for SQL Server Express
  • 192.168.1.100 for a network server
2

Enter database name

In the Database Name field, enter the name of the database containing your product table.
3

Enter product table name

In the Local Table Name field, enter the exact name of your product table (e.g., Products, Inventory, Items).
4

Choose authentication method

From the Security dropdown, select your authentication method:
  • Windows Authentication - Use your Windows credentials (recommended for local servers)
  • Password - Use SQL Server authentication
If you select Password, two additional fields will appear:
  • Username - Your SQL Server username
  • Password - Your SQL Server password

Step 4: Test connections

Verify that shopMaster can connect to both your database and Digible.
1

Click Test Connection

Click the Test Connection button at the bottom of the Settings page.
2

Review the results

A dialog box will appear showing the connection status for both:
  • Local db - Your SQL Server connection
  • Digible login - Your Digible API authentication
Both should show success messages. If either fails, review your credentials and try again.
If the local database connection fails, verify that:
  • SQL Server is running
  • ODBC Driver 17 for SQL Server is installed
  • Your firewall allows SQL Server connections
  • Your authentication credentials are correct

Step 5: Configure database triggers

shopMaster uses database triggers to track changes automatically.
1

Click Configure

After successful connection tests, click the Configure button.
2

Wait for configuration

shopMaster will:
  • Create a ChangeLog table in your database (if it doesn’t exist)
  • Create three triggers on your product table:
    • trgAfterInsert - Tracks new products (see app/helper.py:57)
    • trgAfterUpdate - Tracks product updates (see app/helper.py:74)
    • trgAfterDelete - Tracks deleted products (see app/helper.py:92)
  • Save your configuration to a .env file
You’ll see a “Configuration Successful” message when complete.
The ChangeLog table stores changes temporarily before syncing them to Digible. After each successful sync, the log is automatically cleared.

Step 6: Upload existing products (optional)

If you have existing products in your database, upload them to Digible before starting automatic sync.
1

Click Upload Products

In the Settings page, click the Upload Products button.
2

Wait for upload

shopMaster will:
  • Fetch all products from your product table
  • Send them to Digible in batches of 200 products
  • Display a success message when complete
This may take a few minutes depending on the size of your catalog.
The batch size is set to 200 products per request in app/helper.py:141. This ensures efficient uploads without overwhelming the API.

Step 7: Start automatic sync

Enable automatic synchronization to keep your databases in sync.
1

Go to Home

Click the Home button in the left sidebar to return to the main page.
2

Start the sync task

Click the Start Sync task button.shopMaster will:
  • Perform an immediate sync
  • Schedule automatic syncs every 2 minutes
  • Display the last sync time and status
3

Verify sync is running

You should see:
  • “Last Sync” timestamp updated
  • “Sync task scheduled to run every 2 minutes” in green text

Step 8: Test the sync

Verify that changes to your database are being synced to Digible.
1

Make a change in SQL Server

Update a product in your SQL Server database:
UPDATE Products
SET SellPrice = 29.99
WHERE ProductID = 'PROD001';
2

Wait for sync

Wait up to 2 minutes for the next scheduled sync, or click Sync now for an immediate sync.
3

Check Digible

Log into your Digible business account and verify that the product price was updated in the cloud.
During sync, shopMaster:
  • Reads all changes from the ChangeLog table (see app/helper.py:291)
  • Sends INSERT operations to /v1/business/stores/product/sync
  • Sends UPDATE operations to /v1/business/stores/product/external/update
  • Clears the ChangeLog after successful sync (see app/helper.py:334)

Using manual sync

You can trigger a sync anytime without waiting for the scheduled interval:
  • Click Sync now on the Home page
  • The sync will execute immediately and update the “Last Sync” timestamp
  • Any pending changes in the ChangeLog will be sent to Digible

Stopping the sync

To temporarily stop automatic synchronization:
  • Click Stop Sync task on the Home page
  • Scheduled syncs will be cancelled
  • You can still use Sync now for manual syncs
  • Click Start Sync task again to resume automatic syncs

Troubleshooting

If you see “User session expired, please reconfigure”:
  1. Go to Settings
  2. Re-enter your Digible password
  3. Click Configure to get a fresh access token
shopMaster uses JWT tokens that expire after a period. Reconfiguring will generate a new token.
If sync fails with connection errors:
  • Verify your internet connection (shopMaster checks connectivity via app/check_connection.py:3)
  • Check if Digible’s API at api.digible.one is accessible
  • Ensure your firewall allows outbound HTTPS connections
If changes aren’t appearing in Digible:
  • Verify the triggers are installed: Check for trgAfterInsert, trgAfterUpdate, and trgAfterDelete in SQL Server
  • Check the ChangeLog table: SELECT * FROM ChangeLog should show recent changes
  • Review the application output for error messages

Next steps

Now that you have shopMaster up and running:

Configuration guide

Learn about advanced configuration options and customization

API reference

Explore the internal functions used by shopMaster

Build docs developers (and LLMs) love