Besides handling pricing models with various product plans, Upodi support discounting at several levels of the billing cycle. Discounts are percentage (%) based calculations which will deduct cost from the price and billing of an invoice.

Discounts are created by navigating to Product Catalog > Discounts.

Discount settings

Full nameNo restrictionsWill not be displayed anywhere. It is for internal use only.
AmountNumeric value, %percentageWill be displayed on the invoice under a separate column called "Discount".
Invoice textNo restrictionsWill be displayed on the invoice lines where the discount applies.
Discount type%percentageWe only support a percentage discount. More types to follow.
Expire afterNumeric value * Chosen intervalThis means the discount will automatically expire x time after it has been applied.
Allow one code per SubscriptionTrue/falseIf you set this to true then only one discount can be redeemed per unique subscription.
Allow one code per CustomerTrue/falseIf you set this to true then only one discount can be redeemed per unique customer.


Expire After Edge Case

Having an expire after interval lower than your billing cycle will not calculate the exact cost of the interval. A discount will always give the full discounted amount while active.

For example having a yearly billing cycle and a discount with expire after one month. The discount will apply to the entire invoice, while being active on the invoice date.

Applying a discount

Once a discount is created the discount can be applied to the following levels of a billing:

  • Customer level. The discount will be applied to the customer, and all subscriptions, and all subscription charges below.
  • Subscription level. The discount will be applied to the current subscription and all subscription charges below. If a given subscription charge has a discount applied, this discount will overrule.
  • Subscription charge level. The discount will be applied to the subscription charge and carried forward for each billing cycle. Only the specific subscription charge will be discounted. This is applied by viewing an active subscription under Subscription Charges.

If there are several discounts on different levels the most specific discount will overrule. For example if a given subscription has a discount applied, that discount will overrule any potential discount applied at the customer level.

Partner discount modelling

You can use the discount feature of Upodi, combined with parent billing to apply partner based discount fees to customers who is set to bill to parent. It is a common scenario to apply partner based rebates across customers.

In case of parent billing and discounting, each customer is first calculated using the discount approach discribed above, and then the partner discount is re-applied overall.

Discounts are coupled with discount codes.


We're always happy to help with code or other questions you might have! Search our documentation or contact helpdesk. You can also chat live with us using the Intercom icon.