UNPKG

esnekpos

Version:

Node.js entegrasyon paketi - EsnekPOS ödeme sistemi için resmi olmayan istemci

46 lines (39 loc) 1.31 kB
/** * İade/İptal servisi */ const { validateRefundRequest } = require('../validators'); const { makeRequest } = require('../helpers/request'); const { ENDPOINTS } = require('../constants'); class RefundService { /** * İade/İptal servisini başlatır * @param {EsnekPOSClient} client - EsnekPOS istemcisi */ constructor(client) { this.client = client; } /** * İade/İptal işlemi başlatır * @param {Object} options - İade/İptal seçenekleri * @param {string} options.orderRefNumber - Sipariş referans numarası * @param {number} options.amount - İade/İptal tutarı * @param {boolean} [options.syncWithPos=false] - Banka ile senkron işlem yapılsın mı? * @returns {Promise<Object>} - İşlem sonucu */ async refundTransaction(options) { const request = { MERCHANT: this.client.config.merchant, MERCHANT_KEY: this.client.config.merchantKey, ORDER_REF_NUMBER: options.orderRefNumber, AMOUNT: options.amount, SYNC_WITH_POS: options.syncWithPos || false }; validateRefundRequest(request); return makeRequest({ baseUrl: this.client.baseUrl, endpoint: ENDPOINTS.ORDER_RETURN, data: request }); } } module.exports = RefundService;