Интеграция Apple Pay: верификация, настройка, реализация

Интеграция Apple Pay на сайт: от верификации до токенов

Разработка и обслуживание любых видов сайтов:

Информационные сайты или веб-приложения
Сайты визитки, landing page, корпоративные сайты, онлайн каталоги, квиз, промо-сайты, блоги, новостные ресурсы, информационные порталы, форумы, агрегаторы
Сайты или веб-приложения электронной коммерции
Интернет-магазины, B2B-порталы, маркетплейсы, онлайн-обменники, кэшбэк-сайты, биржи, дропшиппинг-платформы, парсеры товаров
Веб-приложения для управления бизнес-процессами
CRM-системы, ERP-системы, корпоративные порталы, системы управления производством, парсеры информации
Сайты или веб-приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, конструкторы сайтов, порталы предоставления электронных услуг, видеохостинги, тематические порталы

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Услуги, которые мы предлагаем
Показано 1 из 1Все 2062 услуг
Интеграция Apple Pay: верификация, настройка, реализация
Средний
от 1 дня до 3 дней

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1414
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1285
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    980
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1240
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    982
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    994

Интеграция Apple Pay на сайт: от верификации до токенов

Ошибка 404 на файле верификации — частая причина, почему Apple Pay не появляется на сайте. Забыли разместить файл, неправильный Content-Type или редирект — и платёж не работает. Мы решаем эту проблему за час. В одном проекте интернет-магазина после внедрения Apple Pay конверсия выросла на 15% за месяц, а средний чек увеличился на 8% — люди стали чаще оплачивать дорогие товары. Мы берём на себя весь цикл: от верификации домена до обработки токенов. Результат — оплата в один клик для пользователей iOS и macOS.

Конверсия растёт на 10–20% за счёт снижения трения при checkout. Подключаем к любому платёжному шлюзу: Stripe, CloudPayments, Тинькофф, Сбербанк. Свяжитесь с нами, чтобы оценить ваш проект — мы подберём оптимальный шлюз и рассчитаем бюджет.

Как Apple Pay повышает конверсию?

Apple Pay сокращает время оформления заказа до 10 секунд. Пользователю не нужно вводить данные карты, адрес — всё подтягивается из Wallet. По нашим данным, конверсия на мобильных устройствах растёт на 12–18%, а число брошенных корзин снижается на 25%. Это особенно заметно на товарах с высокой ценой: клиенты реже передумывают, когда оплата происходит в один клик.

Технические требования и верификация домена

Основные требования

  • HTTPS с валидным SSL-сертификатом (самоподписанные не работают)
  • Safari или Chrome на iOS / macOS с добавленной картой Wallet
  • Верификация домена в Apple Developer Account
  • Поддержка Apple Pay в платёжном шлюзе

Верификация домена

Для каждого домена, принимающего Apple Pay, нужно пройти верификацию:

  1. Скачать файл верификации из Apple Pay Merchant Configuration (Stripe Dashboard / CloudPayments ЛК / Apple Developer)
  2. Разместить его по точному пути: https://yourdomain.com/.well-known/apple-developer-merchantid-domain-association
  3. Файл должен отдаваться с Content-Type text/plain или без него, без редиректов
location /.well-known/apple-developer-merchantid-domain-association { root /var/www/well-known; default_type text/plain; } 

В Laravel файл отдаётся через маршрут — мы настраиваем это на этапе деплоя.

Что делать, если верификационный файл не подтягивается Проверьте, что файл доступен по URL `https://вашдомен/.well-known/apple-developer-merchantid-domain-association` и возвращает HTTP 200. Часто ошибки возникают из-за неправильного пути или отсутствия файла в корневой директории. Если используете Nginx, убедитесь, что блок location не переопределён.

Интеграция через платёжные шлюзы

Интеграция с Stripe

Stripe берёт на себя всю работу с Apple Pay Merchant Certificate. После верификации домена в Stripe Dashboard кнопка появляется автоматически в PaymentElement:

import { PaymentElement, useStripe, useElements } from '@stripe/react-stripe-js'; function StripeCheckout() { const stripe = useStripe(); const elements = useElements(); const handleSubmit = async () => { await stripe?.confirmPayment({ elements: elements!, confirmParams: { return_url: 'https://example.com/payment/complete' }, }); }; return ( <form onSubmit={handleSubmit}> <PaymentElement /> <button type="submit">Оплатить</button> </form> ); } 

Для отображения только Apple Pay / Google Pay кнопки (без полной формы) используйте Payment Request Button:

