Unterstützt das Shopware6 PayPal Plugin auch die automatische Rückbuchung der Zahlungen bei PayPal?
Wenn Bestellungen die mit PayPal bezahlt wurden und storniert werden, das diese Zahlungen automatisch über PayPal an Kunden zurück gebucht werden, und nicht immer händisch bei PayPal für die Rückbuchung eingegeben werden müssen.
Danke für das Feedback.
Grüße aus Münster
René Klostermann
Hallo @Shirtlabor
dies ist zur Zeit noch nicht automatisch möglich. Erstell dazu gerne ein Ticket, dann können wir uns das mal anschauen: Shopware Issuetracker
Viele Grüße aus Schöppingen
Michael Telgmann
Hallo Herr Telgmann,
Danke für Ihre Info. Machen wir und bitte mit möglicher Zeitangabe,
da wir das Plugin ansonsten dafür selber schreiben.
Hallo @Shirtlabor
dazu kann ich dir leider keine Zeitangabe machen
Vermutlich nicht sehr zeitnah. Wir haben aber bereits Ideen das zu generalisieren. Dazu gibt es auch zwei Pull-Requests auf GitHub:
shopware:trunk
← pickware:pickware/add-refund-interface
opened 02:56PM - 11 Jan 21 UTC
<!--
Thank you for contributing to Shopware! Please fill out this description t… emplate to help us to process your pull request.
Please make sure to fulfil our contribution guideline (https://docs.shopware.com/en/shopware-platform-dev-en/contribution/contribution-guideline?category=shopware-platform-dev-en/contribution).
Do your changes need to be mentioned in the documentation?
Add notes on your change right now in the documentation files in /src/Docs/Resources and add them to the pull request as well.
-->
## This PR is a first proposal up for community discussion. The UI and design aren't final and subject to change.
### 1. Why is this change necessary?
Currently each payment plugin handles refunding on its own, creating a wide variety of custom api endpoints, parameters and administration extensions. This makes creating refunds via an API (e.g. from an external system such as an ERP) extremely difficult as the api client would need to know each individual custom endpoint of each payment method and their respective parameters as well as any meta data the plugin might need to actually refund the payment.
As we discussed with @OliverSkroblin, @mitelg and @ssltg when planning this feature, this is a preliminary version of the PR. We would like to get feedback from the community, in particular from other people who build payment plugins for Shopware 6. Because of this, this PR does not have tests yet. The UI is also more of a draft and we hope to get some input from Shopware's design team on this.
There is a companion PR which adds support for this feature to the PayPal Plugin here: https://github.com/shopwareLabs/SwagPayPal/pull/14
### 2. What does this change do, exactly?
This PR adds a simple standardized api and interface to refund any arbitrary order as long as the payment plugin implements the refund interface, similar to how payment handlers work. Additionally, an `OrderTransactionCapture` entity is introduced to standardize the various representations of payment captures, so that refunding specific captures is possible as well.
### 3. How it works
#### 1. Implementation
The payment plugin adds a `PaymentRefundHandler` class, which implements the `PaymentRefundHandlerInterface`, to its payment method. This handler will be used to create refunds for the payment method.
#### 2. On plugin install and update
The payment plugin uses the `upsertPaymentMethodRefundConfigFromYaml()` method to upsert any additional options it might require to create refunds. This can include things like a description or a reason.
#### 3. During the payment process/flow
The payment plugin creates `OrderTransactionCapture`s whenever a capture is created, and updates its state accordingly. The `OrderTransactionCapture` entities are used later on to reference a payment methods capture in a standardized way so that we can refund them.
#### 4. When creating a refund
The `PaymentRefundHandler`s `refund()` method uses the supplied `OrderRefund` to retrieve the amount to refund, the capture to refund (if there is one supplied) and any additional options specific to the payment method stored on the `OrderRefund` to create the refund and update its state accordingly.
https://user-images.githubusercontent.com/5189997/103900772-7cbffb00-50f8-11eb-87c9-832212485df3.mov
### 4. Checklist
- [ ] I have written tests and verified that they fail without my change
- [x] I have squashed any insignificant commits
- [ ] I have created a [changelog file](https://github.com/shopware/platform/blob/master/adr/2020-08-03-Implement-New-Changelog.md) with all necessary information about my changes
- [ ] I have written or adjusted the documentation according to my changes
- [x] This change has comments for package types, values, functions, and non-obvious lines of code
- [x] I have read the contribution requirements and fulfil them.
shopwareLabs:master
← pickware:pickware/add-refund-handler
opened 02:55PM - 11 Jan 21 UTC
This PR adds a payment refund handler to the paypal payment method. This allows … payments created with order transaction captures to be refunded through Shopware.
This is companion PR to the Shopware PR which adds support for refunding through Shopware: https://github.com/shopware/platform/pull/1589
Because this is a preliminary version of the PR, it does not have tests yet.
Viele Grüße aus Schöppingen
Michael Telgmann
gaxweb
6. März 2023 um 13:38
5
Ist hier mittlerweile was für den Flow Builder geplant? Aktuell scheint das Paypal Plugin keine Events/Aktionen mitzubringen, wie z.B. „Gutschrift auslösen“.
Wir nutzen auch PayPal für unser Online-Bestellsystem (DeliveryWare) bei uns ist das Problem, dass die Restaurants versäumen die Lieferung auf inaktiv zu stellen und bei Bestellungen diese kurzerhand stornieren. Wäre natürlich echt super, wenn man den Schritt für die Rückbuchung automatisieren könnte.