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

Нэхэмжлэх, ашиглалтын төлбөр, хураамж

Энэ хуудсаар

Юу хийх: хэдэн өдөр хүчинтэй нэхэмжлэх (SMS, имэйл, цаасан дээрх QR)-ийг Gerege App-аар төлүүлэх — давхар төлөлтгүй. Хугацаа: ~2 цаг. Хэрэгтэй: вэб checkout-ийн backend.

1. Яагаад pay_url-ийг шууд илгээхгүй

Intent-ийн expires_in дээд тал нь 1800 с (30 мин), pay_url нь claim-ийн bearer secret. Хэдэн өдөр хүлээгдэх нэхэмжлэхэд pay_url-ийг SMS/имэйлээр илгээвэл хүн нээхэд аль хэдийн дууссан, дамжуулсан хэн ч claim хийж болно. Урт хугацаатай intent («удахгүй») гартал өөрийн холбоосоо илгээнэ.

2. Загвар — таны холбоос, нээх агшинд intent

SMS / имэйл / цаасан QR:  https://bills.example.mn/pay/inv_2026_10_0042     ← таны URL, нууц биш, дүнгүй
        │ хүн нээнэ
        ▼
таны backend:  нэхэмжлэх төлөгдсөн үү? → тийм: «Төлөгдсөн» хуудас
               үгүй: одоогийн оролдлогын intent нээлттэй юу?
                     тийм: ижил Idempotency-Key + ижил биеэр create → ТЭР pay_url (200)
                     үгүй: оролдлого+1, шинэ redirect intent (expires_in 900)
               → 303 pay_url
  • reference = нэхэмжлэхийн дугаар; Idempotency-Key = <нэхэмжлэх>-<оролдлого>.
  • Ижил key + ижил бие-ээр дахин POST хийвэл ижил intent ба ижил pay_url буцна — тиймээс оролдлого бүрийн биеийг (дүн, тайлбар, return_url, expires_in) хадгалж, яг тэрийгээ илгээнэ (өөр бие → 409 idempotency_conflict).
  • Таны URL-ийг хамгаалахдаа: таамаглахад хэцүү дугаар (санамсаргүй ID), эсвэл гарын үсэгтэй токен; хуудас нь дүн, хүлээн авагчийн нэрийг харуулж болно — төлбөрийн secret биш.

3. Давхар төлөлтөөс сэргийлэх

  • Шинэ оролдлого үүсгэхээс өмнө GET /payment-intents?reference=<нэхэмжлэх>&status=succeeded — төлөгдсөн бол дахин бүү үүсгэ.
  • Хоёр төхөөрөмжөөс зэрэг нээсэн бол хоёр оролдлого хоёулаа төлөгдөж болно — webhook/тулгалтаар илрүүлж илүүг нь POST …/refunds.
  • Хэсэгчлэн төлөх нэхэмжлэх бол оролдлого бүрийн дүнг үлдэгдлээр тооцно.

4. Цаасан нэхэмжлэх ба QR

  • QR-ийн агуулга = таны холбоос (дээрх), ≥ 25 мм, error correction M. Нэхэмжлэхийн дугаарыг хүний уншихуйц хэвлэнэ.
  • description = «Нэхэмжлэх №0042 · 2026-10» гэх мэт — хүний хэтэвчний хуулгад харагдана.
  • Ашиглалтын төлбөр (сар бүр) — сар бүр шинэ нэхэмжлэх, шинэ reference.

5. Хэрэгжилтийн төлөв

Хэсэг Төлөв
Таны холбоос → нээх агшинд redirect intent (дээрх загвар) ✓
Хэдэн өдөр хүчинтэй intent (урт expires_in), Gerege-ийн өөрийн нэхэмжлэхийн холбоо «удахгүй»