POLi, PayID, банктык которууларды жана AUD колдоо
Киришүү
Австралиялык оюнчулар жергиликтүү төлөм ыкмаларын артык көрүшөт: POLi, PayID/Osko аркылуу NPP жана салттуу трансфер банк аркылуу дароо банктык которуулар, бардыгы AUDда. Оператор үчүн үзгүлтүксүз интеграцияны, тез арада иштетүүнү, жөнгө салууларга шайкештикти жана ишенимдүү архитектураны камсыз кылуу маанилүү.
1. Төлөм ыкмаларын карап чыгуу
1. POLi Payments
OAuth - карталары жана кошумча SMS-коддору жок, банктын интерфейси аркылуу колдонуучуну авторизациялоо.
Депозиттер үчүн ылайыктуу акча каражаттарын дароо чегерүү.
2. PayID/Osko (NPP)
ID (email, телефон) боюнча которуу, NPP тармак стандарты секунданын ичинде эсептөөнү камсыз кылат.
Ал Australia's New Payments Platform колдогон PSP менен интеграцияны талап кылат.
3. Банктык которуу (BPAY/түз которуу)
BPAY: Biller Code жана Customer Reference генерациясы, төлөм интернет-банкта колдонуучу тарабынан жүргүзүлөт; 24 саатка чейин кабыл алуу
Түздөн-түз AUD-өткөрүп берүү: SWIFT/IBAN которуу, ири суммалар үчүн жарактуу, иштетүү убактысы 1-3 жумушчу күн.
4. AUD валютасы
AUD Бардык операциялар: коррет көрсөтүү, базада сактоо, центке тегеректөө ('DECIMAL (12,2)').
2. Интеграция архитектурасы
```mermaid
flowchart LR
API-Gateway: validation, rate-limiting, PaymentService багыттоо.
PaymentService: бардык AUD ыкмалары үчүн бирдиктүү чекит, сактайт 'paymentId', 'method', 'status', 'metadata'.
BillingService: BPAY эсептери жана polling статусу үчүн модулу.
TransactionService: ACID транзакциялары балансты жаңыртып, транзакцияларды логиндейт.
AuditDB: суроо-жооп логтордун өзгөрүлбөс сактоо.
3. POLi ишке ашыруу
1. Демилгеси:
→ `{ paymentId, poliUrl }`
2. Оюнчуну багыттоо:
3. Webhook иштетүү:
'X-Signature' боюнча HMAC текшерүү.
'status' жаңыртуу: 'pending' → 'approved '/' declined'.
'approved' болгондо - 'TransactionService' ишке киргизүү. credit(playerId, amount)`.
4. PayID/Osko ишке ашыруу
1. Демилгеси:
→ `{ paymentId, transactionRef }`
2. Webhook билдирүү:
Ушундай эле кол текшерүү.
Статустар: 'pending', 'settled', 'failed'.
5. BPAY жана банктык которууну ишке ашыруу
1. BPAY эсебинин генерациясы:
→ `{ billerCode, customerRef, expiryDate }`
2. Polling статусу:
3. Тике банктык которуу:
6. Локализация жана UX
Түзүлүшү:
Австралиялык оюнчулар жергиликтүү төлөм ыкмаларын артык көрүшөт: POLi, PayID/Osko аркылуу NPP жана салттуу трансфер банк аркылуу дароо банктык которуулар, бардыгы AUDда. Оператор үчүн үзгүлтүксүз интеграцияны, тез арада иштетүүнү, жөнгө салууларга шайкештикти жана ишенимдүү архитектураны камсыз кылуу маанилүү.
1. Төлөм ыкмаларын карап чыгуу
1. POLi Payments
OAuth - карталары жана кошумча SMS-коддору жок, банктын интерфейси аркылуу колдонуучуну авторизациялоо.
Депозиттер үчүн ылайыктуу акча каражаттарын дароо чегерүү.
2. PayID/Osko (NPP)
ID (email, телефон) боюнча которуу, NPP тармак стандарты секунданын ичинде эсептөөнү камсыз кылат.
Ал Australia's New Payments Platform колдогон PSP менен интеграцияны талап кылат.
3. Банктык которуу (BPAY/түз которуу)
BPAY: Biller Code жана Customer Reference генерациясы, төлөм интернет-банкта колдонуучу тарабынан жүргүзүлөт; 24 саатка чейин кабыл алуу
Түздөн-түз AUD-өткөрүп берүү: SWIFT/IBAN которуу, ири суммалар үчүн жарактуу, иштетүү убактысы 1-3 жумушчу күн.
4. AUD валютасы
AUD Бардык операциялар: коррет көрсөтүү, базада сактоо, центке тегеректөө ('DECIMAL (12,2)').
2. Интеграция архитектурасы
```mermaid
flowchart LR
Player --> | initiate deposit | API-Gateway |
---|---|---|
API-Gateway --> PaymentService | ||
PaymentService --> | init POLi | POLi-API |
PaymentService --> | init PayID | PSP-API |
PaymentService --> | generate BPAY | BillingService |
POLi-API --> | webhook | PaymentService |
PSP-API --> | webhook | PaymentService |
BillingService --> | polling / webhook | PaymentService |
PaymentService --> TransactionService | ||
TransactionService --> AuditDB | ||
``` |
API-Gateway: validation, rate-limiting, PaymentService багыттоо.
PaymentService: бардык AUD ыкмалары үчүн бирдиктүү чекит, сактайт 'paymentId', 'method', 'status', 'metadata'.
BillingService: BPAY эсептери жана polling статусу үчүн модулу.
TransactionService: ACID транзакциялары балансты жаңыртып, транзакцияларды логиндейт.
AuditDB: суроо-жооп логтордун өзгөрүлбөс сактоо.
3. POLi ишке ашыруу
1. Демилгеси:
- ```http
- POST /api/payments/poli/init
- {
- "amount": 100. 00,
- "currency": "AUD",
- "returnUrl": "https: //casino. com/poli/callback"
- }
- ```
→ `{ paymentId, poliUrl }`
2. Оюнчуну багыттоо:
- Оюнчу 'poliUrl' га кайра багытталат, банкта авторизацияланат, төлөмдү тастыктайт.
3. Webhook иштетүү:
- ```http
- POST /api/payments/poli/callback
- Headers: X-Signature
- Body: { paymentId, status, bankTransactionId }
- ```
'X-Signature' боюнча HMAC текшерүү.
'status' жаңыртуу: 'pending' → 'approved '/' declined'.
'approved' болгондо - 'TransactionService' ишке киргизүү. credit(playerId, amount)`.
4. PayID/Osko ишке ашыруу
1. Демилгеси:
- ```http
- POST /api/payments/payid/init
- {
- "payId": "user@example. com",
- "amount": 250. 00,
- "currency": "AUD",
- "Дескрипшен": "Casino deposit"
- }
- ```
→ `{ paymentId, transactionRef }`
2. Webhook билдирүү:
- PSP шлёт `POST /api/payments/payid/callback { paymentId, status }`.
Ушундай эле кол текшерүү.
Статустар: 'pending', 'settled', 'failed'.
5. BPAY жана банктык которууну ишке ашыруу
1. BPAY эсебинин генерациясы:
- ```http
- POST /api/payments/bpay/generate
- { "amount": 500. 00 }
- ```
→ `{ billerCode, customerRef, expiryDate }`
2. Polling статусу:
- `GET /api/payments/bpay/status? billerCode = & customerRef = 'ар бир 15 мүнөт.
- При `PAID` — update `approved`, credit funds.
3. Тике банктык которуу:
- Эсеп реквизиттерин көрсөтүү (SWIFT, BSB, Account) UI.
- Операциялар кол менен же автоматтык түрдө incoming bank statements аркылуу SFTP аркылуу текшерилет.
6. Локализация жана UX
Түзүлүшү:
- ```js
- new Intl. NumberFormat('en-AU', { style: 'currency', currency: 'AUD' }). format(1000)
- // "A$1,000. 00"
- ``` UI:
- Депозиттеги ыкманы тандоо: POLi, PayID, BPAY, Bank Transfer.
- Ар бир ыкма боюнча мөөнөттөрдү жана комиссияларды сүрөттөө.
- биринчи киргизүү алдында текшерүү: KYC/AML.
- POLi: `poli. sandbox. domain 'жасалма токендер менен' test _ user '.
- PSP: PayID провайдерлеринин тесттик кредиттери.
- E2E-тесттер (Cypress): жагдайлар: баштоо → Эмуляция callback → балансты текшерүү.
- Load Testing (k6): 1000 concurrent депозиттерди POLi жана PayID ыкмасы менен тууроо.
7. Коопсуздук жана бузулууга туруктуулук
TLS 1. 2 + бардык API жана Webhook үчүн.
Circuit Breaker (Resilience4j) PSP чалуулар үчүн, методду өчүрүү error-rate> 5%.
Retry-логикалык экспоненциалдык backoff менен убактылуу мүчүлүштүктөр.
Audit Trail: бардык webhook-окуялар жана бүтүмдөр жөнгө салуу боюнча жок дегенде 7 жыл сакталат.
8. Тестирлөө
Sandbox режимдери:
Корутунду
POLi, PayID/Osko жана AUDга салттуу банктык которуулардын интеграциясы бирдиктүү PaymentService, webhook ишенимдүү иштетүүнү, circuit breaker жана retry-механизмдери менен форматтарды локалдаштырууну жана иштен чыгууга туруктуу архитектураны талап кылат. Бул ыкма тез депозиттер, жогорку CR жана Американский талаптарга жооп берет.