Payment Docs
Платежи по странамАфрика

Сенегал

Оплата мобильными деньгами в XOF

Перед тем как начать

Этот способ оплаты доступен не всем мерчантам. Уточните доступность у вашего менеджера.

Обзор

ВалютаКод страныСпособы оплаты
XOFSNМобильные деньги: Free Money, Orange Money, Wave

Доступны два сценария. Какой сценарий и какой оператор включены для вашего аккаунта, определяется настройками терминала.

Не уверены, какой вариант у вас? Уточните у менеджера.

Чем отличается от обычного заказа

Заказ создаётся через стандартный эндпоинт POST /v1/orders. Базовые поля (amount, currency, successUrl, failUrl, callbackUrl и т. д.) такие же, как у обычного заказа; дополнительно к ним передаётся объект customer с данными плательщика.

ПолеТипОписание
customerobjectДанные плательщика. Набор обязательных полей приведён ниже

Для этого способа оплаты поле externalUserId обязательно.

Операторы: Free Money, Orange Money, Wave.

Отправьте плательщика на paymentLink: запрос на оплату уходит оператору при открытии ссылки, и плательщик подтверждает его на телефоне (push-уведомление или USSD-запрос). Страница ждёт результата и показывает его; финальный статус также приходит на ваш callbackUrl.

Поля объекта customer

ПолеТипОбязательноеОписание
phonestring✅ ДаНомер телефона плательщика, только цифры с кодом страны: 221771234567
firstNamestring⚠️ Зависит от оператораИмя
lastNamestring⚠️ Зависит от оператораФамилия
emailstring⚠️ Зависит от оператораEmail плательщика
countrystring❌ НетКод страны SN. Необязателен: страна определяется методом

Обязательный набор зависит от оператора, включённого на терминале. Если нужного поля нет или телефон не соответствует формату страны, заказ отклоняется с 400 и списком полей. Передавайте firstName, lastName, email и phone, когда они у вас есть.

Пример запроса

{
  "purpose": "Payment for order #1234",
  "amount": "1000",
  "currency": "XOF",
  "externalId": "external_id",
  "externalUserId": "external_user_id",
  "successUrl": "https://example.com/success",
  "failUrl": "https://example.com/fail",
  "callbackUrl": "https://example.com/webhooks/payments",
  "isFeeOnUser": false,
  "customer": {
    "firstName": "John",
    "lastName": "Doe",
    "phone": "221771234567",
    "email": "john.doe@example.com"
  }
}

Операторы: Free Money, Orange Money, Wave.

Плательщик перенаправляется на paymentLink — страницу провайдера — и подтверждает оплату там (некоторые операторы дополнительно присылают подтверждение на телефон).

Поля объекта customer

ПолеТипОбязательноеОписание
phonestring✅ ДаНомер телефона плательщика, только цифры с кодом страны: 221771234567
firstNamestring⚠️ Зависит от оператораИмя
lastNamestring⚠️ Зависит от оператораФамилия
emailstring⚠️ Зависит от оператораEmail плательщика
addressstring⚠️ Зависит от оператораАдрес плательщика
countrystring❌ НетКод страны SN. Необязателен: страна определяется методом

Обязательный набор зависит от оператора, включённого на терминале. Если нужного поля нет или телефон не соответствует формату страны, заказ отклоняется с 400 и списком полей. Передавайте firstName, lastName, email и phone, когда они у вас есть.

Пример запроса

{
  "purpose": "Payment for order #1234",
  "amount": "1000",
  "currency": "XOF",
  "externalId": "external_id",
  "externalUserId": "external_user_id",
  "successUrl": "https://example.com/success",
  "failUrl": "https://example.com/fail",
  "callbackUrl": "https://example.com/webhooks/payments",
  "isFeeOnUser": false,
  "customer": {
    "firstName": "John",
    "lastName": "Doe",
    "phone": "221771234567",
    "email": "john.doe@example.com",
    "address": "12 Rue Example, Dakar"
  }
}

Сумма должна быть кратна 5 (требование провайдера), иначе платёж будет отклонён.

Ответ

В ответе возвращается стандартный объект заказа. Заказ создаётся со статусом CREATED; перенаправьте плательщика на paymentLink, чтобы он завершил оплату.

Поля объекта заказа

Следующие шаги

На этой странице