Latest commit

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Epoint API Node.js Modülü

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Kurulum

npm install axios

Başlangıç

Epoint.az hesabınızı oluşturup, merchant (satıcı) hesabınızı yapılandırdıktan sonra size verilen private_key ve public_key bilgilerini kullanmanız gerekmektedir.

constEpoint=require('./epoint.js');// Kimlik bilgilerinizi tanımlayınconstprivateKey='your_private_key';constpublicKey='your_public_key';

Kullanım Örnekleri

1. Kart Bilgisi İle Ödeme Oluşturma

asyncfunctioncreatePayment(){try{constresponse=awaitEpoint.typeCard(privateKey,publicKey,'order123',// Siparişinize özel benzersiz ID100.50,// Ödeme tutarı'Test payment',// Açıklama'https://example.com/success',// Başarılı ödeme yönlendirme URL'i'https://example.com/error'// Başarısız ödeme yönlendirme URL'i);if(response.status==='success'){// Kullanıcıyı ödeme sayfasına yönlendirinconsole.log(`Ödeme sayfası URL: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Ödeme sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Ödeme hatası:',error);}}

2. Ödeme Durumunu Sorgulama

asyncfunctioncheckPaymentStatus(orderId){try{// Order ID ile sorgulamaconstresponse=awaitEpoint.checkPayment(privateKey,publicKey,orderId);console.log(`Ödeme durumu: ${response.status}`);returnresponse;// Alternatif olarak Epoint transaction ID ile de sorgulama yapabilirsiniz// const response = await Epoint.checkPayment(privateKey, publicKey, transactionId, true);}catch(error){console.error('Durum sorgulama hatası:',error);}}

3. Kart Kaydetme

asyncfunctionsaveCard(){try{constresponse=awaitEpoint.saveCardForPayment(privateKey,publicKey,'Kart kaydetme işlemi','https://example.com/success','https://example.com/error');if(response.status==='success'){console.log(`Kart kayıt sayfası: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Kart kayıt sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Kart kaydetme hatası:',error);}}

4. Kaydedilmiş Kart İle Ödeme Yapma

asyncfunctionpayWithSavedCard(cardUid,orderId,amount){try{constresponse=awaitEpoint.payWithSaved(privateKey,publicKey,cardUid,// Kaydedilmiş kartın ID'siorderId,// Sipariş IDamount,// Ödeme tutarı'Kaydedilmiş kart ile ödeme');if(response.status==='success'){console.log('Ödeme başarılı!');console.log('Transaction ID:',response.transaction);}else{console.error('Ödeme başarısız:',response.message);}returnresponse;}catch(error){console.error('Kaydedilmiş kart ile ödeme hatası:',error);}}

5. İade İşlemi

asyncfunctionrefundPayment(cardUid,orderId,amount){try{constresponse=awaitEpoint.refund(privateKey,publicKey,cardUid,orderId,amount,'Ödeme iadesi');if(response.status==='success'){console.log('İade işlemi başarılı!');}else{console.error('İade başarısız:',response.message);}returnresponse;}catch(error){console.error('İade işlemi hatası:',error);}}

6. İşlem İptali

asyncfunctioncancelTransaction(transactionId,amount=null){try{// Eğer amount belirtilmezse, işlem tamamen iptal edilir// amount belirtilirse, kısmi iptal gerçekleşirconstresponse=awaitEpoint.cancel(privateKey,publicKey,transactionId,amount);if(response.status==='success'){console.log('İşlem başarıyla iptal edildi');}else{console.error('İptal işlemi başarısız:',response.message);}returnresponse;}catch(error){console.error('İptal işlemi hatası:',error);}}

7. Webhook (Callback) Doğrulama

Epoint.az, ödeme sonuçlarını result_url adresinize POST metodu ile gönderir. Bu verilerin gerçekten Epoint'ten geldiğini doğrulamak için:

// Express.js örneğiapp.post('/payment/callback',(req,res)=>{constdata=req.body.data;constsignature=req.body.signature;// İmzayı doğrulayınconstisValid=Epoint.validateCallback(privateKey,data,signature);if(isValid){// Veriyi işleyinconstepoint=newEpoint({private_key: privateKey,data: data,signature: signature});constpaymentData=epoint.getDataAsObject();console.log('Ödeme sonucu:',paymentData);// Örnek: Siparişi güncellemeif(paymentData.status==='success'){// Siparişi başarılı olarak işaretle}else{// Siparişi başarısız olarak işaretle}res.status(200).send('OK');}else{console.error('Geçersiz webhook imzası');res.status(400).send('Invalid signature');}});

API Referansı

Örnek Oluşturma

// Direkt örnek oluşturmaconstepoint=newEpoint({private_key: 'your_private_key',public_key: 'your_public_key',// Diğer parametreler...});// veya statik yardımcı metod ileconstepoint=Epoint.instantiate('your_private_key','your_public_key');

Ana Metotlar

Ödeme İşlemleri

  • typeCard(privateKey, publicKey, orderId, amount, description, successRedirectUrl, errorRedirectUrl) - Yeni ödeme oluşturur
  • payWithSaved(privateKey, publicKey, cardUid, orderId, amount, description) - Kaydedilmiş kart ile ödeme yapar
  • cancel(privateKey, publicKey, epointTransaction, amount) - İşlem iptali/iadesi
  • refund(privateKey, publicKey, cardUid, orderId, amount, description) - İade işlemi

Kart İşlemleri

  • saveCardForPayment(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - Ödeme için kart kaydeder
  • saveCardForRefund(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - İade için kart kaydeder

Sorgulama & Doğrulama

  • checkPayment(privateKey, publicKey, uid, epointTransaction) - Ödeme durumunu kontrol eder
  • validateCallback(privateKey, data, signature) - Webhook verilerini doğrular

Nesne Metotları

Epoint nesnesi üzerinde de aşağıdaki metotları kullanabilirsiniz:

  • generatePaymentUrlWithTypingCard() - Ödeme sayfası URL'i oluşturur
  • getStatus() - İşlem durumunu sorgular
  • registerCardForPayment() - Kart kaydeder
  • registerCardForRefund() - İade için kart kaydeder
  • payWithSavedCard() - Kaydedilmiş kart ile ödeme yapar
  • cancelPayment() - İşlemi iptal eder
  • refundPayment() - Ödemeyi iade eder
  • isSignatureValid() - İmzayı doğrular
  • getDataAsJson() - Data'yı JSON string olarak alır
  • getDataAsObject() - Data'yı JavaScript nesnesi olarak alır

Banka Cevap Kodları

KodAçıklama
0Onaylandı
100Ret, genel, açıklama yok
101Ret, kart süresi dolmuş
102Ret, şüpheli dolandırıcılık
103Ret, kart kabul eden alıcıyla iletişime geçin
107, 108Ret, kart düzenleyicisine başvurun
110Ret, geçersiz tutar
111Ret, geçersiz kart numarası
116Ret, yetersiz bakiye
118Ret, kart kaydı yok
119Ret, işleme kart sahibi için izin verilmedi
120Ret, işleme terminal için izin verilmedi
122Ret, güvenlik ihlali
125Ret, kart etkin değil
129Ret, şüpheli sahte kart
400Kabul edildi (iptal için)
500Durum mesajı, uzlaştırıldı, dengede
501Durum mesajı, uzlaştırıldı, dengede değil
907Ret, kart veren veya anahtar çalışmıyor
908Ret, yönlendirme için işlem hedefi bulunamadı
909Ret, sistem arızası
911Ret, kart düzenleyicisi zaman aşımına uğradı
912Ret, kart düzenleyicisi kullanılamıyor
914Ret, orijinal işlem bulunamadı

Lisans

MIT

About

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all \u003cpre\u003e\u003ccode\u003e blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks"); } } catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); } })(); (function(){ try { var __m = "github.com"; var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Latest commit

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Epoint API Node.js Modülü

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Kurulum

npm install axios

Başlangıç

Epoint.az hesabınızı oluşturup, merchant (satıcı) hesabınızı yapılandırdıktan sonra size verilen private_key ve public_key bilgilerini kullanmanız gerekmektedir.

constEpoint=require('./epoint.js');// Kimlik bilgilerinizi tanımlayınconstprivateKey='your_private_key';constpublicKey='your_public_key';

Kullanım Örnekleri

1. Kart Bilgisi İle Ödeme Oluşturma

asyncfunctioncreatePayment(){try{constresponse=awaitEpoint.typeCard(privateKey,publicKey,'order123',// Siparişinize özel benzersiz ID100.50,// Ödeme tutarı'Test payment',// Açıklama'https://example.com/success',// Başarılı ödeme yönlendirme URL'i'https://example.com/error'// Başarısız ödeme yönlendirme URL'i);if(response.status==='success'){// Kullanıcıyı ödeme sayfasına yönlendirinconsole.log(`Ödeme sayfası URL: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Ödeme sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Ödeme hatası:',error);}}

2. Ödeme Durumunu Sorgulama

asyncfunctioncheckPaymentStatus(orderId){try{// Order ID ile sorgulamaconstresponse=awaitEpoint.checkPayment(privateKey,publicKey,orderId);console.log(`Ödeme durumu: ${response.status}`);returnresponse;// Alternatif olarak Epoint transaction ID ile de sorgulama yapabilirsiniz// const response = await Epoint.checkPayment(privateKey, publicKey, transactionId, true);}catch(error){console.error('Durum sorgulama hatası:',error);}}

3. Kart Kaydetme

asyncfunctionsaveCard(){try{constresponse=awaitEpoint.saveCardForPayment(privateKey,publicKey,'Kart kaydetme işlemi','https://example.com/success','https://example.com/error');if(response.status==='success'){console.log(`Kart kayıt sayfası: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Kart kayıt sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Kart kaydetme hatası:',error);}}

4. Kaydedilmiş Kart İle Ödeme Yapma

asyncfunctionpayWithSavedCard(cardUid,orderId,amount){try{constresponse=awaitEpoint.payWithSaved(privateKey,publicKey,cardUid,// Kaydedilmiş kartın ID'siorderId,// Sipariş IDamount,// Ödeme tutarı'Kaydedilmiş kart ile ödeme');if(response.status==='success'){console.log('Ödeme başarılı!');console.log('Transaction ID:',response.transaction);}else{console.error('Ödeme başarısız:',response.message);}returnresponse;}catch(error){console.error('Kaydedilmiş kart ile ödeme hatası:',error);}}

5. İade İşlemi

asyncfunctionrefundPayment(cardUid,orderId,amount){try{constresponse=awaitEpoint.refund(privateKey,publicKey,cardUid,orderId,amount,'Ödeme iadesi');if(response.status==='success'){console.log('İade işlemi başarılı!');}else{console.error('İade başarısız:',response.message);}returnresponse;}catch(error){console.error('İade işlemi hatası:',error);}}

6. İşlem İptali

asyncfunctioncancelTransaction(transactionId,amount=null){try{// Eğer amount belirtilmezse, işlem tamamen iptal edilir// amount belirtilirse, kısmi iptal gerçekleşirconstresponse=awaitEpoint.cancel(privateKey,publicKey,transactionId,amount);if(response.status==='success'){console.log('İşlem başarıyla iptal edildi');}else{console.error('İptal işlemi başarısız:',response.message);}returnresponse;}catch(error){console.error('İptal işlemi hatası:',error);}}

7. Webhook (Callback) Doğrulama

Epoint.az, ödeme sonuçlarını result_url adresinize POST metodu ile gönderir. Bu verilerin gerçekten Epoint'ten geldiğini doğrulamak için:

// Express.js örneğiapp.post('/payment/callback',(req,res)=>{constdata=req.body.data;constsignature=req.body.signature;// İmzayı doğrulayınconstisValid=Epoint.validateCallback(privateKey,data,signature);if(isValid){// Veriyi işleyinconstepoint=newEpoint({private_key: privateKey,data: data,signature: signature});constpaymentData=epoint.getDataAsObject();console.log('Ödeme sonucu:',paymentData);// Örnek: Siparişi güncellemeif(paymentData.status==='success'){// Siparişi başarılı olarak işaretle}else{// Siparişi başarısız olarak işaretle}res.status(200).send('OK');}else{console.error('Geçersiz webhook imzası');res.status(400).send('Invalid signature');}});

API Referansı

Örnek Oluşturma

// Direkt örnek oluşturmaconstepoint=newEpoint({private_key: 'your_private_key',public_key: 'your_public_key',// Diğer parametreler...});// veya statik yardımcı metod ileconstepoint=Epoint.instantiate('your_private_key','your_public_key');

Ana Metotlar

Ödeme İşlemleri

  • typeCard(privateKey, publicKey, orderId, amount, description, successRedirectUrl, errorRedirectUrl) - Yeni ödeme oluşturur
  • payWithSaved(privateKey, publicKey, cardUid, orderId, amount, description) - Kaydedilmiş kart ile ödeme yapar
  • cancel(privateKey, publicKey, epointTransaction, amount) - İşlem iptali/iadesi
  • refund(privateKey, publicKey, cardUid, orderId, amount, description) - İade işlemi

Kart İşlemleri

  • saveCardForPayment(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - Ödeme için kart kaydeder
  • saveCardForRefund(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - İade için kart kaydeder

Sorgulama & Doğrulama

  • checkPayment(privateKey, publicKey, uid, epointTransaction) - Ödeme durumunu kontrol eder
  • validateCallback(privateKey, data, signature) - Webhook verilerini doğrular

Nesne Metotları

Epoint nesnesi üzerinde de aşağıdaki metotları kullanabilirsiniz:

  • generatePaymentUrlWithTypingCard() - Ödeme sayfası URL'i oluşturur
  • getStatus() - İşlem durumunu sorgular
  • registerCardForPayment() - Kart kaydeder
  • registerCardForRefund() - İade için kart kaydeder
  • payWithSavedCard() - Kaydedilmiş kart ile ödeme yapar
  • cancelPayment() - İşlemi iptal eder
  • refundPayment() - Ödemeyi iade eder
  • isSignatureValid() - İmzayı doğrular
  • getDataAsJson() - Data'yı JSON string olarak alır
  • getDataAsObject() - Data'yı JavaScript nesnesi olarak alır

Banka Cevap Kodları

KodAçıklama
0Onaylandı
100Ret, genel, açıklama yok
101Ret, kart süresi dolmuş
102Ret, şüpheli dolandırıcılık
103Ret, kart kabul eden alıcıyla iletişime geçin
107, 108Ret, kart düzenleyicisine başvurun
110Ret, geçersiz tutar
111Ret, geçersiz kart numarası
116Ret, yetersiz bakiye
118Ret, kart kaydı yok
119Ret, işleme kart sahibi için izin verilmedi
120Ret, işleme terminal için izin verilmedi
122Ret, güvenlik ihlali
125Ret, kart etkin değil
129Ret, şüpheli sahte kart
400Kabul edildi (iptal için)
500Durum mesajı, uzlaştırıldı, dengede
501Durum mesajı, uzlaştırıldı, dengede değil
907Ret, kart veren veya anahtar çalışmıyor
908Ret, yönlendirme için işlem hedefi bulunamadı
909Ret, sistem arızası
911Ret, kart düzenleyicisi zaman aşımına uğradı
912Ret, kart düzenleyicisi kullanılamıyor
914Ret, orijinal işlem bulunamadı

Lisans

MIT

About

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Epoint API Node.js Modülü

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Kurulum

npm install axios

Başlangıç

Epoint.az hesabınızı oluşturup, merchant (satıcı) hesabınızı yapılandırdıktan sonra size verilen private_key ve public_key bilgilerini kullanmanız gerekmektedir.

constEpoint=require('./epoint.js');// Kimlik bilgilerinizi tanımlayınconstprivateKey='your_private_key';constpublicKey='your_public_key';

Kullanım Örnekleri

1. Kart Bilgisi İle Ödeme Oluşturma

asyncfunctioncreatePayment(){try{constresponse=awaitEpoint.typeCard(privateKey,publicKey,'order123',// Siparişinize özel benzersiz ID100.50,// Ödeme tutarı'Test payment',// Açıklama'https://example.com/success',// Başarılı ödeme yönlendirme URL'i'https://example.com/error'// Başarısız ödeme yönlendirme URL'i);if(response.status==='success'){// Kullanıcıyı ödeme sayfasına yönlendirinconsole.log(`Ödeme sayfası URL: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Ödeme sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Ödeme hatası:',error);}}

2. Ödeme Durumunu Sorgulama

asyncfunctioncheckPaymentStatus(orderId){try{// Order ID ile sorgulamaconstresponse=awaitEpoint.checkPayment(privateKey,publicKey,orderId);console.log(`Ödeme durumu: ${response.status}`);returnresponse;// Alternatif olarak Epoint transaction ID ile de sorgulama yapabilirsiniz// const response = await Epoint.checkPayment(privateKey, publicKey, transactionId, true);}catch(error){console.error('Durum sorgulama hatası:',error);}}

3. Kart Kaydetme

asyncfunctionsaveCard(){try{constresponse=awaitEpoint.saveCardForPayment(privateKey,publicKey,'Kart kaydetme işlemi','https://example.com/success','https://example.com/error');if(response.status==='success'){console.log(`Kart kayıt sayfası: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Kart kayıt sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Kart kaydetme hatası:',error);}}

4. Kaydedilmiş Kart İle Ödeme Yapma

asyncfunctionpayWithSavedCard(cardUid,orderId,amount){try{constresponse=awaitEpoint.payWithSaved(privateKey,publicKey,cardUid,// Kaydedilmiş kartın ID'siorderId,// Sipariş IDamount,// Ödeme tutarı'Kaydedilmiş kart ile ödeme');if(response.status==='success'){console.log('Ödeme başarılı!');console.log('Transaction ID:',response.transaction);}else{console.error('Ödeme başarısız:',response.message);}returnresponse;}catch(error){console.error('Kaydedilmiş kart ile ödeme hatası:',error);}}

5. İade İşlemi

asyncfunctionrefundPayment(cardUid,orderId,amount){try{constresponse=awaitEpoint.refund(privateKey,publicKey,cardUid,orderId,amount,'Ödeme iadesi');if(response.status==='success'){console.log('İade işlemi başarılı!');}else{console.error('İade başarısız:',response.message);}returnresponse;}catch(error){console.error('İade işlemi hatası:',error);}}

6. İşlem İptali

asyncfunctioncancelTransaction(transactionId,amount=null){try{// Eğer amount belirtilmezse, işlem tamamen iptal edilir// amount belirtilirse, kısmi iptal gerçekleşirconstresponse=awaitEpoint.cancel(privateKey,publicKey,transactionId,amount);if(response.status==='success'){console.log('İşlem başarıyla iptal edildi');}else{console.error('İptal işlemi başarısız:',response.message);}returnresponse;}catch(error){console.error('İptal işlemi hatası:',error);}}

7. Webhook (Callback) Doğrulama

Epoint.az, ödeme sonuçlarını result_url adresinize POST metodu ile gönderir. Bu verilerin gerçekten Epoint'ten geldiğini doğrulamak için:

// Express.js örneğiapp.post('/payment/callback',(req,res)=>{constdata=req.body.data;constsignature=req.body.signature;// İmzayı doğrulayınconstisValid=Epoint.validateCallback(privateKey,data,signature);if(isValid){// Veriyi işleyinconstepoint=newEpoint({private_key: privateKey,data: data,signature: signature});constpaymentData=epoint.getDataAsObject();console.log('Ödeme sonucu:',paymentData);// Örnek: Siparişi güncellemeif(paymentData.status==='success'){// Siparişi başarılı olarak işaretle}else{// Siparişi başarısız olarak işaretle}res.status(200).send('OK');}else{console.error('Geçersiz webhook imzası');res.status(400).send('Invalid signature');}});

API Referansı

Örnek Oluşturma

// Direkt örnek oluşturmaconstepoint=newEpoint({private_key: 'your_private_key',public_key: 'your_public_key',// Diğer parametreler...});// veya statik yardımcı metod ileconstepoint=Epoint.instantiate('your_private_key','your_public_key');

Ana Metotlar

Ödeme İşlemleri

  • typeCard(privateKey, publicKey, orderId, amount, description, successRedirectUrl, errorRedirectUrl) - Yeni ödeme oluşturur
  • payWithSaved(privateKey, publicKey, cardUid, orderId, amount, description) - Kaydedilmiş kart ile ödeme yapar
  • cancel(privateKey, publicKey, epointTransaction, amount) - İşlem iptali/iadesi
  • refund(privateKey, publicKey, cardUid, orderId, amount, description) - İade işlemi

Kart İşlemleri

  • saveCardForPayment(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - Ödeme için kart kaydeder
  • saveCardForRefund(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - İade için kart kaydeder

Sorgulama & Doğrulama

  • checkPayment(privateKey, publicKey, uid, epointTransaction) - Ödeme durumunu kontrol eder
  • validateCallback(privateKey, data, signature) - Webhook verilerini doğrular

Nesne Metotları

Epoint nesnesi üzerinde de aşağıdaki metotları kullanabilirsiniz:

  • generatePaymentUrlWithTypingCard() - Ödeme sayfası URL'i oluşturur
  • getStatus() - İşlem durumunu sorgular
  • registerCardForPayment() - Kart kaydeder
  • registerCardForRefund() - İade için kart kaydeder
  • payWithSavedCard() - Kaydedilmiş kart ile ödeme yapar
  • cancelPayment() - İşlemi iptal eder
  • refundPayment() - Ödemeyi iade eder
  • isSignatureValid() - İmzayı doğrular
  • getDataAsJson() - Data'yı JSON string olarak alır
  • getDataAsObject() - Data'yı JavaScript nesnesi olarak alır

Banka Cevap Kodları

KodAçıklama
0Onaylandı
100Ret, genel, açıklama yok
101Ret, kart süresi dolmuş
102Ret, şüpheli dolandırıcılık
103Ret, kart kabul eden alıcıyla iletişime geçin
107, 108Ret, kart düzenleyicisine başvurun
110Ret, geçersiz tutar
111Ret, geçersiz kart numarası
116Ret, yetersiz bakiye
118Ret, kart kaydı yok
119Ret, işleme kart sahibi için izin verilmedi
120Ret, işleme terminal için izin verilmedi
122Ret, güvenlik ihlali
125Ret, kart etkin değil
129Ret, şüpheli sahte kart
400Kabul edildi (iptal için)
500Durum mesajı, uzlaştırıldı, dengede
501Durum mesajı, uzlaştırıldı, dengede değil
907Ret, kart veren veya anahtar çalışmıyor
908Ret, yönlendirme için işlem hedefi bulunamadı
909Ret, sistem arızası
911Ret, kart düzenleyicisi zaman aşımına uğradı
912Ret, kart düzenleyicisi kullanılamıyor
914Ret, orijinal işlem bulunamadı

Lisans

MIT

About

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length \u003e 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Epoint API Node.js Modülü

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Kurulum

npm install axios

Başlangıç

Epoint.az hesabınızı oluşturup, merchant (satıcı) hesabınızı yapılandırdıktan sonra size verilen private_key ve public_key bilgilerini kullanmanız gerekmektedir.

constEpoint=require('./epoint.js');// Kimlik bilgilerinizi tanımlayınconstprivateKey='your_private_key';constpublicKey='your_public_key';

Kullanım Örnekleri

1. Kart Bilgisi İle Ödeme Oluşturma

asyncfunctioncreatePayment(){try{constresponse=awaitEpoint.typeCard(privateKey,publicKey,'order123',// Siparişinize özel benzersiz ID100.50,// Ödeme tutarı'Test payment',// Açıklama'https://example.com/success',// Başarılı ödeme yönlendirme URL'i'https://example.com/error'// Başarısız ödeme yönlendirme URL'i);if(response.status==='success'){// Kullanıcıyı ödeme sayfasına yönlendirinconsole.log(`Ödeme sayfası URL: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Ödeme sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Ödeme hatası:',error);}}

2. Ödeme Durumunu Sorgulama

asyncfunctioncheckPaymentStatus(orderId){try{// Order ID ile sorgulamaconstresponse=awaitEpoint.checkPayment(privateKey,publicKey,orderId);console.log(`Ödeme durumu: ${response.status}`);returnresponse;// Alternatif olarak Epoint transaction ID ile de sorgulama yapabilirsiniz// const response = await Epoint.checkPayment(privateKey, publicKey, transactionId, true);}catch(error){console.error('Durum sorgulama hatası:',error);}}

3. Kart Kaydetme

asyncfunctionsaveCard(){try{constresponse=awaitEpoint.saveCardForPayment(privateKey,publicKey,'Kart kaydetme işlemi','https://example.com/success','https://example.com/error');if(response.status==='success'){console.log(`Kart kayıt sayfası: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Kart kayıt sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Kart kaydetme hatası:',error);}}

4. Kaydedilmiş Kart İle Ödeme Yapma

asyncfunctionpayWithSavedCard(cardUid,orderId,amount){try{constresponse=awaitEpoint.payWithSaved(privateKey,publicKey,cardUid,// Kaydedilmiş kartın ID'siorderId,// Sipariş IDamount,// Ödeme tutarı'Kaydedilmiş kart ile ödeme');if(response.status==='success'){console.log('Ödeme başarılı!');console.log('Transaction ID:',response.transaction);}else{console.error('Ödeme başarısız:',response.message);}returnresponse;}catch(error){console.error('Kaydedilmiş kart ile ödeme hatası:',error);}}

5. İade İşlemi

asyncfunctionrefundPayment(cardUid,orderId,amount){try{constresponse=awaitEpoint.refund(privateKey,publicKey,cardUid,orderId,amount,'Ödeme iadesi');if(response.status==='success'){console.log('İade işlemi başarılı!');}else{console.error('İade başarısız:',response.message);}returnresponse;}catch(error){console.error('İade işlemi hatası:',error);}}

6. İşlem İptali

asyncfunctioncancelTransaction(transactionId,amount=null){try{// Eğer amount belirtilmezse, işlem tamamen iptal edilir// amount belirtilirse, kısmi iptal gerçekleşirconstresponse=awaitEpoint.cancel(privateKey,publicKey,transactionId,amount);if(response.status==='success'){console.log('İşlem başarıyla iptal edildi');}else{console.error('İptal işlemi başarısız:',response.message);}returnresponse;}catch(error){console.error('İptal işlemi hatası:',error);}}

7. Webhook (Callback) Doğrulama

Epoint.az, ödeme sonuçlarını result_url adresinize POST metodu ile gönderir. Bu verilerin gerçekten Epoint'ten geldiğini doğrulamak için:

// Express.js örneğiapp.post('/payment/callback',(req,res)=>{constdata=req.body.data;constsignature=req.body.signature;// İmzayı doğrulayınconstisValid=Epoint.validateCallback(privateKey,data,signature);if(isValid){// Veriyi işleyinconstepoint=newEpoint({private_key: privateKey,data: data,signature: signature});constpaymentData=epoint.getDataAsObject();console.log('Ödeme sonucu:',paymentData);// Örnek: Siparişi güncellemeif(paymentData.status==='success'){// Siparişi başarılı olarak işaretle}else{// Siparişi başarısız olarak işaretle}res.status(200).send('OK');}else{console.error('Geçersiz webhook imzası');res.status(400).send('Invalid signature');}});

API Referansı

Örnek Oluşturma

// Direkt örnek oluşturmaconstepoint=newEpoint({private_key: 'your_private_key',public_key: 'your_public_key',// Diğer parametreler...});// veya statik yardımcı metod ileconstepoint=Epoint.instantiate('your_private_key','your_public_key');

Ana Metotlar

Ödeme İşlemleri

  • typeCard(privateKey, publicKey, orderId, amount, description, successRedirectUrl, errorRedirectUrl) - Yeni ödeme oluşturur
  • payWithSaved(privateKey, publicKey, cardUid, orderId, amount, description) - Kaydedilmiş kart ile ödeme yapar
  • cancel(privateKey, publicKey, epointTransaction, amount) - İşlem iptali/iadesi
  • refund(privateKey, publicKey, cardUid, orderId, amount, description) - İade işlemi

Kart İşlemleri

  • saveCardForPayment(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - Ödeme için kart kaydeder
  • saveCardForRefund(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - İade için kart kaydeder

Sorgulama & Doğrulama

  • checkPayment(privateKey, publicKey, uid, epointTransaction) - Ödeme durumunu kontrol eder
  • validateCallback(privateKey, data, signature) - Webhook verilerini doğrular

Nesne Metotları

Epoint nesnesi üzerinde de aşağıdaki metotları kullanabilirsiniz:

  • generatePaymentUrlWithTypingCard() - Ödeme sayfası URL'i oluşturur
  • getStatus() - İşlem durumunu sorgular
  • registerCardForPayment() - Kart kaydeder
  • registerCardForRefund() - İade için kart kaydeder
  • payWithSavedCard() - Kaydedilmiş kart ile ödeme yapar
  • cancelPayment() - İşlemi iptal eder
  • refundPayment() - Ödemeyi iade eder
  • isSignatureValid() - İmzayı doğrular
  • getDataAsJson() - Data'yı JSON string olarak alır
  • getDataAsObject() - Data'yı JavaScript nesnesi olarak alır

Banka Cevap Kodları

KodAçıklama
0Onaylandı
100Ret, genel, açıklama yok
101Ret, kart süresi dolmuş
102Ret, şüpheli dolandırıcılık
103Ret, kart kabul eden alıcıyla iletişime geçin
107, 108Ret, kart düzenleyicisine başvurun
110Ret, geçersiz tutar
111Ret, geçersiz kart numarası
116Ret, yetersiz bakiye
118Ret, kart kaydı yok
119Ret, işleme kart sahibi için izin verilmedi
120Ret, işleme terminal için izin verilmedi
122Ret, güvenlik ihlali
125Ret, kart etkin değil
129Ret, şüpheli sahte kart
400Kabul edildi (iptal için)
500Durum mesajı, uzlaştırıldı, dengede
501Durum mesajı, uzlaştırıldı, dengede değil
907Ret, kart veren veya anahtar çalışmıyor
908Ret, yönlendirme için işlem hedefi bulunamadı
909Ret, sistem arızası
911Ret, kart düzenleyicisi zaman aşımına uğradı
912Ret, kart düzenleyicisi kullanılamıyor
914Ret, orijinal işlem bulunamadı

Lisans

MIT

About

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Latest commit

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Epoint API Node.js Modülü

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Kurulum

npm install axios

Başlangıç

Epoint.az hesabınızı oluşturup, merchant (satıcı) hesabınızı yapılandırdıktan sonra size verilen private_key ve public_key bilgilerini kullanmanız gerekmektedir.

constEpoint=require('./epoint.js');// Kimlik bilgilerinizi tanımlayınconstprivateKey='your_private_key';constpublicKey='your_public_key';

Kullanım Örnekleri

1. Kart Bilgisi İle Ödeme Oluşturma

asyncfunctioncreatePayment(){try{constresponse=awaitEpoint.typeCard(privateKey,publicKey,'order123',// Siparişinize özel benzersiz ID100.50,// Ödeme tutarı'Test payment',// Açıklama'https://example.com/success',// Başarılı ödeme yönlendirme URL'i'https://example.com/error'// Başarısız ödeme yönlendirme URL'i);if(response.status==='success'){// Kullanıcıyı ödeme sayfasına yönlendirinconsole.log(`Ödeme sayfası URL: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Ödeme sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Ödeme hatası:',error);}}

2. Ödeme Durumunu Sorgulama

asyncfunctioncheckPaymentStatus(orderId){try{// Order ID ile sorgulamaconstresponse=awaitEpoint.checkPayment(privateKey,publicKey,orderId);console.log(`Ödeme durumu: ${response.status}`);returnresponse;// Alternatif olarak Epoint transaction ID ile de sorgulama yapabilirsiniz// const response = await Epoint.checkPayment(privateKey, publicKey, transactionId, true);}catch(error){console.error('Durum sorgulama hatası:',error);}}

3. Kart Kaydetme

asyncfunctionsaveCard(){try{constresponse=awaitEpoint.saveCardForPayment(privateKey,publicKey,'Kart kaydetme işlemi','https://example.com/success','https://example.com/error');if(response.status==='success'){console.log(`Kart kayıt sayfası: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Kart kayıt sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Kart kaydetme hatası:',error);}}

4. Kaydedilmiş Kart İle Ödeme Yapma

asyncfunctionpayWithSavedCard(cardUid,orderId,amount){try{constresponse=awaitEpoint.payWithSaved(privateKey,publicKey,cardUid,// Kaydedilmiş kartın ID'siorderId,// Sipariş IDamount,// Ödeme tutarı'Kaydedilmiş kart ile ödeme');if(response.status==='success'){console.log('Ödeme başarılı!');console.log('Transaction ID:',response.transaction);}else{console.error('Ödeme başarısız:',response.message);}returnresponse;}catch(error){console.error('Kaydedilmiş kart ile ödeme hatası:',error);}}

5. İade İşlemi

asyncfunctionrefundPayment(cardUid,orderId,amount){try{constresponse=awaitEpoint.refund(privateKey,publicKey,cardUid,orderId,amount,'Ödeme iadesi');if(response.status==='success'){console.log('İade işlemi başarılı!');}else{console.error('İade başarısız:',response.message);}returnresponse;}catch(error){console.error('İade işlemi hatası:',error);}}

6. İşlem İptali

asyncfunctioncancelTransaction(transactionId,amount=null){try{// Eğer amount belirtilmezse, işlem tamamen iptal edilir// amount belirtilirse, kısmi iptal gerçekleşirconstresponse=awaitEpoint.cancel(privateKey,publicKey,transactionId,amount);if(response.status==='success'){console.log('İşlem başarıyla iptal edildi');}else{console.error('İptal işlemi başarısız:',response.message);}returnresponse;}catch(error){console.error('İptal işlemi hatası:',error);}}

7. Webhook (Callback) Doğrulama

Epoint.az, ödeme sonuçlarını result_url adresinize POST metodu ile gönderir. Bu verilerin gerçekten Epoint'ten geldiğini doğrulamak için:

// Express.js örneğiapp.post('/payment/callback',(req,res)=>{constdata=req.body.data;constsignature=req.body.signature;// İmzayı doğrulayınconstisValid=Epoint.validateCallback(privateKey,data,signature);if(isValid){// Veriyi işleyinconstepoint=newEpoint({private_key: privateKey,data: data,signature: signature});constpaymentData=epoint.getDataAsObject();console.log('Ödeme sonucu:',paymentData);// Örnek: Siparişi güncellemeif(paymentData.status==='success'){// Siparişi başarılı olarak işaretle}else{// Siparişi başarısız olarak işaretle}res.status(200).send('OK');}else{console.error('Geçersiz webhook imzası');res.status(400).send('Invalid signature');}});

API Referansı

Örnek Oluşturma

// Direkt örnek oluşturmaconstepoint=newEpoint({private_key: 'your_private_key',public_key: 'your_public_key',// Diğer parametreler...});// veya statik yardımcı metod ileconstepoint=Epoint.instantiate('your_private_key','your_public_key');

Ana Metotlar

Ödeme İşlemleri

  • typeCard(privateKey, publicKey, orderId, amount, description, successRedirectUrl, errorRedirectUrl) - Yeni ödeme oluşturur
  • payWithSaved(privateKey, publicKey, cardUid, orderId, amount, description) - Kaydedilmiş kart ile ödeme yapar
  • cancel(privateKey, publicKey, epointTransaction, amount) - İşlem iptali/iadesi
  • refund(privateKey, publicKey, cardUid, orderId, amount, description) - İade işlemi

Kart İşlemleri

  • saveCardForPayment(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - Ödeme için kart kaydeder
  • saveCardForRefund(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - İade için kart kaydeder

Sorgulama & Doğrulama

  • checkPayment(privateKey, publicKey, uid, epointTransaction) - Ödeme durumunu kontrol eder
  • validateCallback(privateKey, data, signature) - Webhook verilerini doğrular

Nesne Metotları

Epoint nesnesi üzerinde de aşağıdaki metotları kullanabilirsiniz:

  • generatePaymentUrlWithTypingCard() - Ödeme sayfası URL'i oluşturur
  • getStatus() - İşlem durumunu sorgular
  • registerCardForPayment() - Kart kaydeder
  • registerCardForRefund() - İade için kart kaydeder
  • payWithSavedCard() - Kaydedilmiş kart ile ödeme yapar
  • cancelPayment() - İşlemi iptal eder
  • refundPayment() - Ödemeyi iade eder
  • isSignatureValid() - İmzayı doğrular
  • getDataAsJson() - Data'yı JSON string olarak alır
  • getDataAsObject() - Data'yı JavaScript nesnesi olarak alır

Banka Cevap Kodları

KodAçıklama
0Onaylandı
100Ret, genel, açıklama yok
101Ret, kart süresi dolmuş
102Ret, şüpheli dolandırıcılık
103Ret, kart kabul eden alıcıyla iletişime geçin
107, 108Ret, kart düzenleyicisine başvurun
110Ret, geçersiz tutar
111Ret, geçersiz kart numarası
116Ret, yetersiz bakiye
118Ret, kart kaydı yok
119Ret, işleme kart sahibi için izin verilmedi
120Ret, işleme terminal için izin verilmedi
122Ret, güvenlik ihlali
125Ret, kart etkin değil
129Ret, şüpheli sahte kart
400Kabul edildi (iptal için)
500Durum mesajı, uzlaştırıldı, dengede
501Durum mesajı, uzlaştırıldı, dengede değil
907Ret, kart veren veya anahtar çalışmıyor
908Ret, yönlendirme için işlem hedefi bulunamadı
909Ret, sistem arızası
911Ret, kart düzenleyicisi zaman aşımına uğradı
912Ret, kart düzenleyicisi kullanılamıyor
914Ret, orijinal işlem bulunamadı

Lisans

MIT

About

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Epoint API Node.js Modülü

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Kurulum

npm install axios

Başlangıç

Epoint.az hesabınızı oluşturup, merchant (satıcı) hesabınızı yapılandırdıktan sonra size verilen private_key ve public_key bilgilerini kullanmanız gerekmektedir.

constEpoint=require('./epoint.js');// Kimlik bilgilerinizi tanımlayınconstprivateKey='your_private_key';constpublicKey='your_public_key';

Kullanım Örnekleri

1. Kart Bilgisi İle Ödeme Oluşturma

asyncfunctioncreatePayment(){try{constresponse=awaitEpoint.typeCard(privateKey,publicKey,'order123',// Siparişinize özel benzersiz ID100.50,// Ödeme tutarı'Test payment',// Açıklama'https://example.com/success',// Başarılı ödeme yönlendirme URL'i'https://example.com/error'// Başarısız ödeme yönlendirme URL'i);if(response.status==='success'){// Kullanıcıyı ödeme sayfasına yönlendirinconsole.log(`Ödeme sayfası URL: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Ödeme sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Ödeme hatası:',error);}}

2. Ödeme Durumunu Sorgulama

asyncfunctioncheckPaymentStatus(orderId){try{// Order ID ile sorgulamaconstresponse=awaitEpoint.checkPayment(privateKey,publicKey,orderId);console.log(`Ödeme durumu: ${response.status}`);returnresponse;// Alternatif olarak Epoint transaction ID ile de sorgulama yapabilirsiniz// const response = await Epoint.checkPayment(privateKey, publicKey, transactionId, true);}catch(error){console.error('Durum sorgulama hatası:',error);}}

3. Kart Kaydetme

asyncfunctionsaveCard(){try{constresponse=awaitEpoint.saveCardForPayment(privateKey,publicKey,'Kart kaydetme işlemi','https://example.com/success','https://example.com/error');if(response.status==='success'){console.log(`Kart kayıt sayfası: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Kart kayıt sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Kart kaydetme hatası:',error);}}

4. Kaydedilmiş Kart İle Ödeme Yapma

asyncfunctionpayWithSavedCard(cardUid,orderId,amount){try{constresponse=awaitEpoint.payWithSaved(privateKey,publicKey,cardUid,// Kaydedilmiş kartın ID'siorderId,// Sipariş IDamount,// Ödeme tutarı'Kaydedilmiş kart ile ödeme');if(response.status==='success'){console.log('Ödeme başarılı!');console.log('Transaction ID:',response.transaction);}else{console.error('Ödeme başarısız:',response.message);}returnresponse;}catch(error){console.error('Kaydedilmiş kart ile ödeme hatası:',error);}}

5. İade İşlemi

asyncfunctionrefundPayment(cardUid,orderId,amount){try{constresponse=awaitEpoint.refund(privateKey,publicKey,cardUid,orderId,amount,'Ödeme iadesi');if(response.status==='success'){console.log('İade işlemi başarılı!');}else{console.error('İade başarısız:',response.message);}returnresponse;}catch(error){console.error('İade işlemi hatası:',error);}}

6. İşlem İptali

asyncfunctioncancelTransaction(transactionId,amount=null){try{// Eğer amount belirtilmezse, işlem tamamen iptal edilir// amount belirtilirse, kısmi iptal gerçekleşirconstresponse=awaitEpoint.cancel(privateKey,publicKey,transactionId,amount);if(response.status==='success'){console.log('İşlem başarıyla iptal edildi');}else{console.error('İptal işlemi başarısız:',response.message);}returnresponse;}catch(error){console.error('İptal işlemi hatası:',error);}}

7. Webhook (Callback) Doğrulama

Epoint.az, ödeme sonuçlarını result_url adresinize POST metodu ile gönderir. Bu verilerin gerçekten Epoint'ten geldiğini doğrulamak için:

// Express.js örneğiapp.post('/payment/callback',(req,res)=>{constdata=req.body.data;constsignature=req.body.signature;// İmzayı doğrulayınconstisValid=Epoint.validateCallback(privateKey,data,signature);if(isValid){// Veriyi işleyinconstepoint=newEpoint({private_key: privateKey,data: data,signature: signature});constpaymentData=epoint.getDataAsObject();console.log('Ödeme sonucu:',paymentData);// Örnek: Siparişi güncellemeif(paymentData.status==='success'){// Siparişi başarılı olarak işaretle}else{// Siparişi başarısız olarak işaretle}res.status(200).send('OK');}else{console.error('Geçersiz webhook imzası');res.status(400).send('Invalid signature');}});

API Referansı

Örnek Oluşturma

// Direkt örnek oluşturmaconstepoint=newEpoint({private_key: 'your_private_key',public_key: 'your_public_key',// Diğer parametreler...});// veya statik yardımcı metod ileconstepoint=Epoint.instantiate('your_private_key','your_public_key');

Ana Metotlar

Ödeme İşlemleri

  • typeCard(privateKey, publicKey, orderId, amount, description, successRedirectUrl, errorRedirectUrl) - Yeni ödeme oluşturur
  • payWithSaved(privateKey, publicKey, cardUid, orderId, amount, description) - Kaydedilmiş kart ile ödeme yapar
  • cancel(privateKey, publicKey, epointTransaction, amount) - İşlem iptali/iadesi
  • refund(privateKey, publicKey, cardUid, orderId, amount, description) - İade işlemi

Kart İşlemleri

  • saveCardForPayment(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - Ödeme için kart kaydeder
  • saveCardForRefund(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - İade için kart kaydeder

Sorgulama & Doğrulama

  • checkPayment(privateKey, publicKey, uid, epointTransaction) - Ödeme durumunu kontrol eder
  • validateCallback(privateKey, data, signature) - Webhook verilerini doğrular

Nesne Metotları

Epoint nesnesi üzerinde de aşağıdaki metotları kullanabilirsiniz:

  • generatePaymentUrlWithTypingCard() - Ödeme sayfası URL'i oluşturur
  • getStatus() - İşlem durumunu sorgular
  • registerCardForPayment() - Kart kaydeder
  • registerCardForRefund() - İade için kart kaydeder
  • payWithSavedCard() - Kaydedilmiş kart ile ödeme yapar
  • cancelPayment() - İşlemi iptal eder
  • refundPayment() - Ödemeyi iade eder
  • isSignatureValid() - İmzayı doğrular
  • getDataAsJson() - Data'yı JSON string olarak alır
  • getDataAsObject() - Data'yı JavaScript nesnesi olarak alır

Banka Cevap Kodları

KodAçıklama
0Onaylandı
100Ret, genel, açıklama yok
101Ret, kart süresi dolmuş
102Ret, şüpheli dolandırıcılık
103Ret, kart kabul eden alıcıyla iletişime geçin
107, 108Ret, kart düzenleyicisine başvurun
110Ret, geçersiz tutar
111Ret, geçersiz kart numarası
116Ret, yetersiz bakiye
118Ret, kart kaydı yok
119Ret, işleme kart sahibi için izin verilmedi
120Ret, işleme terminal için izin verilmedi
122Ret, güvenlik ihlali
125Ret, kart etkin değil
129Ret, şüpheli sahte kart
400Kabul edildi (iptal için)
500Durum mesajı, uzlaştırıldı, dengede
501Durum mesajı, uzlaştırıldı, dengede değil
907Ret, kart veren veya anahtar çalışmıyor
908Ret, yönlendirme için işlem hedefi bulunamadı
909Ret, sistem arızası
911Ret, kart düzenleyicisi zaman aşımına uğradı
912Ret, kart düzenleyicisi kullanılamıyor
914Ret, orijinal işlem bulunamadı

Lisans

MIT

About

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Epoint API Node.js Modülü

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Kurulum

npm install axios

Başlangıç

Epoint.az hesabınızı oluşturup, merchant (satıcı) hesabınızı yapılandırdıktan sonra size verilen private_key ve public_key bilgilerini kullanmanız gerekmektedir.

constEpoint=require('./epoint.js');// Kimlik bilgilerinizi tanımlayınconstprivateKey='your_private_key';constpublicKey='your_public_key';

Kullanım Örnekleri

1. Kart Bilgisi İle Ödeme Oluşturma

asyncfunctioncreatePayment(){try{constresponse=awaitEpoint.typeCard(privateKey,publicKey,'order123',// Siparişinize özel benzersiz ID100.50,// Ödeme tutarı'Test payment',// Açıklama'https://example.com/success',// Başarılı ödeme yönlendirme URL'i'https://example.com/error'// Başarısız ödeme yönlendirme URL'i);if(response.status==='success'){// Kullanıcıyı ödeme sayfasına yönlendirinconsole.log(`Ödeme sayfası URL: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Ödeme sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Ödeme hatası:',error);}}

2. Ödeme Durumunu Sorgulama

asyncfunctioncheckPaymentStatus(orderId){try{// Order ID ile sorgulamaconstresponse=awaitEpoint.checkPayment(privateKey,publicKey,orderId);console.log(`Ödeme durumu: ${response.status}`);returnresponse;// Alternatif olarak Epoint transaction ID ile de sorgulama yapabilirsiniz// const response = await Epoint.checkPayment(privateKey, publicKey, transactionId, true);}catch(error){console.error('Durum sorgulama hatası:',error);}}

3. Kart Kaydetme

asyncfunctionsaveCard(){try{constresponse=awaitEpoint.saveCardForPayment(privateKey,publicKey,'Kart kaydetme işlemi','https://example.com/success','https://example.com/error');if(response.status==='success'){console.log(`Kart kayıt sayfası: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Kart kayıt sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Kart kaydetme hatası:',error);}}

4. Kaydedilmiş Kart İle Ödeme Yapma

asyncfunctionpayWithSavedCard(cardUid,orderId,amount){try{constresponse=awaitEpoint.payWithSaved(privateKey,publicKey,cardUid,// Kaydedilmiş kartın ID'siorderId,// Sipariş IDamount,// Ödeme tutarı'Kaydedilmiş kart ile ödeme');if(response.status==='success'){console.log('Ödeme başarılı!');console.log('Transaction ID:',response.transaction);}else{console.error('Ödeme başarısız:',response.message);}returnresponse;}catch(error){console.error('Kaydedilmiş kart ile ödeme hatası:',error);}}

5. İade İşlemi

asyncfunctionrefundPayment(cardUid,orderId,amount){try{constresponse=awaitEpoint.refund(privateKey,publicKey,cardUid,orderId,amount,'Ödeme iadesi');if(response.status==='success'){console.log('İade işlemi başarılı!');}else{console.error('İade başarısız:',response.message);}returnresponse;}catch(error){console.error('İade işlemi hatası:',error);}}

6. İşlem İptali

asyncfunctioncancelTransaction(transactionId,amount=null){try{// Eğer amount belirtilmezse, işlem tamamen iptal edilir// amount belirtilirse, kısmi iptal gerçekleşirconstresponse=awaitEpoint.cancel(privateKey,publicKey,transactionId,amount);if(response.status==='success'){console.log('İşlem başarıyla iptal edildi');}else{console.error('İptal işlemi başarısız:',response.message);}returnresponse;}catch(error){console.error('İptal işlemi hatası:',error);}}

7. Webhook (Callback) Doğrulama

Epoint.az, ödeme sonuçlarını result_url adresinize POST metodu ile gönderir. Bu verilerin gerçekten Epoint'ten geldiğini doğrulamak için:

// Express.js örneğiapp.post('/payment/callback',(req,res)=>{constdata=req.body.data;constsignature=req.body.signature;// İmzayı doğrulayınconstisValid=Epoint.validateCallback(privateKey,data,signature);if(isValid){// Veriyi işleyinconstepoint=newEpoint({private_key: privateKey,data: data,signature: signature});constpaymentData=epoint.getDataAsObject();console.log('Ödeme sonucu:',paymentData);// Örnek: Siparişi güncellemeif(paymentData.status==='success'){// Siparişi başarılı olarak işaretle}else{// Siparişi başarısız olarak işaretle}res.status(200).send('OK');}else{console.error('Geçersiz webhook imzası');res.status(400).send('Invalid signature');}});

API Referansı

Örnek Oluşturma

// Direkt örnek oluşturmaconstepoint=newEpoint({private_key: 'your_private_key',public_key: 'your_public_key',// Diğer parametreler...});// veya statik yardımcı metod ileconstepoint=Epoint.instantiate('your_private_key','your_public_key');

Ana Metotlar

Ödeme İşlemleri

  • typeCard(privateKey, publicKey, orderId, amount, description, successRedirectUrl, errorRedirectUrl) - Yeni ödeme oluşturur
  • payWithSaved(privateKey, publicKey, cardUid, orderId, amount, description) - Kaydedilmiş kart ile ödeme yapar
  • cancel(privateKey, publicKey, epointTransaction, amount) - İşlem iptali/iadesi
  • refund(privateKey, publicKey, cardUid, orderId, amount, description) - İade işlemi

Kart İşlemleri

  • saveCardForPayment(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - Ödeme için kart kaydeder
  • saveCardForRefund(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - İade için kart kaydeder

Sorgulama & Doğrulama

  • checkPayment(privateKey, publicKey, uid, epointTransaction) - Ödeme durumunu kontrol eder
  • validateCallback(privateKey, data, signature) - Webhook verilerini doğrular

Nesne Metotları

Epoint nesnesi üzerinde de aşağıdaki metotları kullanabilirsiniz:

  • generatePaymentUrlWithTypingCard() - Ödeme sayfası URL'i oluşturur
  • getStatus() - İşlem durumunu sorgular
  • registerCardForPayment() - Kart kaydeder
  • registerCardForRefund() - İade için kart kaydeder
  • payWithSavedCard() - Kaydedilmiş kart ile ödeme yapar
  • cancelPayment() - İşlemi iptal eder
  • refundPayment() - Ödemeyi iade eder
  • isSignatureValid() - İmzayı doğrular
  • getDataAsJson() - Data'yı JSON string olarak alır
  • getDataAsObject() - Data'yı JavaScript nesnesi olarak alır

Banka Cevap Kodları

KodAçıklama
0Onaylandı
100Ret, genel, açıklama yok
101Ret, kart süresi dolmuş
102Ret, şüpheli dolandırıcılık
103Ret, kart kabul eden alıcıyla iletişime geçin
107, 108Ret, kart düzenleyicisine başvurun
110Ret, geçersiz tutar
111Ret, geçersiz kart numarası
116Ret, yetersiz bakiye
118Ret, kart kaydı yok
119Ret, işleme kart sahibi için izin verilmedi
120Ret, işleme terminal için izin verilmedi
122Ret, güvenlik ihlali
125Ret, kart etkin değil
129Ret, şüpheli sahte kart
400Kabul edildi (iptal için)
500Durum mesajı, uzlaştırıldı, dengede
501Durum mesajı, uzlaştırıldı, dengede değil
907Ret, kart veren veya anahtar çalışmıyor
908Ret, yönlendirme için işlem hedefi bulunamadı
909Ret, sistem arızası
911Ret, kart düzenleyicisi zaman aşımına uğradı
912Ret, kart düzenleyicisi kullanılamıyor
914Ret, orijinal işlem bulunamadı

Lisans

MIT

About

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Latest commit

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Epoint API Node.js Modülü

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Kurulum

npm install axios

Başlangıç

Epoint.az hesabınızı oluşturup, merchant (satıcı) hesabınızı yapılandırdıktan sonra size verilen private_key ve public_key bilgilerini kullanmanız gerekmektedir.

constEpoint=require('./epoint.js');// Kimlik bilgilerinizi tanımlayınconstprivateKey='your_private_key';constpublicKey='your_public_key';

Kullanım Örnekleri

1. Kart Bilgisi İle Ödeme Oluşturma

asyncfunctioncreatePayment(){try{constresponse=awaitEpoint.typeCard(privateKey,publicKey,'order123',// Siparişinize özel benzersiz ID100.50,// Ödeme tutarı'Test payment',// Açıklama'https://example.com/success',// Başarılı ödeme yönlendirme URL'i'https://example.com/error'// Başarısız ödeme yönlendirme URL'i);if(response.status==='success'){// Kullanıcıyı ödeme sayfasına yönlendirinconsole.log(`Ödeme sayfası URL: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Ödeme sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Ödeme hatası:',error);}}

2. Ödeme Durumunu Sorgulama

asyncfunctioncheckPaymentStatus(orderId){try{// Order ID ile sorgulamaconstresponse=awaitEpoint.checkPayment(privateKey,publicKey,orderId);console.log(`Ödeme durumu: ${response.status}`);returnresponse;// Alternatif olarak Epoint transaction ID ile de sorgulama yapabilirsiniz// const response = await Epoint.checkPayment(privateKey, publicKey, transactionId, true);}catch(error){console.error('Durum sorgulama hatası:',error);}}

3. Kart Kaydetme

asyncfunctionsaveCard(){try{constresponse=awaitEpoint.saveCardForPayment(privateKey,publicKey,'Kart kaydetme işlemi','https://example.com/success','https://example.com/error');if(response.status==='success'){console.log(`Kart kayıt sayfası: ${response.redirect_url}`);// redirect to: response.redirect_url}else{console.error('Kart kayıt sayfası oluşturulamadı:',response.message);}}catch(error){console.error('Kart kaydetme hatası:',error);}}

4. Kaydedilmiş Kart İle Ödeme Yapma

asyncfunctionpayWithSavedCard(cardUid,orderId,amount){try{constresponse=awaitEpoint.payWithSaved(privateKey,publicKey,cardUid,// Kaydedilmiş kartın ID'siorderId,// Sipariş IDamount,// Ödeme tutarı'Kaydedilmiş kart ile ödeme');if(response.status==='success'){console.log('Ödeme başarılı!');console.log('Transaction ID:',response.transaction);}else{console.error('Ödeme başarısız:',response.message);}returnresponse;}catch(error){console.error('Kaydedilmiş kart ile ödeme hatası:',error);}}

5. İade İşlemi

asyncfunctionrefundPayment(cardUid,orderId,amount){try{constresponse=awaitEpoint.refund(privateKey,publicKey,cardUid,orderId,amount,'Ödeme iadesi');if(response.status==='success'){console.log('İade işlemi başarılı!');}else{console.error('İade başarısız:',response.message);}returnresponse;}catch(error){console.error('İade işlemi hatası:',error);}}

6. İşlem İptali

asyncfunctioncancelTransaction(transactionId,amount=null){try{// Eğer amount belirtilmezse, işlem tamamen iptal edilir// amount belirtilirse, kısmi iptal gerçekleşirconstresponse=awaitEpoint.cancel(privateKey,publicKey,transactionId,amount);if(response.status==='success'){console.log('İşlem başarıyla iptal edildi');}else{console.error('İptal işlemi başarısız:',response.message);}returnresponse;}catch(error){console.error('İptal işlemi hatası:',error);}}

7. Webhook (Callback) Doğrulama

Epoint.az, ödeme sonuçlarını result_url adresinize POST metodu ile gönderir. Bu verilerin gerçekten Epoint'ten geldiğini doğrulamak için:

// Express.js örneğiapp.post('/payment/callback',(req,res)=>{constdata=req.body.data;constsignature=req.body.signature;// İmzayı doğrulayınconstisValid=Epoint.validateCallback(privateKey,data,signature);if(isValid){// Veriyi işleyinconstepoint=newEpoint({private_key: privateKey,data: data,signature: signature});constpaymentData=epoint.getDataAsObject();console.log('Ödeme sonucu:',paymentData);// Örnek: Siparişi güncellemeif(paymentData.status==='success'){// Siparişi başarılı olarak işaretle}else{// Siparişi başarısız olarak işaretle}res.status(200).send('OK');}else{console.error('Geçersiz webhook imzası');res.status(400).send('Invalid signature');}});

API Referansı

Örnek Oluşturma

// Direkt örnek oluşturmaconstepoint=newEpoint({private_key: 'your_private_key',public_key: 'your_public_key',// Diğer parametreler...});// veya statik yardımcı metod ileconstepoint=Epoint.instantiate('your_private_key','your_public_key');

Ana Metotlar

Ödeme İşlemleri

  • typeCard(privateKey, publicKey, orderId, amount, description, successRedirectUrl, errorRedirectUrl) - Yeni ödeme oluşturur
  • payWithSaved(privateKey, publicKey, cardUid, orderId, amount, description) - Kaydedilmiş kart ile ödeme yapar
  • cancel(privateKey, publicKey, epointTransaction, amount) - İşlem iptali/iadesi
  • refund(privateKey, publicKey, cardUid, orderId, amount, description) - İade işlemi

Kart İşlemleri

  • saveCardForPayment(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - Ödeme için kart kaydeder
  • saveCardForRefund(privateKey, publicKey, description, successRedirectUrl, errorRedirectUrl) - İade için kart kaydeder

Sorgulama & Doğrulama

  • checkPayment(privateKey, publicKey, uid, epointTransaction) - Ödeme durumunu kontrol eder
  • validateCallback(privateKey, data, signature) - Webhook verilerini doğrular

Nesne Metotları

Epoint nesnesi üzerinde de aşağıdaki metotları kullanabilirsiniz:

  • generatePaymentUrlWithTypingCard() - Ödeme sayfası URL'i oluşturur
  • getStatus() - İşlem durumunu sorgular
  • registerCardForPayment() - Kart kaydeder
  • registerCardForRefund() - İade için kart kaydeder
  • payWithSavedCard() - Kaydedilmiş kart ile ödeme yapar
  • cancelPayment() - İşlemi iptal eder
  • refundPayment() - Ödemeyi iade eder
  • isSignatureValid() - İmzayı doğrular
  • getDataAsJson() - Data'yı JSON string olarak alır
  • getDataAsObject() - Data'yı JavaScript nesnesi olarak alır

Banka Cevap Kodları

KodAçıklama
0Onaylandı
100Ret, genel, açıklama yok
101Ret, kart süresi dolmuş
102Ret, şüpheli dolandırıcılık
103Ret, kart kabul eden alıcıyla iletişime geçin
107, 108Ret, kart düzenleyicisine başvurun
110Ret, geçersiz tutar
111Ret, geçersiz kart numarası
116Ret, yetersiz bakiye
118Ret, kart kaydı yok
119Ret, işleme kart sahibi için izin verilmedi
120Ret, işleme terminal için izin verilmedi
122Ret, güvenlik ihlali
125Ret, kart etkin değil
129Ret, şüpheli sahte kart
400Kabul edildi (iptal için)
500Durum mesajı, uzlaştırıldı, dengede
501Durum mesajı, uzlaştırıldı, dengede değil
907Ret, kart veren veya anahtar çalışmıyor
908Ret, yönlendirme için işlem hedefi bulunamadı
909Ret, sistem arızası
911Ret, kart düzenleyicisi zaman aşımına uğradı
912Ret, kart düzenleyicisi kullanılamıyor
914Ret, orijinal işlem bulunamadı

Lisans

MIT

About

Bu modül, Epoint.az elektronik ödeme platformu için Node.js desteği sağlar. API üzerinden ödeme işlemlerini, kart kaydı ve doğrulama işlemlerini kolaylıkla gerçekleştirebilirsiniz.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages