afrimomo-sdk
Version:
A unified SDK for African payment providers
84 lines • 3.19 kB
TypeScript
export type MoMoCurrency = "XOF" | "XAF" | "CDF" | "GHS" | "KES" | "MWK" | "MZN" | "NGN" | "RWF" | "SLE" | "TZS" | "UGX" | "ZMW";
export type Correspondent = "MTN_MOMO_BEN" | "MOOV_BEN" | "MTN_MOMO_CMR" | "ORANGE_CMR" | "MTN_MOMO_CIV" | "ORANGE_CIV" | "VODACOM_MPESA_COD" | "AIRTEL_COD" | "ORANGE_COD" | "MTN_MOMO_GHA" | "AIRTELTIGO_GHA" | "VODAFONE_GHA" | "MPESA_KEN" | "AIRTEL_MWI" | "TNM_MWI" | "VODACOM_MOZ" | "AIRTEL_NGA" | "MTN_MOMO_NGA" | "AIRTEL_RWA" | "MTN_MOMO_RWA" | "FREE_SEN" | "ORANGE_SEN" | "ORANGE_SLE" | "AIRTEL_TZA" | "VODACOM_TZA" | "TIGO_TZA" | "HALOTEL_TZA" | "AIRTEL_OAPI_UGA" | "MTN_MOMO_UGA" | "AIRTEL_OAPI_ZMB" | "MTN_MOMO_ZMB" | "ZAMTEL_ZMB";
export interface Payer {
type: string;
address: {
value: string;
};
}
export interface PaymentTransaction {
depositId: string;
status: PaymentStatus;
requestedAmount: string;
depositedAmount: string;
currency: MoMoCurrency;
country: string;
payer: Payer;
correspondent: Correspondent;
statementDescription: string;
customerTimestamp: string;
created: string;
respondedByPayer: string;
correspondentIds: {
[key: string]: string;
};
suspiciousActivityReport?: SuspiciousActivityReport[];
}
export interface SuspiciousActivityReport {
activityType: string;
comment: string;
}
export type PaymentStatus = "PENDING" | "COMPLETED" | "FAILED" | "CANCELLED";
export declare enum PayoutStatus {
ACCEPTED = "ACCEPTED",
ENQUEUED = "ENQUEUED",
REJECTED = "REJECTED",
DUPLICATE_IGNORED = "DUPLICATE_IGNORED"
}
export type ResendCallbackResponseStatus = "ACCEPTED" | "REJECTED" | "FAILED";
export interface PayoutTransaction {
amount: string;
phoneNumber: string;
payoutId: string;
currency: MoMoCurrency;
correspondent: Correspondent;
statementDescription: string;
country: string;
customerTimestamp?: string;
}
export interface RefundResponse {
refundId: string;
status: "ACCEPTED" | "REJECTED" | "DUPLICATE_IGNORED";
created?: Date;
rejectionReason?: {
rejectionCode: "DEPOSIT_NOT_FOUND" | "DEPOSIT_NOT_COMPLETED" | "ALREADY_REFUNDED" | "IN_PROGRESS" | "INVALID_AMOUNT" | "AMOUNT_TOO_SMALL" | "AMOUNT_TOO_LARGE" | "PARAMETER_INVALID" | "INVALID_INPUT" | "REFUNDS_NOT_ALLOWED" | "CORRESPONDENT_TEMPORARILY_UNAVAILABLE";
rejectionMessage: string;
};
}
export interface RefundTransaction {
refundId: string;
status: "ACCEPTED" | "SUBMITTED" | "ENQUEUED" | "COMPLETED" | "FAILED";
amount: string;
currency: MoMoCurrency;
country: string;
correspondent: Correspondent;
recipient: Payer;
customerTimestamp: string;
statementDescription?: string;
created: string;
receivedByRecipient?: string;
correspondentIds?: {
[key: string]: string;
};
failureReason?: {
failureCode: "BALANCE_INSUFFICIENT" | "RECIPIENT_NOT_FOUND" | "RECIPIENT_NOT_ALLOWED_TO_RECEIVE" | "OTHER_ERROR";
failureMessage: string;
};
}
export type MoMoOperatorType = {
MNO: string;
Correspondent: Correspondent;
Country: string;
Currency: MoMoCurrency;
};
//# sourceMappingURL=momo.d.ts.map