public BaseResponse ParseMessageToResponse(string message)
        {
            BaseResponse baseResponse;

            try
            {
                JObject resultObj  = JObject.Parse(message);
                int     status     = Convert.ToInt32(resultObj["Status"]);
                int     returnCode = Convert.ToInt32(resultObj["ReturnCode"]);

                baseResponse = new BaseResponse()
                {
                    ReturnCode = returnCode,
                    Status     = status
                };

                if (status == 0 && returnCode == 0)
                {
                    throw new ArgumentNullException("ReturnCode and Status");
                }
            }
            catch (Exception ex)
            {
                logger.ErrorWithMetadata(new Dictionary <string, string> {
                    { "ExceptionType", ex.GetType().ToString() }, { "ErrorMessage", ex.Message }, { "StackTrace", ex.StackTrace }, { "Message", message }
                });
                baseResponse = new BaseResponse()
                {
                    ReturnMessage = "Ocorreu um erro ao formatar a mensagem de resposta na API da Cielo. Verifique o log de erro para mais detalhes"
                };
            }

            return(baseResponse);
        }
        public BaseResponse ParseMessageToResponse(string message)
        {
            BaseResponse searchPaymentResponse;

            try
            {
                JObject resultObj = JObject.Parse(message);
                int     status    = Convert.ToInt32(resultObj["Payment"]["Status"]);

                searchPaymentResponse = new BaseResponse()
                {
                    Status = status
                };
            }
            catch (Exception ex)
            {
                logger.ErrorWithMetadata(new Dictionary <string, string> {
                    { "ExceptionType", ex.GetType().ToString() }, { "ErrorMessage", ex.Message }, { "StackTrace", ex.StackTrace }, { "Message", message }
                });
                searchPaymentResponse = new BaseResponse()
                {
                    ReturnMessage = "Ocorreu um erro ao formatar a mensagem de resposta na API da Cielo. Verifique o log de erro para mais detalhes"
                };
            }

            return(searchPaymentResponse);
        }