# Subs Apps

Whatever uses cases you want to use Subs for, the first thing to do is to [**create your Subs App**](/how-it-works/create-your-app.md) :rocket:&#x20;

In the subs protocol, anyone can create a recurring payment application for free, be it a subscription system or any other use case. To create an application the creators provides different properties such as: the name of his application and his payment system. They can accept any number of payments with any number of ERC-20 tokens in their app. \
\
Each application created has its own payments/plans systems, its own ownership system to manage it  that the creator can manage with the protocol. Each payment system linked to an application has different attributes such as the type of period (monthly, yearly, daily, weekly, …), the tokens it accepts as payment, the minimum time for which its user must approve its token in order for it to be taken every duration. All these payments per period (monthly, daily, ...) defined by the app creator are made by the regulators when this period is due. The regulators automate the payment of apps users. In case the user has no funds in his wallet, or any other reason for not paying his subscription, The app provider give him an additional time period. If this period is over, his subscription is deactivated by the regulators and it will be up to the user to restart his subscription.

After creating their application, creators have access to a large panel of components that they can just copy and paste onto their front-end application without coding. They can also let users subscribe directly on subs web app if they don't have web applications.

A user can subscribe to an application through these payments by paying the amount due with the tokens required by the payment. The user does not need to block these tokens in the protocol, he just needs to approve these tokens that will be taken according to each period defined by the application provider.

<br>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.subsprotocol.com/how-it-works/subs-apps.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
