# Integrations

An **integration** is a connection between your Summerbase project and another system, usually your billing system. It's the part you set up and look after: you connect it, and its page in **Settings**, under **Integrations**, shows its import, its log and what to do if the connection breaks.

An integration that sends Summerbase data is a **source**. Whether an integration is a source depends only on what it connects to, never on a setting, and every integration today is one. The word "source" is used wherever Summerbase says where something came from: the source a customer's id belongs to, the source whose properties these are, the source a subscription lives in. See [How your data fits together](/docs/using-summerbase/how-your-data-fits-together.md).

Every source has two settings of its own:

- A **slug**, such as `stripe` or `backend`, which names its records: the customer Stripe calls `cus_NfJG2nK3` is `stripe:cus_NfJG2nK3` in Summerbase. It is set when the integration is created and can't be changed, because your records are named with it.
- A **priority**, which decides whose value wins when sources disagree about a customer's name, email and the like. The lowest number wins.

## Available integrations

| Integration | Use it when |
| --- | --- |
| [Stripe](/docs/integrations/stripe.md) | You bill through Stripe. |
| [Custom integration](/docs/integrations/custom.md) | You bill another way, or want to add what your own system knows, and can send data from your own code. |

Every project also has a **Summerbase** integration. It holds what your team changes by hand in the web app, such as a plan you renamed, and it comes first in priority, so those changes win. It's there from the start and can't be removed.

Don't see your billing system? Write to support@summerbase.com.

## More than one integration

A project can have several integrations. For example, Stripe can handle most of your billing while a custom integration sends the few customers you invoice by hand. A custom integration can also add information Stripe doesn't have, such as an account manager or an industry. Each source's properties are kept apart, so neither overwrites the other.

## Adding an integration

In your project, go to **Settings**, then **Integrations**, and choose **Add integration**. Only admins and the owner can add integrations.

Integrations can't be deleted. A connected integration can be disconnected, which keeps everything it already brought in.
