Передача та звірка контрактів
Передача та звірка контрактів: Інтеграція Agent Java SDK v0.3.0, приклади, параметри та семантика відповіді.
Цей посібник призначений для Agent Java SDK v0.3.0, Java 8+ і публічного контракту з тегами. Приклади виконуються в серверній частині партнера після ініціалізації client у Швидкий старт.
Приклад передумов
Фрагменти Java поділяють ці імпортовані файли. Ініціалізуйте client за допомогою швидкого запуску та отримайте platformUserId із збереженого зв’язування. Приклади ідентифікаторів користувача/замовлення потрібно замінити вашими постійними значеннями.
Переказ фіксованої суми
Використовуйте transfer для переказів фіксованої суми. Direction.IN означає передачу
з партнерської платформи на 6MM. Direction.OUT означає перенесення з 6MM
назад на партнерську платформу.
Використовуйте рядки або BigDecimal для сум. Не використовуйте double або float.
Переказ через agentUserId
Переказ через platformUserId
Надайте обидва ідентифікатори
Якщо надано обидва ідентифікатори, служба підтверджує, що вони вказують на одне й те саме пов’язаний користувач.
Поля запиту:
Поля відповіді:
Підтвердження замовлення та ідемпотентність
Після виклику transfer служба агента синхронно викликає торгівлю
ядро на головному шляху. У більшості випадків відповідь API уже містить
синхронний торговий основний результат.
Вимоги до ідемпотентності:
- Використовуйте один
agentOrderNoдля однієї бізнес-операції. - Якщо HTTP минув або мережа вийшла з ладу, спочатку надішліть той самий запит
agentOrderNo. - Webhooks можна спробувати повторно. Дедуплікуйте їх за допомогою ключа ідемпотентності.
Transfer All Out
transferAllOut переміщує баланс користувача на стороні 6MM назад до
партнерська платформа.
Автор platformUserId:
amount у відповіді — фактична сума переказу.
Зворотний порядок
Реверс використовується для компенсації успішного замовлення на передачу, коли серверна частина підтримує зворотний потік. Типові випадки включають винятки місцевого замовлення партнера або ручний відкат узгодження.
Поля:
Примітки:
- Реверс не є звичайною операцією скасування.
- Зворотні порядки також повинні бути ідемпотентними за номером порядку.
- Після скасування початкового замовлення webhook може підштовхнути вихідне замовлення
REVERSEDкінцевий стан.
Порядок запиту
Підтримувані значення orderType:
TRANSFER_INTRANSFER_OUT
Загальні поля відповіді:
Список замовлень
Рекомендації щодо сторінки:
pageпочинається з 1.- Тримайте
pageSizeна рівні 100 або нижче. - Для завдань узгодження сторінка за часовим вікном і дедуплікація до
orderNo.
Джерело та відповідні посібники
- Офіційне джерело v0.3.0
- Огляд запиту та розбивка на сторінки
- Гаманець для фінансування
- Посібник з оновлення
Зворотні дзвінки на події
transfer.completed може містити SUCCESS, FAILED або оригінальне оновлення замовлення REVERSED; reverse.completed — термінальна подія сторнованого замовлення. transfer.dead означає, що остаточний стан залишається непідтвердженим після повторних спроб і потребує узгодження вручну, а не підтвердженої помилки. Сама по собі назва події не свідчить про зарахування коштів.
Успішне підтвердження відрізняється від успішного руху коштів: після запису дійсного сповіщення targetStatus=FAILED також поверніть HTTP 2xx. Постійна дедуплікація фінансових подій orderType:orderId:targetStatus у межах сфери дії продавця та environment.
Поля подій і JSON приклади · Перевірка підпису, відповіді та повторні спроби