112.199.237.7 Open in urlscan Pro
112.199.237.7  Public Scan

URL: http://112.199.237.7:82/
Submission: On August 23 via manual from SG — Scanned from SG

Form analysis 1 forms found in the DOM

POST ./

<form method="post" action="./" id="frmMaster" autocomplete="off" class="bg">
  <div class="aspNetHidden">
    <input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="">
    <input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="">
    <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE"
      value="/wEPDwUJNDU5OTUzMjI2D2QWAmYPZBYCAgMPZBYEAgMPZBYIAgIPZBYCAgEPDxYEHg1BbHRlcm5hdGVUZXh0BbABMzQwMDY3MDAzNzAwNzMwMDYzMDA1NTAwNjQwMDQ0MDA1OTAwNEUwMDRBMDA3NTAwNzMwMDRBMDAyRjAwNzAwMDRCMDA0NDAwNjEwMDU1MDA1NzAwNzIwMDU3MDAyQjAwNTMwMDMzMDAyRjAwNDcwMDRGMDA3ODAwNzcwMDZCMDA1MjAwNEEwMDc5MDA1ODAwNTUwMDZBMDA2QTAwNjMwMDdBMDAzNjAwNzcwMDNEMDAeCEltYWdlVXJsBRx+L2NhcHRjaGEvQ0ltYWdlLmFzcHg/dj0yMDM0ZGQCBw9kFgICAQ8PFgQfAAWwATM0MDA2NzAwMzcwMDczMDA2MzAwNTUwMDY0MDA0NDAwNTkwMDRFMDA0QTAwNzUwMDczMDA0QTAwMkYwMDcwMDA0QjAwNDQwMDYxMDA1NTAwNTcwMDcyMDA1NzAwMkIwMDUzMDAzMzAwMkYwMDQ3MDA0RjAwNzgwMDc3MDA2QjAwNTIwMDRBMDA3OTAwNTgwMDU1MDA2QTAwNkEwMDYzMDA3QTAwMzYwMDc3MDAzRDAwHwEFHX4vY2FwdGNoYS9DSW1hZ2UuYXNweD92PTY2MTUzZGQCCQ9kFgICAQ8PFgQfAAWwATc5MDA2NTAwNDIwMDZDMDA1NTAwNDUwMDc1MDA2QjAwNTMwMDQyMDA2QjAwMzcwMDM0MDA3NTAwNEMwMDY2MDA2MTAwMkIwMDYzMDA1QTAwNDEwMDZDMDA0NDAwMzcwMDRFMDA0RTAwNkIwMDMzMDA2ODAwNkEwMDc5MDAyQjAwNTgwMDJGMDAzODAwNEUwMDM1MDA3NjAwNkMwMDQ2MDA0MTAwNjkwMDU5MDAzRDAwHwEFHX4vY2FwdGNoYS9DSW1hZ2UuYXNweD92PTgyNTE1ZGQCCg9kFgICAQ8PFgQfAAWwATYzMDA0QjAwNjgwMDZGMDA1MDAwNEQwMDUyMDA2NzAwNkQwMDM0MDA0RjAwMzAwMDU5MDA2NjAwNkMwMDc4MDAzOTAwNEMwMDYyMDA0QzAwNjcwMDMwMDA1NzAwMkYwMDMxMDA0QzAwNUEwMDY0MDA0ODAwNEIwMDZEMDA1NTAwNTQwMDUzMDA0QzAwNEYwMDQzMDA2RDAwMzUwMDcyMDA2QTAwNDgwMDQ1MDAzRDAwHwEFHX4vY2FwdGNoYS9DSW1hZ2UuYXNweD92PTQ2NjM1ZGQCBQ9kFgQCAQ8PFgIeBFRleHQFBDIwMjNkZAIDDw8WAh8CBRlVcGRhdGVkIGFzIGF0IDE5IE9jdCAyMDIyZGRkvFTDZb7oFg3THSd0n84fD9m00uLqAluvcClSR0SCyzI=">
  </div>
  <script type="text/javascript">
    //<![CDATA[
    var theForm = document.forms['frmMaster'];
    if (!theForm) {
      theForm = document.frmMaster;
    }

    function __doPostBack(eventTarget, eventArgument) {
      if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
        theForm.__EVENTTARGET.value = eventTarget;
        theForm.__EVENTARGUMENT.value = eventArgument;
        theForm.submit();
      }
    }
    //]]>
  </script>
  <div class="aspNetHidden">
    <input type="hidden" name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" value="90059987">
    <input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION"
      value="/wEdAAoPO9FA6z11oQaBNeX7CQSMImXxDjmJfXAJb7Yp+wy3JqeqGyG4syOyyLGV0CV0ce3JTUUIcQ55QQT3bcN7DGm10CCRv4O96yMeqgTekQruRC8MwvJGK8brTpoVMll0MmPTLXCzbUf+vFIbO7N3Vedn92l0zdh+5wtMz92lqNWy+9yT5u5cHsS6XrNedo3SwBWSVF2LcjWB1MlrDZAcxWE2kktPRqsH+GQ8nncU0AenTP33YHsdyBMO5OK6ji2qqwY=">
  </div>
  <div id="header">
    <header class="header header-light">
      <div class="top-bar top-bar-light">
        <div class="top-bar-left">
          <img src="../images/SGgovLogo.png" width="17px" alt="A Singapore Government Agency Website"> A Singapore Government Agency Website <a class="banner-link"> How to identify <i class="fa fa-angle-down"></i></a>
        </div>
        <div class="top-bar-right">
          <!-- search-bar -->
          <div class="search-bar">
            <input type="text" name="search" placeholder="Search in Vendors@Gov" id="txtGoogleSearch">
            <button type="reset" class="btn" onclick="googleSearch()" id="btnGoogleSearch">
              <img src="../images/search.png" alt="sch"></button>
            <a href="javascript:void(0)" class="close-search">
                    <img src="../images/close-search.png" alt="cls"></a>
          </div>
        </div>
      </div>
      <div class="top-bar-banner">
        <div class="top-banner">
          <div class="top-banner-content-grid">
            <div class="top-banner-content">
              <div class="top-banner-content-text-icon">
                <img src="../images/government_building.svg" width="17" height="17" class="banner-icon">
              </div>
              <div class="top-banner-content-text-container">
                <strong class="top-banner-content-title">Official website links end with gov.sg</strong>
                <p>Government agencies communicate via <strong>.gov.sg</strong> websites <span class="avoidwrap">(e.g. go.gov.sg/open)</span>.
                  <a href="https://go.gov.sg/trusted-sites" target="_blank" rel="noreferrer"> Trusted website<text style="letter-spacing: -3px;">s</text> <i class="fa fa-external-link"></i></a>
                </p>
              </div>
            </div>
            <div class="top-banner-content">
              <div class="top-banner-content-text-icon">
                <img src="../images/lock.svg" width="17" height="17" class="banner-icon">
              </div>
              <div class="top-banner-content-text-container">
                <strong class="top-banner-content-title">Secure websites using HTTPS</strong>
                <p> Look for a <b>lock</b>(<img src="../images/lock.svg" class="inline-banner-icon">) or https:// as an added precaution. Share sensitive information only on official, secure websites. </p>
              </div>
            </div>
          </div>
        </div>
      </div>
      <div class="header-in">
        <div class="header-left">
          <a href="../Index.aspx" class="logo">
                <img src="../images/logo.png" alt="logo"></a>
        </div>
        <div class="header-right">
          <div class="headr-right-grp mCustomScrollbar _mCS_1 mCS_no_scrollbar">
            <div id="mCSB_1" class="mCustomScrollBox mCS-light mCSB_vertical mCSB_inside" tabindex="0">
              <div id="mCSB_1_container" class="mCSB_container mCS_y_hidden mCS_no_scrollbar_y" style="position:relative; top:0; left:0;" dir="ltr">
                <ul class="clear-ul home-menu">
                  <li><a href="../Help/FAQs.aspx" target="_blank">FAQs</a></li>
                  <li><a href="../Common/UserManual.aspx" target="_blank">User Manuals</a></li>
                  <li class="has-sub-menu">
                    <a href="javascript:void(0);">Useful Resources</a>
                    <ul class="clear-ul sub-menu-inner">
                      <li><a href="../UsefulReferences/ListOfApprovedBanks.aspx" target="_blank">List of Approved Banks</a></li>
                      <li><a href="../UsefulReferences/ListOfFactoringCompanies.aspx" target="_blank">List of Factoring Companies</a></li>
                      <li><a href="../UsefulReferences/MinStatuaryBoards.aspx" target="_blank">List of Ministries / Statutory Boards</a></li>
                    </ul>
                  </li>
                  <li><a id="ctl22_helpdeskLink" href="javascript:__doPostBack('ctl00$ctl22$helpdeskLink','')">Helpdesk</a></li>
                  <li class="res-login-link"><a id="ctl22_linkBtnSingPass" href="javascript:__doPostBack('ctl00$ctl22$linkBtnSingPass','')">Login with Singpass</a></li>
                  <li class="res-login-link"><a id="ctl22_linkBtnCorpPass" href="javascript:__doPostBack('ctl00$ctl22$linkBtnCorpPass','')">Login with Corppass</a></li>
                </ul>
                <span><a href="javascript:void(0)" aria-label="Search in Vendors@Gov" class="search"><i class="fa fa-search"></i> Search</a></span>
              </div>
              <div id="mCSB_1_scrollbar_vertical" class="mCSB_scrollTools mCSB_1_scrollbar mCS-light mCSB_scrollTools_vertical" style="display: none;">
                <div class="mCSB_draggerContainer">
                  <div id="mCSB_1_dragger_vertical" class="mCSB_dragger" style="position: absolute; min-height: 30px; height: 0px; top: 0px;" oncontextmenu="return false;">
                    <div class="mCSB_dragger_bar" style="line-height: 30px;"></div>
                    <div class="mCSB_draggerRail"></div>
                  </div>
                </div>
              </div>
            </div>
          </div>
          <div class="header-mobile-right">
            <a href="javascript:void(0);" aria-label="Search in Vendors@Gov" class="search"><i class="fa fa-search"></i> Search</a>
            <div class="res-nav-icon">
              <span></span>
            </div>
          </div>
        </div>
      </div>
    </header>
    <script>
      var mob_singpass_login = 'ctl22_linkBtnSingPass';
      var mob_corppass_login = 'ctl22_linkBtnCorpPass';
    </script>
  </div>
  <div class="main-content inner-content-dark main-content-light">
    <div class="inner-content container-light">
      <style>
        .popup-main-inner {
          zoom: 0.7;
          -moz-transform: scale(70%);
        }

        .draft-loader {
          height: 100%;
        }
      </style>
      <script type="text/javascript" src="/js/jsencrypt.min.js"></script>
      <div class="log-in-portion">
        <div class="bill-cont">
          <h1>Your one-stop billing service for Singapore's Government.</h1>
        </div>
        <div class="login-option">
          <p>Get started by logging in.</p>
          <div class="signup-portion">
            <p>Click here <a href="doc\LoginRegister.pdf" target="_blank">if you do not have an account</a></p>
          </div>
          <div class="boxes">
            <div class="box-1 corpass">
              <p class="res-on">For Local &amp; Foreign Entities</p>
              <a id="cpMainContent_btnCorppassLogin" href="javascript:__doPostBack('ctl00$cpMainContent$btnCorppassLogin','')"><img src="images/corppass2.png" alt="corpass"></a>
              <p>For Local &amp; Foreign Entities</p>
            </div>
            <div class="box-1 singpass">
              <p class="res-on">For Individuals</p>
              <a id="cpMainContent_btnSingpassLogin" href="javascript:__doPostBack('ctl00$cpMainContent$btnSingpassLogin','')"><img src="images/singpass2.png" alt="singpass"></a>
              <p>For Individuals</p>
            </div>
          </div>
          <div class="signin-portion">
            <p>Click <a href="#login" class="open-popup-link" data-effect="mfp-zoom-in">here</a> if you are a foreign individual with an AGD Password</p>
          </div>
        </div>
      </div>
      <div class="mobile-login-section">
        <div class="draft-loader" style="display: none;">
          <div class="loader"></div>
        </div>
        <div class="intersector"><span>Or</span></div>
        <div class="mob-login-grp">
          <!--  -->
          <div class="mob-log-inner mob-login-part">
            <div class="mob-log-content">
              <div class="mob-log-content-inner">
                <h3 class="text-center">For Foreign Individuals with AGD Password</h3>
                <h3 class="text-center red mt-10 loginErrorMsgMobile"></h3>
                <div class="login-mob-grp">
                  <div class="form-group">
                    <div class="mob-grp-img">
                      <input type="text" name="text" placeholder="User ID" class="form-control" id="txtVendorIdMobile" maxlength="10" onkeypress="return callPageSubmit(event, true);">
                      <img alt="For Foreign Individuals with AGD Password in Mobile" src="images/mob-user.png">
                    </div>
                  </div>
                  <div class="form-group clearfix">
                    <div class="mob-grp-img ">
                      <input type="password" name="text" placeholder="Password" autocomplete="off" class="form-control" id="txtPasswordMobile" maxlength="20" onkeypress="return callPageSubmit(event, true);">
                      <img alt="For Foreign Individuals with AGD Password from forget password in Mobile" src="images/mob-pass.png">
                    </div>
                  </div>
                  <div class="Captcha_loginscreen">
                    <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
                    <meta http-equiv="Pragma" content="no-cache">
                    <meta http-equiv="Expires" content="0">
                    <link href="/captcha/captcha.css" rel="stylesheet" type="text/css">
                    <img id="cpMainContent_CaptchaUserControlLogin1_imgCaptcha" src="captcha/CImage.aspx?v=2034"
                      alt="3400670037007300630055006400440059004E004A00750073004A002F0070004B004400610055005700720057002B00530033002F0047004F00780077006B0052004A007900580055006A006A0063007A00360077003D00">
                    <script language="javascript" type="text/javascript">
                      // <![CDATA[  
                      function RefreshCaptcha(canReset, showCursor, isMobile, action) {
                        if (isMobile) {
                          document.getElementById("btnCaptchaImg" + action + "1").disabled = true;
                          getSessionValue(showCursor, canReset, document.getElementById("cpMainContent_CaptchaUserControl" + action + "1" + "_imgCaptcha").alt, isMobile, action); //To get session value
                          document.getElementById("txtimgcode" + action + "1").value = '';
                        } else {
                          document.getElementById("btnCaptchaImg" + action).disabled = true;
                          getSessionValue(showCursor, canReset, document.getElementById("cpMainContent_CaptchaUserControl" + action + "_imgCaptcha").alt, isMobile, action); //To get session value
                          document.getElementById("txtimgcode" + action).value = '';
                        }
                      };

                      function getSessionValue(showCursor, canReset, strCaptchaCode, isMobile, action) {
                        var obj = {};
                        obj.canReset = canReset;
                        obj.strSession = strCaptchaCode;
                        var button;
                        var image;
                        if (isMobile) {
                          button = document.getElementById("btnCaptchaImg" + action + "1");
                          image = document.getElementById("cpMainContent_CaptchaUserControl" + action + "1" + "_imgCaptcha");
                        } else {
                          button = document.getElementById("btnCaptchaImg" + action);
                          image = document.getElementById("cpMainContent_CaptchaUserControl" + action + "_imgCaptcha");
                        }
                        var result = false;
                        $.ajax({
                          type: "POST",
                          contentType: "application/Json;Charset=utf-8",
                          url: "/captcha/CImage.aspx/SetSessionValue",
                          async: false,
                          cache: false,
                          data: JSON.stringify(obj),
                          dataType: "Json",
                          success: function(data) {
                            if (data.d == '') {
                              button.disabled = false;
                              return;
                            } else {
                              image.alt = data.d; //Assign session value into image alternative text property        
                              image.src = "/Captcha/CImage.aspx?v=" + Math.random();
                              if (showCursor == true) document.getElementById("txtimgcode" + action).focus();
                              image.onload = function() {
                                button.disabled = false;
                              };
                              image.onerror = function() {
                                image.onerror = null;
                                getSessionValue(showCursor, canReset, image.alt, isMobile, action);
                              };
                            }
                          }
                        });
                        return result;
                      }
                      // ]]>
                    </script>
                    <a>
                                    <input type="button" id="btnCaptchaImgLogin1" style="cursor: pointer; width: 50px; height: 50px; vertical-align: middle; background: url('/images/refresh.jpg') no-repeat;" class="img1" onclick="RefreshCaptcha(true, true, true, 'Login');">
                                </a>
                    <br>
                    <br>
                    <input type="text" name="" class="form-control" onfocus="RefreshCaptcha(false,false, true, 'Login');" placeholder="Enter CAPTCHA Code" id="txtimgcodeLogin1" maxlength="10">
                    <br>
                    <font face="arial" size="2"><em>Note: This is a security feature to prevent spam.</em></font>
                  </div>
                  <span id="txtLoginMobile_ErrorMsg" class="error-msg"></span>
                  <div class="form-group clearfix">
                    <div class="mob-grp-img ">
                      <div class="login-mob-grp">
                        <a href="Index2FA.aspx" id="btn2FAMobileLogin" class="col-1">Register for Two-Factor Authentication (2FA)</a>
                      </div>
                      <div class="login-mob-grp">
                        <a href="javascript:void(0);" class="open-mob-forgot col-1" style="font-size: 14px">Forgot Password</a>
                      </div>
                    </div>
                  </div>
                </div>
                <div class="text-center">
                  <a href="javascript:void(0);" class="btn btn-minwid open-ter-1" id="btnVendorLoginMobile">Login</a>
                </div>
              </div>
            </div>
          </div>
          <!--  -->
          <div class="mob-log-inner mob-terminartion-part ter-part1">
            <div class="mob-log-content">
              <div class="mob-log-content-inner text-center">
                <p> Please be informed that Corppass login has replaced your AGD ID/Password login since 31 August 2017. <span class="blue-high">You may login to Vendors@Gov using Corppass.</span>
                </p>
                <p> Please register for Corppass at <a href="www.corppass.gov.sg">www.corppass.gov.sg</a>, and set up the Vendors@Gov digital service at the Corppass portal to access Vendors@Gov. </p>
                <div class="text-center">
                  <a href="javascript:void(0);" class="btn btn-minwid open-ter-2">Next</a>
                </div>
              </div>
            </div>
          </div>
          <!--  -->
          <div class="mob-log-inner mob-terminartion-part ter-part2">
            <div class="mob-log-content">
              <div class="mob-log-content-inner text-center">
                <p>
                  <b>Corppass registration </b>
                  <br> Please refer to the <a href="https://www.corppass.gov.sg/corppass/common/userguides" target="_blank">User Guides</a> and <a href="http://www.ifaq.gov.sg/CorpPass/apps/fcd_faqmain.aspx" target="_blank">FAQs</a>.<br> You may also
                  contact the Corppass Helpdesk at 6643 0577 or support@corppass.gov.sg.
                </p>
                <p>
                  <b>Vendors@Gov digital service set up </b>
                  <br> Please refer to the <a href="#" target="_blank">User Guides</a> and <a href="http://www.ifaq.gov.sg/CorpPass/apps/fcd_faqmain.aspx" target="_blank">FAQs</a>, under the "02 Getting Started / Login Matters" section. You may also
                  contact AGD at Corppass_For_Vendors@agd.gov.sg, or log a helpdesk ticket at <a href="https://www.vendors.gov.sg" target="_blank">www.vendors.gov.sg</a> under "Helpdesk".
                </p>
                <div class="text-center">
                  <div class="btn-grp">
                    <a href="javascript:void(0);" class="btn btn-minwid open-mob-login">Close</a>
                  </div>
                </div>
              </div>
            </div>
          </div>
          <div class="mob-log-inner mob-2FA-part">
            <div class="mob-log-content">
              <div class="mob-log-content-inner text-center">
                <h2 class="text-center">Registering for 2FA (Google Authenticator)</h2>
                <p id="cpMainContent_dv2FANONMandatoryContentMobile" class="text-center" style="display: none"> All vendors issued with AGD Password will need to
                  <a href="Index2FA.aspx" style="color: #FF9000;">register for 2FA (Google Authenticator) by 30th April 2020</a> in order to proceed to login. </p>
                <p id="cpMainContent_dv2FAMandatoryContentMobile" class="text-center" style="display: none"> All vendors issued with AGD Password will need to <a href="Index2FA.aspx" style="color: #FF9000;">register for 2FA (Google Authenticator)</a>
                  in order to proceed to login. </p>
                <p class="text-center"> You may click here for the <a href="../doc/LoginRegister.pdf" style="color: #FF9000;" target="_blank">user guide on registering for 2FA.</a>
                </p>
                <div id="cpMainContent_dvlnkMobileSetUpLater" class="btn-grp text-center" style="display: none">
                  <input type="submit" name="ctl00$cpMainContent$lnkMobileSetUpLater" value="Proceed" onclick="return SetUpLaterMobile();" id="cpMainContent_lnkMobileSetUpLater" class="btn btn-minwid btn-minwid">
                </div>
              </div>
            </div>
          </div>
          <div class="mob-log-inner mob-OTP-part">
            <div class="mob-log-content">
              <div class="mob-log-content-inner text-center">
                <h2 class="text-center">Enter the OTP from Google authenticator app</h2>
                <br>
                <div class="login-input-group">
                  <div class="form-group clearfix">
                    <input type="text" name="" class="form-control" id="txtOTPMobile" maxlength="6" onkeypress="return event.charCode >= 48 &amp;&amp; event.charCode <= 57">
                    <span id="txtOTP_ErrorMsgMobile" class="error-msg"></span>
                  </div>
                  <div class="btn-grp text-center">
                    <input type="submit" name="ctl00$cpMainContent$btnValidateMobileOTP" value="Validate" onclick="return ValidateOTPMobile();" id="cpMainContent_btnValidateMobileOTP" class="btn btn-minwid btn-minwid">
                  </div>
                </div>
              </div>
            </div>
          </div>
          <!--  -->
          <div class="mob-log-inner mob-forgot-part">
            <div class="mob-log-content">
              <div class="mob-log-content-inner">
                <h3 class="text-center">For Foreign Individuals with AGD Password</h3>
                <h3 class="text-center forg-title">Forgot Password</h3>
                <div class="login-mob-grp">
                  <div class="form-group">
                    <div class="mob-grp-img">
                      <input type="text" name="text" placeholder="User ID" class="form-control" id="txtForgotPasswordIdMobile" maxlength="10">
                      <img src="images/mob-user.png">
                    </div>
                    <br>
                    <div class="Captcha_loginscreen">
                      <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
                      <meta http-equiv="Pragma" content="no-cache">
                      <meta http-equiv="Expires" content="0">
                      <link href="/captcha/captcha.css" rel="stylesheet" type="text/css">
                      <img id="cpMainContent_CaptchaUserControlForgot1_imgCaptcha" src="captcha/CImage.aspx?v=66153"
                        alt="3400670037007300630055006400440059004E004A00750073004A002F0070004B004400610055005700720057002B00530033002F0047004F00780077006B0052004A007900580055006A006A0063007A00360077003D00">
                      <script language="javascript" type="text/javascript">
                        // <![CDATA[  
                        function RefreshCaptcha(canReset, showCursor, isMobile, action) {
                          if (isMobile) {
                            document.getElementById("btnCaptchaImg" + action + "1").disabled = true;
                            getSessionValue(showCursor, canReset, document.getElementById("cpMainContent_CaptchaUserControl" + action + "1" + "_imgCaptcha").alt, isMobile, action); //To get session value
                            document.getElementById("txtimgcode" + action + "1").value = '';
                          } else {
                            document.getElementById("btnCaptchaImg" + action).disabled = true;
                            getSessionValue(showCursor, canReset, document.getElementById("cpMainContent_CaptchaUserControl" + action + "_imgCaptcha").alt, isMobile, action); //To get session value
                            document.getElementById("txtimgcode" + action).value = '';
                          }
                        };

                        function getSessionValue(showCursor, canReset, strCaptchaCode, isMobile, action) {
                          var obj = {};
                          obj.canReset = canReset;
                          obj.strSession = strCaptchaCode;
                          var button;
                          var image;
                          if (isMobile) {
                            button = document.getElementById("btnCaptchaImg" + action + "1");
                            image = document.getElementById("cpMainContent_CaptchaUserControl" + action + "1" + "_imgCaptcha");
                          } else {
                            button = document.getElementById("btnCaptchaImg" + action);
                            image = document.getElementById("cpMainContent_CaptchaUserControl" + action + "_imgCaptcha");
                          }
                          var result = false;
                          $.ajax({
                            type: "POST",
                            contentType: "application/Json;Charset=utf-8",
                            url: "/captcha/CImage.aspx/SetSessionValue",
                            async: false,
                            cache: false,
                            data: JSON.stringify(obj),
                            dataType: "Json",
                            success: function(data) {
                              if (data.d == '') {
                                button.disabled = false;
                                return;
                              } else {
                                image.alt = data.d; //Assign session value into image alternative text property        
                                image.src = "/Captcha/CImage.aspx?v=" + Math.random();
                                if (showCursor == true) document.getElementById("txtimgcode" + action).focus();
                                image.onload = function() {
                                  button.disabled = false;
                                };
                                image.onerror = function() {
                                  image.onerror = null;
                                  getSessionValue(showCursor, canReset, image.alt, isMobile, action);
                                };
                              }
                            }
                          });
                          return result;
                        }
                        // ]]>
                      </script>
                      <a>
                                        <input type="button" id="btnCaptchaImgForgot1" style="cursor: pointer; width: 50px; height: 50px; vertical-align: middle; background: url('/images/refresh.jpg') no-repeat;" class="img1" onclick="RefreshCaptcha(true, true, true, 'Forgot');">
                                    </a>
                      <br>
                      <br>
                      <input type="text" name="" class="form-control" onfocus="RefreshCaptcha(false,false, true, 'Forgot');" placeholder="Enter CAPTCHA Code" id="txtimgcodeForgot1" maxlength="10">
                      <br>
                      <font face="arial" size="2"><em>Note: This is a security feature to prevent spam.</em></font>
                    </div>
                    <span id="txtForgotPasswordIdMobile_ErrorMsg" class="error-msg"></span>
                  </div>
                </div>
                <div class="text-center">
                  <div class="btn-grp">
                    <a href="javascript:void(0);" class="btn btn-minwid btn-dark open-mob-login">Back</a>
                    <a href="javascript:void(0);" class="btn btn-minwid open-mobile-sent" id="btnForgotPasswordMobile">Submit</a>
                  </div>
                </div>
              </div>
            </div>
          </div>
          <!--  -->
          <div class="mob-log-inner mob-sent-part">
            <div class="mob-log-content">
              <div class="mob-log-content-inner">
                <h3 class="text-center">An email to reset your password will be sent to you if the User ID is valid</h3>
                <div class="text-center">
                  <a href="javascript:void(0);" class="btn btn-minwid open-mob-login">Ok</a>
                </div>
              </div>
            </div>
          </div>
          <!--  -->
        </div>
      </div>
      <div class="infomation-portion">
        <div class="slider-portion">
          <div class="left-side">
            <p class="left-h-mob">Regular System Maintenance:</p>
            <div class="left-side-l">
              <p class="left-h">Regular System Maintenance: </p>
              <p class="left-p">Please note that the system will not be available between 0500hrs to 0600hrs, and 1900hrs to 1930hrs (GMT+8) from Mon to Sat.</p>
            </div>
            <div class="left-side-r">
              <img src="images/settings.png" alt="System Maintenance">
            </div>
          </div>
          <div class="right-side" style="overflow: hidden; padding: 0px;">
            <div class="con-icon" style="padding: 20px 15px 10px;">
              <h1>Latest Updates</h1>
              <img src="images/last-update.png" alt="lastupdate">
            </div>
            <div class="swiper-container swiper-container-initialized swiper-container-horizontal swiper-container-autoheight">
              <div id="cpMainContent_divBroadcastContainer" class="swiper-wrapper"></div>
              <!-- Add Arrows -->
              <div class="swiper-button-next swiper-button-white"></div>
              <div class="swiper-button-prev swiper-button-white"></div>
              <span class="swiper-notification" aria-live="assertive" aria-atomic="true"></span>
            </div>
            <div class="swiper-pagination swiper-pagination-clickable swiper-pagination-bullets"><span class="swiper-pagination-bullet swiper-pagination-bullet-active" tabindex="0" role="button" aria-label="Go to slide 1"></span></div>
          </div>
        </div>
        <div class="img-portion">
          <img src="images/invoice.png" alt="Submit Invoices, Monitor Payment Status, Update Vendor Details">
        </div>
      </div>
      <div id="login" class="white-popup mfp-hide popup_sec">
        <div class="popup-content">
          <div class="popup-group">
            <!--  -->
            <div class="popup-inner login-part">
              <div class="popup-content-in">
                <div class="popup-main-inner">
                  <h2 class="text-center">Log in for Foreign Individuals</h2>
                  <div class="login-description text-center"> This AGD Password option is only applicable for <br> foreign individuals without Singpass. </div>
                  <div class="login-description text-center red mt-10 loginErrorMsg">
                  </div>
                  <div class="login-input-group">
                    <div class="draft-loader" style="display: none;">
                      <div class="loader"></div>
                    </div>
                    <div class="form-group">
                      <label>User ID *</label>
                      <input type="text" name="" class="form-control" id="txtVendorId" maxlength="10" onkeypress="return callPageSubmit(event);">
                    </div>
                    <div class="form-group clearfix">
                      <label>Password *</label>
                      <input type="password" name="" class="form-control" id="txtPassword" autocomplete="off" maxlength="20" onkeypress="return callPageSubmit(event);">
                      <label>Please enter the CAPTCHA Code (case sensitive):</label>
                      <div id="trCaptcha2" class="Captcha_loginscreen">
                        <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
                        <meta http-equiv="Pragma" content="no-cache">
                        <meta http-equiv="Expires" content="0">
                        <link href="/captcha/captcha.css" rel="stylesheet" type="text/css">
                        <img id="cpMainContent_CaptchaUserControlLogin_imgCaptcha" src="captcha/CImage.aspx?v=82515"
                          alt="7900650042006C005500450075006B00530042006B003700340075004C00660061002B0063005A0041006C00440037004E004E006B00330068006A0079002B0058002F0038004E00350076006C0046004100690059003D00">
                        <script language="javascript" type="text/javascript">
                          // <![CDATA[  
                          function RefreshCaptcha(canReset, showCursor, isMobile, action) {
                            if (isMobile) {
                              document.getElementById("btnCaptchaImg" + action + "1").disabled = true;
                              getSessionValue(showCursor, canReset, document.getElementById("cpMainContent_CaptchaUserControl" + action + "1" + "_imgCaptcha").alt, isMobile, action); //To get session value
                              document.getElementById("txtimgcode" + action + "1").value = '';
                            } else {
                              document.getElementById("btnCaptchaImg" + action).disabled = true;
                              getSessionValue(showCursor, canReset, document.getElementById("cpMainContent_CaptchaUserControl" + action + "_imgCaptcha").alt, isMobile, action); //To get session value
                              document.getElementById("txtimgcode" + action).value = '';
                            }
                          };

                          function getSessionValue(showCursor, canReset, strCaptchaCode, isMobile, action) {
                            var obj = {};
                            obj.canReset = canReset;
                            obj.strSession = strCaptchaCode;
                            var button;
                            var image;
                            if (isMobile) {
                              button = document.getElementById("btnCaptchaImg" + action + "1");
                              image = document.getElementById("cpMainContent_CaptchaUserControl" + action + "1" + "_imgCaptcha");
                            } else {
                              button = document.getElementById("btnCaptchaImg" + action);
                              image = document.getElementById("cpMainContent_CaptchaUserControl" + action + "_imgCaptcha");
                            }
                            var result = false;
                            $.ajax({
                              type: "POST",
                              contentType: "application/Json;Charset=utf-8",
                              url: "/captcha/CImage.aspx/SetSessionValue",
                              async: false,
                              cache: false,
                              data: JSON.stringify(obj),
                              dataType: "Json",
                              success: function(data) {
                                if (data.d == '') {
                                  button.disabled = false;
                                  return;
                                } else {
                                  image.alt = data.d; //Assign session value into image alternative text property        
                                  image.src = "/Captcha/CImage.aspx?v=" + Math.random();
                                  if (showCursor == true) document.getElementById("txtimgcode" + action).focus();
                                  image.onload = function() {
                                    button.disabled = false;
                                  };
                                  image.onerror = function() {
                                    image.onerror = null;
                                    getSessionValue(showCursor, canReset, image.alt, isMobile, action);
                                  };
                                }
                              }
                            });
                            return result;
                          }
                          // ]]>
                        </script>
                        <a>
                                            <input type="button" id="btnCaptchaImgLogin" style="cursor: pointer; width: 50px; height: 50px; vertical-align: middle; background: url('/images/refresh.jpg') no-repeat;" class="img1" onclick="RefreshCaptcha(true, true, false, 'Login');">
                                        </a>
                        <br>
                        <br>
                        <input type="text" name="" class="form-control" onfocus="RefreshCaptcha(false,false, false, 'Login');" id="txtimgcodeLogin" maxlength="10">
                        <br>
                        <font face="arial" size="2"><em>Note: This is a security feature to prevent spam.</em></font>
                      </div>
                      <div>
                        <a href="Index2FA.aspx" id="btn2FA" style="color: #FF9000;">Register for Two-Factor Authentication (2FA) </a>
                      </div>
                      <div style="float: left !important">
                        <a href="#" class="forgot-desc open-forgot">Forgot Password</a>
                      </div>
                    </div>
                  </div>
                  <div class="text-center">
                    <div class="btn-grp">
                      <a href="javascript:void(0);" class="btn btn-dark btn-minwid close-popup">Cancel</a>
                      <a href="javascript:void(0);" class="btn btn-minwid open-termination" id="btnVendorLogin">Login</a>
                    </div>
                  </div>
                </div>
              </div>
            </div>
            <div class="popup-inner termination-part">
              <div class="popup-content-in">
                <div class="popup-main-inner">
                  <h2 class="text-center">Termination of AGD Password Login since 31 August 2017</h2>
                  <p> Please be informed that Corppass login has replaced your AGD ID/Password login since 31 August 2017. <span class="blue-high">You may login to Vendors@Gov using Corppass.</span>
                  </p>
                  <p> Please register for Corppass at <a href="https://www.corppass.gov.sg">www.corppass.gov.sg</a> , and set up the Vendors@Gov digital service at the Corppass portal to access Vendors@Gov. </p>
                  <p><b>For assistance:</b></p>
                  <p>
                    <b>Corppass registration </b>
                    <br> Please refer to the <a href="https://www.corppass.gov.sg/corppass/common/userguides" target="_blank">User Guides</a> and <a href="http://www.ifaq.gov.sg/CorpPass/apps/fcd_faqmain.aspx" target="_blank">FAQs</a>. You may also
                    contact the Corppass Helpdesk at 6643 0577 or support@corppass.gov.sg.
                  </p>
                  <p>
                    <b>Vendors@Gov digital service set up - </b>
                    <br> Please refer to the <a href="#" target="_blank">User Guides</a> and <a href="../help/faqs.aspx" target="_blank">FAQs</a> , under the "2 Getting Started / Login Matters" section. You may also contact AGD at
                    Corppass_For_Vendors@agd.gov.sg, or log a helpdesk ticket at <a href="https://www.vendors.gov.sg" target="_blank">www.vendors.gov.sg</a> under "Helpdesk".
                  </p>
                  <div class="text-center">
                    <div class="btn-grp">
                      <a href="javascript:void(0);" class="btn btn-minwid open-login">Close</a>
                    </div>
                  </div>
                </div>
              </div>
            </div>
            <div class="popup-inner forgot-part">
              <div class="popup-content-in">
                <div class="popup-main-inner">
                  <h2 class="text-center">Forgot Password</h2>
                  <div class="login-input-group">
                    <div class="form-group">
                      <label>User ID *</label>
                      <input type="text" name="" class="form-control" id="txtForgotPasswordId" maxlength="10">
                      <span id="txtForgotPasswordId_ErrorMsg" class="error-msg"></span>
                      <br>
                      <label>Please enter the CAPTCHA Code (case sensitive):</label>
                      <div id="trCaptcha" class="Captcha_loginscreen">
                        <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
                        <meta http-equiv="Pragma" content="no-cache">
                        <meta http-equiv="Expires" content="0">
                        <link href="/captcha/captcha.css" rel="stylesheet" type="text/css">
                        <img id="cpMainContent_CaptchaUserControlForgot_imgCaptcha" src="captcha/CImage.aspx?v=46635"
                          alt="63004B0068006F0050004D00520067006D0034004F003000590066006C00780039004C0062004C006700300057002F0031004C005A00640048004B006D005500540053004C004F0043006D00350072006A00480045003D00">
                        <script language="javascript" type="text/javascript">
                          // <![CDATA[  
                          function RefreshCaptcha(canReset, showCursor, isMobile, action) {
                            if (isMobile) {
                              document.getElementById("btnCaptchaImg" + action + "1").disabled = true;
                              getSessionValue(showCursor, canReset, document.getElementById("cpMainContent_CaptchaUserControl" + action + "1" + "_imgCaptcha").alt, isMobile, action); //To get session value
                              document.getElementById("txtimgcode" + action + "1").value = '';
                            } else {
                              document.getElementById("btnCaptchaImg" + action).disabled = true;
                              getSessionValue(showCursor, canReset, document.getElementById("cpMainContent_CaptchaUserControl" + action + "_imgCaptcha").alt, isMobile, action); //To get session value
                              document.getElementById("txtimgcode" + action).value = '';
                            }
                          };

                          function getSessionValue(showCursor, canReset, strCaptchaCode, isMobile, action) {
                            var obj = {};
                            obj.canReset = canReset;
                            obj.strSession = strCaptchaCode;
                            var button;
                            var image;
                            if (isMobile) {
                              button = document.getElementById("btnCaptchaImg" + action + "1");
                              image = document.getElementById("cpMainContent_CaptchaUserControl" + action + "1" + "_imgCaptcha");
                            } else {
                              button = document.getElementById("btnCaptchaImg" + action);
                              image = document.getElementById("cpMainContent_CaptchaUserControl" + action + "_imgCaptcha");
                            }
                            var result = false;
                            $.ajax({
                              type: "POST",
                              contentType: "application/Json;Charset=utf-8",
                              url: "/captcha/CImage.aspx/SetSessionValue",
                              async: false,
                              cache: false,
                              data: JSON.stringify(obj),
                              dataType: "Json",
                              success: function(data) {
                                if (data.d == '') {
                                  button.disabled = false;
                                  return;
                                } else {
                                  image.alt = data.d; //Assign session value into image alternative text property        
                                  image.src = "/Captcha/CImage.aspx?v=" + Math.random();
                                  if (showCursor == true) document.getElementById("txtimgcode" + action).focus();
                                  image.onload = function() {
                                    button.disabled = false;
                                  };
                                  image.onerror = function() {
                                    image.onerror = null;
                                    getSessionValue(showCursor, canReset, image.alt, isMobile, action);
                                  };
                                }
                              }
                            });
                            return result;
                          }
                          // ]]>
                        </script>
                        <a>
                                            <input type="button" id="btnCaptchaImgForgot" style="cursor: pointer; width: 50px; height: 50px; vertical-align: middle; background: url('/images/refresh.jpg') no-repeat;" class="img1" onclick="RefreshCaptcha(true, true, false, 'Forgot');">
                                        </a>
                        <br>
                        <br>
                        <input type="text" name="" class="form-control" onfocus="RefreshCaptcha(false,false, false, 'Forgot');" id="txtimgcodeForgot" maxlength="10">
                        <br>
                        <font face="arial" size="2"><em>Note: This is a security feature to prevent spam.</em></font>
                      </div>
                    </div>
                  </div>
                  <div class="captcha">
                  </div>
                  <div class="text-center">
                    <div class="btn-grp">
                      <a href="javascript:void(0);" class="btn btn-dark btn-minwid open-login">Back</a>
                      <a href="javascript:void(0);" class="btn btn-minwid open-sent" id="btnForgotPassword">Submit</a>
                    </div>
                  </div>
                </div>
              </div>
            </div>
            <div class="popup-inner sent-part">
              <div class="popup-content-in">
                <div class="popup-main-inner">
                  <h2 class="text-center">An email has been sent</h2>
                  <div class="login-description text-center"> An email to reset your password will be sent to you if the User ID is valid </div>
                  <div class="text-center">
                    <a href="javascript:void(0);" class="btn btn-minwid open-login">Ok</a>
                  </div>
                </div>
              </div>
            </div>
            <div class="popup-inner TwoFA-part">
              <div class="popup-content-in">
                <div class="popup-main-inner">
                  <h2 class="text-center">Registering for 2FA (Google Authenticator)</h2>
                  <br>
                  <p id="cpMainContent_dv2FANONMandatoryContent" class="text-center" style="display: none"> All vendors issued with AGD Password will need to
                    <a href="Index2FA.aspx" style="color: #FF9000;">register for 2FA (Google Authenticator) by 30th April 2020</a> in order to proceed to login. </p>
                  <p id="cpMainContent_dv2FAMandatoryContent" class="text-center" style="display: none"> All vendors issued with AGD Password will need to <a href="Index2FA.aspx">register for 2FA (Google Authenticator)</a> in order to proceed to
                    login. </p>
                  <p class="text-center"> You may click here for the <a href="../doc/LoginRegister.pdf" target="_blank">user guide on registering for 2FA.</a>
                  </p>
                  <div id="cpMainContent_dvlnkSetUpLater" class="btn-grp text-center" style="display: none">
                    <input type="submit" name="ctl00$cpMainContent$lnkSetUpLater" value="Proceed" onclick="return SetUpLater();" id="cpMainContent_lnkSetUpLater" class="btn btn-minwid btn-minwid">
                  </div>
                </div>
              </div>
            </div>
            <div class="popup-inner OTP-part">
              <div class="popup-content-in">
                <div class="popup-main-inner">
                  <h2 class="text-center">Enter the OTP from Google authenticator app</h2>
                  <br>
                  <div class="login-input-group">
                    <div class="form-group clearfix">
                      <input type="text" name="" class="form-control" id="txtOTP" maxlength="6" onkeypress="return event.charCode >= 48 &amp;&amp; event.charCode <= 57">
                      <span id="txtOTP_ErrorMsg" class="error-msg"></span>
                    </div>
                    <div class="btn-grp text-center">
                      <input type="submit" name="ctl00$cpMainContent$btnValidate" value="Validate" onclick="return ValidateOTP();" id="cpMainContent_btnValidate" class="btn btn-minwid btn-minwid">
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
      <input type="hidden" id="hdnSetUplater">
      <input type="hidden" id="hdnSetUplaterMobile">
      <script src="../js/captcha.js?v=0.4" type="text/javascript"></script>
      <script>
        function SetUpLater() {
          var val = $('input#hdnSetUplater').val();
          window.location.replace(val);
          return false;
        }

        function ValidateOTP() {
          var vendorId_val = $('#txtVendorId').val();
          var OTP_val = $('#txtOTP').val();
          $.ajax({
            method: "POST",
            url: "Index.aspx/ValidateOTP",
            contentType: "application/json",
            dataType: 'json',
            data: '{vendorId: "' + vendorId_val + '", OTP: "' + OTP_val + '"}',
            success: function(response) {
              if (response.d) {
                var result = JSON.parse(response.d);
                if (result.isSuccess) {
                  $('#txtOTP_ErrorMsg').text('');
                  var url = $('input#hdnSetUplater').val();
                  window.location.replace(url);
                } else {
                  $('#txtOTP_ErrorMsg').html(result.errorMsg);
                }
              }
            },
            error: function(XMLHttpRequest, textStatus, errorThrown) {
              //alert("Request: " + XMLHttpRequest.toString() + "\n\nStatus: " + textStatus + "\n\nError: " + errorThrown);
            }
          });
          return false;
        }
        $('#frmMaster').addClass('bg');
        var swiper = new Swiper('.swiper-container', {
          pagination: {
            el: '.swiper-pagination',
            clickable: true,
          },
          autoplay: {
            delay: 3000,
          },
          spaceBetween: 100,
          autoHeight: true,
          breakpoints: {
            767: {
              pagination: {
                el: '',
              },
              navigation: {
                nextEl: '.swiper-button-next',
                prevEl: '.swiper-button-prev',
              },
            },
          }
        });
        $('.open-popup-link').magnificPopup({
          type: 'inline',
          removalDelay: 500,
          mainClass: 'my-mfp-slide-bottom'
        });
        /*login popup*/
        $('#btnVendorLogin').click(function() {
          vendorPasswordValidation();
        });

        function vendorPasswordValidation() {
          var vendorId_val = $('#txtVendorId').val();
          var password_val = $('#txtPassword').val();
          var captchaInput = document.getElementById("txtimgcodeLogin").value;
          if (validatePassword()) {
            $.ajax({
              method: "POST",
              url: "Index.aspx/VendorLogin",
              contentType: "application/json",
              dataType: 'json',
              beforeSend: function() {
                displayLoader();
              },
              data: '{vendorId: "' + vendorId_val + '", password: "' + RSAEncrypt(password_val) + '",strCaptchaCode: "' + captchaInput + '"}',
              success: function(response) {
                if (response.d) {
                  RefreshCaptcha(true, true, false, "Login");
                  var result = JSON.parse(response.d);
                  var delay = result.delay;
                  setTimeout(function() {
                    if (result.isSuccess) {
                      $('.loginErrorMsg').text('');
                      var ceaseInfo = result.ceaseInfo;
                      if (ceaseInfo) {
                        if (ceaseInfo.isCeased) {
                          if (ceaseInfo.reachEndDate) {
                            $('.open-termination').parents('.popup-inner').slideUp();
                            $('.termination-part').slideDown();
                            $('.popup-content').addClass('content-large');
                            $('#login').addClass('large');
                          } else {}
                        } else {
                          if (result.TwoFAVerification) {
                            if (result.TwoFAVerification == "MandatoryVerfification") {
                              // show popup and hide proceed button
                              $('.open-termination').parents('.popup-inner').slideUp();
                              $('.TwoFA-part').slideDown();
                              $('.popup-content').addClass('content-large');
                              $('#login').addClass('large');
                              // $('#dvlnkSetUpLater').hide();
                              document.getElementById("cpMainContent_dvlnkSetUpLater").style.display = "none";
                              document.getElementById("cpMainContent_dv2FANONMandatoryContent").style.display = "none";
                              document.getElementById("cpMainContent_dv2FAMandatoryContent").style.display = "block";
                            } else if (result.TwoFAVerification == "verified") {
                              //show otp popup and on verification to dashboard
                              $('.open-termination').parents('.popup-inner').slideUp();
                              $('.OTP-part').slideDown();
                              $('.popup-content').addClass('content-large');
                              $('#login').addClass('large');
                              var url = result.url;
                              $('input#hdnSetUplater').val(url);
                            } else if (result.TwoFAVerification == "NotMandatory") {
                              //show proceed button and popup
                              $('.open-termination').parents('.popup-inner').slideUp();
                              $('.TwoFA-part').slideDown();
                              $('.popup-content').addClass('content-large');
                              $('#login').addClass('large');
                              var url = result.url;
                              $('input#hdnSetUplater').val(url);
                              document.getElementById("cpMainContent_dvlnkSetUpLater").style.display = "block";
                              document.getElementById("cpMainContent_dv2FANONMandatoryContent").style.display = "block";
                              document.getElementById("cpMainContent_dv2FAMandatoryContent").style.display = "none";
                            }
                            //window.location.replace(result.url);dashboard
                          }
                        }
                      } else {
                        if (result.url) {
                          window.location.replace(result.url);
                        }
                      }
                    } else {
                      $('.loginErrorMsg').html(result.errorMsg);
                    }
                    hideLoader();
                  }, delay * 1000);
                }
              },
              error: function(XMLHttpRequest, textStatus, errorThrown) {
                //alert("Request: " + XMLHttpRequest.toString() + "\n\nStatus: " + textStatus + "\n\nError: " + errorThrown);
              }
            });
          }
        }
        $('#btnVendorLoginMobile').click(function() {
          vendorPasswordValidationMobile();
        });

        function vendorPasswordValidationMobile() {
          var vendorId_val = $('#txtVendorIdMobile').val();
          var password_val = $('#txtPasswordMobile').val();
          var captchaInput = document.getElementById("txtimgcodeLogin1").value;
          if (validatePassword(true)) {
            $.ajax({
              method: "POST",
              url: "Index.aspx/VendorLogin",
              contentType: "application/json",
              dataType: 'json',
              beforeSend: function() {
                displayLoader();
              },
              data: '{vendorId: "' + vendorId_val + '", password: "' + RSAEncrypt(password_val) + '",strCaptchaCode: "' + captchaInput + '"}',
              success: function(response) {
                if (response.d) {
                  RefreshCaptcha(true, true, true, "Login");
                  var result = JSON.parse(response.d);
                  var delay = result.delay;
                  setTimeout(function() {
                    if (result.isSuccess) {
                      $('.loginErrorMsgMobile').text('');
                      var ceaseInfo = result.ceaseInfo;
                      if (ceaseInfo) {
                        if (ceaseInfo.isCeased) {
                          if (ceaseInfo.reachEndDate) {
                            $('#btnVendorLoginMobile').parents('.mob-log-inner').slideUp();
                            $('.ter-part1').slideDown();
                          } else {}
                        } else {
                          if (result.TwoFAVerification) {
                            if (result.TwoFAVerification == "MandatoryVerfification") {
                              // show popup and hide proceed button
                              $('#btnVendorLoginMobile').parents('.mob-log-inner').slideUp();
                              $('.mob-2FA-part').slideDown();
                              document.getElementById("cpMainContent_dvlnkMobileSetUpLater").style.display = "none";
                              document.getElementById("cpMainContent_dv2FANONMandatoryContentMobile").style.display = "none";
                              document.getElementById("cpMainContent_dv2FAMandatoryContentMobile").style.display = "block";
                            } else if (result.TwoFAVerification == "verified") {
                              //show otp popup and on verification to dashboard
                              //$('#btnVendorLoginMobile').parents('mob-OTP-part').slideUp();   
                              $('#btnVendorLoginMobile').parents('.mob-log-inner').slideUp();
                              $('.mob-OTP-part').slideDown();
                              var url = result.url;
                              $('input#hdnSetUplaterMobile').val(url);
                            } else if (result.TwoFAVerification == "NotMandatory") {
                              //show proceed button and popup
                              //$('#btnVendorLoginMobile').parents('.mob-2FA-part').slideUp();
                              $('#btnVendorLoginMobile').parents('.mob-log-inner').slideUp();
                              $('.mob-2FA-part').slideDown();
                              document.getElementById("cpMainContent_dv2FANONMandatoryContentMobile").style.display = "block";
                              document.getElementById("cpMainContent_dv2FAMandatoryContentMobile").style.display = "none";
                              document.getElementById("cpMainContent_dvlnkMobileSetUpLater").style.display = "block";
                              var url = result.url;
                              $('input#hdnSetUplaterMobile').val(url);
                            }
                            //window.location.replace(result.url);
                          }
                        }
                      } else {
                        if (result.url) {
                          window.location.replace(result.url);
                        }
                      }
                    } else {
                      $('.loginErrorMsgMobile').text(result.errorMsg);
                    }
                    hideLoader();
                  }, delay * 1000);
                }
              },
              error: function(XMLHttpRequest, textStatus, errorThrown) {
                //alert("Request: " + XMLHttpRequest.toString() + "\n\nStatus: " + textStatus + "\n\nError: " + errorThrown);
              }
            });
          }
        }

        function ValidateOTPMobile() {
          var vendorId_val = $('#txtVendorIdMobile').val();
          var OTP_val = $('#txtOTPMobile').val();
          $.ajax({
            method: "POST",
            url: "Index.aspx/ValidateOTP",
            contentType: "application/json",
            dataType: 'json',
            data: '{vendorId: "' + vendorId_val + '", OTP: "' + OTP_val + '"}',
            success: function(response) {
              if (response.d) {
                var result = JSON.parse(response.d);
                if (result.isSuccess) {
                  $('#txtOTP_ErrorMsgMobile').text('');
                  var url = $('input#hdnSetUplaterMobile').val();
                  window.location.replace(url);
                } else {
                  $('#txtOTP_ErrorMsgMobile').html(result.errorMsg);
                }
              }
            },
            error: function(XMLHttpRequest, textStatus, errorThrown) {
              //alert("Request: " + XMLHttpRequest.toString() + "\n\nStatus: " + textStatus + "\n\nError: " + errorThrown);
            }
          });
          return false;
        }

        function SetUpLaterMobile() {
          var val = $('input#hdnSetUplaterMobile').val();
          window.location.replace(val);
          return false;
        }
        $('#btnForgotPassword').click(function() {
          var vendorId_val = $('#txtForgotPasswordId').val();
          var captchaInput = document.getElementById("txtimgcodeForgot").value;
          if (validateForgotPassword(false)) {
            $.ajax({
              method: "POST",
              url: "Index.aspx/ResetPassword",
              contentType: "application/json",
              dataType: 'json',
              data: '{vendorId: "' + vendorId_val + '",strCaptchaCode: "' + captchaInput + '"}',
              success: function(response) {
                if (response.d) {
                  RefreshCaptcha(true, true, false, "Forgot");
                  document.getElementById("txtimgcodeForgot").value = "";
                  var result = JSON.parse(response.d);
                  if (result.isSuccess) {
                    $('#txtForgotPasswordId_ErrorMsg').text('');
                    var ceaseInfo = result.ceaseInfo;
                    if (ceaseInfo) {
                      if (ceaseInfo.isCeased) {
                        if (ceaseInfo.reachEndDate) {
                          $('#btnForgotPassword').parents('.popup-inner').slideUp();
                          $('.termination-part').slideDown();
                          $('.popup-content').addClass('content-large');
                          $('#login').addClass('large');
                        } else {}
                      } else {
                        $('#btnForgotPassword').parents('.popup-inner').slideUp();
                        $('.sent-part').slideDown();
                      }
                    } else {
                      $('#btnForgotPassword').parents('.popup-inner').slideUp();
                      $('.sent-part').slideDown();
                    }
                  } else {
                    $('#txtForgotPasswordId_ErrorMsg').text(result.errorMsg);
                  }
                }
              },
              error: function(XMLHttpRequest, textStatus, errorThrown) {
                //alert("Request: " + XMLHttpRequest.toString() + "\n\nStatus: " + textStatus + "\n\nError: " + errorThrown);
              }
            });
          }
        });
        $('#btnForgotPasswordMobile').click(function() {
          var vendorId_val = $('#txtForgotPasswordIdMobile').val();
          var captchaInput = document.getElementById("txtimgcodeForgot1").value;
          if (validateForgotPassword(true)) {
            $.ajax({
              method: "POST",
              url: "Index.aspx/ResetPassword",
              contentType: "application/json",
              dataType: 'json',
              data: '{vendorId: "' + vendorId_val + '",strCaptchaCode: "' + captchaInput + '"}',
              success: function(response) {
                console.log(response);
                if (response.d) {
                  RefreshCaptcha(true, true, true, "Forgot");
                  document.getElementById("txtimgcodeForgot1").value = "";
                  var result = JSON.parse(response.d);
                  if (result.isSuccess) {
                    $('#txtForgotPasswordIdMobile_ErrorMsg').text('');
                    var ceaseInfo = result.ceaseInfo;
                    if (ceaseInfo) {
                      if (ceaseInfo.isCeased) {
                        if (ceaseInfo.reachEndDate) {
                          $('#btnForgotPasswordMobile').parents('.mob-log-inner').slideUp();
                          $('.ter-part1').slideDown();
                        } else {}
                      } else {
                        $('#btnForgotPasswordMobile').parents('.mob-log-inner').slideUp();
                        $('.mob-sent-part').slideDown();
                      }
                    } else {
                      $('#btnForgotPasswordMobile').parents('.mob-log-inner').slideUp();
                      $('.mob-sent-part').slideDown();
                    }
                  } else {
                    $('#txtForgotPasswordIdMobile_ErrorMsg').text(result.errorMsg);
                  }
                }
              },
              error: function(XMLHttpRequest, textStatus, errorThrown) {
                //alert("Request: " + XMLHttpRequest.toString() + "\n\nStatus: " + textStatus + "\n\nError: " + errorThrown);
              }
            });
          }
        });
        $(document).on('click', '.open-login', function() {
          $(this).parents('.popup-inner').slideUp();
          $('.login-part').slideDown();
          $('.popup-content').removeClass('content-large');
          $('#login').removeClass('large');
        });
        $(document).on('click', '.open-forgot', function() {
          $(this).parents('.popup-inner').slideUp();
          $('.forgot-part').slideDown();
        });
        $(document).on('click', '.close-popup', function() {
          $.magnificPopup.close();
          $('.loginErrorMsg').text('');
        });
        /*for mobile login*/
        $(document).on('click', '.open-ter-2', function() {
          $(this).parents('.mob-log-inner').slideUp();
          $('.ter-part2').slideDown();
        });
        $(document).on('click', '.open-mob-login', function() {
          $(this).parents('.mob-log-inner').slideUp();
          $('.mob-login-part').slideDown();
        });
        $(document).on('click', '.open-mob-forgot', function() {
          $(this).parents('.mob-log-inner').slideUp();
          $('.mob-forgot-part').slideDown();
        });

        function validatePassword(isMobile) {
          var password = '';
          var vendorID = '';
          var captchaInput = '';
          var captchaImage = '';
          if (isMobile) {
            captchaInput = document.getElementById("txtimgcodeLogin1").value;
            captchaImage = document.getElementById("cpMainContent_CaptchaUserControlLogin1_imgCaptcha").alt
            vendorID = $('#txtVendorIdMobile').val();
            password = $('#txtPasswordMobile').val();
            $('.loginErrorMsgMobile').text('');
            $('#txtVendorIdMobile').closest('.form-group').removeClass('with-error');
            $('#txtPasswordMobile').closest('.form-group').removeClass('with-error');
          } else {
            captchaInput = document.getElementById("txtimgcodeLogin").value;
            captchaImage = document.getElementById("cpMainContent_CaptchaUserControlLogin_imgCaptcha").alt
            vendorID = $('#txtVendorId').val();
            password = $('#txtPassword').val();
            $('.loginErrorMsg').text('');
            $('#txtVendorId').closest('.form-group').removeClass('with-error');
            $('#txtPassword').closest('.form-group').removeClass('with-error');
          }
          if (vendorID.length == 0) {
            if (!isMobile) {
              $('.loginErrorMsg').text('Please enter User ID.');
              $('#txtVendorId').closest('.form-group').addClass('with-error');
            } else {
              $('.loginErrorMsgMobile').text('Please enter User ID.');
              $('#txtVendorIdMobile').closest('.form-group').addClass('with-error');
            }
            return false;
          }
          if (password.length == 0) {
            if (!isMobile) {
              $('.loginErrorMsg').text('Please enter password.');
              $('#txtPassword').closest('.form-group').addClass('with-error');
            } else {
              $('.loginErrorMsgMobile').text('Please enter password.');
              $('#txtPasswordMobile').closest('.form-group').addClass('with-error');
            }
            return false;
          }
          if (vendorID.length < 5 || password.length < 8) {
            if (!isMobile) {
              $('.loginErrorMsg').text('Your User ID or Password is invalid. Please try again.');
            } else {
              $('.loginErrorMsgMobile').text('Your User ID or Password is invalid. Please try again.');
            }
            return false;
          }
          if (!checkCaptcha(captchaInput, captchaImage)) {
            RefreshCaptcha(true, true, isMobile, "Login");
            return false;
          }
          return true;
        }

        function validateForgotPassword(isMobile) {
          var vendorID = '';
          var captchaInput = '';
          var captchaImage = '';
          if (isMobile) {
            captchaInput = document.getElementById("txtimgcodeForgot1").value;
            captchaImage = document.getElementById("cpMainContent_CaptchaUserControlForgot1_imgCaptcha").alt
            vendorID = $('#txtForgotPasswordIdMobile').val();
            $('#txtForgotPasswordIdMobile_ErrorMsg').text('');
            $('#txtForgotPasswordIdMobile_ErrorMsg').closest('.form-group').removeClass('with-error');
          } else {
            captchaInput = document.getElementById("txtimgcodeForgot").value;
            captchaImage = document.getElementById("cpMainContent_CaptchaUserControlForgot_imgCaptcha").alt
            vendorID = $('#txtForgotPasswordId').val();
            $('#txtForgotPasswordId_ErrorMsg').text('');
            $('#txtForgotPasswordId_ErrorMsg').closest('.form-group').removeClass('with-error');
          }
          if (vendorID.length == 0) {
            if (!isMobile) {
              $('#txtForgotPasswordId_ErrorMsg').text('Please enter User ID.');
              $('#txtForgotPasswordId_ErrorMsg').closest('.form-group').addClass('with-error');
            } else {
              $('#txtForgotPasswordIdMobile_ErrorMsg').text('Please enter User ID.');
              $('#txtForgotPasswordIdMobile_ErrorMsg').closest('.form-group').addClass('with-error');
            }
            return false;
          }
          if (vendorID.length < 5) {
            if (!isMobile) {
              $('#txtForgotPasswordId_ErrorMsg').text('Your User ID is invalid. Please try again.');
              $('#txtForgotPasswordId_ErrorMsg').closest('.form-group').addClass('with-error');
            } else {
              $('#txtForgotPasswordIdMobile_ErrorMsg').text('Your User ID is invalid. Please try again.');
              $('#txtForgotPasswordIdMobile_ErrorMsg').closest('.form-group').addClass('with-error');
            }
            return false;
          }
          if (!checkCaptcha(captchaInput, captchaImage)) {
            RefreshCaptcha(true, true, isMobile, "Forgot");
            return false;
          }
          return true;
        }

        function callPageSubmit(e, isMobile) {
          if (e.keyCode == 13) {
            if (!isMobile) $('#btnVendorLogin').trigger('click');
            else $('#btnVendorLoginMobile').trigger('click');
            return false;
          }
        }
        $(document).ready(function() {
          function showMsg(downTime) {
            if (downTime.Msg != '' && downTime.Msg.length > 0) {
              $.ajax({
                method: "POST",
                url: "Index.aspx/ValidateDownTimeMessage",
                contentType: "application/json",
                dataType: 'json',
                data: '{MsgID: "' + downTime.MsgID + '"}',
                async: false,
                cache: false,
                success: function(response) {
                  console.log(response);
                  if (response.d) {
                    var result = JSON.parse(response.d);
                    if (result.result) {
                      alert(downTime.Msg);
                    } else {
                      $('#btnVendorLogin').click(function() {
                        vendorPasswordValidation();
                      });
                      $('#btnVendorLoginMobile').click(function() {
                        vendorPasswordValidationMobile();
                      });
                      downTime.Status = 0; //means No notification, still can proceed to login page                                  
                    }
                  }
                }
              });
            }
            if (downTime.Status == 0) {
              return true;
            } else {
              return false;
            }
          }

          function serverValidate() {
            var LoginType_SP = "SP";
            var LoginType_Easy = "EASY";
            var LoginType_CP = "CP";
            var LoginType_AGD = "AGD";
            $.ajax({
              type: "Post",
              url: "ProcessHandler.ashx",
              data: "",
              dataType: 'json',
              success: function(data) {
                $.each(data, function(key, downTime) {
                  if (downTime.LoginType == LoginType_SP) {
                    $('#cpMainContent_btnSingpassLogin').prop("onclick", null).off("click");
                    $('#cpMainContent_btnSingpassLogin').on('click', function() {
                      return showMsg(downTime);
                    });
                    $('#' + mob_singpass_login).on('click', function() {
                      return showMsg(downTime);
                    });
                  }
                  if (downTime.LoginType == LoginType_CP) {
                    $('#cpMainContent_btnCorppassLogin').on('click', function() {
                      return showMsg(downTime);
                    });
                    $('#' + mob_corppass_login).on('click', function() {
                      return showMsg(downTime);
                    });
                  }
                  if (downTime.LoginType == LoginType_AGD) {
                    $('#btnVendorLoginMobile, #btnVendorLogin').prop("onclick", null).off("click");
                    $('#btnVendorLoginMobile, #btnVendorLogin').on('click', function() {
                      return showMsg(downTime);
                    });
                  }
                });
              }
            });
          }
          serverValidate();
        });

        function displayLoader() {
          $('.loader').html('<img src="Images/loader.gif" alt="loader" align="loader">');
          $('.draft-loader').fadeIn();
          $('.loader').show();
          $('.draft-loader').show();
        }

        function hideLoader() {
          $('.loader').hide();
          $('.draft-loader').hide();
        }

        function RSAEncrypt(input) {
          var public_key =
            "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzTy52KfUPrDSlFTEPc+Fpo3JqFMYrEm3Ymt60CQwzsVeadRIFRudAUMhkWbPy73kok90O8Xflm29ZppKeC8hJF4aWDGQmSu6H8huT0D85wsfpypAVp5wXpqdElHCOObzqU8721SsA9l/Pb+pYZNlqztzzC2WsMgz8EAm6Yfq/8SwsHxn+LMSS3PoAMzB9kxxNOcAS+rdgD66nTsK8RPNQ5rHSh0sxyCrojXCCHyBgucFkD56HFCwl5z+PICCSjCbmBY+YeMLqgpo0gojgr//U69gjKuSflZ8s4GF14kx+ww3bd7wGbaZDcVGcyLHniGcL85QqBZrbtq8q0/PzNr91QIDAQAB";
          if (public_key) {
            var encrypt = new JSEncrypt();
            encrypt.setPublicKey(public_key);
            return encrypt.encrypt(input);
          }
          return input;
        }
      </script>
    </div>
  </div>
  <div id="footer">
    <footer class="footer footer-dark">
      <div class="footer-in">
        <div class="footer-left">
          <ul class="clear-ul">
            <li><a href="https://tech.gov.sg/report_vulnerability" target="_blank">Report Vulnerability</a></li>
            <li><a href="../Common/PrivacyStatement.aspx" target="_blank">Privacy</a></li>
            <li><a href="../Common/TermsOfUse.aspx" target="_blank">Terms of Use</a></li>
            <li><a href="../Help/SiteMap.aspx" target="_blank">Sitemap</a></li>
          </ul>
          <p>This site is best viewed using latest version of Chrome, Safari and Internet Explorer</p>
        </div>
        <div class="footer-right"> © <span id="ctl23_lblYear">2023</span>, Government of Singapore. <span id="ctl23_lblLastUpdatedDate">Updated as at 19 Oct 2022</span>
        </div>
      </div>
    </footer>
  </div>
</form>

Text Content

A Singapore Government Agency Website How to identify

Official website links end with gov.sg

Government agencies communicate via .gov.sg websites (e.g. go.gov.sg/open).
Trusted websites

Secure websites using HTTPS

Look for a lock() or https:// as an added precaution. Share sensitive
information only on official, secure websites.

 * FAQs
 * User Manuals
 * Useful Resources
   * List of Approved Banks
   * List of Factoring Companies
   * List of Ministries / Statutory Boards
 * Helpdesk
 * Login with Singpass
 * Login with Corppass

Search

Search



YOUR ONE-STOP BILLING SERVICE FOR SINGAPORE'S GOVERNMENT.

Get started by logging in.

Click here if you do not have an account

For Local & Foreign Entities

For Local & Foreign Entities

For Individuals

For Individuals

Click here if you are a foreign individual with an AGD Password

Or


FOR FOREIGN INDIVIDUALS WITH AGD PASSWORD







Note: This is a security feature to prevent spam.
Register for Two-Factor Authentication (2FA)
Forgot Password
Login

Please be informed that Corppass login has replaced your AGD ID/Password login
since 31 August 2017. You may login to Vendors@Gov using Corppass.

Please register for Corppass at www.corppass.gov.sg, and set up the Vendors@Gov
digital service at the Corppass portal to access Vendors@Gov.

