# DropAllowanceERC20

O [**DropAllowanceERC20**](https://dexappbuilder.dexkit.com/forms/deploy/dexkit/DropAllowanceERC20) o contrato é uma versão estendida do padrão `DropERC20` contrato, permitindo aos usuários definir o token ERC-20 que desejam vender. Este contrato funciona com qualquer token ERC-20 que use **18 decimais** e possibilita um fluxo de pré-venda ou venda pública onde o proprietário do token concede uma allowance ao contrato, e os compradores podem reivindicar tokens sob condições predefinidas.

## **Principais Recursos**

* **Suporte a Token Personalizado** – Ao contrário de drops com token fixo, esta versão permite que você especifique qual token ERC-20 deseja vender no momento do deploy.
* **Venda Baseada em Allowance** – O contrato não retém seus tokens diretamente. Em vez disso, o proprietário do token deve conceder allowance ao contrato para que ele possa transferir tokens aos compradores quando reivindicados.
* **Conformidade Padrão com ERC-20** – Funciona com qualquer token ERC-20 que possua 18 decimais.
* **Integração com Thirdweb** – Totalmente compatível com [Thirdweb SDK](https://portal.thirdweb.com/), permitindo que você defina condições de reivindicação, preço e parâmetros de distribuição a partir do painel ou via código.
* **Flexibilidade de Propriedade** – Você pode definir um `Proprietário do Token` diferente do deployer, permitindo configurações com múltiplas partes.

## **Casos de Uso**

* Pré-vendas de tokens onde você não quer transferir a custódia dos tokens antes da venda.
* Campanhas de recompensas comunitárias usando tokens ERC-20 existentes.
* Distribuições controladas onde o vendedor pode revogar a allowance a qualquer momento.
* Drops privados ou públicos usando condições de reivindicação personalizadas.

## **Implantando este contrato**

{% embed url="<https://dexappbuilder.dexkit.com/forms/deploy/dexkit/DropAllowanceERC20>" %}

<figure><img src="/files/6e546d168bba187ed19fe10d16c288f22127f8b0" alt="" width="563"><figcaption></figcaption></figure>

## Como Funciona

1. **Implantação**\
   Ao implantar o contrato, você fornecerá:
   * **Endereço do Token** – O endereço do contrato do token ERC-20 a ser vendido.
   * **Proprietário do Token** – O endereço da carteira que atualmente detém os tokens.
   * **Destinatário da Venda** – O endereço da carteira que receberá o pagamento pelas vendas de tokens.
2. **Concessão de Allowance**\
   Antes que quaisquer reivindicações possam ocorrer, o `Proprietário do Token` deve chamar a `approve()` função no contrato do token, concedendo allowance ao `DropAllowanceERC20` contrato pelo valor que desejam vender.
3. **Definindo Condições de Reivindicação**\
   Através do painel ou SDK, você pode definir:
   * Preço por token
   * Início da venda. A data de término finalizará quando o suprimento for totalmente reivindicado ou outra fase for criada.
   * Limites de compra por carteira
   * Qualquer outra restrição de reivindicação
4. **Reivindicação de Tokens**\
   Quando um usuário reivindica tokens, o contrato transfere os tokens diretamente da `Proprietário do Token`carteira do

## para o comprador, deduzindo da allowance concedida.

| Campo                 | Descrição                                                                                                                           |
| --------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| Nome                  | Parâmetros de Implantação                                                                                                           |
| Símbolo               | O nome exibido para seu drop (usado na exibição do painel).                                                                         |
| Descrição             | Símbolo do token para fins de referência.                                                                                           |
| Imagem                | Descrição em rich-text ou markdown do seu drop de token.                                                                            |
| Endereço do Token     | Logo/imagem opcional para representar sua venda de tokens.                                                                          |
| Proprietário do Token | Endereço do contrato do token ERC-20 que você deseja vender. Deve ter 18 decimais.                                                  |
| Destinatário da Venda | Endereço a partir do qual os tokens serão transferidos durante as reivindicações. Deve aprovar este contrato para gastar os tokens. |

## Endereço que receberá o pagamento pelas vendas de tokens.

<figure><img src="/files/5568c78cf00265e7be17121f01bde0b421689fb8" alt="" width="563"><figcaption></figcaption></figure>

1. Fluxo de Exemplo `DropAllowanceERC20` Implante
2. com o endereço do seu token, o endereço do proprietário do token e o endereço do destinatário da venda. `O Proprietário do Token executa` approve(contractAddress, amount)
3. no contrato do token ERC-20.
4. Defina suas condições de reivindicação via painel ou programaticamente.
5. Os compradores reivindicam tokens de acordo com suas regras.

## O contrato transfere automaticamente os tokens do proprietário do token para os compradores até que a allowance se esgote ou as condições expirem.

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

O **Condições de Reivindicação** Token Allowance Drop

* suporta as mesmas configurações de condição de reivindicação do Token Drop regular:
* Hora de início
* Quantidade máxima por transação
* Fases de reivindicação
* Configurações de whitelist

Configuração do token de pagamento (token nativo ou ERC20)

## Você pode definir e gerenciar condições de reivindicação via painel após a implantação.

1. Notas e Boas Práticas **Garanta que seu token ERC-20**use 18 decimais
2. O `Proprietário do Token` —outras configurações não são suportadas.
3. deve manter saldo de token e allowance suficientes para que as reivindicações tenham sucesso.
4. A allowance pode ser aumentada ou diminuída a qualquer momento para controlar o suprimento da venda. `Proprietário do Token` Use uma carteira segura para o


---

# 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.dexkit.com/produtos-e-solucoes-defi-pt/dexcontracts/contratos-dexkit/dropallowanceerc20.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.
