Beispiel #1
0
        /// <summary>
        /// Method creates Recurring Payment Action Request
        /// </summary>
        /// <returns></returns>
        private static String doRecurringPaymentActionRequest()
        {
            //RecurringPayment
            RecurringPaymentRequest oRecurringPaymentRequest = new RecurringPaymentRequest();
            IPGApiActionRequest     oIPGApiActionRequest     = oRecurringPaymentRequest.RecurringPaymentActionRequest;

            return(SendActionRequest(oIPGApiActionRequest));
        }
Beispiel #2
0
        /// <summary>
        /// Method creates Inquiry Order Action Request
        /// </summary>
        /// <returns></returns>
        private static String doInquiryOrderActionRequest()
        {
            //InquiryOrder
            InquiryOrderRequest oInquiryOrderRequest = new InquiryOrderRequest();
            IPGApiActionRequest oIPGApiActionRequest = oInquiryOrderRequest.InquiryOrderActionRequest;

            return(SendActionRequest(oIPGApiActionRequest));
        }
Beispiel #3
0
        /// <summary>
        /// Method creates an Initiate Clearing Action Request
        /// </summary>
        /// <returns></returns>
        private static String doInitiateClearingActionRequest()
        {
            //InitiateClearing
            InitiateClearingRequest oInitiateClearingRequest = new InitiateClearingRequest();
            IPGApiActionRequest     oIPGApiActionRequest     = oInitiateClearingRequest.InitiateClearingActionRequest;

            return(SendActionRequest(oIPGApiActionRequest));
        }
        /// <summary>
        /// Method returns string value of IPGApiOrderRequest object
        /// </summary>
        /// <param name="oIPGApiActionRequest">IPGApiActionRequest object to create string from</param>
        /// <returns>string value containing all IPGApiOrderRequest values</returns>
        public static string IPGApiActionRequestToString(this IPGApiActionRequest oIPGApiActionRequest)
        {
            if (oIPGApiActionRequest.Item == null)
            {
                return("");
            }

            return(oIPGApiActionRequest.Item.ActionToString());
        }
        public InitiateClearingRequest()
        {
            InitiateClearing oInitiateClearing = new InitiateClearing();

            oInitiateClearing.StoreId = "120995000";

            ClientLocale oClientLocale = new ClientLocale();

            oClientLocale.Country  = "UK";
            oClientLocale.Language = "en";

            WSIPGClient.WebReference.Action oAction = new WSIPGClient.WebReference.Action();
            oAction.Item         = oInitiateClearing;
            oAction.ClientLocale = oClientLocale;

            InitiateClearingActionRequest      = new IPGApiActionRequest();
            InitiateClearingActionRequest.Item = oAction;
        }
Beispiel #6
0
        public InquiryOrderRequest()
        {
            InquiryOrder oInquiryOrder = new InquiryOrder();

            oInquiryOrder.StoreId = "120995000";
            oInquiryOrder.OrderId = "C-0cc41568-aef6-45bb-8b26-5d1d5733191d";

            ClientLocale oClientLocale = new ClientLocale();

            oClientLocale.Country  = "UK";
            oClientLocale.Language = "en";

            WSIPGClient.WebReference.Action oAction;
            oAction              = new WSIPGClient.WebReference.Action();
            oAction.Item         = oInquiryOrder;
            oAction.ClientLocale = oClientLocale;

            InquiryOrderActionRequest      = new IPGApiActionRequest();
            InquiryOrderActionRequest.Item = oAction;
        }
