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

# Ambientes

> Entenda os diferentes ambientes disponíveis na API Autorizou

## Visão Geral

A Autorizou oferece dois ambientes distintos para desenvolvimento e produção, permitindo que você teste sua integração sem risco antes de processar pagamentos reais.

## Ambiente Sandbox

O ambiente Sandbox é usado para **desenvolvimento e testes**. Todos os pagamentos são simulados e não geram cobrança real.

### Características

* **URL Base:** `https://pay.autorizou.dev/api/v1`
* **Chaves de API:** Similares a de produção, mas funcionam apenas em testes, devem ser informadas em todas as requisições
* **Pagamentos:** Simulados (sem cobrança real)
* **Webhooks:** Funcionais para testes

## Ambiente Produção

O ambiente de Produção processa **pagamentos reais** com cobrança efetiva.

### Características

* **URL Base:** `https://pay.autorizou.cloud/api/v1`
* **Chaves de API:** Única por merchant e devem ser informadas em todas as requisições
* **Pagamentos:** Reais (com cobrança efetiva)
* **Webhooks:** Produção (URLs públicas obrigatórias)

### Requisitos para Produção

<Steps>
  <Step title="Conta Verificada">
    Sua conta deve estar completamente verificada com documentos aprovados.
  </Step>

  <Step title="Configuração de Webhooks">
    URLs de webhook devem ser públicas e usar HTTPS.
  </Step>

  <Step title="Testes Completos">
    Execute todos os fluxos críticos no ambiente Sandbox primeiro.
  </Step>

  <Step title="Chaves de Produção">
    Gere e configure suas chaves no dashboard.
  </Step>
</Steps>

## Configuração Multi-ambiente

### Variáveis de Ambiente

Configure suas aplicações para alternar facilmente entre ambientes:

<CodeGroup>
  ```bash .env theme={null}
  # Desenvolvimento
  AUTORIZOU_ENV=sandbox
  AUTORIZOU_API_KEY=4eC39HqLyjWDarjtT1zdp7dc
  AUTORIZOU_BASE_URL=https://pay.autorizou.dev/api/v1

  # Produção
  AUTORIZOU_ENV=production  
  AUTORIZOU_API_KEY=51GGttjHqLyjWDarjtT1zdp7dc
  AUTORIZOU_BASE_URL=https://pay.autorizou.cloud/api/v1
  ```

  ```javascript config.js theme={null}
  const config = {
    sandbox: {
      apiKey: process.env.AUTORIZOU_SANDBOX_KEY,
      baseUrl: 'https://pay.autorizou.dev/api/v1',
    },
    production: {
      apiKey: process.env.AUTORIZOU_PRODUCTION_KEY,  
      baseUrl: 'https://pay.autorizou.cloud/api/v1',
    }
  };

  const environment = process.env.NODE_ENV === 'production' ? 'production' : 'sandbox';
  export default config[environment];
  ```

  ```php config.php theme={null}
  <?php

  class AutorizouConfig {
      public static function getConfig() {
          $env = $_ENV['APP_ENV'] ?? 'sandbox';
          
          $configs = [
              'sandbox' => [
                  'api_key' => $_ENV['AUTORIZOU_SANDBOX_KEY'],
                  'base_url' => 'https://pay.autorizou.dev/api/v1'
              ],
              'production' => [
                  'api_key' => $_ENV['AUTORIZOU_PRODUCTION_KEY'], 
                  'base_url' => 'https://pay.autorizou.cloud/api/v1'
              ]
          ];
          
          return $configs[$env];
      }
  }
  ```
</CodeGroup>

## Migração Sandbox → Produção

### Checklist de Migração

<AccordionGroup>
  <Accordion title="Pré-requisitos" icon="circle-check">
    * [ ] Conta verificada e aprovada
    * [ ] Testes completos realizados no Sandbox
    * [ ] Documentação revisada
    * [ ] Fluxos de erro testados
    * [ ] Webhooks testados e funcionais
  </Accordion>

  <Accordion title="Configuração Técnica" icon="gear">
    * [ ] Chaves de produção geradas
    * [ ] Variáveis de ambiente configuradas
    * [ ] URLs de webhook atualizadas para HTTPS
    * [ ] Monitoramento e alertas configurados
    * [ ] Logs estruturados implementados
  </Accordion>

  <Accordion title="Deploy" icon="rocket">
    * [ ] Deploy realizado em horário de baixo tráfego
    * [ ] Testes de smoke em produção
    * [ ] Monitoramento ativo por 24h
    * [ ] Rollback plan disponível
    * [ ] Equipe de suporte notificada
  </Accordion>
</AccordionGroup>
