Validar Sessão Apple Pay
Apple Pay
Validar Sessão Apple Pay
Endpoint para validar sessões Apple Pay necessário para integração web
POST
Validar Sessão Apple Pay
Visão Geral
Este endpoint é chamado automaticamente durante o fluxo de pagamento Apple Pay na web, quando o eventoonvalidatemerchant é disparado pelo ApplePaySession.
A validação de sessão é necessária para estabelecer confiança entre o seu domínio, a Apple e a Autorizou antes de processar o pagamento.
Este endpoint não requer autenticação Bearer Token, mas deve ser chamado do frontend durante o fluxo Apple Pay.
Quando Este Endpoint é Usado
Este endpoint é chamado automaticamente quando você inicia uma sessão Apple Pay:JavaScript
Parâmetros da Requisição
string
required
URL fornecida pela Apple no evento
onvalidatemerchantExemplo: https://apple-pay-gateway-cert.apple.com/paymentservices/startSessionEsta URL é única para cada sessão e expira rapidamente.string
required
Nome do domínio onde o Apple Pay está sendo usadoExemplo:
checkout.sualoja.com.brDeve ser um domínio verificado no Apple Developer Portal.Exemplo de Requisição
Resposta de Sucesso
object
required
Objeto de sessão retornado pela Apple, necessário para completar a validação no frontend
Exemplo de Resposta
Códigos de Erro
400 - Bad Request
400 - Bad Request
Parâmetros faltando ou inválidosCausas comuns:
validationURLoudomainNamenão foram fornecidos- Formato inválido dos parâmetros
400 - Apple Pay Session Validation Failed
400 - Apple Pay Session Validation Failed
Falha na validação com a AppleCausas comuns:
- Domínio não foi registrado pela Autorizou (solicite ao suporte)
- Arquivo de verificação não está acessível no seu domínio
validationURLexpirada (execute o fluxo mais rapidamente)
- Confirme que solicitou o registro do domínio ao suporte da Autorizou
- Verifique se o arquivo está acessível em:
https://seu-dominio/.well-known/apple-developer-merchantid-domain-association.txt - Se persistir, entre em contato com o suporte
500 - Internal Server Error
500 - Internal Server Error
Erro na configuração interna da Autorizou. Pode retornar uma das mensagens abaixo:Solução:
- Entre em contato com o suporte da Autorizou
- Informe o domínio e horário do erro
- A equipe técnica verificará a configuração
Fluxo Completo de Integração
Este endpoint faz parte de um fluxo maior. Veja como ele se encaixa:1
Usuário clica no botão Apple Pay
Frontend detecta o clique e inicia
ApplePaySession2
Apple dispara evento onvalidatemerchant
Fornece
validationURL única para esta sessão3
Frontend chama este endpoint
Envia
validationURL e domainName para validação4
Autorizou valida com Apple
Usa certificados Merchant Identity para estabelecer confiança
5
Retorna sessionData
Frontend recebe dados de sessão validados
6
Frontend completa validação
Chama
session.completeMerchantValidation(sessionData)7
Apple Pay exibe interface
Usuário pode selecionar cartão e autorizar pagamento
8
Processa pagamento
Token Apple Pay é enviado para
/api/v1/charges/ordersSegurança
Como Funciona a Validação
- Seu domínio deve estar verificado no Apple Developer Portal
- Certificado Merchant Identity prova que você controla o Merchant ID
- Apple valida que domínio + certificado + Merchant ID são consistentes
- Apple retorna sessão criptografada válida por 5 minutos
Boas Práticas
✓ Sempre use HTTPS para servir a página com Apple Pay
✓ Valide que o domínio está correto antes de chamar o endpoint
✓ Trate erros adequadamente e mostre mensagem amigável ao usuário
✓ Não reutilize sessionData - cada sessão é única
Próximos Passos
Após validar a sessão com sucesso:- Implementar fluxo completo de Apple Pay
- Criar pedido com Apple Pay
- Configurar webhooks para notificações
Recursos Adicionais
Guia Completo Apple Pay
Documentação completa de integração
Apple Developer Docs
Documentação oficial da Apple
Criar Pedido
Processar pagamento Apple Pay
Webhooks
Receber notificações de pagamento