diff --git a/src/interfaces/paypal.ts b/src/interfaces/paypal.ts index 4305b960..2278e284 100644 --- a/src/interfaces/paypal.ts +++ b/src/interfaces/paypal.ts @@ -31,5 +31,5 @@ export interface Payment { currency: string; value: number; isPaid: boolean; - date: Date; + date: Date | string; } diff --git a/src/pages/api/users/update.ts b/src/pages/api/users/update.ts index c75ae980..7d3de267 100644 --- a/src/pages/api/users/update.ts +++ b/src/pages/api/users/update.ts @@ -22,13 +22,14 @@ export default withIronSessionApiRoute(handler, sessionOptions); // because the id is not a par of the hash and payment expects date to be of type Date // but if it is not inserted as a string, some UI components will not work (Invalid Date) const addPaymentRecord = async (data: any) => { - const shortUID = new ShortUniqueId(); - await setDoc(doc(db, "payments", shortUID.randomUUID(8)), data); + await setDoc(doc(db, "payments", data.id), data); } const managePaymentRecords = async (user: User, userId: string | undefined): Promise => { try { if(user.type === 'corporate' && userId) { - const data = { + const shortUID = new ShortUniqueId(); + const data: Payment = { + id: shortUID.randomUUID(8), corporate: userId, agent: user.corporateInformation.referralAgent, agentCommission: user.corporateInformation.payment!.commission,