Skip to main content
Flexibility and customization are key aspects of Hyperline. Custom properties let you represent and store all the extra data you need. You can define custom properties and associate them with customer, product, subscription, and invoice entities. You can also use subscription custom properties in subscription templates. Furthermore, values are structured with a range of types including text, number, boolean, date, select, and multi-select.

Use cases

Custom properties provide a wide range of possibilities. For example, you can use them to represent additional fields for your customers or integrate extra billing details into your subscriptions or subscription templates. They can also assist in entitlement and feature flagging by representing features activatable on specific products or subscriptions. These are just examples, and you can customize them to meet any specific needs based on your use case.

Create a custom property

1

Navigate to Settings then Custom properties

2

Click New custom property

3

Fill in the form

Enter a name, a slug, the property type, and the entities on which the custom property will be available. The slug is a unique identifier mainly used for technical integration using the API. You can also set a default value and make the property required so that a value must be provided for each selected entity.Additionally, you can decide to activate this custom property only for technical purposes, meaning that it won’t be editable in Hyperline’s interface but will only be available through the API. When you turn this option off, you can edit the field in both the interface and the API.

Requiring a custom property value

Enable Required when every entity associated with the custom property must have a value. Hyperline then prevents users from creating or saving an associated customer, product, subscription, or invoice until they provide one. If you make a custom property required after entities already exist, Hyperline does not immediately change those entities. The next time a user edits or saves one, they must provide the missing value before they can continue. This also applies when the edit is unrelated to custom properties, such as changing an invoice status.
A required custom property marked as API only cannot be completed in the interface. Make sure your integration provides the value through the API whenever it creates or updates an associated entity.
Before making a select or multi-select property required, configure at least one available value so your team can complete the field.

Setting a default value

Set a Default value on a custom property to fill it automatically on new entities. The input follows the property type: for select and multi-select properties, select from the available values. When a customer, product, plan, subscription, or invoice is created without a value for the property, Hyperline stores the default value:
  • On the subscription and invoice creation forms, the field is prefilled with the default value. You can change it before saving.
  • Customers, products, and plans don’t show custom properties at creation: the default value is applied automatically.
  • Entities created through the API or an integration get the default value when they don’t provide one.
A value provided explicitly always takes precedence over the default value. Hyperline doesn’t update existing entities when you set or change a default value.

Example 💡

You add a required Region property on customers with EU as the default value. Customers created from now on get EU unless another region is provided, and your existing integrations keep creating customers without sending the new property.

Default values and required properties

When a required property has a default value, you can create an entity without providing a value. Hyperline uses the default value instead. Hyperline also doesn’t block updates to existing entities that have no value, so integrations keep working after you make a property required. You still can’t clear the value on purpose. Hyperline doesn’t write the default value to existing entities. They keep an empty value until someone provides one. The interface still asks for a value when a user edits one of these entities.

Managing custom property values

Once created, you can find the custom property on the related entity in the interface. On the customer, the custom properties appear at the bottom of the information panel on the customer details page.
For products, they appear in a dedicated box on the product in the Advanced settings section.
For subscriptions, you can set the value in the second step of the subscription assignment flow. The same subscription custom properties are available when configuring a subscription template.
For invoices, you can set the values from the invoice details when creating or editing an invoice. When an invoice is generated from a subscription, Hyperline automatically copies the subscription’s custom property values to the invoice when the same custom property is available on both entities. You can still edit the invoice value afterward when the invoice can be updated.
Automatic copying only applies to custom properties that are available on both the subscription and invoice entities.

Filtering by custom properties

You can filter customers, subscriptions, and invoices by their custom property values in the respective list views. When you create custom properties for customers, subscriptions, or invoices, filter controls automatically appear in the filters dropdown on the Customers, Subscriptions, and Invoices pages. The filter type depends on the custom property type:
  • Boolean properties: Display as a dropdown with On and Off options
  • Select properties: Display as a dropdown with the predefined values you configured
To filter by custom properties:
  1. Navigate to the Customers, Subscriptions, or Invoices page
  2. Click the filters dropdown
  3. Select the custom property filter you want to apply
  4. Select the value to filter by
The list automatically updates to show only records matching your selected criteria.
Only boolean and select-type custom properties are available as filters. Text, number, and date properties cannot be used for filtering in the interface.
Custom properties marked as API only don’t appear in the filter panel.

Displaying custom properties on hosted pages

This is currently only available for the customer portal page. You can select which custom properties to display on the customer portal by navigating to the Settings > Hosted pages section.

Using the API

You can create, retrieve and manage custom properties using the API. Additionally, you can retrieve the values using the custom_properties field when fetching a customer, product, subscription, or invoice. You can also set invoice custom properties when you create or update an invoice through the API. Subscription template configurations use the same custom_properties field as subscriptions when you create or update a configuration through the API.

How this differs from the properties field

The properties field was introduced in the initial step, but it lacks structure (e.g., it is not named or typed) and is not manageable through the interface for non-technical users. While you can still use this field to store unstructured technical details on supported entities, use custom properties when possible to ensure safety and better manageability.