Next

Corppass registration
Please refer to the User Guides and FAQs.
You may also contact the Corppass Helpdesk at 6643 0577 or
support@corppass.gov.sg.

Vendors@Gov digital service set up
Please refer to the User Guides and FAQs, under the "02 Getting Started / Login
Matters" section. You may also contact AGD at Corppass_For_Vendors@agd.gov.sg,
or log a helpdesk ticket at www.vendors.gov.sg under "Helpdesk".

Close


REGISTERING FOR 2FA (GOOGLE AUTHENTICATOR)

All vendors issued with AGD Password will need to register for 2FA (Google
Authenticator) by 30th April 2020 in order to proceed to login.

All vendors issued with AGD Password will need to register for 2FA (Google
Authenticator) in order to proceed to login.

You may click here for the user guide on registering for 2FA.




ENTER THE OTP FROM GOOGLE AUTHENTICATOR APP





FOR FOREIGN INDIVIDUALS WITH AGD PASSWORD


FORGOT PASSWORD






Note: This is a security feature to prevent spam.
Back Submit


AN EMAIL TO RESET YOUR PASSWORD WILL BE SENT TO YOU IF THE USER ID IS VALID

Ok

Regular System Maintenance:

Regular System Maintenance:

Please note that the system will not be available between 0500hrs to 0600hrs,
and 1900hrs to 1930hrs (GMT+8) from Mon to Sat.




