mirror of
https://github.com/Tria-plc/edr-platform.git
synced 2026-08-29 16:28:12 +00:00
51 lines
1.3 KiB
TypeScript
51 lines
1.3 KiB
TypeScript
export interface GatewayResult {
|
|
success: boolean;
|
|
providerRef: string;
|
|
clientAction?: { type: string; url?: string };
|
|
}
|
|
|
|
export async function telebirrAdapter(
|
|
_a: number,
|
|
ref: string,
|
|
): Promise<GatewayResult> {
|
|
await new Promise((r) => setTimeout(r, 200));
|
|
return {
|
|
success: true,
|
|
providerRef: `TB-${ref}-${Date.now()}`,
|
|
clientAction: {
|
|
type: "REDIRECT",
|
|
url: `https://telebirr.sandbox.com/pay/${ref}`,
|
|
},
|
|
};
|
|
}
|
|
export async function cbeBirrAdapter(
|
|
_a: number,
|
|
ref: string,
|
|
): Promise<GatewayResult> {
|
|
await new Promise((r) => setTimeout(r, 150));
|
|
return { success: true, providerRef: `CBE-${ref}-${Date.now()}` };
|
|
}
|
|
export async function eBirrAdapter(
|
|
_a: number,
|
|
ref: string,
|
|
): Promise<GatewayResult> {
|
|
await new Promise((r) => setTimeout(r, 150));
|
|
return { success: true, providerRef: `EB-${ref}-${Date.now()}` };
|
|
}
|
|
export async function cardAdapter(
|
|
_a: number,
|
|
ref: string,
|
|
): Promise<GatewayResult> {
|
|
await new Promise((r) => setTimeout(r, 150));
|
|
return {
|
|
success: !ref.startsWith("FAIL"),
|
|
providerRef: `CARD-${ref}-${Date.now()}`,
|
|
};
|
|
}
|
|
export async function walletAdapter(
|
|
amount: number,
|
|
balance: number,
|
|
): Promise<GatewayResult> {
|
|
return { success: balance >= amount, providerRef: `WALLET-${Date.now()}` };
|
|
}
|