<!doctypehtml><html lang=en xmlns=http://www.w3.org/1999/xhtml><title>
   Upay - Modernised Payments & Loyalty
  </title><meta content="text/html; charset=utf-8"http-equiv=Content-Type><meta content=no name=msapplication-tap-highlight><meta content=IE=edge http-equiv=X-UA-Compatible><meta content=NO-CACHE http-equiv=PRAGMA><meta content=-1 http-equiv=EXPIRES><meta content=gR5HFqqo1pSpok3JgFHpcCFLqfL_0ZoOGoWf_pnPM6o name=google-site-verification><meta content=width=device-width,initial-scale=1,user-scalable=no name=viewport><meta content=v4.7.3 id=metaVersion name=app-version><meta content=#{TestHandler} id=metaTestHandler name=app-test-handler><link href=manifest.webmanifest rel=manifest><link href=css/print.css media=print rel=stylesheet><link href=css/vendor.css rel=stylesheet><link href=css/chilli-full.css rel=stylesheet><meta content=0 id=metaAppMode name=app-mode><meta content=#333333 name=theme-color><meta content="Upay, Cashless, Payments, Loyalty, Mobile Payment, Smartphone Payment, Payment, Barcode Payment, Scanning Payment, Online Ordering, Smartphone Solutions, Cashless Solutions, phone payment, QR code payment, QR payments, QR Code, QR, Upay Account, Card loading, web loading, fund loading, loading, staff payment, guest top-up, payment account, Uniware, Uniware Systems, Uniware Systems Ltd., Upay, Upay.co.uk, Upay payment, Cashless Catering, Cashless Retail, electronic payment, electronic-payment, pay via your phone, pay by your phone, pay via your mobile, pay by your mobile, mobile technology, mobile transactions, smartphone transactions, open prepay solutions, prepay solutions, mobile payment method, mobile payment at PoS, mobile payment at till, mobile payment at checkout, open cashless, online payment, cashless account, cashless account management, cashless payment system, cashless payment systems, cashless payment technology, cashless payment terminal, cashless education, cashless universities, cashless university, cashless healthcare, cashless health care, cashless leisure, cashless contract catering, contract catering technology, consumer technology"name=keywords><meta content="Upay is the leading payments & loyalty application. Used worldwide across retail and hospitality sectors. Reliable, secure payments with extra incentives for customers. Online ordering, event booking, promotions, loyalty, vouchers. Full statistics on customer journey."name=description><link rel="shortcut icon"href=images/chilli/favicon.ico type=image/x-icon><script>// Click jacking
    if (top !== window) {
      top.location = window.location;
    }

    if ('serviceWorker' in navigator) {
      navigator.serviceWorker.register('scripts/sw.js');
    }

    var appDetails = {
      "1": {
        Name: "mint",
        DisplayName: "UpayMint",
        LiveUrl: "https://www.upaymint.com",
        Image: "images/mint/viewport/account_2.jpg",
        LoaderImage: "images/mint/loader_white.gif"
      },
      "0": {
        Name: "chilli",
        DisplayName: "Upay",
        LiveUrl: "https://www.upay.co.uk/app",
        Image: "images/chilli/viewport/account_2.jpg",
        GooglePlayLink: "https://play.google.com/store/apps/details?id=com.upaychilli.UpayChilli",
        AppStoreLink: "itms://itunes.apple.com/gb/app/upaychilli/id853766709?mt=8",
        LoaderImage: "images/chilli/loader.gif"
      },
      "2": {
        Name: "Sky",
        DisplayName: "Feed Me Online",
        LiveUrl: "https://sky.upay.co.uk",
        Image: "images/whitelabelling/sky/bg1.jpg",
        LoaderImage: "images/whitelabelling/sky/loader.gif"
      },
      "3": {
        Name: "uniofessex",
        DisplayName: "Essex Food",
        LiveUrl: "https://essexfood.upay.co.uk",
        Image: "images/whitelabelling/uniofessex/background.jpg",
        LoaderImage: "images/whitelabelling/uniofessex/loader.gif",
        DefaultAffiliateId: "ESSEXFOOD"
      },
      "4": {
        Name: "captainsclub",
        DisplayName: "Captain's Club",
        LiveUrl: "https://roadchefcaptainsclub.upay.co.uk",
        Image: "images/whitelabelling/captainsclub/bg.png",
        LoaderImage: "images/whitelabelling/captainsclub/loader.gif"
      },
      "5": {
        Name: "restassoc",
        DisplayName: "RA",
        LiveUrl: "https://ra-33csq.upay.co.uk",
        Image: "images/whitelabelling/restassoc/bg.jpg",
        LoaderImage: "images/whitelabelling/restassoc/loader.gif"
      },
      "6": {
        Name: "aramark",
        DisplayName: "Aramark",
        LiveUrl: "https://aramark.upay.co.uk",
        Image: "images/whitelabelling/aramark/bg2.jpg",
        LoaderImage: "images/whitelabelling/aramark/loader.gif"
      },
      "7": {
        Name: "sidebyside",
        DisplayName: "Side By Side",
        LiveUrl: "https://upay.co.uk/sidebyside",
        Image: "images/whitelabelling/sidebyside/bg.jpg",
        //DefaultAffiliateId: "SIDEBYSIDE",
        LoaderImage: "images/whitelabelling/sidebyside/loader.gif"
      }
    };

    // Loading app from query string
    function getQueryString() {
      var output = {};

      // Get query string segment
      var qs = window.location.href.split("?");

      if (qs.length < 2) return null;

      // get key value pairs
      var params = qs[1].split("&");

      for (var p in params) {

        if (params[p].split("=").length == 1) {
          output[params[p]] = null;

          continue;
        }

        var eqPos = params[p].indexOf("=");

        var key = params[p].substring(0, eqPos);
        var value = params[p].substring(eqPos + 1, params[p].length);

        output[key] = value;
      }

      return output;
    }

    // Get query string
    window.initialQueryString = getQueryString() || {};

    // Gulp build app mode
    var appMode = '';

    function overrideAppMode(mode) {
      window.appModeOverride = parseInt(mode);
      appMode = (appDetails[window.appModeOverride] || {}).Name;
    }

    // App mode from localStorage
    var lastAppMode = localStorage["lastAppMode"];
    if (lastAppMode) {
      overrideAppMode(lastAppMode);
    }

    // App mode from URL
    var url = window.location.href;
    for (var i in appDetails) {
      if (url.indexOf(appDetails[i].LiveUrl) === 0) {
        overrideAppMode(i);
      }
    }

    // App mode from query string
    var queryStringAppModeOverride = window.initialQueryString["appMode"];
    if (queryStringAppModeOverride) {
      overrideAppMode(queryStringAppModeOverride);
    }

    var metaAppMode = document.getElementById("metaAppMode").getAttribute("content");
    var metaVersion = document.getElementById("metaVersion").getAttribute("content");
    var metaTestHandler = document.getElementById("metaTestHandler").getAttribute("content");

    var APP = parseInt(typeof (window.appModeOverride) === "undefined" ? metaAppMode : window.appModeOverride);
    var APP_TEST_HANDLER = metaTestHandler;
    var TEST_MODE = typeof (APP_TEST_HANDLER) === "string" && APP_TEST_HANDLER.indexOf("http") === 0;

    function getServiceVersion() {
      return metaVersion !== "#" + "{Version}" // Concat so no replacement
        ? metaVersion
        : "v4.7.3";
    }

    //#region Platforms

    var Platforms = {
      Windows: 1,
      WindowsMobile: 2,
      Android: 3,
      iOS: 4,
      Blackberry: 5,
      Other: 6,
      iPad: 7,
      IsMobile: function (platform) {
        platform = platform === undefined ? Platforms.Current() : platform;

        return ((platform === Platforms.WindowsMobile || platform === Platforms.iPad || platform === Platforms.Android || platform === Platforms.iOS || platform === Platforms.Blackberry) || !(window.location.href.indexOf("?m") === -1) || !(window.location.href.indexOf("?t") === -1));
      },
      IsMobileStyle: function (platform) {
        platform = platform === undefined ? Platforms.Current() : platform;

        if ((platform === Platforms.WindowsMobile || platform === Platforms.Android || platform === Platforms.iOS || platform === Platforms.Blackberry) || !(window.location.href.indexOf("?m") === -1))
          return !Platforms.IsTablet();

        return false;
      },
      IsTablet: function (platform) {
        platform = platform === undefined ? Platforms.Current() : platform;

        if (platform === Platforms.Android && window.navigator.userAgent.toLowerCase().indexOf("mobile") === -1)
          return true;

        return platform === Platforms.iPad || !(window.location.href.indexOf("?t") === -1);
      },
      IsFirefox: function () {

        return window.navigator.userAgent.toLowerCase().indexOf("firefox") > -1;
      },
      IsIE: function () {
        return window.navigator.userAgent.indexOf("MSIE ") > -1;
      },
      IsApple: function () {
        var c = Platforms.Current();
        return c === Platforms.iOS || c === Platforms.iPad;
      },
      IsAndroid: function () {
        var c = Platforms.Current();
        return c === Platforms.Android;
      },
      Current: function () {

        var iosreg = /OS ((\\d+_?){2,3})\s/.exec(window.navigator.userAgent);
        var ver = 0;
        if (iosreg && iosreg[1]) {
          ver = parseFloat(iosreg[1].replace("_", ".").replace("_", ""));
        }

        if (!(window.location.href.indexOf("?m") === -1)) return Platforms.iOS;

        if (navigator.userAgent.match(/Android/i) || navigator.userAgent.match(/BB10/i))
          return Platforms.Android;
        if (navigator.userAgent.match(/iPad/i)) {
          if (ver >= 6) return Platforms.iPad;
          else return Platforms.iOS;
        }
        if (navigator.userAgent.match(/BlackBerry/i))
          return Platforms.Blackberry;
        if (navigator.userAgent.match(/iPhone|iPod/i))
          return Platforms.iOS;
        if (navigator.userAgent.match(/IEMobile|Lumia/i))
          return Platforms.WindowsMobile;
        if (navigator.userAgent.match(/Windows/i))
          return Platforms.Windows;
        return Platforms.Other;
      },
      IsCordova: function () {
        return (!!window.cordova);
      },
      GetEnvironmentData: function () {

        var parser = new UAParser(window.navigator.userAgent);

        var browser = parser.getBrowser();
        var os = parser.getOS();
        var device = parser.getDevice();

        var deviceStr = (device.vendor || "") + (device.model || "") || "Unknown Device";

        return browser.name + " " + browser.version + ", " + os.name + " " + os.version + ", " + deviceStr;
      }
    };

    var _IsMob = null;

    function IsMob() {

      if (_IsMob === null)
        _IsMob = Platforms.IsMobileStyle();

      return _IsMob;
    }

    //#endregion

    //#region CSS

    function getCssUrl(cssName, file, min) {
      if (min === undefined) min = true;
      return APP < 5// && APP !== 2
        ? 'css/' + (appDetails[APP] || appDetails[0]).Name + '-' + cssName + (min ? '.min' : '') + '.css'
        : (Platforms.IsCordova() ? "https://upay.co.uk/app/" : "") + getServiceVersion() + '/' + file + '.wless?appMode=' + APP;
    }
    if (APP !== 0 && APP < 5)
      document.write('<link id="mainStyles" rel="stylesheet" href="' + getCssUrl("full", "site", false) + '" type="text/css" />');

    if (IsMob()) {
      document.write('<link id="mobStyles" rel="stylesheet" href="' + getCssUrl("mob", "mobile") + '" type="text/css" />');
    } else if (Platforms.IsTablet()) {
      document.write('<link id="tabletStyles" rel="stylesheet" href="' + getCssUrl("tablet", "tablet") + '" type="text/css" />');
    }

    document.write('<link id="themeStyles" rel="stylesheet" href="' + getCssUrl("theme", "theme") + '" type="text/css" />');

    if (Platforms.IsCordova()) {
      document.write('<link href="css/app.css" rel="stylesheet" type="text/css" />');
    }

    //#endregion

    // Id based on whether we're at upay.co.uk or upaychilli.com
    var isUpay = window.location.href.indexOf("upay.co.uk") >= 0;
    var isUpayChilli = window.location.href.indexOf("upaychilli.com") >= 0;
    var id = isUpay ? "UA-114244871-1" : isUpayChilli ? "UA-114244871-2" : null;

    if (id) {
      var script1 = '<script async src="https://www.googletagmanager.com/gtag/js?id=' + id + '"></sc' + 'ript>'; // Odd concat because VS highlighting issue
      var script2 = '<script>window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);}gtag("js", new Date());gtag("config", "' + id + '");</sc' + 'ript>';
      document.write(script1);
      document.write(script2);
    }

    /**/</script><style id=styleFeatures></style><style id=styleInjections></style><style id=styleViewportAdjust></style><body><div style="display: none;"><h1>Upay - A cashless account management and web loading initiative</h1><p>Upay is a Uniware initiative, designed for smart loading of your cashless account, Uniware Hospitality & Retail EPoS, Stock Control & Cashless Payment Solutions, Dining Purse, Smart Card & Kiosk Solutions<div style="display: none;"><a href=sitemap.html> Upay Site Map </a><a href=seo/?action=register#!register> Register for Upay </a><a href=seo/?action=forgotten#!forgotten> Recover Upay Password </a><a href=seo/?action=contact#!contact> Contact Us about your Upay cashless account </a><a href=seo/?action=guestpay#!guestpay> Top up someone else's Upay cashless account as a guest </a></div></div><div id=divApplication><div id=divMouseInterceptor onclick=catchOpenMenuClick();></div><div class=bg-view id=divViewPortContainer><div class="header-wrap bg-header text-over-header"><div class="logo-header-outer bg-white"><div class="container logo-header clear-children"><div id=divLogoImage></div><div style="display: none;"class=clear-children id=divChilliHeaderMenu><div class=header-icon id=divChilliHeaderMenuToggle onclick=Menu.ToggleTopMenu(); title=Menu></div><div data-intro="This is the menu!"class=header-icon data-step=1 id=divChilliHeaderMenuToggleMobile onclick=SideDrawer.Toggle('mainMenu'); title=Menu></div><div class=header-icon id=divChilliHeaderMenuHome onclick=FormFactory.Build('Menu'); title=Home></div><div class=header-icon data-intro=Notifications! data-step=2 id=divChilliHeaderMenuNotifications onclick=Notifications.GetNotificationsForScreen();><div class=bg-secondary id=notificationCount style=display:none;></div></div><div class="header-icon tablet-only mobile-only"data-feature=BarcodePayment id=divChilliHeaderMenuPayNow onclick=Barcode.ShowPaymentBarcode();></div></div><div id=divOffline>Server unavailable</div></div></div><div class="header-text container"><h1>Welcome</h1></div><div class=welcome-text></div></div><div id=divViewPort><div class=container id=divForm></div></div><div class=bg-header id=divChilliMenu style=display:none;><div class="menu-inner container"><div class=menu-inner-margin><div onclick="Menu.FeatureClick(event, FormFactory.Build, 'Menu');"class=menu-tile id=divChilliMenuAccountOverview><span> Account Overview </span></div><div onclick="Menu.FeatureClick(event, FormFactory.Build, 'ChilliAccountMenu');"class=menu-tile id=divChilliMenuMyAccount><span> My Account </span></div><div onclick="Menu.FeatureClick(event, TopUp.Begin);"class=menu-tile data-feature=TopUpNow id=divChilliMenuTopUp><span> Top-Up </span></div><div onclick="Menu.FeatureClick(event, FormFactory.Build, 'Statement');"class=menu-tile data-feature=Statement id=divChilliMenuStatements><span> Statement </span></div><div onclick="Menu.FeatureClick(event, FormFactory.Build, 'OtherPayments');"class=menu-tile data-feature=Payments id=divChilliMenuPayments><span> Payments </span></div><div onclick="Menu.FeatureClick(event, FunctionBooking.FunctionList.Load);"class=menu-tile data-feature=Bookings id=divChilliMenuBookings><span> Bookings </span></div><div onclick="Menu.FeatureClick(event, Shop.LoadLastScreen);"class=menu-tile data-feature=Shop id=divChilliMenuShop><span> Order </span></div><div class=menu-tile id=divChilliMenuLogout onclick=Authentication.LogOut();><span> Logout </span></div><div class=clearfix></div></div></div></div><div class=clearfix></div></div><div class="fullscreen-control mobileOnly"style="display: none;"><div class=top-bar><div id=btnCloseFSC onclick=FullscreenControl.Close()>CLOSE</div></div><div id=divFullscreenControl></div></div><div id=divPrintMessage></div><div class=bg-footer id=divViewFooter><div id=btnFooterDetails onclick=toggleMobileFooter();>Info, Feedback & Help</div><div class=footer-wrap id=footerWrap><div style="cursor: default; background-image: none;"><span style="font-family: Arial, sans-serif;"> © </span> Uniware Systems LTD</div><span class=footer-divide> | </span><div onclick="footerLink(); TermsAndConditions.ShowPopup(false);">Terms & Conditions</div><span class=footer-divide> | </span><div class=upay-only onclick=footerLink(PrivacyPolicy.ShowPopup);>Privacy policy</div><span class="footer-divide upay-only"> | </span><div onclick="footerLink(function () { OpenNewWindow(paths.AntiSlavery(), Platforms.IsCordova()); });">Anti Slavery Policy</div><span class=footer-divide> | </span><div class=upay-only id=lnkPciSecurity>PCI Security</div><span class=footer-divide> | </span><div onclick=footerLink(FCA.ShowPopup);>FCA</div><span class="footer-divide upay-only"> | </span><div onclick="footerLink(function () { FormFactory.Build('ContactUs'); });">FAQ / Contact Us</div><span class=footer-divide> | </span><div onclick=footerLink(Logging.Display);>App log</div><span class=footer-divide> | </span><div onclick=footerLink(ReleaseNotes.ShowPopup);><script>document.write(getServiceVersion())</script></div></div></div><div style="display: none;"id=divTutorial><div class=view id=divTutorialView></div></div><div class="loading-screen splash-screen view-only"style="display: none;"id=divLoadScreen><div class=splash-logo-wrap><div class=splash-logo></div></div></div><div class=splash-screen id=divSplashScreen><div id=splashOverlay></div><div class=splash-logo-wrap><div class=splash-logo></div></div></div></div><script src=scripts/vendor.js></script><script src=scripts/bundle.js?v=v4.7.3></script>