2 puan yazan arcoding 5 시간 전 | 6 yorum | WhatsApp'ta paylaş

Kişisel bir proje olarak LOSLES adlı açık kaynaklı bir ödeme işleme sistemi geliştirip yayımladım.

Bu projenin temel fikri, "hesap transferini algılama + tutarın kendisini sipariş kimliği gibi kullanma" yaklaşımıdır.
Genel hesap havalesi ödemeleri genelde şu süreçlerden geçer:

  • PG şirketine kayıt
  • Şirket kaydı
  • İnceleme
  • API entegrasyonu
  • Ödeme komisyonu oluşması
  • Mutabakat bekleme

Bireysel geliştiriciler veya küçük ölçekli projeler açısından bu süreç çoğu zaman oldukça külfetli olabiliyor.
Bu yüzden, "Siparişi sadece tutarla tanımlayamaz mıyız?" fikriyle bunu geliştirdim.

Örneğin ürün fiyatı 10.000 won ise,

İlk sipariş:
10.000 won

Aynı ürün için 30 dakika içindeki ikinci sipariş:
9.999 won

Üçüncü sipariş:
9.998 won

Dördüncü sipariş:
9.997 won
...

Bu şekilde her siparişe benzersiz bir tutar atanır.
(Gerçek uygulamada ise 99 won'dan başlayıp 98, 97, 96... şeklinde indirim tutarı düşülür.)
Böylece sunucu, ayrıca bir sipariş numarası girilmeden yalnızca tutara bakarak hangi sipariş olduğunu tespit edebilir.

LOSLES Android App, KakaoPay yükleme bildirimlerini algılayıp bunları harici bir sunucuya otomatik olarak iletmekten sorumludur.
Android'in bildirim erişim iznini (Notification Listener) kullanarak KakaoTalk ve KakaoPay uygulamalarının bildirimlerini gerçek zamanlı izler;
yükleme tutarı içeren bir bildirim alındığında ilgili tutarı çıkarıp yapılandırılmış sunucu URL'sine bir POST isteği gönderir.
LOSLES WEB Server ile birlikte kullanıldığında, kullanıcının para yatırmasından ödemenin tamamlanmış olarak işlenmesine kadar olan süreç otomatikleştirilebilir.

Genel akış

  1. Kullanıcı sipariş oluşturur
  2. Sunucu benzersiz tutarı atar
  3. Kullanıcı bu tutarla hesap transferi yapar (şu anda yalnızca KakaoPay destekleniyor)
  4. Android uygulaması yükleme bildirimini algılar
  5. Tutarı sunucuya gönderir
  6. Sunucu tutarı siparişle eşleştirir
  7. Otomatik olarak ödeme tamamlandı işlemi yapılır

Yani,

"Kimin gönderdiği"ne değil,
"Ne kadar gönderdiği"ne göre ödeme tanımlanır.

Dikkat edilmesi gerekenler

Önemli nokta şu ki LOSLES, resmi bir PG'nin yerini almayı amaçlayan bir proje değildir.
Büyük ölçekli hizmetlerde PG şirketlerinin sunduğu iade, mutabakat, makbuz, uyuşmazlık çözümü ve güvenlik özellikleri hâlâ önemlidir.
Ancak kişisel projeler veya küçük ölçekli dijital içerik satışı durumunda,
"Ödeme alabilmek için şirket kaydından başlayıp PG incelemesine kadar gitmek zorunda olunan durum"
aşırı geldi ve

bu süreç olmadan otomatik ödeme uygulanabilir mi diye denemek için yapılan bir projedir.
Şu anda beta sürümündedir ve geri bildirim alıyor.
Özellikle aşağıdaki konularda görüş duymak istiyorum.

  • Tutar tabanlı tanımlama yönteminin sorunları
  • Yinelenen siparişlerin işlenme yöntemi
  • Güvenlik iyileştirme fikirleri
  • Gerçek işletim deneyimi olan kişilerin görüşleri

Teşekkürler.

6 yorum

 
cichol 58 분 전

Örneğin kimchi güveci de 10.000 won, doenjang güveci de 10.000 won olan bir restoranda 10.000 wonluk bir sipariş geldiğinde, bunun hangi menü için verildiğini ayırt etmek mümkün olmuyor mu?

 
arcoding 53 분 전

Aynı fiyatlı farklı ürünlerde de indirimlerin 1'er TL farklı uygulanması gerekir. Gerçek kullanımda LosLes sunucusuna ürün kaydetmek yerine, ürünlerin liste fiyatına bakıp indirimleri buna göre kendiliğinden farklılaştırır.

 
regentag 1 시간 전

O zaman aynı ürünü sürekli farklı fiyatlarla mı satmanız gerekiyor?

 
arcoding 50 분 전

Yarısı doğru, yarısı yanlış; liste fiyatının 10.000 won olması aynı,
ancak 30 dakika içindeki ilk ödeme talebi 99 won indirimli,
30 dakika içindeki ikinci ödeme talebi 98 won indirimli, bu şekilde ilerliyor. Sanırım metinde bu doğru şekilde aktarılamamış.

 
zihado 3 시간 전

Müşteri yanlışlıkla hatalı gönderirse eşleştirme bozulur gibi görünüyor.

 
arcoding 2 시간 전

Aslında en büyük dezavantajı bu.
DM ile manuel olarak iletişime geçilebilecek kadar küçük
projelerde sorun olmaz ama büyük şirketlerde PG şirketiyle sözleşme yapıp kullanmak daha iyi görünüyor