mirror of
https://github.com/Tria-plc/edr-platform.git
synced 2026-08-26 18:42:49 +00:00
Merge pull request #196 from Tria-plc/feat/payment-microservice
fix: ( telebirr ) fix webhook return types
This commit is contained in:
@@ -31,16 +31,15 @@ export class TelebirrWebhookService {
|
|||||||
result: {
|
result: {
|
||||||
status: mapped,
|
status: mapped,
|
||||||
providerTxnId,
|
providerTxnId,
|
||||||
paidAt: this.parseEpochSeconds(payload.trans_end_time),
|
paidAt: this.parseEpoch(payload.trans_end_time),
|
||||||
failureCode: payload.trade_status,
|
failureCode: payload.trade_status,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
private parseEpoch(raw: string | undefined): Date | undefined {
|
||||||
private parseEpochSeconds(raw: string | undefined): Date | undefined {
|
|
||||||
if (!raw) return undefined;
|
if (!raw) return undefined;
|
||||||
const n = parseInt(raw, 10);
|
const n = parseInt(raw, 10);
|
||||||
if (Number.isNaN(n)) return undefined;
|
if (Number.isNaN(n)) return undefined;
|
||||||
return new Date(n * 1000);
|
return new Date(n < 1e12 ? n * 1000 : n);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -139,14 +139,14 @@ export class TelebirrProvider implements PaymentProvider {
|
|||||||
mapWebhookTradeStatus(
|
mapWebhookTradeStatus(
|
||||||
tradeStatus: string | undefined,
|
tradeStatus: string | undefined,
|
||||||
): ProviderPaymentStatus {
|
): ProviderPaymentStatus {
|
||||||
switch (tradeStatus) {
|
switch (tradeStatus?.toUpperCase()) {
|
||||||
case "Completed":
|
case "COMPLETED":
|
||||||
return ProviderPaymentStatus.SUCCEEDED;
|
return ProviderPaymentStatus.SUCCEEDED;
|
||||||
case "Failure":
|
case "FAILURE":
|
||||||
case "Expired":
|
|
||||||
return ProviderPaymentStatus.FAILED;
|
return ProviderPaymentStatus.FAILED;
|
||||||
case "Paying":
|
case "PAYING":
|
||||||
case "Pending":
|
case "PENDING":
|
||||||
|
case "EXPIRED":
|
||||||
return ProviderPaymentStatus.PROCESSING;
|
return ProviderPaymentStatus.PROCESSING;
|
||||||
default:
|
default:
|
||||||
return ProviderPaymentStatus.PROCESSING;
|
return ProviderPaymentStatus.PROCESSING;
|
||||||
|
|||||||
Reference in New Issue
Block a user