An offer is a recurring plan which a user can subscribe to. You can create different offers with different plan attributes e.g. a monthly or a yearly based paid offer/plan.
Inheritance: BaseModel
        public void Initialize()
        {
            base.Initialize();
            interval = Interval.period(1, Interval.TypeUnit.MONTH);
            this.payment = _paymill.PaymentService.CreateWithTokenAsync(testToken).Result;
            this.offer1 = _paymill.OfferService.CreateAsync(this.amount, this.currency, this.interval, this.name).Result;
            this.offer2 = _paymill.OfferService.CreateAsync(this.amount * 2, this.currency, this.interval, "Updated " + this.name).Result;

        }
Exemple #2
0
        static void updateOffer()
        {
            Paymill.ApiKey = Properties.Settings.Default.ApiKey;
            Paymill.ApiUrl = Properties.Settings.Default.ApiUrl;
            OfferService offerService = Paymill.GetService<OfferService>();

            Offer offer = new Offer();
            offer.Name = "Oferta 48";
            offer.Id = "offer_6eea405f83d4d3098604";

            Offer updatedOffer = offerService.UpdateOffer(offer);

            Console.WriteLine("OfferID:" + updatedOffer.Id);
            Console.Read();
        }
Exemple #3
0
        static void addOffer()
        {
            Paymill.ApiKey = Properties.Settings.Default.ApiKey;
            Paymill.ApiUrl = Properties.Settings.Default.ApiUrl;
            OfferService offerService = Paymill.GetService<OfferService>();

            Offer offer = new Offer();
            offer.Amount = 1500;
            offer.Currency = "eur";
            offer.Interval = Offer.TypeInterval.MONTH;
            offer.Name = "Prueba API";
            offer.Trial_Period_Days = 3;

            Offer newOffer = offerService.AddOffer(offer);

            Console.WriteLine("OfferID:" + newOffer.Id);
            Console.Read();
        }
        public ActionResult Index()
        {
            ViewBag.Message = "Modifique esta plantilla para poner en marcha su aplicación ASP.NET MVC.";

            Paymill.ApiKey = "9a4129b37640ea5f62357922975842a1";
            HttpClient client = Paymill.Client;

            /*
            // listado de clientes
            var task = client.GetAsync(Paymill.ApiUrl + "/clients").ContinueWith(
                (result) =>
                {
                    var response = result.Result;
                    response.EnsureSuccessStatusCode();

                    var task2 = response.Content
                        .ReadAsAsync<JObject>()
                        .ContinueWith(readResult =>
                        {
                            var jsonArray = readResult.Result;
                            var lstOffers = new List<Client>();
                            lstOffers = Newtonsoft.Json.JsonConvert
                                .DeserializeObject<List<Client>>(jsonArray["data"].ToString());

                            foreach (Client cliente in lstOffers)
                            {
                                Console.WriteLine("Name: {0}", cliente.Description);
                                int i = 0;
                            }

                        });
                });*/

            /*
            // nuevo cliente
            Client c = new Client();
            c.Description = "Prueba";
            c.Email="*****@*****.**";

            string json = Newtonsoft.Json.JsonConvert.SerializeObject(c).ToLower();
            HttpContent content = new StringContent(json, System.Text.Encoding.UTF8, "application/json");

            task = client.PostAsync(Paymill.ApiUrl + "/clients", content).ContinueWith(
                (result) =>
                {
                    var response = result.Result;
                    response.EnsureSuccessStatusCode();

                    var task2 = response.Content
                        .ReadAsAsync<JObject>()
                        .ContinueWith(readResult =>
                        {
                            var jsonArray = readResult.Result;

                            Client cteNuevo = Newtonsoft.Json.JsonConvert
                                .DeserializeObject<Client>(jsonArray["data"].ToString());

                            Console.WriteLine("Name: {0}", cteNuevo.Id);
                            Console.WriteLine("Name: {0}", cteNuevo.Email);

                        });
                });*/

            // nueva oferta
            Offer off = new Offer();
            off.Amount = 4200;
            off.Currency = "eur";
            off.Interval = Offer.TypeInterval.WEEK;
            off.Name = "Oferta";
            off.Trial_Period_Days = 3;

            string peticion = new URLEncoder().Encode<Offer>(off);
            var content = new StringContent(peticion);
            content.Headers.ContentType = new MediaTypeHeaderValue("application/x-www-form-urlencoded");

            var task = client.PostAsync(Paymill.ApiUrl + "/offers", content).ContinueWith(
                (result) =>
                {
                    var response = result.Result;
                    response.EnsureSuccessStatusCode();

                    var task2 = response.Content
                        .ReadAsAsync<JObject>()
                        .ContinueWith(readResult =>
                        {
                            var jsonArray = readResult.Result;

                            Offer cteNuevo = Newtonsoft.Json.JsonConvert
                                .DeserializeObject<Offer>(jsonArray["data"].ToString());

                            Console.WriteLine("Name: {0}", cteNuevo.Id);
                            Console.WriteLine("Name: {0}", cteNuevo.Name);

                        });
                });

            return View();
        }
 static internal void ValidatesOffer(Offer offer)
 {
     if (offer == null || String.IsNullOrWhiteSpace(offer.Id))
         throw new ArgumentException("Offer or its  Id can not be blank");
 }
Exemple #6
0
 public Creator WithOffer(Offer offer)
 {
     this.Offer = offer;
     return this;
 }
Exemple #7
0
        public static Creator Create(String paymentId, Offer offer)
        {
            return new Creator(new Payment(paymentId), offer);

        }
Exemple #8
0
 internal Creator(Payment payment, Offer offer)
 {
     this.Payment = payment;
     this.Offer = offer;
 }
        public void EncodeOfferAdd()
        {
            URLEncoder urlEncoder = new URLEncoder();

            Offer offer = new Offer();
            offer.Amount = 1500;
            offer.Currency = "eur";
            offer.Interval = Offer.TypeInterval.MONTH;
            offer.Name = "Prueba API";
            offer.Trial_Period_Days = 3;

            string expected = "amount=1500&currency=eur&interval=month&name=Prueba+API";
            string reply = urlEncoder.EncodeOfferAdd(offer);

            Assert.AreEqual(expected, reply);
        }
Exemple #10
0
 public static Creator Create(Payment payment, Offer offer)
 {
     return new Creator(payment, offer);
 }
        public void EncodeOfferUpdate()
        {
            URLEncoder urlEncoder = new URLEncoder();

            Offer offer = new Offer();
            offer.Name = "Oferta 48";
            offer.Id = "offer_6eea405f83d4d3098604";

            string expected = "amount=0&interval=week&name=Oferta+48";
            string reply = urlEncoder.EncodeOfferAdd(offer);

            Assert.AreEqual(expected, reply);
        }
Exemple #12
0
 public Creator WithOffer(Offer offer)
 {
     this.Offer = offer;
     return(this);
 }
Exemple #13
0
 internal Creator(Payment payment, Offer offer)
 {
     this.Payment = payment;
     this.Offer   = offer;
 }
Exemple #14
0
 public static Creator Create(String paymentId, Offer offer)
 {
     return(new Creator(new Payment(paymentId), offer));
 }
Exemple #15
0
 public static Creator Create(Payment payment, Offer offer)
 {
     return(new Creator(payment, offer));
 }