Beispiel #7
0
        /// <summary>
        /// Method creates a IPG API Action Request, sends and recieves IPG API Action Response.
        /// </summary>
        /// <param name="oIPGApiActionRequest"></param>
        /// <returns>IPG API Action response as string</returns>
        private static String SendActionRequest(IPGApiActionRequest oIPGApiActionRequest)
        {
            var cert = CertificateHandler.LoadCertificate(@"c:\certificates\WS120995000._.4.p12", "tester02");

            IPGApiOrderService oIPGApiOrderService    = new IPGApiOrderService();
            String             RequestResponseMessage = "";

            if (cert != null)
            {
                oIPGApiOrderService.ClientCertificates.Add(cert);
                oIPGApiOrderService.Url = @"https://test.ipg-online.com:443/ipgapi/services";

                NetworkCredential nc = new NetworkCredential("WS120995000._.4", "Tester02");
                oIPGApiOrderService.Credentials = nc;

                //set proxy host and port
                IWebProxy webProxy = new WebProxy("host", 8080);
                webProxy.Credentials      = new NetworkCredential("username", "password");
                oIPGApiOrderService.Proxy = webProxy;
                try
                {
                    //send action request and get response
                    IPGApiActionResponse oResponse = oIPGApiOrderService.IPGApiAction(oIPGApiActionRequest);
                    RequestResponseMessage = oResponse.IPGApiActionResponseToString() ?? "";
                }
                catch (SoapException se)
                {//SoapException: MerchantException or ProcessingException
                    RequestResponseMessage = se.SoapExceptionResponseToString() ?? "";
                }
                catch (Exception e)
                {
                    RequestResponseMessage  = e.Message + Environment.NewLine;
                    RequestResponseMessage += e.InnerException + Environment.NewLine;
                    RequestResponseMessage += e.StackTrace;
                }
            }
            return(RequestResponseMessage);
        }
Beispiel #8
0
        public RecurringPaymentRequest()
        {
            RecurringPayment oRecurringPayment = new RecurringPayment();

            oRecurringPayment.StoreId  = "120995000";
            oRecurringPayment.Function = Function.install;

            RecurringPaymentInformation oRecurringPaymentInformation = new RecurringPaymentInformation();

            oRecurringPaymentInformation.InstallmentCount           = "12";
            oRecurringPaymentInformation.InstallmentFrequency       = "1";
            oRecurringPaymentInformation.InstallmentPeriod          = RecurringPaymentInformationInstallmentPeriod.month;
            oRecurringPaymentInformation.InstallmentPeriodSpecified = true;
            DateTime dateNow = DateTime.Now.AddDays(5);

            oRecurringPaymentInformation.RecurringStartDate = dateNow.ToString("yyyyMMdd");
            oRecurringPaymentInformation.MaximumFailures    = "3";

            oRecurringPayment.RecurringPaymentInformation = oRecurringPaymentInformation;

            CreditCardData oCreditCardData = new CreditCardData();

            oCreditCardData.Brand            = CreditCardDataBrand.VISA;
            oCreditCardData.BrandSpecified   = true;
            oCreditCardData.ItemsElementName = new ItemsChoiceType[] { ItemsChoiceType.CardNumber, ItemsChoiceType.ExpMonth, ItemsChoiceType.ExpYear, ItemsChoiceType.CardCodeValue };
            oCreditCardData.Items            = new Object[] { "4035874000424977", "12", "18", "977" };

            oRecurringPayment.CreditCardData = oCreditCardData;

            Payment oPayment = new Payment();

            oPayment.SubTotal    = 13;
            oPayment.ChargeTotal = 13;
            oPayment.Currency    = "978";

            oRecurringPayment.Payment = oPayment;

            Billing oBilling = new Billing();

            oBilling.Name     = "Name";
            oBilling.Address1 = "Address";
            oBilling.City     = "City";
            oBilling.State    = "State";
            oBilling.Zip      = "Zip";
            oBilling.Country  = "Country";

            oRecurringPayment.Billing = oBilling;

            ClientLocale oClientLocale = new ClientLocale();

            oClientLocale.Country  = "UK";
            oClientLocale.Language = "en";

            WSIPGClient.WebReference.Action oAction;
            oAction              = new WSIPGClient.WebReference.Action();
            oAction.Item         = oRecurringPayment;
            oAction.ClientLocale = oClientLocale;

            RecurringPaymentActionRequest      = new IPGApiActionRequest();
            RecurringPaymentActionRequest.Item = oAction;
        }