public Card CreateCard(CreaTarjetaOpenPayRequest pRequest, string pCustomerId) { //string customer_id = "awzhvjquygrvcinbzvyc"; Card request = new Card { HolderName = pRequest.HolderName.Trim(), CardNumber = pRequest.CardNumber.Trim(), Cvv2 = pRequest.Cvv2.Trim(), ExpirationMonth = pRequest.ExpirationMonth.Trim(), ExpirationYear = pRequest.ExpirationYear.Trim() }; request.DeviceSessionId = pRequest.DeviceSessionId; //Address address = new Address(); //address.City = "Queretaro"; //address.CountryCode = "MX"; //address.State = "Queretaro"; //address.PostalCode = "79125"; //address.Line1 = "Av. Pie de la cuesta #12"; //address.Line2 = "Desarrollo San Pablo"; //address.Line3 = "Qro. Qro."; //request.Address = address; return(openpayAPI.CardService.Create(pCustomerId, request)); }
public IHttpActionResult CreateCardCustomer() { var open = new OpenPayFunctions(); var request = new CreaTarjetaOpenPayRequest(); request.HolderName = "Juan Perez Ramirez"; request.CardNumber = "4111111111111111"; request.Cvv2 = "110"; request.ExpirationMonth = "12"; request.ExpirationYear = "20"; request.DeviceSessionId = "kR1MiQhz2otdIuUlQkbEyitIqVMiI16f"; open.CreateCard(request, "awzhvjquygrvcinbzvyc"); return(Ok(true)); }
public async Task <HttpResponseMessage> CrearTarjetaOpenPay(CreaTarjetaOpenPayRequest pRequest) { var respuesta = new Respuesta { }; var strMetodo = "WSViajes - CrearTarjetaOpenPay "; string sid = Guid.NewGuid().ToString(); try { if (pRequest == null) { respuesta.Mensaje = "No se recibió datos de petición."; } else if (String.IsNullOrEmpty(pRequest.HolderName.ToString())) { respuesta.Mensaje = "El elemento <<HolderName>> no puede estar vacío ni igual a cero."; } else if (String.IsNullOrEmpty(pRequest.IdPersona.ToString()) || pRequest.IdPersona == 0) { respuesta.Mensaje = "El elemento <<IdPersona>> no puede estar vacío ni igual a cero."; } else if (String.IsNullOrEmpty(pRequest.CardNumber) || (pRequest.CardNumber.Length != 16 && pRequest.CardNumber.Length != 19)) { respuesta.Mensaje = "El elemento <<CardNumber>> no puede estar vacío ni igual a cero y debe tener 16 o 19 caracteres."; } else if (String.IsNullOrEmpty(pRequest.ExpirationMonth.ToString()) || pRequest.ExpirationMonth.Length > 2) { respuesta.Mensaje = "El elemento <<ExpirationMonth>> no puede estar vacío y debe terner 1 o 2 dígitos."; } else if (String.IsNullOrEmpty(pRequest.ExpirationYear.ToString())) { respuesta.Mensaje = "El elemento <<ExpirationYear>> no puede estar vacío."; } else if (string.IsNullOrEmpty(pRequest.DeviceSessionId)) { respuesta.Mensaje = "El elemento <<DeviceSessionId>> no puede estar vacío."; } else { string CustomerId = await new PersonaNegocio().ConsultarClienteIdOpenPay(pRequest.IdPersona); if (string.IsNullOrEmpty(CustomerId)) { respuesta.CodigoError = 10001; respuesta.Mensaje = $"El usuario indicado no cuenta con una relación a openpay interna."; } else { var resultado = new OpenPayFunctions().CreateCard(pRequest, CustomerId); if (resultado != null) { respuesta.Exito = true; respuesta.Mensaje = "Tarjeta creada con éxito."; } else { respuesta.Mensaje = "No se pudo crear la tarjeta."; } } } } catch (ServiceException Ex) { respuesta.CodigoError = Ex.Codigo; respuesta.Mensaje = Ex.Message; } catch (Exception Ex) { string strErrGUI = Guid.NewGuid().ToString(); string strMensaje = "Error Interno del Servicio [GUID: " + strErrGUI + "]."; Log.Error(Ex, "[" + strMetodo + "]" + "[SID:" + sid + "]" + strMensaje); respuesta.CodigoError = 10001; respuesta.Mensaje = "ERROR INTERNO DEL SERVICIO [" + strErrGUI + "]"; } return(Request.CreateResponse(System.Net.HttpStatusCode.OK, respuesta)); }