LATEST UPDATES






LOG IN FOR FOREIGN INDIVIDUALS

This AGD Password option is only applicable for
foreign individuals without Singpass.

User ID *
Password * Please enter the CAPTCHA Code (case sensitive):



Note: This is a security feature to prevent spam.
Register for Two-Factor Authentication (2FA)
Forgot Password
Cancel Login


TERMINATION OF AGD PASSWORD LOGIN SINCE 31 AUGUST 2017

Please be informed that Corppass login has replaced your AGD ID/Password login
since 31 August 2017. You may login to Vendors@Gov using Corppass.

Please register for Corppass at www.corppass.gov.sg , and set up the Vendors@Gov
digital service at the Corppass portal to access Vendors@Gov.

For assistance:

Corppass registration
Please refer to the User Guides and FAQs. You may also contact the Corppass
Helpdesk at 6643 0577 or support@corppass.gov.sg.

Vendors@Gov digital service set up -
Please refer to the User Guides and FAQs , under the "2 Getting Started / Login
Matters" section. You may also contact AGD at Corppass_For_Vendors@agd.gov.sg,
or log a helpdesk ticket at www.vendors.gov.sg under "Helpdesk".

Close


FORGOT PASSWORD

User ID *
Please enter the CAPTCHA Code (case sensitive):



Note: This is a security feature to prevent spam.

Back Submit


AN EMAIL HAS BEEN SENT

An email to reset your password will be sent to you if the User ID is valid
Ok


REGISTERING FOR 2FA (GOOGLE AUTHENTICATOR)


All vendors issued with AGD Password will need to register for 2FA (Google
Authenticator) by 30th April 2020 in order to proceed to login.

All vendors issued with AGD Password will need to register for 2FA (Google
Authenticator) in order to proceed to login.

You may click here for the user guide on registering for 2FA.




ENTER THE OTP FROM GOOGLE AUTHENTICATOR APP



 * Report Vulnerability
 * Privacy
 * Terms of Use
 * Sitemap

This site is best viewed using latest version of Chrome, Safari and Internet
Explorer

© 2023, Government of Singapore. Updated as at 19 Oct 2022