FlipLink

Продажа флипбука и чтение продаж

Лиды и продажи

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

API, используемые в этом обсуждении

Что-то в этом руководстве неточно или устарело?

Что можно сделать

Эти пять эндпоинтов охватывают полный жизненный цикл продажи флипбука и отслеживания того, что он зарабатывает:

  • Настроить продажу — задать цену, валюту и то, продаётся ли флипбук.
  • Настроить страницу оформления заказа — заголовки, текст кнопки и цвет кнопки.
  • Выбрать платёжный шлюз — выбрать шлюз и задать его учётные данные.
  • Записать покупку — зафиксировать завершённую продажу, сделанную через ваш собственный платёжный поток.
  • Прочитать продажи — получить список записей о завершённых (или брошенных) продажах, с постраничной разбивкой и экспортом в CSV.

Перед началом

  • API-ключ — передаётся в заголовке X-Api-Key или как Authorization: Bearer YOUR_API_KEY в каждом запросе.
  • Все запросы идут на базовый URL https://go.fliplink.me.
  • Каждый эндпоинт, кроме List Sales, принимает числовой ID флипбука как параметр пути {flipbookId} — например .../set-sale-settings/96216.
  • Эндпоинты записи (Set Sale Settings, Set Sale Page Text, Set Sale Gateway, Set Flipbook Purchase) отправляют своё тело как поля form-urlencoded (НЕ JSON).

Настройка продажи

PUT /api/set-sale-settings/{flipbookId} настраивает продажу флипбука (цена, валюта, параметры). Включение режима продажи автоматически включает подтверждение email и делает email лида обязательным.

Ключевые поля:

  • SaleAmount — цена в основных денежных единицах (например, в долларах); допускается дробная часть. 9.99 означает $9.99, а 1000 означает $1,000 — это НЕ значение в центах/младших единицах.
  • SaleCurr — код валюты (по умолчанию usd). Выберите допустимый код из /api/list-currencies.
curl -X PUT 'https://go.fliplink.me/api/set-sale-settings/96216' \
  -H 'X-Api-Key: YOUR_API_KEY' \
  --data-urlencode 'IsForSale=true' \
  --data-urlencode 'SaleCurr=usd' \
  --data-urlencode 'SaleAmount=9.99'

Ответ:

{
  "Result": "OK",
  "Message": "Updated successfully"
}

Настройка страницы оформления заказа

PUT /api/set-sale-page-text/{flipbookId} задаёт маркетинговые тексты, показываемые на странице продажи / оформления заказа флипбука.

curl -X PUT 'https://go.fliplink.me/api/set-sale-page-text/96216' \
  -H 'X-Api-Key: YOUR_API_KEY' \
  --data-urlencode 'SalePageTitle=' \
  --data-urlencode 'SaleAccessPageTitle=' \
  --data-urlencode 'SalePurchaseButtonText=' \
  --data-urlencode 'SaleButtonText=' \
  --data-urlencode 'SaleAccessButtonText=' \
  --data-urlencode 'SaleButtonColor='

Ответ:

{
  "Result": "OK",
  "Message": "Updated successfully"
}

Выбор платёжного шлюза

PUT /api/set-sale-gateway/{flipbookId} выбирает и настраивает платёжный шлюз, используемый при продаже этого флипбука.

curl -X PUT 'https://go.fliplink.me/api/set-sale-gateway/96216' \
  -H 'X-Api-Key: YOUR_API_KEY' \
  --data-urlencode 'SaleGatewayName=' \
  --data-urlencode 'SaleGatewayKey=' \
  --data-urlencode 'SaleGatewaySecret='

Ответ:

{
  "Result": "OK",
  "Message": "Updated successfully"
}

Запись покупки

POST /api/set-flipbook-purchase/{flipbookId} записывает завершённую продажу (покупку) флипбука — используйте его, чтобы фиксировать покупки, сделанные через ваш собственный платёжный поток, не проходя через оформление заказа Stripe в FlipLink. Передавайте Email покупателя и идентификатор платёжного шлюза PaymentRef (для Stripe — ID PaymentIntent, pi_...); оба обязательны. НЕ передавайте Amount/Currency — они выводятся на стороне сервера из вашего платёжного идентификатора.

curl -X POST 'https://go.fliplink.me/api/set-flipbook-purchase/96216' \
  -H 'X-Api-Key: YOUR_API_KEY' \
  --data-urlencode 'Email=customer@example.com' \
  --data-urlencode 'PaymentRef=pi_3O1234567890abcdef'

Ответ:

{
  "Result": "OK",
  "Message": "Purchase recorded successfully"
}

Чтение продаж

GET /api/list-sales выводит список записей о продажах/покупках ваших флипбуков (email покупателя, флипбук, сумма, дата) плюс определения столбцов для таблицы продаж. Он поддерживает постраничную разбивку и экспорт в CSV через IsDownload. Задайте IsAbandoned=true, чтобы вернуть продажи с брошенной корзиной вместо завершённых.

curl -X GET 'https://go.fliplink.me/api/list-sales?ItemIDs=&SearchText=&PageNo=1&Offset=0&IsDownload=true&IsAbandoned=false' \
  -H 'X-Api-Key: YOUR_API_KEY'

Ответ:

{
  "Result": "OK",
  "Items": [],
  "Columns": [
    {
      "ID": 1,
      "data": "ID",
      "title": "ID",
      "type": "numeric",
      "hidden": true,
      "readOnly": true,
      "defaultValue": "",
      "source": "",
      "width": 0,
      "backgroundColor": "",
      "align": "left"
    }
  ],
  "TotalRecordCount": 0
}

Возможные ошибки

  • Отсутствующий или неверный API-ключ → HTTP 401. Возвращается обычная HTML-страница Unauthorized — тела JSON нет. Проверьте, что заголовок X-Api-Key присутствует и указан верно.
  • Неизвестный flipbookId (или не принадлежащий вашему ключу) → HTTP 200 с { "Result": "ERROR", "Message": "Item not found" }. Это относится к Set Sale Settings, Set Sale Page Text, Set Sale Gateway и Set Flipbook Purchase.
  • Неизвестное поле тела запроса или опечатка в нём → HTTP 200 с { "Result": "ERROR", "Message": "Unknown field(s) '…'. Expected: …" }.
  • Отсутствует обязательное поле покупки (Set Flipbook Purchase) → { "Result": "ERROR", "Message": "Email is required." } или { "Result": "ERROR", "Message": "PaymentRef is required." }.

Примечания

  • Включение режима продажи (IsForSale) через Set Sale Settings автоматически включает подтверждение email и делает email лида обязательным.
  • Set Flipbook Purchase предназначен для покупок, сделанных через ваш собственный платёжный поток — он позволяет зафиксировать продажу, не проходя через оформление заказа Stripe в FlipLink.

Похожие обсуждения