Ambientes
homologation e production são propriedade da key, não parâmetro de requisição — o que isso significa na prática.
Toda key — sdk ou api — é criada pra exatamente um ambiente, homologation ou production, escolhido na criação e fixo pelo resto da vida dela. Não dá pra mudar depois; o jeito de corrigir "ambiente errado" é criar uma key nova, não editar a existente.
Não existe campo de ambiente em nenhum lugar de uma requisição ou chamada de SDK. A key com que você autentica é o que decide pra onde vai o documento — o que elimina uma classe inteira de bug onde uma flag mal configurada manda sem querer um documento de teste pro autorizador real do governo, ou vice-versa.
homologation não é um mock local — fala com o mesmo fluxo de validação do autorizador que production, só marcado como transmissão de teste. Isso significa que as regras de rejeição, campos obrigatórios e formato de resposta que você vê em homologação são os reais, não uma aproximação que aos poucos se distancia do que produção de fato aplica.
Também é grátis e sem limite de volume, então não tem pressão pra racionar emissões de teste nem compartilhar uma única empresa de teste entre o time — emita quanto precisar enquanto constrói e testa.
Uma empresa pode ter até 3 keys no total, qualquer mix de contexto (sdk/api) e ambiente (homologation/production). Um padrão comum é uma key sdk/homologation pro desenvolvimento local, uma api/homologation pra staging ou CI, e uma api/production (ou sdk/production) pro que de fato vai pro ar.