Pular para o conteúdo principal

Sessão Apple Pay

POST/api/v1/bank/public/charge/applepay/{uuid}/session
Endpoint público

Este endpoint é chamado a partir do navegador durante o fluxo de pagamento Apple Pay. Quando o usuário clica no botão Apple Pay, seu JavaScript chama ApplePaySession.onvalidatemerchant, que aciona este endpoint para validar a A55 como processadora de pagamentos junto aos servidores da Apple.


Cabeçalhos da requisição

CabeçalhoValorObrigatório
Content-Typeapplication/jsonSim

Parâmetros de caminho

CampoTipoObrigatórioDescrição
uuidstring (UUID)SimUUID da cobrança para o pagamento Apple Pay

Corpo da requisição

CampoTipoObrigatórioDescrição
validation_urlstringSimURL de validação do merchant da Apple proveniente do evento onvalidatemerchant
domainstringSimDomínio do seu site (ex.: www.sua-loja.com)
display_namestringNãoNome do merchant exibido na tela do Apple Pay

Campos da resposta

CampoTipoDescrição
merchant_sessionobjectObjeto opaco de sessão Apple Pay — passe para completeMerchantValidation()
merchant_session.epochTimestampnumberTimestamp de criação da sessão
merchant_session.expiresAtnumberTimestamp de expiração da sessão
merchant_session.merchantSessionIdentifierstringID da sessão Apple
merchant_session.merchantIdentifierstringID do merchant Apple

Códigos de status HTTP

StatusDescrição
200Sessão do merchant criada
400validation_url ou domínio inválido
404Cobrança não encontrada ou não é uma cobrança Apple Pay
409Sessão já criada para esta cobrança
422Domínio não registrado no Apple Pay
429Limite de requisições excedido
500Erro interno do servidor

Exemplos de código

curl -s -X POST "https://core-manager.a55.tech/api/v1/bank/public/charge/applepay/a1b2c3d4-e5f6-7890-abcd-ef1234567890/session" \
-H "Content-Type: application/json" \
-d '{
"validation_url": "https://apple-pay-gateway.apple.com/paymentservices/startSession",
"domain": "www.your-store.com",
"display_name": "Your Store"
}'

Exemplo de resposta de erro

{
"status": "error",
"message": [
{
"code": "DOMAIN_NOT_REGISTERED",
"source": "applepay",
"description": "Domain www.your-store.com is not registered for Apple Pay. Register it in the A55 dashboard."
}
]
}