Skip to content
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

Make refunds stoppable #99

Open
peterukena opened this issue Nov 14, 2018 · 2 comments
Open

Make refunds stoppable #99

peterukena opened this issue Nov 14, 2018 · 2 comments
Labels
Feature New feature proposals.
Milestone

Comments

@peterukena
Copy link

When using the RefundPaymentGenerated event to execute any refund-process based code it is not possible to roll back a refund.

Imagine talking to some form of API after a refund was initiated which decided that refund is not good. There is no way to undo that refund payment, which means it remains in the system even though other factors have decided it should not exist in the first place.

CC @Zales0123

@Zales0123 Zales0123 added the Feature New feature proposals. label Nov 14, 2018
@bartoszpietrzak1994
Copy link
Contributor

We've thought about replacing Process Managers for both CreditMemo and RefundPayment with a saga for whole refund process and therefore implement rollback mechanism for reverting a refund.

I can imagine triggering those mechanisms manually from admin panel once the refund turns out to be not satisfactory.

See this issue: #91

@peterukena
Copy link
Author

You have to think about online payments. Either Payum as a barrier or any manually implented gateway like we have.
When the refund is created, some sort of trigger needs to occur on which you can execute custom logic which can decide to not accept/complete that refund payment.

@Zales0123 Zales0123 added this to the v1.1.0 milestone Jun 26, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature New feature proposals.
Projects
None yet
Development

No branches or pull requests

3 participants