Represents an instance where a coupon has been redeemed for a subscription
Beispiel #1
0
        /// <summary>
        /// Returns the active coupon redemption on this invoice
        /// </summary>
        /// <returns></returns>
        public CouponRedemption GetRedemption()
        {
            var cr         = new CouponRedemption();
            var statusCode = Client.Instance.PerformRequest(Client.HttpRequestMethod.Get, memberUrl() + "/redemption", cr.ReadXml);

            return(statusCode == HttpStatusCode.NotFound ? null : cr);
        }
        /// <summary>
        /// Returns the active coupon redemption on this account
        /// </summary>
        /// <returns></returns>
        public CouponRedemption GetActiveRedemption()
        {
            var cr = new CouponRedemption();

            var statusCode = Client.Instance.PerformRequest(Client.HttpRequestMethod.Get,
                                                            UrlPrefix + Uri.EscapeUriString(AccountCode) + "/redemption",
                                                            cr.ReadXml);

            return(statusCode == HttpStatusCode.NotFound ? null : cr);
        }
        /// <summary>
        /// Redeem an active coupon for an account
        /// </summary>
        /// <param name="accountCode"></param>
        /// <param name="currency"></param>
        internal static CouponRedemption Redeem(string accountCode, string couponCode, string currency, string subscriptionUuid=null)
        {
            var cr = new CouponRedemption {AccountCode = accountCode, Currency = currency, SubscriptionUuid = subscriptionUuid};

            var statusCode = Client.Instance.PerformRequest(Client.HttpRequestMethod.Post,
               "/coupons/" + Uri.EscapeUriString(couponCode) + "/redeem",
               cr.WriteXml,
               cr.ReadXml);

            return cr;

        }
Beispiel #4
0
        /// <summary>
        /// Redeem an active coupon for an account
        /// </summary>
        /// <param name="accountCode"></param>
        /// <param name="currency"></param>
        internal static CouponRedemption Redeem(string accountCode, string couponCode, string currency)
        {
            var cr = new CouponRedemption {
                AccountCode = accountCode, Currency = currency
            };

            var statusCode = Client.Instance.PerformRequest(Client.HttpRequestMethod.Post,
                                                            "/coupons/" + Uri.EscapeUriString(couponCode) + "/redeem",
                                                            cr.WriteXml,
                                                            cr.ReadXml);

            return(cr);
        }
 /// <summary>
 /// Redeems a coupon on this account
 /// </summary>
 /// <param name="couponCode"></param>
 /// <param name="currency"></param>
 /// <returns></returns>
 public CouponRedemption RedeemCoupon(string couponCode, string currency)
 {
     return(CouponRedemption.Redeem(AccountCode, couponCode, currency));
 }
        /// <summary>
        /// Returns the active coupon redemption on this invoice
        /// </summary>
        /// <returns></returns>
        public CouponRedemption GetRedemption()
        {
            var cr = new CouponRedemption();

            var statusCode = Client.Instance.PerformRequest(Client.HttpRequestMethod.Get,
                UrlPrefix + InvoiceNumber + "/redemption",
                cr.ReadXml);

            return statusCode == HttpStatusCode.NotFound ? null : cr;
        }
        /// <summary>
        /// Returns the active coupon redemption on this account
        /// </summary>
        /// <returns></returns>
        public CouponRedemption GetActiveRedemption()
        {
            var cr = new CouponRedemption();

            var statusCode = Client.Instance.PerformRequest(Client.HttpRequestMethod.Get,
                UrlPrefix + Uri.EscapeUriString(AccountCode) + "/redemption",
                cr.ReadXml);

            return statusCode == HttpStatusCode.NotFound ? null : cr;
        }
Beispiel #8
0
 /// <summary>
 /// Redeems a coupon on this account
 /// </summary>
 /// <param name="couponCode"></param>
 /// <param name="currency"></param>
 /// <returns></returns>
 public CouponRedemption RedeemCoupon(string couponCode, string currency, string subscriptionUuid = null)
 {
     return(CouponRedemption.Redeem(AccountCode, couponCode, currency, subscriptionUuid));
 }
 public bool Equals(CouponRedemption coupon)
 {
     return AccountCode == coupon.AccountCode && CouponCode == coupon.CouponCode;
 }
Beispiel #10
0
 public bool Equals(CouponRedemption coupon)
 {
     return(AccountCode == coupon.AccountCode && CouponCode == coupon.CouponCode);
 }
        /// <summary>
        /// Redeem an active coupon for an account
        /// </summary>
        /// <param name="accountCode"></param>
        /// <param name="currency"></param>
        internal static CouponRedemption Redeem(string accountCode, string couponCode, string currency)
        {
            CouponRedemption cr = new CouponRedemption();

            cr.AccountCode = accountCode;
            cr.Currency = currency;

            HttpStatusCode statusCode = Client.PerformRequest(Client.HttpRequestMethod.Post,
               "/coupons/" + System.Uri.EscapeUriString(couponCode) + "/redeem",
               new Client.WriteXmlDelegate(cr.WriteXml),
               new Client.ReadXmlDelegate(cr.ReadXml));

            return cr;
        }
Beispiel #12
0
        /// <summary>
        /// Returns the active coupon redemption on this invoice
        /// </summary>
        /// <returns></returns>
        public CouponRedemption GetCoupon()
        {
            CouponRedemption cr = new CouponRedemption();

            HttpStatusCode statusCode = Client.PerformRequest(Client.HttpRequestMethod.Get,
                UrlPrefix + System.Uri.EscapeUriString(this.InvoiceNumber.ToString()) + "/redemption",
                new Client.ReadXmlDelegate(cr.ReadXml));

            if (statusCode == HttpStatusCode.NotFound)
                return null;

            return cr;
        }