From 800e1e21ed908b26d69b59939dfa6a1b2a2ceb0d Mon Sep 17 00:00:00 2001 From: Abubeker Yasin Date: Mon, 20 Jul 2026 15:47:37 +0300 Subject: [PATCH] fix: (payment ) store fractional payment intent amounts --- .../migration.sql | 5 +++++ apps/edr-passenger-api/prisma/schema.prisma | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 apps/edr-passenger-api/prisma/migrations/20260720000001_payment_intent_amount_to_float/migration.sql diff --git a/apps/edr-passenger-api/prisma/migrations/20260720000001_payment_intent_amount_to_float/migration.sql b/apps/edr-passenger-api/prisma/migrations/20260720000001_payment_intent_amount_to_float/migration.sql new file mode 100644 index 000000000..7f083aed8 --- /dev/null +++ b/apps/edr-passenger-api/prisma/migrations/20260720000001_payment_intent_amount_to_float/migration.sql @@ -0,0 +1,5 @@ +-- AlterTable +-- Widen PaymentIntent.amountMinor from integer to double precision so fractional +-- charge amounts (e.g. 1700.49 after ETB->DJF FX conversion) mirror the +-- edr_payment.payment_intent.amount_minor source of truth instead of truncating. +ALTER TABLE "passenger"."PaymentIntent" ALTER COLUMN "amountMinor" SET DATA TYPE DOUBLE PRECISION; diff --git a/apps/edr-passenger-api/prisma/schema.prisma b/apps/edr-passenger-api/prisma/schema.prisma index 62f658967..1ddbd8def 100644 --- a/apps/edr-passenger-api/prisma/schema.prisma +++ b/apps/edr-passenger-api/prisma/schema.prisma @@ -621,7 +621,7 @@ model PaymentMethod { model PaymentIntent { id String @id @default(uuid()) bookingId String @unique - amountMinor Int + amountMinor Float currency String @default("ETB") method PaymentMethodType provider String?