# Services / Contracts

Services are one of the central features of hostware which takes care of the entire billing process. You can think of each service as a contract which runs on its own. A contract can have multiple positions and has all the cancellation modalities inside.

## General

### Payment terms and conditions

The conditions are initially taken from the payment period the service was created and are then copied inside of the service. This allows individualisation of conditions for each contract without affecting the others.

<figure><img src="https://1141670261-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHupRK3qVDTomY8g3pcFA%2Fuploads%2FEfyhB1wbiyhypLv0aF7M%2Fimage.png?alt=media&#x26;token=510bfc47-7908-4c05-911b-0d992c8eefc1" alt=""><figcaption></figcaption></figure>

### Recurring affiliate

You can assign this service to an existing affiliate which will then receive recurring provisions, each time the service gets renewed. The affiliate can be added or removed manually at any time.

<figure><img src="https://1141670261-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHupRK3qVDTomY8g3pcFA%2Fuploads%2FpRHIyNmYMYitxr1YkDGV%2Fimage.png?alt=media&#x26;token=2244f117-91ff-471e-9a8b-7d00cbf72228" alt=""><figcaption></figcaption></figure>

### Switch customer

You can easily switch the customer the contract is related to. This will automatically also change the customer or related hostings and domains.

<figure><img src="https://1141670261-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHupRK3qVDTomY8g3pcFA%2Fuploads%2FWiFEf7guMDU2ipzJgVkD%2Fimage.png?alt=media&#x26;token=a876704d-67fc-412c-bb77-11f714bcd2d5" alt=""><figcaption></figcaption></figure>

### Switch payment period

This will switch the payment period. If the new payment period is a different contract type (prepaid / contract), the contract type of the service will be updated also.

This will recalculate all of the prices with the old and new payment period multiplier.

#### Example

The service is paid quarterly (multiplier = 3) and has a price of 30 €. The period changes to yearly (multiplier = 12) and hostware will automatically recalculate the price to 120 € (⇒ 30 / 3 \* 12)&#x20;

![](https://1141670261-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHupRK3qVDTomY8g3pcFA%2Fuploads%2FKd0jzenBkl68ryXwIfku%2Fimage.png?alt=media\&token=b9286821-fa8d-4f79-bad1-4ec5bbf8bdea)

### Create admin cancellation

You can force the cancellation of a contract in the admin area. Cancellation which were created by the admin are forced and cannot be cancelled by the customer. The customer will receive an email for that action, which has a separate [mail template](https://docs.hostware.io/system-and-configuration/settings/email-templates) for the "admin cancellation" compared to the regular "customer cancellation".

<figure><img src="https://1141670261-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHupRK3qVDTomY8g3pcFA%2Fuploads%2FD7X1V36tfGJUuqvJeauD%2Fimage.png?alt=media&#x26;token=0d66040c-1d60-4991-86e7-47b226838e42" alt=""><figcaption></figcaption></figure>

### Approval of invoices

Refer to [this page](https://docs.hostware.io/billing/invoices/manual-approval-of-new-invoices) for more information. This switches the settings on the service-level as explained in the linked page.

### Next extension date

You can change the next extension data of a contract. If you postpone the next extension date, Hostware allows you to chose if you want to invoice those extra days.

<figure><img src="https://1141670261-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHupRK3qVDTomY8g3pcFA%2Fuploads%2FpxoAiRaBIo4AX5YAC9wM%2Fimage.png?alt=media&#x26;token=70893e83-6748-47c8-b84a-c24831378cb8" alt=""><figcaption></figcaption></figure>

If you check the checkbox, than an invoice will be created for those extra days, where the price is calculated based on the number of extra days.

### Limit the number of invoices

You can limit the number of invoices created for this service. After the limit is reached, the service becomes inactive.<br>

<figure><img src="https://1141670261-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHupRK3qVDTomY8g3pcFA%2Fuploads%2FxWXtQVJMmjXirS8kOPw8%2Fimage.png?alt=media&#x26;token=bf2cd89a-b7df-4df7-833f-8a3976eab559" alt=""><figcaption></figcaption></figure>

If you set it to 0, the system treats it as unlimited.

## Positions

A service can have one or more positions attached to it. Each position can consist of the following types.

<div align="left"><figure><img src="https://1141670261-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHupRK3qVDTomY8g3pcFA%2Fuploads%2FrFmYrBWlPBluHpHgakEf%2Fimage.png?alt=media&#x26;token=692fcef7-0bb0-470b-93ab-aae3988f74fc" alt="" width="155"><figcaption></figcaption></figure></div>

{% tabs %}
{% tab title="Individual" %}
The position is just a text position which is not linked to anything. This is useful for manual recurring services, e.g. managed services or maintenance.
{% endtab %}

{% tab title="Hosting" %}
The position is linked to an existing hosting.
{% endtab %}

{% tab title="Domain" %}
The position is linked to an existing domain.
{% endtab %}
{% endtabs %}

### Import positions

You can import existing hostings / domains from the same customer account into the service. The price will be taken from the previous service but without payment period adjustments, if the period changed between those services.

The previous service of the imported hosting / domain will be deleted, if it was empty.&#x20;
