> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Billing SDK

> Infraestrutura de cobrança completa para aplicações web modernas com componentes React, ferramentas de CLI e integração full-stack

<Frame>
  <iframe className="w-full aspect-video rounded-md" src="https://www.youtube.com/embed/32RVbEllEi0" title="Billing SDK | Dodo Payments" frameBorder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />
</Frame>

Billing SDK é uma solução abrangente de código aberto que fornece uma infraestrutura de cobrança completa para aplicações web modernas. Inclui componentes React, ferramentas de CLI e suporte à integração full-stack para múltiplos frameworks com Dodo Payments.

## Visão Geral

Billing SDK oferece:

* **Componentes React**: Componentes de cobrança pré-construídos e personalizáveis para aplicações React
* **Ferramentas de CLI**: Interface de linha de comando para inicialização de projetos e gerenciamento de componentes
* **Suporte a Frameworks**: Integração com Next.js, Express.js, Hono, Fastify e React
* **Provedor de Pagamento**: Integração completa com Dodo Payments

## Começo Rápido

Comece com Billing SDK em minutos:

<Steps>
  <Step title="Install the CLI">
    Use npx para executar o CLI sem instalação:

    ```bash theme={null}
    npx @billingsdk/cli --help
    ```

    Ou instale globalmente para uso frequente:

    ```bash theme={null}
    npm install -g @billingsdk/cli
    ```
  </Step>

  <Step title="Initialize a Project">
    Execute a configuração interativa para criar um novo projeto de cobrança:

    ```bash theme={null}
    npx @billingsdk/cli init
    ```

    Você será solicitado a selecionar:

    * Seu framework preferido (Next.js, Express.js, Hono, Fastify, React)
    * Seu provedor de pagamentos (Dodo Payments)
  </Step>

  <Step title="Add Components">
    Adicione componentes individuais de cobrança ao seu projeto:

    ```bash theme={null}
    npx @billingsdk/cli add pricing-table-one
    npx @billingsdk/cli add subscription-management
    ```
  </Step>
</Steps>

## Frameworks Suportados

Billing SDK suporta múltiplos frameworks com integração abrangente ao Dodo Payments:

| Framework  | Dodo Payments |
| ---------- | ------------- |
| Next.js    | ✅ Sim         |
| Express.js | ✅ Sim         |
| Hono       | ✅ Sim         |
| React      | ✅ Sim         |
| Fastify    | ✅ Sim         |

## Comandos da CLI

### `@billingsdk/cli init`

Inicialize um novo projeto de cobrança com configuração completa, incluindo configuração de framework, integração com Dodo Payments e dependências essenciais.

**O que faz:**

1. **Seleção de Framework**: Escolha seu framework preferido
2. **Instalação de Template**: Baixa e instala templates específicos do framework com integração ao Dodo Payments
3. **Gerenciamento de Dependências**: Instala automaticamente as dependências necessárias
4. **Geração de Arquivos**: Cria arquivos de configuração necessários e código boilerplate

**Exemplo:**

```bash theme={null}
npx @billingsdk/cli init
```

### `@billingsdk/cli add`

Adicione componentes de cobrança individuais ao seu projeto existente usando o sistema de registro shadcn/ui.

**Exemplos:**

```bash theme={null}
# Add a pricing table
npx @billingsdk/cli add pricing-table-one

# Add subscription management
npx @billingsdk/cli add subscription-management

# Add usage monitoring
npx @billingsdk/cli add usage-meter-circle
```

**O que acontece:**

1. Faz o download da configuração do componente do registro
2. Instala os arquivos do componente no seu `components/billingsdk/` diretório
3. Atualiza a configuração do seu projeto se necessário
4. Instala quaisquer dependências adicionais

## Estrutura de Arquivos Gerados

Após executar `init`, você obterá uma estrutura de projeto completa com:

* **Rotas da API**: Endpoints abrangentes para checkout, clientes, produtos, assinaturas e webhooks
* **Hooks**: Hooks React para operações de cobrança (se estiver usando React/Next.js)
* **Arquivos de Biblioteca**: Inicialização do cliente do provedor de pagamento e utilitários
* **Configuração de Ambiente**: Arquivos de variáveis de ambiente de exemplo

### Estrutura de Exemplo do Next.js

```
your-project/
├── app/api/
│   └── (dodopayments)/
│       ├── checkout/route.ts
│       ├── customer/route.ts
│       ├── customer/payments/route.ts
│       ├── customer/subscriptions/route.ts
│       ├── product/route.ts
│       ├── products/route.ts
│       └── webhook/route.ts
├── hooks/
│   └── useBilling.ts
├── lib/
│   └── dodopayments.ts
└── .env.example
```

## Configuração de Ambiente

Configure suas variáveis de ambiente após a inicialização:

```bash theme={null}
# DodoPayments
DODO_PAYMENTS_API_KEY=your_api_key_here
DODO_PAYMENTS_ENVIRONMENT=test_mode
DODO_PAYMENTS_WEBHOOK_KEY=your_webhook_key_here

# App URL
NEXT_PUBLIC_APP_URL=http://localhost:3000
```

<Warning>
  Sempre armazene suas chaves de API com segurança usando variáveis de ambiente. Nunca as envie ao controle de versão.
</Warning>

## Componentes Disponíveis

Billing SDK fornece uma coleção abrangente de componentes React:

* **Tabelas de Preços**: Múltiplas variantes para exibir preços de produtos
* **Gerenciamento de Assinaturas**: Componentes para gerenciar assinaturas de clientes
* **Monitoramento de Uso**: Componentes visuais para rastrear cobrança baseada em uso
* **Componentes de Checkout**: Fluxos de checkout pré-construídos
* **Portal do Cliente**: Componentes para autoatendimento do cliente

## Código Aberto

Billing SDK é construído sobre princípios de código aberto:

* 🔍 **Transparência**: Total visibilidade sobre como os componentes funcionam
* 🤝 **Comunidade**: Construído por desenvolvedores, para desenvolvedores
* 🔒 **Segurança**: Código aberto significa melhor segurança através de revisão por pares
* 📈 **Inovação**: Iteração mais rápida através de contribuições da comunidade

<Info>
  O Billing SDK é lançado sob a Licença Pública Geral GNU (GPL), garantindo que o projeto permaneça aberto e gratuito.
</Info>

## Obtendo Ajuda

Precisa de assistência com o Billing SDK?

* **Problemas no GitHub**: [Abra um problema](https://github.com/dodopayments/billingsdk/issues)
* **Documentação**: Visite [billingsdk.com/docs](https://billingsdk.com/docs)
* **Documentação Completa de LLMs**: [billingsdk.com/llms-full.txt](https://billingsdk.com/llms-full.txt)

## Contribuindo

Agradecemos contribuições! Veja nosso [guia de contribuição](https://billingsdk.com/docs/contribution-open-source) para detalhes sobre:

* Relatar bugs
* Solicitar recursos
* Enviar pull requests
* Adicionar novos componentes
* Melhorar a documentação

## Saiba Mais

<CardGroup cols={3}>
  <Card title="Full Documentation" icon="book" href="https://billingsdk.com/docs">
    Guia completo do Billing SDK com exemplos e melhores práticas
  </Card>

  <Card title="CLI Reference" icon="terminal" href="https://billingsdk.com/docs/cli">
    Documentação detalhada do CLI para todos os comandos e opções
  </Card>

  <Card title="Component Library" icon="boxes-stacked" href="https://billingsdk.com/docs/components">
    Explore todos os componentes disponíveis com exemplos ao vivo
  </Card>
</CardGroup>
