Hi @lan.dang
Sorry for my late reply. It took some time to detect the cause of the problem. We figured out this with @maliming. It seems like this is caused by https://github.com/abpframework/abp/issues/8740. As a workaround, you can remove app.UseUnitOfWork() from your WebModule. When the related issue is resolved, you can enable it back.
Hi,
For point 1 -> There are minor differencese in some modules which you can see module detail page on https://commercial.abp.io/modules For point 2, unfortunately we don't have such a document but there are minor differences.
Hi @KuldeepRathi
Payment module's public UI, the one your customers make payment, is available only in MVC version. You can use Angular UI for your admin app and MVC for the public website.
There are minor differencese in some modules which you can see module detail page on https://commercial.abp.io/modules
Hi **@lan.dang **
Sorry for my late reply. Could you also tell me how do you start the payment process on your app ? I started the app but it only contains PaymentSucceed page. I couldn't find a page which initiates the payment process.
Also, your app is missing the initial migration, I have removed and re-added the migration to run the app.
Thanks,
Hi,
Payment module shouldn't recirect to your final page if status is different than Succes. Is it possible to share your project with us via email ? If so, could you share it with info@abp.io including the number 1484 ?
I can take a look at it for you and fix the problem.
Thanks,
Hi @lan.dang
You can just inject IPaymentRequestAppService into your page and use its GetAsync method to retrieve the related payment request. Then, you can check its status field.
Since customers can visit the same URL (for example mywebsite.com/PaymentSucceed?PaymentRequestID=xxx-xxx-xxx), you also need to store in your app if a given PaymentRequestID is used before or not.
Hi,
You need to configure PaymentOptions as shown below;
Configure<PaymentWebOptions>(options =>
{
options.RootUrl = configuration["AppSelfUrl"];
options.CallbackUrl = configuration["AppSelfUrl"] + "/PaymentSucceed";
});
If you provide RootUrl, this error will go away. If you provide CallbackUrl, payment module will redirect successfull payments to this URL. Then, if you are going to do any operation on this page (PaymentSucceed or a custom page you will define), please use IPaymentRequestAppService to get the payment request and check its status as well.
Please also consider handling the case when users want to use same payment request more than 1 time.
Hi @lan.dang
Sorry for my late reply. For the items you want your customers to purchase, yes, you need to create a view. You can check this sample https://docs.abp.io/en/commercial/latest/modules/payment#sample-usage
Hi @lan.dang
Payment module doesn't support Angular UI at the moment. But, if you are using Payment module in an ASP.NET Core app, you can initiate a payment request from your Angular app and redirect customer to the Payment module (the one in your ASP.NET Core app). If you provide a CallbackUrl on your Angular app, see https://docs.abp.io/en/commercial/latest/modules/payment#paymentweboptions, payment module will redirect the customer to your Angular app after a successfull payment and you can get the PaymentRequest record using IPaymentRequestAppService, chck its status and do the required action on your Angular app.
Hi,
We will check why you are getting this error. I have added shobasundarrajan@genixtec.com to your organization as a deevloper.