public Item(StripeInvoiceLineItem item)
 {
     Amount = (item.Amount / 100).ToString("F");
     if (!string.IsNullOrWhiteSpace(item.Description))
     {
         Description = item.Description;
     }
     else if (!string.IsNullOrWhiteSpace(item.Plan?.Nickname) && item.Quantity.GetValueOrDefault() > 0)
     {
         Description = $"{item.Quantity} x {item.Plan.Nickname}";
     }
     else
     {
         Description = "--";
     }
 }
        public static InvoiceItem ToInvoiceItem(this StripeInvoiceLineItem lineItem)
        {
            if (lineItem == null)
            {
                return(null);
            }
            var invoiceItem = new InvoiceItem
            {
                Id                     = lineItem.Id,
                Quantity               = lineItem.Quantity == null ? 1 : (int)lineItem.Quantity,
                Plan                   = lineItem.Plan.ToSubscriptionPlan(),
                CurrentPeriodEndDate   = lineItem.StripePeriod.End,
                CurrentPeriodStartDate = lineItem.StripePeriod.Start,
                SubscriptionId         = lineItem.SubscriptionId,
                Amount                 = lineItem.Amount.ToDecimalAmount()
            };

            return(invoiceItem);
        }
        internal static InvoiceLineItem TransformStripeInvoiceItemToInvoiceLineItem(StripeInvoiceLineItem stripeInvoiceItem)
        {
            var invoiceLineItem = new InvoiceLineItem
            {
                Description = stripeInvoiceItem.Description,
                Proration   = stripeInvoiceItem.Proration,
                Amount      = Sahara.Core.Common.Methods.Billing.ConvertStripeAmountToDollars(stripeInvoiceItem.Amount.ToString())
            };

            if (stripeInvoiceItem.Plan != null)
            {
                invoiceLineItem.PlanDescription = stripeInvoiceItem.Plan.Name;

                invoiceLineItem.PlanInterval      = stripeInvoiceItem.Plan.Interval;
                invoiceLineItem.PlanIntervalCount = stripeInvoiceItem.Plan.IntervalCount;
            }

            return(invoiceLineItem);
        }
Exemple #4
0
 public Item(StripeInvoiceLineItem item)
 {
     Amount      = (item.Amount / 100).ToString("F");
     Description = item.Description ?? "--";
 }