-
Notifications
You must be signed in to change notification settings - Fork 71
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[RFC] It's not possible to distinguish between refund requests; Incorrect DB design? #193
Comments
Hello Dmitri! First of all, thank you for your engagement in this plugin. It's great to see how much goodwill you can get from people in the open-source world :)
I see that you feel this plugin well, so if you would like to open some fixes that will be more than welcomed 🎉 I hope we would find some more energy to put in this (and other) plugins in the nearest future. Thanks a lot! 🚀 |
…123) This PR was merged into the 1.0-dev branch. Discussion ---------- Partially fixes #193 Time has shown, such a low coupling was not the best approach from the technical and DX point of view. We still have time to change it, before the stable release, so let's do it :) If in the future we decide it's reasonable to lose this coupling (and we can justify it and implement it properly), it would be easier to be done without major BC breaks 🖖 🚀 Commits ------- 19b78a2 Change order number to order on Refund 14df4ff Change Refund mapping to handle order relation f290126 Fixes in tests and services 119dee3 UPGRADE informations and final fixes
…efundPayment (GSadee) This PR was merged into the 1.0-dev branch. Discussion ---------- Partially fixes #193 Similar to #306 Commits ------- 91173ec [RefundPayment] Change order number to Order relation on RefundPayment eee327c [RefundPayment] Add migration for changing the order relation d278a5d [RefundPayment] Add note in UPGRADE file about changing the order relation 545d719 [Behat] Fix FailedRefundPaymentFactory after changing the order relation 8a526ab [RefundPayment] Fixes after static analysis f464e20 [RefundPayment] Adjust DefaultRelatedPaymentIdProvider after changing the order relation 371a21c [RefundPayment] Adjust routing and twig after changing the order relation 4b25791 [RefundPayment] Introduce custom repository
Hi,
RefundPlugin doesn't not track refund requests, only result. One may think, that
Entity\Refund
will contain multipleEntity\RefundUnit
and therefore I will always know which OrderItemUnits were refunded and when, but it's not the case though,Entity\Refund
is mapped to refunded unitI expect to have some kind of
Entity\RefundGroup/Entity\RefundRequest
withissuedAt
, which will tie togetherRefund
,RefundPayment
and possiblyCreditMemo
.It's also strange to me, that
RefundPayment
andRefund
don't have doctrine relationship (Unidirectional at least) toOrder
and useorder_number
to manually track the relation, whileCreditMemo
have the doctrine relationship.I would expected this to be the other hand around, like InvoicingPlugin\Invoice only tracks
orderNumber
Another point is that
CreditMemo
should be generated only afterRefundPayment
is confirmed. I would guess there are various financial flows, where CreditMemo can be generated before the refund executed, but for simplicity sake it should the same as for Invoice, which is generated only after order is paid.And usage of messenger for
CreditMemo
and notCreditMemoPdf
is not called for: it will never be executed async and adds complexity of messenger message wrapping, like critical error will be lowered to error level without execution flow stop, therefore overall refund state will be broken without no way of solving it.The text was updated successfully, but these errors were encountered: