what: - enables a button to create a payment link when a payment delta is present - api to delete order payment collection - adds a pending amount to payment collections Note: Not the happiest with the decision on when to create a payment collection and when not to. The code should programatically create or delete payment collections currently to generate the right collection for the payment delta. Adding a more specific flow to create and manage a payment collection will help reduce this burden from the code path and onto CX/merchant. Another issue I found is that the payment collection status doesn't get updated when payment is complete as it still gets stuck to "authorized" state https://github.com/user-attachments/assets/037a10f9-3621-43c2-94ba-1ada4b0a041b
22 lines
629 B
TypeScript
22 lines
629 B
TypeScript
import { AdminPaymentCollection } from "@medusajs/types"
|
|
|
|
export const getTotalCaptured = (
|
|
paymentCollections: AdminPaymentCollection[]
|
|
) =>
|
|
paymentCollections.reduce((acc, paymentCollection) => {
|
|
acc =
|
|
acc +
|
|
((paymentCollection.captured_amount as number) -
|
|
(paymentCollection.refunded_amount as number))
|
|
return acc
|
|
}, 0)
|
|
|
|
export const getTotalPending = (paymentCollections: AdminPaymentCollection[]) =>
|
|
paymentCollections.reduce((acc, paymentCollection) => {
|
|
acc +=
|
|
(paymentCollection.amount as number) -
|
|
(paymentCollection.captured_amount as number)
|
|
|
|
return acc
|
|
}, 0)
|