You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Redesign the EShop.Payments module to decouple from the PaymentService module, so it can be compatible with the Volo.Payment module and more.
We follow these steps:
Create payment provider submodules to support different payment modules:
EShop.Payments.Provider.EasyAbpPaymentService
EShop.Payments.Provider.VoloPayment
These submodules subscribe to the ETOs they recognized then we can pay for orders with different payment modules. Installing multiple payment modules is also good.
Simplify Payment and Refund aggregates:
Remove most properties and add a new property named PaymentModuleName. The null value of PaymentModuleName means using the default, which avoids making a breaking change).
Remove the PaymentItem and RefundItem entities, record them with ExtraProperties.Items.
Don't change the IRefundAppService and IRefundAppService interfaces but invoke the payment and refund methods implemented by the payment provider submodules mentioned above.
The text was updated successfully, but these errors were encountered:
Redesign the
EShop.Payments
module to decouple from thePaymentService
module, so it can be compatible with theVolo.Payment
module and more.We follow these steps:
Payment
andRefund
aggregates:PaymentModuleName
. The null value of PaymentModuleName means using the default, which avoids making a breaking change).PaymentItem
andRefundItem
entities, record them withExtraProperties.Items
.IRefundAppService
andIRefundAppService
interfaces but invoke the payment and refund methods implemented by the payment provider submodules mentioned above.The text was updated successfully, but these errors were encountered: