[GH-ISSUE #292] PCI DSS (Payment Card Industry Data Security Standard) #155

Closed
opened 2026-03-03 15:43:36 +03:00 by kerem · 3 comments
Owner

Originally created by @mhmtpacal on GitHub (Jan 23, 2026).
Original GitHub issue: https://github.com/mewebstudio/pos/issues/292

Kütüphanedeki bazı akışlarda ödeme sayfasında kart bilgilerinin uygulama tarafından alınarak backend katmanına iletilmesi, burada işlenmesi veya oturum (session) benzeri yapılarda geçici olarak tutulması ve ardından bankaya aktarılması gerektiği anlaşılıyor.

Bu yaklaşım, PCI DSS standartları açısından kart verisinin merchant sistemi tarafından işlenmesi anlamına gelmektedir.

Bu noktada, kütüphanenin PCI DSS uyumluluğu ile ilgili öngördüğü kullanım modeli nedir? Özellikle kart verisinin backend’e hiç uğramadığı (SAQ-A kapsamına giren) bir akış kütüphane tarafından resmi olarak desteklenmekte midir?

Originally created by @mhmtpacal on GitHub (Jan 23, 2026). Original GitHub issue: https://github.com/mewebstudio/pos/issues/292 Kütüphanedeki bazı akışlarda ödeme sayfasında kart bilgilerinin uygulama tarafından alınarak backend katmanına iletilmesi, burada işlenmesi veya oturum (session) benzeri yapılarda geçici olarak tutulması ve ardından bankaya aktarılması gerektiği anlaşılıyor. Bu yaklaşım, PCI DSS standartları açısından kart verisinin merchant sistemi tarafından işlenmesi anlamına gelmektedir. Bu noktada, kütüphanenin PCI DSS uyumluluğu ile ilgili öngördüğü kullanım modeli nedir? Özellikle kart verisinin backend’e hiç uğramadığı (SAQ-A kapsamına giren) bir akış kütüphane tarafından resmi olarak desteklenmekte midir?
kerem closed this issue 2026-03-03 15:43:36 +03:00
Author
Owner

@nuryagdym commented on GitHub (Jan 23, 2026):

Merhaba,
Bu konu maalesef kutuphane ile ilgili degil.

  • Ornegin Payten 3D form icin hash olustururken kart bilgileri dahil 3D formdaki verilerin tamamindan hash hesaplanmasini istemekte. Payten'in eski versiyonun'da 3D formun belli bir kismi hash icin lazim diye hatirliyorum, ama shu anki versiyonunda bu mumkun degil.
  • Diger Konu ise PayFlexV4Pos'pos'ta kullanici 3D onay sayfasindan dondukten sonra, provizyon islemi icin tekrar card bilgileri istenmekte, bu yuzden ya su anki gibi kart bilgileri backend'de gecici olarak saklanacak, yada kullanici 2 kere kart girisi yapmasi gerekecek.
  • Bazi gatewayler icin backend'de kart bilgileri gondermeden ishlem yapilmasi mumkun. Ancak bu kullanicinin frontend'de kart bilgilerini formatlama, gerekli alanlara ekleme gibi islemler yapmasi gerekecek. Aslinda create3DFormData() metodun son parametresi bunun icin. Form bilgileri kartsiz olusturup sonra kendiniz ekleyebilirsiniz o forma. Belki kutuphane tarafindan gereken frontend kodlari olusturulabilir bunun icin. Ama kafa karasikligi arttirabilir.
<!-- gh-comment-id:3788969436 --> @nuryagdym commented on GitHub (Jan 23, 2026): Merhaba, Bu konu maalesef kutuphane ile ilgili degil. - Ornegin Payten 3D form icin hash olustururken kart bilgileri dahil 3D formdaki verilerin tamamindan hash hesaplanmasini istemekte. Payten'in eski versiyonun'da 3D formun belli bir kismi hash icin lazim diye hatirliyorum, ama shu anki versiyonunda bu mumkun degil. - Diger Konu ise PayFlexV4Pos'pos'ta kullanici 3D onay sayfasindan dondukten sonra, provizyon islemi icin tekrar card bilgileri istenmekte, bu yuzden ya su anki gibi kart bilgileri backend'de gecici olarak saklanacak, yada kullanici 2 kere kart girisi yapmasi gerekecek. - Bazi gatewayler icin backend'de kart bilgileri gondermeden ishlem yapilmasi mumkun. Ancak bu kullanicinin frontend'de kart bilgilerini formatlama, gerekli alanlara ekleme gibi islemler yapmasi gerekecek. Aslinda [create3DFormData()](https://github.com/mewebstudio/pos/blob/c73d4588489a2ead7dec9986cc6e120345ee4a9e/src/PosInterface.php#L133) metodun son parametresi bunun icin. Form bilgileri kartsiz olusturup sonra kendiniz ekleyebilirsiniz o forma. Belki kutuphane tarafindan gereken frontend kodlari olusturulabilir bunun icin. Ama kafa karasikligi arttirabilir.
Author
Owner

@mhmtpacal commented on GitHub (Jan 23, 2026):

Peki bu yöntemleri kullanmanın riski nedir?
iyzico, param, paytr, stripe gibi ödeme aracıları hosted form yani kendi formlarını vererek bu riski 0'a düşürüyor fakat komisyon sorunu olduğu bu şekilde direkt kullanmak çok avantajlı ama PCI riski mevcut

<!-- gh-comment-id:3788999519 --> @mhmtpacal commented on GitHub (Jan 23, 2026): Peki bu yöntemleri kullanmanın riski nedir? iyzico, param, paytr, stripe gibi ödeme aracıları hosted form yani kendi formlarını vererek bu riski 0'a düşürüyor fakat komisyon sorunu olduğu bu şekilde direkt kullanmak çok avantajlı ama PCI riski mevcut
Author
Owner

@nuryagdym commented on GitHub (Jan 23, 2026):

Bu yontem derken?

Backende sunucunun guvenliligini saglanmasi hep website yonetecisinin sorumlulugu. Kutuphanenin bu guvenligi saglamak icin yapabilecegi bir sey yok.

Eger website yoneticisi bu konuda kendine guvenmiyorsa (ki dogrusu o):

  • 3D host odeme modeli kullanabilir
  • kart bilgileri frontend'de alip, 3D form verisini kendisi eklemesi gerekecek, bunun icin de bu yontemi destekleyen Sanal Pos Alt Yapisi secmesi gerekecek
<!-- gh-comment-id:3789098401 --> @nuryagdym commented on GitHub (Jan 23, 2026): Bu yontem derken? Backende sunucunun guvenliligini saglanmasi hep website yonetecisinin sorumlulugu. Kutuphanenin bu guvenligi saglamak icin yapabilecegi bir sey yok. Eger website yoneticisi bu konuda kendine guvenmiyorsa (ki dogrusu o): - 3D host odeme modeli kullanabilir - kart bilgileri frontend'de alip, 3D form verisini kendisi eklemesi gerekecek, bunun icin de bu yontemi destekleyen Sanal Pos Alt Yapisi secmesi gerekecek
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/pos#155
No description provided.