UNPKG

@malga-checkout/core

Version:
26 lines (25 loc) 738 B
import { Api } from '../api'; import settings from '../../stores/settings'; import { formatPayData } from './payments.utils'; export class Payments { constructor({ provider }) { this.api = new Api(); this.provider = provider; } async pay({ headers, payload }) { const errorStatus = ['failed', 'charged_back', 'canceled', 'voided']; const isSession = !!settings.sessionId; const endpoint = isSession ? `/sessions/${settings.sessionId}/charge` : '/charges'; const response = await this.api.create({ endpoint, data: formatPayData(payload, isSession), headers, }); return { hasError: errorStatus.includes(response.data.status), data: response.data, }; } }