@mft/moneyhub-api-client
Version:
Node.JS client for the Moneyhub API
127 lines • 3.97 kB
TypeScript
import type { SearchParams } from "../request";
import { RequestPayer } from "./payee";
export declare type PaymentActorType = "api-payee" | "mh-user-account";
export declare type PayerType = "api-payer" | "mh-user-account";
export declare type PaymentContext = "Other" | "PartyToParty" | "BillPayment";
export interface AuthRequestPostPayment {
amount: number;
payeeId: string;
payeeRef: string;
payeeType?: PaymentActorType;
payerId?: string;
payerRef: string;
payerType?: PayerType;
payer?: RequestPayer;
payerName?: string;
payerEmail?: string;
readRefundAccount?: boolean;
context?: PaymentContext;
}
declare type PeriodType = "Day" | "Week" | "Fortnight" | "Month" | "Half-year" | "Year";
declare type PeriodAlignment = "Consent" | "Calendar";
interface PeriodicLimit {
amount?: number;
currency?: string;
periodType?: PeriodType;
periodAlignment?: PeriodAlignment;
}
declare type RecurringPaymentType = "Sweeping" | "Other";
export interface AuthRequestPostRecurringPayment {
payeeId?: string;
payeeType?: PaymentActorType;
payerId?: string;
payerType?: PaymentActorType;
context?: PaymentContext;
reference?: string;
validFromDate?: string;
validToDate?: string;
maximumIndividualAmount?: number;
currency?: string;
periodicLimits?: PeriodicLimit[];
type: RecurringPaymentType[];
}
export interface AuthRequestPostReversePayment {
paymentId?: string;
amount?: number;
}
export interface PaymentSearchParams extends SearchParams {
userId?: string;
payeeId?: string;
startDate?: string;
endDate?: string;
}
declare type PaymentStatus = "inProgress" | "pending" | "completed" | "cancelled" | "rejected" | "abandoned" | "error:paymentSubmission" | "error:redirect" | "error:tokenGrant";
declare type ChargeBearer = "BorneByCreditor" | "BorneByDebtor" | "FollowingServiceLevel" | "Shared";
declare type ChargeType = "CHAPSOut" | "BalanceTransferOut" | "MoneyTransferOut";
interface Charge {
bearer?: ChargeBearer;
type?: ChargeType;
amount?: number;
currency?: string;
}
export interface Payment {
id: string;
amount: number;
payeeId: string;
payeeRef: string;
payeeType: PaymentActorType;
payerId?: string;
payerRef: string;
payerType?: PaymentActorType;
payerName?: string;
payerEmail?: string;
currency: string;
isReversible: boolean;
status: PaymentStatus;
providerStatus?: string;
paymentSubmissionId?: string;
charges: Charge[];
initiatedAt: string;
finalisedAt?: string;
}
export interface PaymentsClaims {
amount?: number;
payeeId?: string;
payeeRef?: string;
payeeType?: PaymentActorType;
payerId?: string;
payerRef?: string;
payerType?: PaymentActorType;
payerName?: string;
payerEmail?: string;
readRefundAccoun?: boolean;
}
export interface RecurringPaymentSearchParams extends SearchParams {
userId?: string;
}
export interface RecurringPayment {
reference: string;
validFromDate?: string;
validToDate?: string;
maximumIndividualAmount: number;
currency: string;
periodicLimits: PeriodicLimit[];
type: RecurringPaymentType[];
}
declare type RecurringPaymentStatus = "Pending" | "Rejected" | "AcceptedSettlementInProcess" | "AcceptedSettlementCompleted" | "AcceptedWithoutPosting" | "AcceptedCreditSettlementCompleted";
export interface RecurringPaymentRequest {
paymentSubmissionId: string;
providerStatus: RecurringPaymentStatus;
status: PaymentStatus;
submittedAt: string;
authRequestId: string;
revokedAt?: string;
}
export interface FundsConfirmationRequest {
amount: string;
currency: string;
}
export interface FundsConfirmationResponse {
fundsAvailable: boolean;
fundsAvailableAt: string;
amount: string;
currency: string;
recurringPaymentId: string;
}
export {};
//# sourceMappingURL=payment.d.ts.map