Pré-requisitos
Antes de começar, certifique-se de ter:- Uma conta ativa no Apple Developer Program.
- Um domínio próprio servindo sob HTTPS (com certificado SSL válido).
- Acesso ao painel da FastPay para envio do certificado de processamento.
opensslinstalado localmente para geração dos arquivos.csre.key.
Recomendamos criar Merchant IDs separados para sandbox e produção para evitar conflitos entre os ambientes durante os testes.
Visão Geral do Fluxo
Etapa 1 — Criação do Merchant ID
- Acesse o Apple Developer — Identifiers.
- Clique no botão + para registrar um novo identificador e selecione a opção Merchant IDs.
- Preencha os campos:
- Confirme a criação. Repita o processo para gerar um Merchant ID dedicado ao
ambiente de produção (por exemplo,
merchant.com.seudominio.fastpay.prod).
Etapa 2 — Validação do Domínio
Apple exige que você comprove a propriedade de todos os domínios que oferecerão o botão Apple Pay.- No Apple Developer, abra o Merchant ID criado e localize a seção Merchant Domains.
- Clique em Add Domain e informe o domínio (sem
https://, ex:loja.seudominio.com). - Faça o download do arquivo de validação fornecido pela Apple
(
apple-developer-merchantid-domain-association.txt). - Hospede o arquivo no seu domínio, exatamente no caminho:
- De volta ao painel Apple, clique em Verify. O status deve mudar para Verified.
O arquivo precisa estar acessível publicamente via HTTPS, com o
Content-Type text/plain ou application/octet-stream. Se utilizar CDN ou proxy reverso, garanta que a rota .well-known não esteja bloqueada.Etapa 3 — Merchant Identity Certificate
Este certificado autentica seu servidor junto aos servidores da Apple durante a solicitação de uma sessão de pagamento.3.1 Gerar o CSR e a chave privada
No terminal, execute:- Preencha os campos solicitados (Country, State, Organization, etc).
- Quando solicitada a Challenge password, deixe em branco.
uploadMe.csr→ será enviado à Apple.certificate_sandbox.key→ chave privada, mantenha em local seguro.
3.2 Upload do CSR e emissão do certificado
- No Merchant ID, abra a seção Apple Pay Merchant Identity Certificate e clique em Create Certificate.
- Faça o upload do
uploadMe.csr. - Baixe o arquivo
merchant_id.cergerado pela Apple.
3.3 Conversão para PEM
A FastPay e a maioria dos servidores trabalham com certificados em formato PEM. Converta o.cer com:
certificate_sandbox.pem— certificado de identidade.certificate_sandbox.key— chave privada correspondente.
Etapa 4 — Payment Processing Certificate
Este certificado é responsável por criptografar os dados do cartão que o dispositivo do cliente envia para a FastPay processar a transação.4.1 Gerar o CSR
Gere um novo CSR exclusivamente para este certificado:4.2 Upload no Apple Developer
- No Merchant ID, abra Apple Pay Payment Processing Certificate e clique em Create Certificate.
- Quando perguntado “Will payments associated with this Merchant ID be processed exclusively in China?”, selecione No.
- Faça o upload do
paymentProcessing.csr. - Baixe o
.cerresultante.
4.3 Envio para a FastPay
Envie para a equipe da FastPay:- O
.cerdo Payment Processing Certificate (gerado nesta etapa). - O
.pemdo Merchant Identity Certificate (gerado na Etapa 3). - A
.keycorrespondente ao Merchant Identity Certificate. - O Merchant Identifier criado na Etapa 1.
- O Display Name que aparecerá na folha de pagamento (até 64 caracteres UTF-8).
Etapa 5 — Resumo dos Artefatos Entregues à FastPay
Para concluir o credenciamento, confirme com nossa equipe que você entregou:
Após validar e instalar os artefatos, a FastPay confirmará a ativação do Apple
Pay para o seu merchant.
Integração com a API da FastPay
Após concluir o credenciamento, o pagamento via Apple Pay é realizado através do endpoint padrão de cobrançasPOST /v1/charges,
utilizando o paymentMethod do tipo credit_card com o campo adicional
wallet.
Como obter o token
O token Apple Pay (paymentData) é gerado pelo dispositivo do cliente durante o
fluxo do Apple Pay JS API.
Após o cliente autorizar o pagamento, sua aplicação recebe o evento
onpaymentauthorized contendo o objeto payment.token, que deve ser enviado
na íntegra para a FastPay no momento da criação da cobrança.
Estrutura do payload
Quando o campowallet é informado, os dados do cartão (number,
holderName, expirationMonth, expirationYear, cvv) não são
necessários — a FastPay descriptografa o token Apple Pay e extrai
automaticamente as informações do cartão. Apenas installments continua
obrigatório.
Campos do objeto wallet
Para detalhes do schema, consulte o API Reference.
Renovação dos Certificados
Os certificados Apple Pay possuem validade de aproximadamente 25 meses. Antes do vencimento:- Repita as Etapas 3 e 4 para gerar novos
.pem/.cer. - Reenvie os arquivos à FastPay com pelo menos 30 dias de antecedência para garantir uma troca sem indisponibilidade.
Troubleshooting
Falha ao verificar o domínio
Possíveis causas:- O arquivo de validação não está acessível em
/.well-known/apple-developer-merchantid-domain-association.txt. - O domínio não está servido sob HTTPS válido.
- Redirecionamentos HTTP → HTTPS estão removendo o arquivo do path.
200 OK e o Content-Type deve permitir leitura como texto.
CSR rejeitado pela Apple
- Certifique-se de não ter informado uma Challenge password.
- O CSR precisa ter sido gerado com chave RSA de 2048 bits.
- Cada
Create Certificatena Apple consome o CSR — gere um novo para cada tentativa.
Botão Apple Pay não aparece no checkout
- O domínio acessado pelo cliente precisa estar na lista de Merchant Domains verificados.
- O navegador precisa ser Safari em macOS/iOS ou um navegador compatível com o dispositivo Apple do cliente.
- O cliente precisa ter pelo menos um cartão cadastrado na Wallet.