Modül Yapısı
Bu belgede ödeme yöntemi modül dosyalarının nerede bulunduğu ve ne işe yaradıkları açıklanmaktadır.
Modül Adı Belirlemek
- Ödeme hizmeti sağlayıcısının modül adını belirlerken: Harf ile başlanmasına (BÜYÜK veya küçük harf) ve kesinlikle boşluk ile özel karakter kullanılmamasına dikkat edilmelidir.
- Github sayfamızdan indirmiş olduğunuz dosyaların içerisinde bulunan "SamplePaymentModule" adındaki dizini ve içerisindeki "SamplePaymentModule.php" dosyasının adını entegrasyonu yapılacak olan ödeme hizmet sağlayıcısının adı ile değiştiriniz. (Ör : PayPalPro.php gibi.)
- Dizine ve dosyalara modül adını tanımladıktan sonra "SamplePaymentModule.php" dosyasını açınız ve içiresindeki sınıf ismini modülün adı ile değiştiriniz.
- config.php dosyasını açınız ve içerisindeki "SamplePaymentModule" yazan yeri modülün adı ile değiştiriniz.
Yukarıdaki adımları uyguladıktan sonra modül dosyalarını "coremio/modules/Payment/" dizini altına yükleyebilirsiniz.
Modülün Dizin/Dosya Yapısı
Modülün dizin ve dosya yapısı aşağıdaki şemada olduğu gibidir:
coremio/modules/Payment/SamplePaymentModule/
| - lang/en.php
| config.php
| SamplePaymentModule.php
Eğer ihtiyaç duyarsanız modül dizini içerisine ödeme hizmeti sağlayıcısının "API SDK" dosyalarını yükleyebilirsiniz.
coremio/modules/Payment/
Ödeme modüllerinin barınacağı dizindir, modüller içerisinde dizin şeklinde barınmaktadır.
lang/*.php
"lang" dizini altındaki php dosyaları modülde çoklu dil desteği sunmak için kullanılır. "en.php" dosyası varsayılan olarak kullanılmaktadır. Dosya içeriği PHP dizi verisi olarak hazırlanması ve aşağıdaki varsayılan zorunlu indislerin tanımlı gelmesi beklenir.
name | Yöneticinin modülü görüntülediği alanda, dile bağlı olarak modül adını değiştirebilirsiniz. |
invoice-name | Fatura önizlemesinde görünecek isim. Ör: Kredi Kartı |
option-name | Sepet veya fatura ödeme seçeneklerinde görünecek isim. Ör: Kredi Kartı ile Öde |
description | Modülün ayar/yapılandırma sayfasında görünecek açıklama alanıdır. (Boş bırakılabilir.) |
Örnek Kaynak Kodu:
return [
'name' => 'Sample Payment',
'invoice-name' => 'Credit Card',
'option-name' => 'Pay by Credit Card',
'description' => 'description here…',
];
config.php Modüle ait ayar/yapılandırma alanları bu dosyada PHP dizi verisi olarak barınmaktadır.
İsim | Türü | Zorunlu | Açıklama |
meta ∟ name |
String | Evet | Modülün adı |
meta ∟ version |
String , Float | Evet | Modülün sürüm numarası. Ör: 1.0 |
meta ∟ logo |
String | Hayır | Ödeme hizmeti sağlayıcısının firma logosu. Modül dizininin içerisinde olan bir görsel dosyasını tanımlayabilirsiniz. Ör: logo.png |
meta ∟ card-storage-supported |
Boolean | Hayır | Eğer ödeme yöntemi türü "Tokenized" ise bu indis kesinlikle "true" olarak tanımlanmalıdır. |
meta ∟ standard-card-form |
Boolean | Hayır | Eğer girilecek değer "true" olur ise, müşterinin karşısına varsayılan WISECP kredi kartı formu çıkacaktır. |
settings ∟ commission_rate |
Integer | Hayır | WISECP tarafında faturaya uygulanacak komisyon oranıdır. |
settings ∟ force_convert_to |
Integer | Hayır | Sepet üzerinden ödeme yöntemi seçildikten sonra zorunlu olarak belirtilen para birimine dönüştürülür. Kabul edilebilir değer : veri tabanındaki "currencies.id" değeridir. |
settings ∟accepted_countries |
Array | Hayır | Bu alanda "ISO 3166-1" ülke kodlarını kullanarak, ödeme yönteminin sadece belirlenen ülkelere gösterilmesi sağlanır. (Boş bırakıldığında herkese görünecektir.) |
settings ∟unaccepted_countries |
Array | Hayır | Bu alanda "ISO 3166-1" ülke kodlarını kullanarak, ödeme yönteminin belirlenen ülkelere gösterilmesi engellenir. |
settings ∟ …your field name… |
String,Int,Float,Boolean | Hayır | "settings" indisinin altında kendinize özel bir alan indisi yerleştirebilirsiniz. |
Örnek Kaynak Kodu:
return [
'meta' => [
'name' => 'Third Party Payment',
'version' => '1.0',
],
'settings' => [
'your_field_1' => 'example test',
'your_field_2' => 'example test 2',
'commission_rate' => 0,
'force_convert_to' => 0,
'accepted_countries' => ['US','ZW'],
'unaccepted_countries' => ['DE','FR'],
],
];