import { useStripe } from '@stripe/react-stripe-js'; import { useEffect, useState } from 'react'; function ExpressCheckout({ amount }: { amount: number }) { const stripe = useStripe(); const [paymentRequest, setPaymentRequest] = useState<any>(null); const [canPay, setCanPay] = useState(false); useEffect(() => { if (!stripe) return; const pr = stripe.paymentRequest({ country: 'RU', currency: 'rub', total: { label: 'Итого к оплате', amount, }, requestPayerName: true, requestPayerEmail: true, }); pr.canMakePayment().then(result => { if (result) { setPaymentRequest(pr); setCanPay(true); } }); pr.on('paymentmethod', async (ev) => { const { error } = await stripe.confirmCardPayment(clientSecret, { payment_method: ev.paymentMethod.id, }); if (error) { ev.complete('fail'); } else { ev.complete('success'); } }); }, [stripe, amount]); if (!canPay) return null; return <PaymentRequestButtonElement options={{ paymentRequest }} />; } 

Интеграция с CloudPayments

const widget = new cp.CloudPayments(); widget.charge( { publicId: 'pk_xxxx', description: 'Заказ #12345', amount: 1500, currency: 'RUB', invoiceId: 'order-12345', }, (options) => console.log('success', options), (reason) => console.error('fail', reason), ); 

CloudPayments автоматически отображает кнопку Apple Pay вместо стандартной карточной формы, если устройство поддерживает.

Проверка поддержки на клиенте

function isApplePayAvailable(): boolean { return ( typeof window !== 'undefined' && 'ApplePaySession' in window && ApplePaySession.canMakePayments() ); } function isApplePayReadyToMakePayments(): Promise<boolean> { if (!('ApplePaySession' in window)) return Promise.resolve(false); return ApplePaySession.canMakePaymentsWithActiveCard('merchant.com.example.shop'); } 

Типичные проблемы и их решение

Ошибка "The domain yourdomain.com is not registered" — верификационный файл не найден или отдаётся с 404. Проверить через curl -I https://yourdomain.com/.well-known/apple-developer-merchantid-domain-association.

Apple Pay не появляется на тестовом устройстве — убедиться, что устройство использует тестовую карту Apple Pay Sandbox (добавляется в Settings → Wallet & Apple Pay → Simulator Environment → Sandbox Cards).

Домен должен быть верифицирован отдельно для каждого поддомена. Верификация example.com не распространяется на shop.example.com.

Почему стоит выбрать Stripe для интеграции?

Stripe упрощает интеграцию Apple Pay в 3 раза быстрее, чем самостоятельная настройка через Apple Pay JS API. Все сертификаты генерируются автоматически, а UI-компоненты адаптируются под браузер. CloudPayments тоже хорош для российских проектов, но требует ручного добавления мерчант-аккаунта. Тинькофф — для экосистемы, но интеграция менее прозрачна. Мы подбираем оптимальный шлюз под ваш проект.

Платёжный шлюз Нативная поддержка Apple Pay UI-компоненты Верификация домена Sandbox-тестирование
Stripe Да, из коробки PaymentElement, Payment Request Button Автоматическая в Dashboard Встроенный Sandbox
CloudPayments Да, автоматически CP Widget Через Apple Developer Ручная настройка Sandbox
Тинькофф Через API Собственная форма Через Apple Developer Требуется запрос тестового мерчанта
Этап Описание Ориентировочное время
Верификация домена Размещение файла в .well-known 1 час
Настройка мерчант-аккаунта В Apple Developer 1-2 дня
Интеграция Payment Request API Разработка и тестирование 2-3 дня
Тестирование Sandbox Проверка в тестовой среде 1 день
Развёртывание в Production Настройка доменов, SSL 0.5 дня

Что входит в нашу работу?

  • Верификация домена (размещение файла в .well-known)
  • Настройка мерчант-аккаунта в Apple Developer
  • Интеграция Payment Request API или Stripe Elements
  • Тестирование Sandbox и Production
  • Документация по поддержке для команды
  • Обучение менеджеров работе с Apple Pay

Мы занимаемся веб-разработкой 10+ лет. Интегрировали Apple Pay для 15+ проектов — от интернет-магазинов до сервисов подписок. Гарантируем поддержку и обновление платёжных модулей при выходе новых версий API. Свяжитесь с нами, чтобы получить точную оценку стоимости и сроков интеграции Apple Pay под ваш проект.

Подробнее о технологии — в документации Apple Pay.