> For the complete documentation index, see [llms.txt](https://ivantkf.gitbook.io/brc-721a/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ivantkf.gitbook.io/brc-721a/brc-721a-standard-inscribing-multi-tokens-in-the-pre-mint-ticket-system-on-the-chain.md).

# BRC-721A Standard: Inscribing multi-tokens in the pre-mint ticket system on the chain

<figure><img src="/files/hTO6rFQ4KoUhJCfmL9GU" alt=""><figcaption></figcaption></figure>

Author: Ivan Tsang (@ivantkf)

Created: 2023-03-29 \[Inscription 641698]

Requires: Ordinals, BRC-1155 Standard

{% embed url="<https://docs.ordinals.com/>" %}

{% embed url="<https://ivantkf.gitbook.io/brc-1155/>" %}

## Idea

The concept is inspired by the ERC-721A standard and the team of Azuki. The inscriptions with BRC-721A standard are just another kind of Ordinals inscriptions, they can be traded, collected, and transferred as usual. The Ordinals Inscription here will be defined as similar to the ERC-721 / BRC-1155 protocol standard.

## Introduction

Minters are suffering from the huge cost of sats (gas fee) during the gas war when minting the inscriptions with the same images. It cost a lot for the pointless inscriptions when they lose on queue since their inscriptions are not the first inscription and wasting the fee. In order to deal with the issue, this is demonstrating what operations we can do {deploy, mint} by using the BRC-721A standard to inscribe the pre-mint tickets instead of the images,&#x20;

| Project Owner | Holders |
| :-----------: | :-----: |
|     Deploy    |   Mint  |

## Operations

{% embed url="<https://emn178.github.io/online-tools/sha256.html>" %}
A secret code should be set by using SHA-256 algorithm for safety and transparency during the verification
{% endembed %}

### 1.　Deploy

The project owner could create a BRC-721A standard for the queuing ticket system before launching the collections with the BRC-721 or BRC-1155 standard. Here is a basic example below (replace the x),

```
{
 "p": "BRC-721A",
 "op": "deploy",
 "abbrev": "xxxx",
 "max": "xxxx",
 "lim": "xx"
}
```

<table><thead><tr><th width="104.33333333333331" align="center">Key</th><th width="81" align="center">Must?</th><th>Description</th></tr></thead><tbody><tr><td align="center">p</td><td align="center">✅</td><td>Protocol: To identify and process BRC-721A events</td></tr><tr><td align="center">op</td><td align="center">✅</td><td>Operation: Type of events {deploy, mint}</td></tr><tr><td align="center">abbrev</td><td align="center">✅</td><td>Abbreviation: Set a max. 10 letters identifier of the project</td></tr><tr><td align="center">max</td><td align="center">✅</td><td>Set the total quantity of the project collection, default to "1000"</td></tr><tr><td align="center">lim</td><td align="center">✅</td><td>Limit: Set the max. amount can be minted in each inscription, default to "1"</td></tr><tr><td align="center">vfy</td><td align="center">❌</td><td>Verify: Place the secret code for connection via SHA-256 Algorithm for verification</td></tr></tbody></table>

### 2.　Inscribe (Mint)

The ticket system will minimize the cost of sats (gas fee) for the minters during the gas war and receive the actual image in order by using the verification code to communicate with the project team. The tickets for a specific collection will be sold out when the minting amount has been reached the maximum amount, the inscriptions over the maximum amount of the collection will be defined as invalid tickets. Here is a basic example below (replace the x),

```
{
 "p": "BRC-721A",
 "op": "mint",
 "abbrev": "xxxx",
 "atm": "xx"
}
```

<table><thead><tr><th width="102.33333333333331" align="center">Key</th><th width="85" align="center">Must?</th><th>Description</th></tr></thead><tbody><tr><td align="center">p</td><td align="center">✅</td><td>Protocol: To identify and process BRC-721A events</td></tr><tr><td align="center">op</td><td align="center">✅</td><td>Operation: Type of events {deploy, mint}</td></tr><tr><td align="center">abbrev</td><td align="center">✅</td><td>Abbreviation: Set a max. 10 letters identifier of the project</td></tr><tr><td align="center">atm</td><td align="center">✅</td><td>Amount to mint in the collection, default to {deploy} setting</td></tr><tr><td align="center">vfy</td><td align="center">❌</td><td>Verify: Place the secret code for connection via SHA-256 Algorithm for verification</td></tr></tbody></table>

## Suggestions

It is welcomed to provide recommendations for better improvement upon the structure, designs, rules, or compression issues it poses. For traceability json {} is required, as well as the minimum required information to satisfy one of the functions.

## Ending

The standard is still updating. Thank you for the time to read the whole passage. You are going to be one of the historical witnesses in Bitcoin development. Please bear in mind that these might be worthless, but the journey should be priceless.&#x20;

## Extention  of Supporting Standard

{% embed url="<https://ivantkf.gitbook.io/brc-4907/>" %}

> BRC-5058 Standard: Locking Capability of BRC-721 / BRC-1155
>
> Coming Soon
