예제 #1
0
파일: Cielo.cs 프로젝트: RubensBR/Cielo
        public Retorno CancelarTransacao(string tid)
        {
            var ret = new Retorno();

            var dadosEc = new DadosEcAutenticacao { numero = Numero, chave = Chave };

            var msg = new RequisicaoCancelamento
            {
                id = DateTime.Now.ToString("yyyyMMdd"),
                versao = MensagemVersao.v110,
                tid = tid,
                dadosec = dadosEc
            };

            try
            {
                var xml = msg.ToXml<RequisicaoCancelamento>(Encoding.GetEncoding("iso-8859-1"));

                var res = EnviarMensagem(xml);

                ret = XmlToRetorno(res);
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return ret;
        }
예제 #2
0
파일: Cielo.cs 프로젝트: RubensBR/Cielo
        public Retorno CriarTransacao(DadosPedido dadosPedido, Bandeira bandeira, Uri urlRetorno)
        {
            var dadosEc = new DadosEcAutenticacao { numero = Numero, chave = Chave };
            var formaPagamento = new FormaPagamento { bandeira = bandeira, parcelas = 1, produto = FormaPagamentoProduto.CreditoAVista };
            var req = RequisicaoNovaTransacaoAutorizar.AutorizarAutenticadaENaoAutenticada;
            var capturar = true;

            return CriarTransacao(dadosPedido, dadosEc, formaPagamento, urlRetorno, req, capturar);
        }
예제 #3
0
파일: Cielo.cs 프로젝트: RubensBR/Cielo
        public Retorno CriarTransacao(DadosPedido dadosPedido, DadosEcAutenticacao dadosEc, FormaPagamento formaPagamento,
            Uri urlRetorno, RequisicaoNovaTransacaoAutorizar reqAutorizar, bool capturar)
        {
            var ret = new Retorno();

            var msg = new RequisicaoNovaTransacao
            {
                id = dadosPedido.numero,
                versao = MensagemVersao.v110,
                dadosec = dadosEc,
                dadospedido = dadosPedido,
                formapagamento = formaPagamento,
                urlretorno = urlRetorno.AbsoluteUri,
                autorizar = reqAutorizar,
                capturar = capturar
            };

            try
            {
                var xml = msg.ToXml<RequisicaoNovaTransacao>(Encoding.GetEncoding("iso-8859-1"));

                var res = EnviarMensagem(xml);

                ret = XmlToRetorno(res);
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return ret;
        }
예제 #4
0
파일: Cielo.cs 프로젝트: RubensBR/Cielo
        public Retorno CapturarTransacao(string tid, decimal valor, string anexo)
        {
            var ret = new Retorno();

            var dadosEc = new DadosEcAutenticacao { numero = Numero, chave = Chave };

            var msg = new RequisicaoCaptura
            {
                id = DateTime.Now.ToString("yyyyMMdd"),
                versao = MensagemVersao.v110,
                tid = tid,
                dadosec = dadosEc
            };

            if (valor > -1)
                msg.valor = valor.ToFormatoCielo();

            if (!string.IsNullOrWhiteSpace(anexo))
                msg.anexo = anexo;

            try
            {
                var xml = msg.ToXml<RequisicaoCaptura>(Encoding.GetEncoding("iso-8859-1"));

                var res = EnviarMensagem(xml);

                ret = XmlToRetorno(res);
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return ret;
        }