Агуулгыг алгасах

Test ба live

Хоёр орчин нэг апп дотор. Credential-ийн орчин нь intent-ийн livemode-ыг шийднэ; өгөгдөл хэзээ ч холилдохгүй.

1. Орчныг юу шийдэх

test live
Түлхүүр (client id) gk_test_… (эсвэл анхдагч mapp_test_…) gk_live_… (эсвэл анхдагч mapp_…)
Intent livemode: false livemode: true
Мөнгө хөдлөхгүй — дүн үр дүнг шийднэ хүний Gerege Wallet данснаас барьцаа → capture
Хэзээ ажиллах бүртгэсэн мөчөөс (ноорог апп-д ч) апп батлагдсаны дараа л (өмнө нь 401 invalid_client)
Хэн төлж чадах апп-ыг бүртгэсэн хүн, тест хэрэглэгчид хэн ч (апп-ын min_age / requires_verified-ийн дагуу)
Payout данс, core banking шаардахгүй шаардана (409 payouts_not_configured, 503 payments_unavailable)
Webhook endpoint орчин бүрт тусдаа (≤ 5), livemode: false орчин бүрт тусдаа (≤ 5), livemode: true
Тооцоо (/settlements) хоосон / 404 ✓

Нэг түлхүүр нэг орчны intent, event-ийг л хардаг: test түлхүүрээр live intent-ийг уншихад 404. Test түлхүүр бүртгэлд бичих scope (terminals:write, sub_merchants:write, payout_links:write, webhooks:write) хэзээ ч авахгүй.

2. Test-ийн дүн

Confirm-ийн үр дүнг дүнгийн сүүлийн хоёр орон шийднэ:

Дүн Үр дүн
…01 (жишээ 3501) failed, failure_code: "test_declined"
…02 (жишээ 3502) canceled
бусад, automatic succeeded
бусад, manual requires_capture → таны capture / cancel

Буцаалт test-д шууд succeeded. Тест хэрэглэгч (≤ 50, байгууллагын идэвхтэй гишүүд), консолын тест intent, webhook-ийн хүргэлт/дахин илгээх/webhook.test: Хөгжүүлэгчийн sandbox.

3. Хоёр орчинд нэг бүртгэл

Апп, терминал, дэд худалдагч нь хоёр орчинд нэг бүртгэл — тусдаа «test терминал» гэж байхгүй. Тиймээс:

  • Бүртгэлд бичих (терминал, дэд худалдагч үүсгэх/засах, payout холболт хүсэх) нь зөвхөн live түлхүүр эсвэл консол; test түлхүүр уншина л — 403 live_only. Алдагдсан sandbox secret бодит машины эзэмшигчийг сольж, live мөнгийг өөр тийш чиглүүлэх ёсгүй. Sandbox-д бүртгэлийг консолоос хийнэ.
  • Терминалд нээлттэй сагс орчин бүрт нэг: test сагс live машиныг хаахгүй.
  • Intent, refund, event, тооцоо нь орчноороо тусдаа.

4. Апп-ын төлөв ба live болох

Хоёр тусдаа төлөв: review (draft → in_review → approved | rejected, suspended) ба status (draft, active ⇄ maintenance, disabled).

draft ──submit──▶ in_review ──approve──▶ approved      (live түлхүүр ажиллана, хүмүүст харагдана)
  ▲                   │
  └──── засна ◀── rejected                approved ──suspend (оператор)──▶ suspended (бүх зүйл зогсоно)
  • Submit (POST /dev/apps/{id}/submit): хуулийн хуудсууд (privacy, terms, support — https бол 200), live secret, webhook URL (payments-тэй бол), mini app-д шалгагдсан manifest. Дутуу бол 400 not_ready + details[]. Review-ийн үед апп царцна (409 locked_for_review).
  • Оператор бизнесийг шалгаж (одоогоор гэрээ, KYB-ийн бичиг баримтыг гараар), батлаад payout дансыг тохируулна.
  • Төлөв өөрчлөгдөх бүрт app.status_changed webhook.
  • suspended — нээгдэхгүй, бүх token хүчингүй, credential татгалзана.

Самбараас өөрөө явуулах live-ийн алхмууд — байгууллагын төлөөлөгч гэрээнд eID-ээр гарын үсэг зурах, бизнесийн профайл (KYB), go-live checklist, хязгаар (tier), live түлхүүрийг шинэ API-аар (дахин нэвтрэлттэй; одоо POST /dev/apps/{id}/credentials-ээр) — «удахгүй». Хуулийн этгээдгүй хувь хүн test-ийг бүхэлд нь ашиглана (sandbox байгууллага — «удахгүй»); live нь байгууллага шаардана.