@joyida/payme bilan boshlash
Ushbu qo'llanma sizni dasturingizda Payme to'lovlarini bir necha daqiqada integratsiya qilishga yordam beradi.
Talablar
- Bun >= 1.3.9 (bu SDK faqat Bunda qo'llab-quvvatlanadi)
- Payme Business hisobi
- Paymedan maxfiy kalit (Merchant API); Subscribe API uchun shuningdek savdochilik identifikatori va parol kerak
O'rnatish
bash
bun add @joyida/paymeTizimga kirish ma'lumotlari
- Payme Business saytida ro'yxatdan o'ting
- Savdochilik hisobini yarating
- Tizimga kirish ma'lumotlarini oling:
- Savdochilik ID: Savdochilik sozlamalarida topiladi
- Maxfiy kalit: API sozlamalarida yaratilgan
- Parol: Subscribe API uchun (karta tokenizatsiyasi)
Tezkor boshlash - Merchant API
Merchant API to'lovlarni qayta ishlash uchun ishlatiladi.
typescript
import { PaymeMerchant } from '@joyida/payme';
// Klientni ishga tushiring (Merchant API autentifikatsiyasi uchun faqat secretKey kerak)
const payme = new PaymeMerchant({
secretKey: 'your_secret_key',
});
// To'lov mumkinligini tekshiring
const check = await payme.checkPerformTransaction({
amount: 500000, // 5000 so'm tiyinda (1 so'm = 100 tiyin)
account: { order_id: 'ORD-123' }
});
if (check.allow) {
console.log('✅ To\'lov ruxsat etildi');
}Tezkor boshlash - Subscribe API
Subscribe API karta tokenizatsiyasi va takroriy to'lovlar uchun ishlatiladi.
typescript
import { PaymeSubscribe } from '@joyida/payme';
// Klient tomon rejim (karta tokenizatsiyasi uchun)
const subscribeClient = new PaymeSubscribe({
merchantId: 'your_merchant_id'
}, 'client');
// Karta tokenini yarating
const result = await subscribeClient.cardsCreate({
card: {
number: '8600069195406311',
expire: '0399' // MMYY formati
},
save: true
});
console.log('Karta tokeni:', result.card.token);Muhit o'zgaruvchilari
Loyihangiz ildiz faylida .env faylini yarating:
bash
PAYME_MERCHANT_ID=your_merchant_id
PAYME_SECRET_KEY=your_secret_key
PAYME_PASSWORD=your_passwordKeyin kodda ishlating:
typescript
const payme = new PaymeMerchant({
merchantId: process.env.PAYME_MERCHANT_ID!,
secretKey: process.env.PAYME_SECRET_KEY!,
});TypeScript qo'llab-quvvatlashi
Kutubxona to'liq TypeScript bilan to'plangan. Qo'shimcha @types paketlari kerak emas!
typescript
import type {
CreateTransactionParams,
CreateTransactionResult
} from '@joyida/payme';
const params: CreateTransactionParams = {
id: '5305e3bab097f420a62ced0b',
time: Date.now(),
amount: 500000,
account: { order_id: 'ORD-123' }
};
const result: CreateTransactionResult = await payme.createTransaction(params);Keyingi qadamlar
- Sozlash variantlari haqida bilib oling
- To'lov oqimini tushuning
- Karta tokenizatsiyasini o'rganing
- API havolasini ko'ring
- To'liq misollarni ko'ring
Umumiy muammolar
"Yaroqsiz tizimga kirish ma'lumotlari" xatosi
Savdochilik ID va Maxfiy kalit to'g'ri ekanligiga ishonch hosil qiling. Quyidagilarni tekshiring:
- Tizimga kirish ma'lumotlarida bo'shliqlar
- Noto'g'ri muhit (test va ishlab chiqarish)
- Muddati o'tgan yoki bekor qilingan kalitlar
"Summa tasdiqlash muvaffaqiyatsiz" xatosi
Summalar tiyinda ekanligini esingizda tuting (1 so'm = 100 tiyin):
- ✅ To'g'ri:
500000(5000 so'm) - ❌ Noto'g'ri:
5000(50 so'm)
TypeScript xatolari
TypeScript 5.0 yoki undan yuqori versiyasini ishlatyotganingizga ishonch hosil qiling:
bash
bun add -d typescript@latest