# Guideline 4.5.4: notificações push rejeitadas pela Apple

> Guideline 4.5.4: notificação promocional exige consentimento explícito no app e uma forma de sair, e o app precisa funcionar sem notificações.

Página original: [Guideline 4.5.4: notificações push rejeitadas pela Apple](https://devoria.fr/pt-br/blog/guideline-4-5-4-notificacoes-push-apple)
Autor: [Mehdi Azizi](https://devoria.fr/pt-br/mehdi-azizi)
Publicação: 2026-11-04
Última revisão do conteúdo: 2026-11-04


A guideline 4.5.4 regula as notificações push. Seu app precisa funcionar sem elas, nunca colocar informação sensível nelas e nunca usá-las para promoção sem consentimento. **Uma notificação de marketing exige um consentimento escrito dentro do app e um botão para retirá-lo, além da permissão do iOS.**

Eu publico meus próprios apps iOS com Expo. No TradaZen, meu simulador de trading, tirei uma notificação que anunciava um desconto e coloquei no lugar um lembrete sem oferta, informado ao reviewer. Este guia se baseia no texto da Apple, na licença de desenvolvedor, na documentação dela e nesse caso. Para ter a visão geral dos motivos de rejeição, leia [por que a Apple rejeita um app](https://devoria.fr/pt-br/blog/app-rejeitado-apple-casos-reais).

## O que diz a guideline 4.5.4?

A regra fica na seção 4 "Design", parte 4.5 "Apple Sites and Services", das [App Review Guidelines](https://developer.apple.com/app-store/review/guidelines/#4.5.4). Daí o título da rejeição: "Guideline 4.5.4 - Design - Apple Sites and Services". O texto define três limites.

1. **Nada de notificação obrigatória.** "Push Notifications must not be required for the app to function." Recusar a janela do iOS não pode bloquear nada.
2. **Nada de informação sensível.** Elas "should not be used to send sensitive personal or confidential information". Uma notificação aparece na tela bloqueada, à vista de qualquer pessoa.
3. **Nada de promoção sem consentimento.** O marketing é proibido "unless customers have explicitly opted in to receive them via consent language displayed in your app's UI", com "a method in your app for a user to opt out".

A última frase avisa que abusos podem custar o acesso ao serviço. Duas regras vizinhas completam o quadro. A 4.5.3 proíbe spam por notificação. A [5.1.2(i)](https://devoria.fr/pt-br/blog/guideline-5-1-2-ia-terceiros-att-compartilhamento-dados) proíbe exigir a ativação das notificações para acessar uma função, um conteúdo ou uma recompensa.

## O que a licença de desenvolvedor acrescenta

As guidelines falam de notificações push. O anexo 1 do [Apple Developer Program License Agreement](https://developer.apple.com/support/terms/apple-developer-program-license-agreement/#A1), que você aceitou ao se inscrever, vai além em três pontos.

- **As notificações locais também entram.** O artigo 2.2 fala em "the APN or Local Notifications". Um lembrete agendado no app, sem servidor, segue a mesma regra.
- **A promoção é definida de forma ampla.** Ela inclui venda adicional e "sending any messages to promote the use of Your Application or advertise the availability of new features or versions".
- **A janela do iOS é intocável.** O artigo 1.3 proíbe contornar o painel de consentimento da Apple. Se o consentimento for recusado ou retirado, você não envia mais nada.

Minha leitura: **uma mensagem "volte para o app" fica perto de promoção, mesmo sem preço.** A Apple não decide esse caso, e é por isso que eu informo esse tipo de lembrete ao reviewer.

## O que significa a mensagem de rejeição 4.5.4?

A rejeição mais bem documentada envolve um app que não funciona sem notificações. Num [tópico do fórum B4X](https://www.b4x.com/android/forum/threads/apple-app-store-rejected.89295/) de 2018, a Apple escreve: "Push notifications must be optional and must obtain the user's consent to be used within the app." O desenvolvedor depois relata uma tela preta após recusar a permissão. A hipótese levantada no tópico: uma interface que esperava o token de notificação para aparecer.

**Parta do princípio de que o reviewer recusa as permissões para ver o que acontece.** Se o app trava, insiste ou tira uma função, cai a 4.5.4 ou a 5.1.2(i). Para marketing sem consentimento, não encontrei nenhuma mensagem de rejeição pública recente.

## Qual consentimento para qual notificação?

Minha tabela cruza o texto da Apple, a licença e o guia de interface. As linhas "fim do teste" e "lembrete de retorno" são minha leitura, não uma posição escrita da Apple.

| Tipo de notificação     | Consentimento exigido         | Exemplo em conformidade       |
| ----------------------- | ----------------------------- | ----------------------------- |
| Resposta a uma ação     | Janela do iOS                 | "Sua exportação está pronta"  |
| Lembrete escolhido      | Janela do iOS                 | Lição do dia às 19h           |
| Fim do teste, renovação | Janela do iOS                 | "Seu teste termina no dia 12" |
| Lembrete de retorno     | Janela do iOS + cautela       | Sem preço, uma única vez      |
| Oferta ou desconto      | Janela do iOS + consentimento | Opção marcada no app          |
| Novidades do app        | Janela do iOS + consentimento | Envio só para inscritos       |
| Mensagem privada, saúde | Nunca mostrar o conteúdo      | "Nova mensagem"               |
| Notificação provisória  | Nenhuma janela no início      | Chega sem som nem banner      |

"Janela do iOS" é a permissão do sistema. "Consentimento" é uma escolha separada no seu app: uma frase que diz o que você vai enviar e um botão desligado por padrão.

### Os lembretes de assinatura e as ofertas

A página [Managing notifications](https://developer.apple.com/design/human-interface-guidelines/managing-notifications) do guia de interface da Apple cita a assinatura: uma pessoa pode gostar de "an offer to become a subscriber", se tiver aceitado notificações de marketing. Ela acrescenta duas obrigações: uma tela de ajustes no app para mudar de ideia, e nunca usar o nível "Time Sensitive" para marketing.

A fronteira que eu adoto: **um lembrete que informa sobre uma compra já feita não é oferta, uma mensagem que incentiva a comprar é.** "Seu teste termina no dia 12" informa. "50% de desconto por 24h" vende. A tela de compra que a notificação abre continua sujeita à [regra 3.1.2](https://devoria.fr/pt-br/blog/guideline-3-1-2-app-rejeitado-assinatura).

## As notificações suaves, ou provisórias

A Apple fala em "provisional authorization" na sua [documentação sobre permissões](https://developer.apple.com/documentation/usernotifications/asking-permission-to-use-notifications). O app pode enviar sem mostrar a janela do iOS. As notificações chegam sem som nem banner, só no histórico da central de notificações, com botões para mantê-las ou desativá-las. Com Expo, é uma opção do [requestPermissionsAsync](https://docs.expo.dev/versions/latest/sdk/notifications/):

```ts
import * as Notifications from "expo-notifications";

await Notifications.requestPermissionsAsync({
  ios: {
    allowAlert: true,
    allowBadge: true,
    allowSound: true,
    allowProvisional: true,
  },
});
```

O campo `ios.status` fica então em `IosAuthorizationStatus.PROVISIONAL` enquanto a pessoa não escolher. **A notificação provisória substitui a janela do iOS, não o consentimento de marketing.** Uma promoção enviada como provisória continua sendo promoção.

Cuidado com o vocabulário. No TradaZen, chamo de "notificação suave" um lembrete de tom tranquilo, enviado só se a janela do iOS foi aceita. Isso não é uma permissão provisória.

## Implementar o consentimento explícito com Expo

1. **Peça a permissão do iOS no contexto certo.** A Apple recomenda pedir depois de uma ação que mostre o valor dela, não na primeira abertura. No TradaZen, ela aparece por exemplo depois de uma recompensa do onboarding ou de uma lição concluída. Mesma lógica do [pedido de avaliação](https://devoria.fr/pt-br/blog/guideline-5-6-3-pedido-avaliacao-app-recusado).
2. **Adicione um consentimento de marketing separado.** Um botão desligado por padrão, com uma frase clara, por exemplo: "Receber ofertas e novidades, no máximo uma vez por semana."
3. **Ofereça uma tela de ajustes.** Lembretes e ofertas se desativam dentro do app, não só nos Ajustes do iOS.
4. **Filtre no envio.** Seu servidor, ou seu agendador local, só envia promoção para quem aceitou.
5. **Deixe tudo funcionar sem.** Recusar não bloqueia nenhuma tela, função ou recompensa.

## TradaZen: a notificação que eu tirei

Em 12 de outubro de 2026, uma versão do TradaZen foi rejeitada com base na regra 5.6, que trata de compras obtidas por manipulação. A Apple não aponta o elemento em questão. Então reli todo o funil de compra, incluindo as notificações.

Uma notificação era problemática. Sair do app durante o onboarding ou na tela de assinatura agendava esta mensagem local: "Tenho um desconto exclusivo só pra você." Ela dependia só da permissão do iOS, sem consentimento de marketing separado. **É a promoção sem consentimento explícito que a 4.5.4 e a licença descrevem.** Apaguei a mensagem nos trinta idiomas do app.

No lugar dela, um lembrete único: "Sua jornada está te esperando. Volte quando quiser, sem pressa." Os limites dele:

- só é enviado se as notificações estiverem autorizadas;
- uma única vez por instalação, cinco minutos depois de sair do onboarding ou da tela de assinatura;
- é cancelado se a pessoa voltar antes;
- nenhum preço, nenhum desconto, nenhum cronômetro, nenhum som.

Esse lembrete continua na zona cinzenta descrita acima. Não escondi: ele está descrito nas notas de revisão e na minha resposta ao reviewer. **Um lembrete declarado se discute, um lembrete escondido parece manobra.**

## Como responder a uma rejeição 4.5.4?

A conversa acontece no App Store Connect, onde você [responde à mensagem do App Review](https://developer.apple.com/help/app-store-connect/manage-submissions-to-app-review/reply-to-app-review-messages/). Corrija primeiro: tire a obrigatoriedade, adicione o consentimento de marketing ou limpe o texto, e gere um novo build. O modelo que eu usaria, para adaptar:

```text
Hello,

Thank you for your feedback on Guideline 4.5.4.

In the new build:
- The app works fully if notifications are denied.
- Promotional notifications are sent only to users
  who turn on "[toggle name]" in [screen]. It is off
  by default and can be turned off at any time.
- Notifications never include [sensitive data].

How to test:
1. Deny notifications at the first prompt.
2. Open [feature]: it works without them.
3. Open [screen] to see both toggles.

Best regards,
```

## A checklist 4.5.4 antes do envio

- O app pode ser usado por completo depois de recusar a permissão, sem tela travada nem recompensa retirada.
- A janela do iOS aparece depois de uma ação útil, nunca na primeira tela.
- Toda promoção, local ou remota, depende de um consentimento de marketing desligado por padrão.
- Uma tela de ajustes no app desativa lembretes e ofertas.
- Nenhum texto de notificação mostra dado de saúde, valor ou mensagem privada.
- Nenhuma promoção no nível "Time Sensitive".
- As notas de revisão listam as notificações enviadas nos primeiros dias.
- Você testou o fluxo recusando cada permissão. O guia do [TestFlight](https://devoria.fr/pt-br/blog/testflight-como-testar-app-iphone-antes-envio) mostra como instalar seu build para esse teste.

## Revisar seu envio antes de mandar

O [Review Kit](https://devoria.fr/pt-br/kits/app-review) reúne minha checklist pré-envio, modelos de notas para o testador e skills do Claude Code que revisam seu projeto. Se quiser um olhar humano, [reserve uma hora comigo](https://devoria.fr/pt-br/coaching): revisamos juntos suas notificações e sua tela de ajustes, por videochamada. O processo completo está na página [app rejeitado pela Apple](https://devoria.fr/pt-br/expertise/app-recusado-pela-apple).

Está preparando seu primeiro lançamento? [Faça seu diagnóstico gratuito](https://devoria.fr/pt-br/diagnostic): ele coloca as etapas em ordem e te envia minha checklist contra rejeições da Apple.

## Perguntas frequentes

### O que significa "Guideline 4.5.4 - Design - Apple Sites and Services"?

É o título da rejeição quando a Apple considera suas notificações obrigatórias, indiscretas demais ou promocionais sem consentimento. Leia a frase que vem depois do título: ela diz o que o reviewer constatou.

### Posso pedir as notificações durante o onboarding?

Sim, se recusar não bloquear nada e se o pedido vier depois de um momento que mostre o valor delas. Nunca condicione uma recompensa ao consentimento: a 5.1.2(i) proíbe isso.

### Uma notificação de fim de teste é marketing?

Minha leitura: não, se ela só informa sobre o teste em andamento. Se oferecer um desconto ou outra assinatura, vira promoção e exige o consentimento de marketing.

### As notificações locais entram na 4.5.4?

A guideline fala de notificações push, mas o anexo 1 da licença de desenvolvedor aplica a regra sobre promoção às notificações locais. Trate as duas do mesmo jeito.

### Uma notificação provisória dispensa o consentimento de marketing?

Não. Ela evita a janela do iOS no início, mas promoção continua sendo promoção: precisa de um consentimento explícito no app e de uma forma de sair.


## Seu projeto

[Review Kit](https://devoria.fr/pt-br/kits/app-review): Meu checklist de revisão da App Store, as recusas da Apple que corrigi, o checklist do Google Play e três skills do Claude Code. R$ 289.

[iOS & Android Kit](https://devoria.fr/pt-br/kits/ios): Crie seu app para iPhone e Android com o Claude Code: o código inicial dos meus apps, o caminho até as lojas e todos os kits. R$ 589.

[Diagnóstico: o que te separa do seu app de iPhone](https://devoria.fr/pt-br/diagnostic): 7 perguntas, 60 segundos: descubra o que realmente te impede de publicar seu app de iPhone, seu caminho em 4 etapas e o kit certo para você.
