Beispiel #1
0
        internal RespuestaPayOnline3pDTO ObtenerRespuestaPayOnline3pDTO(RespuestaStruct_PayOnLine_3p originalResponse)
        {
            RespuestaPayOnline3pDTO dto = new RespuestaPayOnline3pDTO();

            if (originalResponse != null)
            {
                dto.ResponseCod              = Convert.ToInt32(originalResponse.psp_ResponseCod);
                dto.ResponseMsg              = originalResponse.psp_ResponseMsg;
                dto.ResponseExtended         = originalResponse.psp_ResponseExtended;
                dto.TransactionId            = Convert.ToInt64(originalResponse.psp_TransactionId);
                dto.Session3p                = originalResponse.psp_Session3p;
                dto.FrontPSP_URL             = originalResponse.psp_FrontPSP_URL;
                dto.MerchantId               = originalResponse.psp_MerchantId;
                dto.MerchTxRef               = originalResponse.psp_MerchTxRef;
                dto.MerchOrderId             = originalResponse.psp_MerchOrderId;
                dto.CustomerMail             = originalResponse.psp_CustomerMail;
                dto.MerchantMail             = originalResponse.psp_MerchantMail;
                dto.Plan                     = originalResponse.psp_Plan;
                dto.FirstPaymentDeferralDate = originalResponse.psp_FirstPaymentDeferral;
                dto.PosDateTime              = Convert.ToDateTime(originalResponse.psp_PosDateTime);

                if (dto.ResponseCod != Convert.ToInt16(RespuestaSolicitudAutorizacionNPS.Exitosa))
                {
                    dto.ErrorMessage = dto.ResponseMsg;
                    if (dto.ResponseExtended != null)
                    {
                        dto.ErrorMessage += " Detalle: " + dto.ResponseExtended;
                    }
                }
            }

            return(dto);
        }
Beispiel #2
0
        private string ArmarRequest(NpsModel model)
        {
            try
            {
                //var proxy = new NpsService.PaymentServicePlatformPortTypeClient("PaymentServicePlatformPort");

                System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;

                PaymentServicePlatformPortTypeClient client =
                    new PaymentServicePlatformPortTypeClient("PaymentServicePlatformPort");

                RespuestaStruct_PayOnLine_3p     result = new RespuestaStruct_PayOnLine_3p();
                RequerimientoStruct_PayOnLine_3p query  = new RequerimientoStruct_PayOnLine_3p();
                query = GetRequestPayOnline3p(model);

                this.AuditRequestResponse(JsonConvert.SerializeObject(query));
                result = client.PayOnLine_3p(query);
                this.AuditRequestResponse(JsonConvert.SerializeObject(result));

                //Estoy actualizando por referencia los valores de los campos dentro del registro tbPaymentDetails
                _paymentDetail.pde_vendor_response_id     = result.psp_TransactionId;
                _paymentDetail.pde_vendor_response_status = result.psp_ResponseCod;

                if (!string.IsNullOrEmpty(result.psp_FrontPSP_URL))
                {
                    return(result.psp_FrontPSP_URL);
                }
                else
                {
                    return(result.psp_ResponseExtended);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }