> ## Documentation Index
> Fetch the complete documentation index at: https://developers.uvvipay.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Validar sessão Apple Pay (web)

> Merchant validation do Apple Pay on the Web, server-to-server: repasse o validationURL do evento onvalidatemerchant e devolva o merchant session retornado ao ApplePaySession. Aceita apenas domínios com status verified em /v1/payment-method-domains.



## OpenAPI

````yaml POST /v1/payments/apple-pay/validate-merchant
openapi: 3.0.0
info:
  title: UvviPay Public API
  description: >-
    Endpoints públicos da plataforma UvviPay para integração de subcontas
    (submerchants).
  version: 1.0.0
  contact: {}
servers:
  - url: https://api.uvvipay.com.br
    description: Produção
  - url: https://api-staging.uvvipay.com.br
    description: Staging
security:
  - client-id: []
    client-secret: []
tags: []
paths:
  /v1/payments/apple-pay/validate-merchant:
    post:
      tags:
        - Pagamentos
      summary: Validar sessão Apple Pay (web)
      description: >-
        Merchant validation do Apple Pay on the Web, server-to-server: repasse o
        validationURL do evento onvalidatemerchant e devolva o merchant session
        retornado ao ApplePaySession. Aceita apenas domínios com status verified
        em /v1/payment-method-domains.
      operationId: validateApplePayMerchant
      parameters:
        - name: client-secret
          in: header
          description: Secret da credencial do merchant
          required: true
          schema:
            type: string
        - name: client-id
          in: header
          description: ID público da credencial do merchant
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ValidateApplePaySessionDto'
      responses:
        '200':
          description: >-
            Merchant session opaco da Apple — repasse ao
            ApplePaySession.completeMerchantValidation
          content:
            application/json:
              schema:
                type: object
        '400':
          description: >-
            Domínio não registrado/não verificado, ou validationUrl fora do
            gateway Apple Pay
        '401':
          description: Credenciais inválidas ou ausentes
        '503':
          description: Falha na comunicação com a Apple
components:
  schemas:
    ValidateApplePaySessionDto:
      type: object
      properties:
        validationUrl:
          type: string
          description: >-
            validationURL emitida pelo Safari no evento onvalidatemerchant (o
            host é validado contra o gateway Apple Pay no servidor)
          example: https://apple-pay-gateway.apple.com/paymentservices/startSession
        domain:
          type: string
          maxLength: 255
          description: >-
            Domínio da página onde o botão está (window.location.hostname) —
            precisa estar registrado e verificado em /v1/payment-method-domains
          example: checkout.minhaloja.com.br
      required:
        - validationUrl
        - domain
  securitySchemes:
    client-id:
      type: apiKey
      in: header
      name: client-id
    client-secret:
      type: apiKey
      in: header
      name: client-secret

````