Example #1
0
        /// <exception cref="GPClientException"></exception>
        public Payment CreateRecurrentPayment(long id, NextPayment nextPayment)
        {
            var restRequest = CreateRestRequest(@"/payments/payment/{id}/create-recurrence");

            restRequest.AddParameter("id", id, ParameterType.UrlSegment);
            restRequest.AddJsonBody(nextPayment);
            var response = Client.Execute(restRequest);

            return(ProcessResponse <Payment>(response));
        }
        public async Task <Payment> CreateRecurrentPaymentAsync(long id, NextPayment nextPayment)
        {
            var restRequest = CreateRestRequest(@"/payments/payment/{id}/create-recurrence", "application/json");

            restRequest.AddParameter("id", id, ParameterType.UrlSegment);
            var content = await Client.ExecuteTaskAsync(restRequest);

            var result = await Task.Factory.StartNew(() => Deserialize <Payment>(content.Content));

            return(result);
        }
        public void GPConnectorTestNextOnDemandEET()
        {
            var connector = new GPConnector(TestUtils.API_URL, TestUtils.CLIENT_ID_EET, TestUtils.CLIENT_SECRET_EET);

            try
            {
                var nextPayment = new NextPayment
                {
                    OrderNumber      = "EETOnDemand4321",
                    Amount           = 2000,
                    Currency         = Currency.CZK,
                    OrderDescription = "EETOnDemand4321Description"
                };
                nextPayment.Items.Add(new OrderItem
                {
                    Name       = "OnDemand Prodlouzena zaruka",
                    Amount     = 2000,
                    Count      = 1,
                    VatRate    = VatRate.RATE_4,
                    ItemType   = ItemType.ITEM,
                    Ean        = "12345678901234",
                    ProductURL = @"https://www.eshop123.cz/pocitac/prodlouzena_zaruka"
                });

                var eet = new EET
                {
                    CelkTrzba = 2000,
                    ZaklDan1  = 1580,
                    Dan1      = 420,
                    Mena      = Currency.CZK
                };
                nextPayment.Eet = eet;

                var onDemandEETPayment = connector.GetAppToken().CreateRecurrentPayment(3049250282, nextPayment);

                Console.WriteLine("OnDemand payment id: {0}", onDemandEETPayment.Id);
                Console.WriteLine("OnDemand payment gw_url: {0}", onDemandEETPayment.GwUrl);
                Console.WriteLine("OnDemand EET Payment instrument: {0}", onDemandEETPayment.PaymentInstrument);
                Console.WriteLine("OnDemand recurrence: {0}", onDemandEETPayment.Recurrence);
                Console.WriteLine("OnDemand amount: {0}", onDemandEETPayment.Amount);
                Console.Write(onDemandEETPayment.EetCode);
                Console.WriteLine(nextPayment.Eet);
            }
            catch (GPClientException exception)
            {
                Console.WriteLine("Creating next on demand EET payment ERROR");
                var err  = exception.Error;
                var date = err.DateIssued;
                foreach (var element in err.ErrorMessages)
                {
                    //
                }
            }
        }
        /// <exception cref="GPClientException"></exception>
        public Payment CreateRecurrentPayment(long id, NextPayment nextPayment)
        {
            var recurrentPayment = CreateRestRequest(@"/payments/payment/{id}/create-recurrence", "application/json");

            recurrentPayment.AddParameter("id", id, ParameterType.UrlSegment);

            var jsonData = serializeToJson(nextPayment);

            recurrentPayment.AddParameter("application/json", jsonData, ParameterType.RequestBody);

            var response = Client.Execute(recurrentPayment);

            return(ProcessResponse <Payment>(response));
        }
Example #5
0
        public async Task <Payment> CreateRecurrentPaymentAsync(long id, NextPayment nextPayment)
        {
            var recurrentPayment = CreateRestRequest(@"/payments/payment/{id}/create-recurrence", "application/json");

            recurrentPayment.AddParameter("id", id, ParameterType.UrlSegment);

            var jsonData = serializeToJson(nextPayment);

            recurrentPayment.AddParameter("application/json", jsonData, ParameterType.RequestBody);

            var content = await Client.ExecuteAsync(recurrentPayment);

            var result = await Task.Factory.StartNew(() => ProcessResponse <Payment>(content));

            return(result);
        }
Example #6
0
        public void GPConnectorTestNextOnDemand()
        {
            var connector = new GPConnector(TestUtils.API_URL, TestUtils.CLIENT_ID, TestUtils.CLIENT_SECRET);

            try
            {
                NextPayment nextPayment = new NextPayment()
                {
                    OrderNumber      = "OnDemand4321",
                    Amount           = 4000,
                    Currency         = Currency.CZK,
                    OrderDescription = "OnDemand4321Description",
                };
                nextPayment.Items.Add(new OrderItem()
                {
                    Name = "OnDemand First Item", Amount = 2000, Count = 2
                });

                Payment onDemandPayment = connector.GetAppToken().CreateRecurrentPayment(3049249957, nextPayment);

                Console.WriteLine("OnDemand payment id: {0}", onDemandPayment.Id);
                Console.WriteLine("OnDemand payment gw_url: {0}", onDemandPayment.GwUrl);
                Console.WriteLine("OnDemand Payment instrument: {0}", onDemandPayment.PaymentInstrument);
                Console.WriteLine("OnDemand recurrence: {0}", onDemandPayment.Recurrence);
                Console.WriteLine("OnDemand amount: {0}", onDemandPayment.Amount);
            }
            catch (GPClientException exception)
            {
                Console.WriteLine("Creating next on demand payment ERROR");
                var      err  = exception.Error;
                DateTime date = err.DateIssued;
                foreach (var element in err.ErrorMessages)
                {
                    //
                }
            }
        }
Example #7
0
        public Payment NextPayment(GPConnector connector, long IdOfPaidOnDemandPayment, NextPayment nextPayment)
        {
            nextPayment.Items = new List <OrderItem>
            {
                new OrderItem
                {
                    Amount = nextPayment.Amount,
                    Count  = 1,
                    Name   = "Opakovaná platba",
                }
            };

            return(connector.CreateRecurrentPayment(IdOfPaidOnDemandPayment, nextPayment));
        }