Developers





  • Integration Overview
    • Integration Overview
  • API
    • About
    • API Setup
    • API Device
  • Authentication
    • Basic
  • Webhooks
    • Webhooks
  • Build an App
    • Introduction
    • Till and BO Apps
    • Dashboard Widgets
    • App Settings
    • Javascript Library
  • App Store
    • Introduction
    • Sign Up
    • Build
    • Submit
    • Approval
    • Launch
Developers
  • Home
  • Setup
  • Documentation
    • V2
    • V4
  • Examples
  • Support
  • Search

Till and Back Office Embedded Apps

Till and Back Office are embedded in our system. They can provide users with the new functionality or add alternative options to the already existing features within our system.

Using the Eposnow JS API Library

The Eposnow JS API is a library for use with our API. It is designed to increase the speed and ease of creating custom applications, plugins and integrations - to improve your business, or to offer to others on the Eposnow App Store. Detailed documenation on how to use EposNowJSLibrary can be found here.

Accessing till data

When you are developing an App that will be embedded in the Till or BackOffice, our platform can provide you with some useful data such as:
For Till applications: DeviceID , LocationID, StaffID For the BackOffice applications: DeviceID, LocationID, Username. All of these details can be accessed by using our Eposnow JS Api Library, examples below.


                    var deviceId = EposnowAPI.getDeviceID();

                    var locationId = EposnowAPI.getLocationID();

                    var staffId = EposnowAPI.getStaffID();

                    var customerId = EposnowAPI.getCustomerID();

                    var transactionTotalValue = EposnowAPI.getTransactionTotalValue();

                    var transactionRemainingBalance = EposnowAPI.getTransactionRemainingBalance();

                    var currentTransactionProducsIds = EposnowAPI.getTransactionProducts();
            

Passing Data to the till

JavaScript apps embedded in the Till allow you to send TillData objects to the Till. If your app allows users to select existing products, or to add new miscellaneous products, you can automaticaly add those product to a new Transaction on the Till.
To add existing products or new muscellaneous products to the new Transaction, see the example below:

                    
                      // required for the data to be send to the Till
                      window.onmessage = function (event) {
                         event.source.postMessage(JSON.stringify(tillData), event.origin);
                      };

                     //Add function to initialize TillData object.
                        var tillData = new EposnowAPI.TillData();

                     //Add new Product to the current transaction
                        var productId = 1;
                        var product = EposnowAPI.Products.get(productId);
                        tillData.Products.push(product);
                     
                     //Add Miscellaneous product to the current transaction
                        var miscProductName = "Name";
                        var miscProductAmount = 1.99;
                        var taxRateId = 1234;
                        var miscProduct = new EposnowAPI.MiscItem(miscProductName, miscProductAmount, taxRateId);
                        tillData.MiscItems.push(miscProduct);

                     //Add Tender to the current transaction
                        var tenderTypeId = 123;
                        var tenderAmount = 1.99;
                        var change = 0;
                        var tender = new EposnowAPI.Tender(null,tenderTypeId,tenderAmount,change,null,null);
                        tillData.Tenders.push(tender);

                     //Add TransactionDetail to the current transaction
                        var name = "DeliveryCode";
                        var value = "ABC123";
                        var transactionDetail = new EposnowAPI.TransactionDetail(name, value);
                        tillData.TransactionDetails.push(transactionDetail);

                    //Add Discount to the current transaction by adding an amount
                        tillData.Discount = {
                            reasonId: 1,
                            amount: 10,
                        };

                    //or you can add Discount to the current transaction by adding a percetage
                        tillData.Discount = {
                            reasonId: 1,
                            percentage: 10,
                        };
            


EposNow
About Us
Contact Us
Documentation
API V2
API V4
Example Apps
Specials Board






© 2025 - Epos Now Ltd, Developers