Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/fastuptime/quickpos

QuickPos, farklı ödeme sağlayıcılarını destekleyen güçlü bir ödeme entegrasyon modülüdür.
https://github.com/fastuptime/quickpos

payment-gateway payment-gateways paypal paytr quickpos sanalpos vallet virtual-pos

Last synced: 8 days ago
JSON representation

QuickPos, farklı ödeme sağlayıcılarını destekleyen güçlü bir ödeme entegrasyon modülüdür.

Awesome Lists containing this project

README

        

# 💳 QuickPos 🚀

QuickPos, farklı ödeme sağlayıcılarını destekleyen güçlü bir ödeme entegrasyon modülüdür. Şu anda PayTR sağlayıcısını desteklemektedir ve gelecekte birçok yeni sağlayıcı ile özellik eklemeyi planlamaktadır. Yol haritamıza göz atarak gelecek özellikleri keşfedebilirsiniz.

---

## ✨ Özellikler

- 🔌 **Çoklu Ödeme Sağlayıcı Desteği**: Birden fazla ödeme sağlayıcı ile uyumlu.
- 🛡️ **Güvenli Ödeme İşlemleri**: Güvenli ve sorunsuz ödeme işlemleri.
- 🔄 **Kolay Entegrasyon**: Hızlı ve basit entegrasyon.
- 📊 **Detaylı Ödeme Raporları**: Gelişmiş raporlama özellikleri.
- 💼 **İşletmeler için Özelleştirilebilir Çözümler**: Özel ihtiyaçlara yönelik çözümler.

---

## 📦 Kurulum

```bash
npm install quickpos
```

---

## 🛠️ Kullanım

### 1. Sunucu Kurulumu

```javascript
const express = require('express');
const bodyParser = require('body-parser');
const QuickPos = require('quickpos');

const app = express();
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());

const quickPos = new QuickPos({
providers: {
paytr: {
merchantId: 'xXxxXxX',
merchantKey: 'xXxxXxX',
merchantSalt: 'xXxxXxX',
mode: 'test',
}
},
});

// QuickPos middleware'ini ekleyin
app.use(quickPos.middleware());

// Ödeme oluşturma formu
app.get('/', (req, res) => {
res.send(`



TL
USD
EUR


Pay

`);
});

// Ödeme oluşturma rotası
app.post('/payment/:provider', async (req, res) => {
const { provider } = req.params;

if (!req.quickPos[provider]) {
return res.status(400).json({ error: 'Invalid payment provider' });
}

try {
const result = await req.quickPos[provider].createPayment({
name: 'Test Product',
amount: req.body.amount,
currency: req.body.currency,
callback_link: `https://mylocalhostx.speedsmm.com/payment-callback/${provider}`,
callback_id: req.body.orderId,
maxInstallment: 1,
expiry_date: '2024-12-25 17:00:00',
email: '[email protected]',
});

if (result.status === 'success') {
res.json({ redirectUrl: result.data.url });
} else {
res.status(400).json(result);
}
} catch (error) {
res.status(500).json({ error: error.message });
}
});

// Callback rotası
app.post('/payment-callback/:provider', quickPos.handleCallback('paytr'), (req, res) => {
console.log('Payment result:', req.paymentResult);

if (req.paymentResult.status === 'success') {
res.send('OK');
} else {
res.status(400).send('Payment failed');
}
});

app.listen(80, () => {
console.log('Server is running on port 80');
});
```

### 2. Konfigürasyon

`QuickPos` örneğini oluştururken ödeme sağlayıcılarını yapılandırın:

```javascript
const quickPos = new QuickPos({
providers: {
paytr: {
merchantId: 'xXxxXxX',
merchantKey: 'xXxxXxX',
merchantSalt: 'xXxxXxX',
mode: 'test',
}
},
});
```

---

## Desteklenen Ödeme Sağlayıcıları 🏦

- PayTR

---

## Yol Haritası 🛣️

### Gelecek Özellikler

- 🏦 Yeni ödeme sağlayıcıları: İyzico, Vallet, Shipy
- 🌐 Çoklu dil desteği
- 💸 Çoklu para birimi desteği
- 📝 Gelişmiş dökümantasyon

### İlerleme Durumu

- [x] PayTR entegrasyonu > 0 ✨
- [ ] Vallet entegrasyonu > 5 ✨
- [ ] Shipy entegrasyonu > 5 ✨
- [ ] İyzico entegrasyonu > 10 ✨
- [ ] Shopinext entegrasyonu > 10 ✨
- [ ] Paywant entegrasyonu > 15 ✨
- [ ] Payizone entegrasyonu > 20 ✨
- [ ] Weepay entegrasyonu > 25 ✨
- [ ] Paynet entegrasyonu > 30 ✨
- [ ] Stripe entegrasyonu > 40 ✨
- [ ] PayPal entegrasyonu > 40 ✨

---

## Katkıda Bulunma 🤝

Katkılarınızı bekliyoruz! Lütfen [katkı yönergelerimizi](CONTRIBUTING.md) okuyun.