Braintree

Braintree — платёжный сервис PayPal. Через него пользователь платит картой, из PayPal, через Google Pay или Apple Pay.

инфо
Что нужно заранее
инфо

Платёж обрабатывается облачной функцией Firebase.

Как подключить

1. Настройка интеграции

Сначала — песочница: проверять оплату всегда нужно в тестовом окружении, и только потом переключаться на боевое.

  1. Откройте сайт Braintree.
  2. Зарегистрируйтесь, чтобы получить доступ к песочнице. На почту может прийти письмо с дополнительными шагами. Если аккаунт уже есть — просто войдите.
  3. Во FlutterFlow откройте Settings and Integrations > In App Purchases & Subscriptions > Braintree.
  4. Включите Enable Braintree/PayPal.
  5. В секции Credentials (Sandbox) нужно заполнить Merchant ID, Tokenization Key, Public Key и Private Key.
  6. За ними идите на главную страницу аккаунта Braintree.
  7. Нажмите на шестерёнку справа сверху и выберите Business — здесь лежит Merchant ID.
  8. Откройте страницу API — здесь Public Key и Private Key.
  9. Там же нажмите Generate New Tokenization Key, скопируйте ключ и вставьте в соответствующее поле во FlutterFlow.

Нажмите Deploy — развернутся облачные функции, которые обрабатывают платежи:

2. Google Pay и Apple Pay

После шагов выше приложение уже принимает карты и оплату из PayPal. Google Pay и Apple Pay включаются отдельно: в секции Credentials (Sandbox) нужно указать соответствующий Merchant ID.

  1. Где взять Merchant ID для Google Pay — в справке Google.
  2. Как настроить Apple Pay и получить Apple Merchant ID — в документации Apple.

3. Действие оплаты

  1. Выберите виджет, на который вешаете действие.
  2. В панели свойств справа откройте Actions.
  3. Нажмите + Add Action.
  4. Выберите жест: On Tap, On Double Tap или On Long Press.
  5. В Action Type укажите Braintree Payment.
  6. Задайте Amount — конкретным значением или из переменной.
  7. В Payment Method выберите Credit Card, PayPal или Drop-In. Вариант Drop-In даёт пользователю выбрать способ оплаты самому. Про Credit Cardниже.
  8. Для Drop-In укажите Allowed Payment Types. Google Pay и Apple Pay потребуют заранее заданных Merchant ID.
  9. Заполните Currency Code; по желанию — Tax Rate Percentage и Shipping Cost. Для Apple Pay обязателен Country Code.
внимание

Перед вызовом действия пользователь должен быть авторизован, иначе платёж завершится ошибкой. Как настроить вход — в разделе про аутентификацию.

Оплата картой

Если на странице оплаты нужна только карта, добавьте форму ввода:

  1. В Payment Method выберите Credit Card.
  2. Перетащите на холст виджет Credit Card Form.
  3. Оформите форму под дизайн приложения.
  4. Вернитесь к кнопке оплаты и продолжите настройку действия.
  5. Заполните Currency Code; по желанию — Tax Rate Percentage и Shipping Cost.

4. Проверка

Платежи Braintree работают на реальных устройствах Android и в эмуляторе; покупки в App Store — только на настоящем устройстве iOS. Как запустить приложение на устройстве — в разделе про Local Run.

инфо

В Preview Mode, Test Mode и Run Mode платежи Braintree не работают.

  1. Выгрузите и запустите проект через Local Run.
  2. Платите тестовыми картами Braintree.

5. Переход на боевой аккаунт

  1. Заведите боевой аккаунт Braintree — не песочницу — и получите его учётные данные.
  2. Заполните ими секцию Credentials (Production) на странице настроек Braintree во FlutterFlow.
  3. Включите тумблер Is Production.
  4. Нажмите Deploy, чтобы развернуть облачные функции с боевыми ключами.

После этого приложение можно собирать и публиковать.

перевод официальной документации FlutterFlow

обновлено

ESC