protected async override Task <object> OnPerform()
        {
            var model = new
            {
                tillNumber     = _cacheManager.TillNumberForSale,
                saleNumber     = _cacheManager.SaleNumber,
                itemNumber     = _item,
                overrideCode   = _overrideCode,
                documentNumber = _documentNumber,
                documentDetail = _documentDetail
            };

            var contract = JsonConvert.SerializeObject(model);
            var content  = new StringContent(contract, Encoding.UTF8, ApplicationJSON);
            var response = await _restClient.OverrideLimitOverride(content);

            var data = await response.Content.ReadAsStringAsync();

            switch (response.StatusCode)
            {
            case HttpStatusCode.OK:
                var success = new DeSerializer().MapSuccess(data);
                return(success.success);

            default:
                return(await HandleExceptions(response));
            }
        }