O que é o erro 409 no App Store Connect
O erro HTTP 409 Conflict no App Store Connect indica que o servidor identificou um conflito entre o que você está enviando e o estado atual do app na plataforma. É um erro de validação que ocorre antes da revisão humana — gerado automaticamente pelo sistema da Apple.
A mensagem típica é algo como: ERROR ITMS-90189: "Redundant Binary Upload. There already exists a binary upload with build version..." ou simplesmente um status HTTP 409 retornado pelo Transporter ou Xcode Organizer.
Principais causas do erro 409
1. Build com número de versão duplicado
A causa mais comum. Você já enviou um build com o mesmo CFBundleVersion (build number) para aquela versão. O App Store Connect não aceita dois builds com o mesmo número, mesmo que o binário seja diferente.
2. Upload simultâneo do mesmo build
Dois uploads sendo feitos ao mesmo tempo para o mesmo app — pode acontecer em pipelines de CI/CD mal configurados.
3. Bundle ID divergente
O Bundle ID do app no Xcode/arquivo não corresponde ao cadastrado no App Store Connect para aquela entrada.
4. Sessão ou token expirado
Em casos raros, o erro 409 pode ser um artefato de autenticação. O token de API expirou durante o upload.
Atenção: Nunca incremente apenas o versionName sem também incrementar o build number. O App Store exige que cada envio tenha um build number único e crescente.
Como resolver o erro 409
Passo 1: Incremente o Build Number
No Xcode, vá em Target → General → Build e aumente o número (ex: de 1 para 2, ou de 100 para 101). Este campo corresponde ao CFBundleVersion no Info.plist.
Passo 2: Faça um novo Archive
Após incrementar, gere um novo Archive pelo menu Product → Archive. Não reutilize o .ipa anterior.
Passo 3: Reenvie pelo Xcode Organizer ou Transporter
Use o Xcode Organizer (Window → Organizer) ou o app Transporter para enviar o novo build. Aguarde a validação completa antes de fechar.
Se o problema for Bundle ID divergente
Verifique em App Store Connect → Meus Apps → Informações do App qual é o Bundle ID cadastrado. Ele deve ser idêntico ao configurado no Xcode (sem espaços, maiúsculas ou caracteres extras).
Dica: Use a convenção de build number baseada em data+hora, como 20250615.1, para nunca repetir acidentalmente em pipelines de CI/CD.
Como evitar o erro 409 no futuro
- Automatize o incremento do build number no seu pipeline (fastlane, EAS Build, Xcode Cloud)
- Nunca envie manualmente se já tiver CI/CD configurado — evita conflito de uploads simultâneos
- Verifique o build number antes de cada archive — crie um checklist simples de pré-publicação
- Use scripts de pré-build para incrementar automaticamente o CFBundleVersion
Cansou de resolver erros sozinho?
A AtlasTech cuida de todo o processo de publicação e atualização do seu app, do archive ao aprovação.
Quero ajuda profissional