UNPKG

akua-sdk

Version:

TypeScript SDK for Akua Acquiring Processor

61 lines (60 loc) 1.68 kB
import type { UserData } from '../instrument'; import type { CardData } from '../instrument'; import { CaptureMode, PaymentIntent, PaymentEntryMode, Currency } from '../enums'; export interface Amount { value: number; currency: Currency; } export interface Capture { mode: CaptureMode; } export interface Installments { quantity: number; type: string; } export interface Card extends Omit<CardData, 'first_name' | 'last_name'> { holder_name: string; } export interface Instrument { type: 'CARD'; card: Card; user_data: UserData; } export interface BaseIdempotencyKeyRequest { idempotencyKey?: string; } export interface BaseAuthorizeRequest extends BaseIdempotencyKeyRequest { amount: Amount; intent: PaymentIntent; trace_id: string; entry_mode: PaymentEntryMode; capture: Capture; merchant_id: string; installments: Installments; } export interface AuthorizeWithPanRequest extends BaseAuthorizeRequest { instrument: Instrument; } export interface RefundPaymentRequest extends BaseIdempotencyKeyRequest { amount: Amount; } export interface AuthorizeWithTokenRequest extends BaseAuthorizeRequest { instrument: { id: string; }; } export interface VerifyPaymentRequest extends BaseIdempotencyKeyRequest { intent: 'account-status'; merchant_id: string; trace_id: string; instrument: Instrument | { id: string; }; } export interface CapturePaymentRequest extends BaseIdempotencyKeyRequest { amount: Amount; } export interface CancelPaymentRequest extends BaseIdempotencyKeyRequest { } export interface ClearPaymentRequest extends BaseIdempotencyKeyRequest { }