How Stripe Products, Plans, and Pricing Levels Work With NetSuite
In Stripe, you can create different records that are linked to NetSuite items:
- Pricing Plan (previously known as a "Plan"). This is associated or grouped within a product.
- Coupons. Used to give discounts (percentage, flat amount, etc) on a invoice.
- Invoice Items. These are one-time use line items for miscellaneous billing charges.
- SKU. This is rarely used and associated with the orders system and not Stripe Billing
When SuiteSync encounters any of these Stripe records, we either:
- Create a new NetSuite item in NetSuite for the Stripe record
- Link the Stripe record to an existing NetSuite item (either by matching or a direct link)
The item configuration (account, deferred revenue, rev rec options, reporting, etc) is configured in NetSuite and is not managed by SuiteSync (more information below).
A couple details worth noting:
- Stripe also allows you to create a "Product". This is a group of price plans and cannot be purchased directly, so it is not linked to a NetSuite item. Instead, you'll link the individual pricing levels grouped within the product.
- Stripe Billing used to be called Stripe Subscriptions. If you see references to "subscriptions" here (or anywhere else on the internet!) it's probably a reference to Stripe Billing.
How Plans & Products are Represented in NetSuite
Products in Stripe are essentially records which organize groups of price levels. Each price level (a "plan") has a corresponding item in NetSuite, while products (a group of price plans) do not.
There are a couple of different ways SuiteSync can represent Stripe pricing plans in NetSuite:
- Multiple plans in Stripe can be connected to one item in NetSuite. In other words, Stripe plans can be grouped into a single NetSuite item. This approach keeps your item master clean and simple, but limits the amount of control you have over revenue reporting. Every single plan in Stripe can only post to a single revenue account in NetSuite and rev rec cannot be customized across different plans. For example, you may want use this approach if you are price testing in Stripe but do not want a new NetSuite item for each price test.
- Each plan in Stripe can correspond to a unique NetSuite item. This approach adds more entries to your item master, but gives you detailed reporting and control over rev rec, revenue accounts, etc for each Stripe plan.
- Define a custom mapping. You can provide us with a sheet of the mapping you'd like to use between Stripe and NetSuite. During the onboarding process, you can setup this custom mapping either through your back-end or through the implementation consultant.
How Coupons (Discounts) Are Represented in NetSuite?
Stripe Coupons are supported. They are represented as NetSuite discount items. You can either create a unique discount item in NetSuite for each coupon in Stripe or use a single discount item (i.e. a "global discount item") for all coupons in Stripe (you can also develop a custom mapping). As with all Stripe records, you can map them directly to a particular item in NetSuite using metadata.
In Stripe, coupons are represented as a separate line item on the invoice. In NetSuite, there are three options for representing coupons:
- An additional line item on the invoice, which combines all Stripe coupon amounts into one line item.
- On the header level of the invoice, using the "Discount" drop-down in NetSuite, combining all Stripe coupon amounts into one line item.
- "Line item discounts" where we will translate each discount applied to each Stripe line item as a seperate non-posting line item in NetSuite rather than grouping up all Stripe discounts into one single NetSuite line item. This also supports multiple discounts on the invoice level and on the invoice line item level. If you would like to enable line item discounts, please contact SuiteSync support.
We recommend using line item discounts, as this is supports multiple invoice level discounts, line level discounts and is the most accurate for revenue recognition.
Using coupons with revenue recognition
Coupons do not have a revenue period. If you are using revenue recognition, you'll want to use non-posting discounts via Line Item Discounts. This causes the discount amount to be subtracted from the total revenue recognized for the item representing the subscription.
If you use header level or combined line discounts, the discounts are not distributed over all items and will only decrease the income booked to the item directly 'above' the discount item in the NetSuite item list. Line item discounts are non-posting and will seperate out the discounts so that they will apply to the individual items that are being discounted.
If you would like to enable line item discounts, please contact SuiteSync support.
Changing the Account Used by a NetSuite Item
If SuiteSync creates an item in NetSuite, we use a default income account (and possibly some other default options) when creating the item. After the item is created, you can go ahead and edit the NetSuite item and change whatever configuration options you'd like.
For instance, if an item created by SuiteSync (or any other system) is not posting to the correct income account, you can edit the item in NetSuite to change the income (and/or deferred revenue) account used by the item. Unless the item contains a transaction in a closed accounting period, NetSuite allows you to modify the income account after the item is created.
How items affect GL impact in NetSuite is often very confusing. Here's a short video that helps make this more clear:
https://cl.ly/b3351df34723