コード例 #1
0
        public async Task <PagoParResult <List <PagoParPaymentMethod> > > ListPaymentMethodsAsync()
        {
            try
            {
                _logger.LogInformation("Executing ListPaymentMethodsAsync");
                var body = new PaymentMethodsRequestModel
                {
                    TokenPublico = _pagoParConfig.PublicKey,
                    Token        = $"{_pagoParConfig.PrivateKey}FORMA-PAGO".Sha1()
                };
                var apiResult = await _httpClient.ListPaymentMethodsAsync(body);

                var result = new PagoParResult <List <PagoParPaymentMethod> >
                {
                    Respuesta = apiResult.Respuesta,
                    Resultado = apiResult.Resultado.Select(x => new PagoParPaymentMethod
                    {
                        Titulo      = x.Titulo,
                        Descripcion = x.Descripcion,
                        FormaPago   = x.FormaPago,
                        MontoMinimo = x.MontoMinimo
                    }).ToList(),
                    Error = apiResult.Error
                };
                return(result);
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, "Error in ListPaymentMethodsAsync");
                throw;
            }
        }
コード例 #2
0
        public async Task <PagoParResult <PagoParTransactionModel> > GetTransactionInfo(string hash)
        {
            try
            {
                _logger.LogInformation("Getting transaction", hash);
                var body = new GetTransactionInfoModel
                {
                    HashPedido   = hash,
                    TokenPublico = _pagoParConfig.PublicKey,
                    Token        = $"{_pagoParConfig.PrivateKey}CONSULTA".Sha1()
                };
                var apiResult = await _httpClient.GetTransactionAsync(body);

                var transaction = apiResult.Resultado.FirstOrDefault();
                if (transaction is null)
                {
                    return(null);
                }
                var result = new PagoParResult <PagoParTransactionModel>
                {
                    Respuesta = apiResult.Respuesta,
                    Resultado =
                    {
                        Cancelado              = transaction.Cancelado,
                        FechaMaximaPago        = transaction.FechaMaximaPago,
                        FechaPago              = transaction.FechaPago,
                        FormaPago              = transaction.FormaPago,
                        FormaPagoIdentificador = transaction.FormaPagoIdentificador,
                        HashPedido             = transaction.HashPedido,
                        Monto        = transaction.Monto,
                        NumeroPedido = transaction.NumeroPedido,
                        Pagado       = transaction.Pagado,
                        Token        = transaction.Token
                    }
                };
                return(result);
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, "Error in GetTransactionInfo");
                throw;
            }
        }