Files
medusa-store/packages/admin-next/dashboard/src/lib/payment.ts
Riqwan Thamir fa44e3f5a8 feat(dashboard,core-flows,js-sdk,types,link-modules,payment): ability to copy payment link (#8630)
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
2024-08-20 10:30:17 +00:00

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)