# BRC-20 (Update Proposal)

BitCheck Proposal Tweet:\
<https://twitter.com/BitCheckMe/status/1667922332344631299>

Docs:\
<https://docs.bitcheck.me/brc20/brc-20-update-proposal>

Summary:\
BRC-20 Update Proposal: BitCheck

The update is specifically designed to handle subscription-based transactions, allowing BRC-20 token holders to set up recurring payments in any brc-20 token to a specific address. This proposal includes functionalities for creating and cancelling subscriptions.

### Key Features

* Enables **automated recurring payments** to specific addresses using any BRC-20 token.
* Users can define parameters such as the token amount, transaction frequency (e.g., monthly), and recipient address.
* Introduces operations for **creating**, **updating**, and **cancelling** subscriptions.

### Purpose

This update proposal aims to simplify and automate subscription-based payments. The current process is manual and prone to errors. With this update, it's easier for websites to offer subscription-based services and receive regular payments from customers, thus broadening the BRC-20 token ecosystem's capabilities.

### Functionality Details

#### User Scenarios

* Users can set up and cancel subscriptions to specific addresses.
* Project teams can receive automated, regular payments, providing a predictable income stream.

#### Interaction Flow

1. User defines subscription parameters and initiates the subscription using the **"sub"** operation.
2. The recipient receives payments at every set interval.
3. Users can update subscription parameters.
4. The recipient receives payment at each new subscription interval.
5. Users can cancel the subscription anytime using the **"cancel"** operation.

#### Cases

* If a user's BRC-20 token balance is insufficient, the subscription temporarily halts. Once the user deposits more tokens, the subscription resumes if the balance covers the full cost. Otherwise, it remains paused.
* If a user initiates a subscription with insufficient BRC-20 tokens, the subscription is established but immediately placed on hold.

### Instructions

There are three primary operations:

1. **Create Subscription**\
   Initiate a new subscription by setting token type, transaction amount, transaction frequency, and recipient's address.
2. **Update Subscription**\
   Modify an existing subscription's terms without needing to cancel and create a new one.
3. **Cancel Subscription**\
   Terminate an existing subscription. No further transactions will be made under the cancelled subscription.

The proposal builds upon the BRC-20 Token Standard and is licensed under the BSD 2-clause license.


---

# 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://patches-1.gitbook.io/ordinals-standards-discussions/ordinals-standards-proposals/brc-20-update-proposal.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.
