Magento 2.4 reseller accounts - magento2

I want to have store customers linked to a reseller, meaning that every reseller can have a different set of prices, distributors, and credentials to connect to the distributors APIs. What would be the best approach to have this feature in Magento 2.4?

Related

Integrating online payment in app or website using UPI

I am trying to find an online solution for a multi-vendor application. In this application, there will be multiple vendors and multiple customers and I want to add a feature for vendors to collect payment on their UPI id from customers.
I am thinking that the vendor will give us their VPA of UPI id and I will save that VPA address directly in the database when the customer will try to pay that vendor I will retrieve VPA from the database and make a payment to that vendor.
I tried razor pay, cash-free, PayU, Paytm SDK but no one has the solution. earlier I used this library https://pub.dev/packages/upi_india but it is not working now.
There is one solution I found
https://developers.google.com/pay/india/api/otherapis/omnichannel/initiate-payment
But for this user's have to have google pay installed on their phone
and one other solution is Razorpay routes
https://razorpay.com/docs/payments/route/ But I don't want to integrate this because for using this feature we need the vendor's bank account details and I don't want to collect bank account detail from the vendor.
Any answers or links to this solution are very much appreciated.
Thank you

Money transfer api for mobile apps?

I'm developing a flutter app, and I've come across different payment solutions such as
squareup payments, paystack and stripe. However all these systems essentially require you to setup an account with their services, then you can only charge money to those accounts.
What I'm looking to do is enable monetary transfers between users on the app, and simply charge a fee on top. What are the best practises for such a system? So a callable api in the vein of Venmo, or Square Cash that I can call from code when I get the details I need.
Should I create my own backend for this? If so what should I use? (I'm primarily working in golang, but I'm flexible)
Or is there a nifty flutter plugin or API gateway that I can just use directly from the mobile client?
There are various services for doing such a thing,
Usually at my firm we would have our .NET rest server get the payment request from the client, and later charging it with some service that is verified for payments at our country.
Note:
You will be needing to associate with that service and there will probably be fees.
Depanding on your country, you most probably MUST NOT store the payment data on your own server unless you have a certificate for doing such a thing (security standerts etc.)
If this is a private project I would suggest researching about migrating with PayPal since you won't need to handle security and the payment would go through them.
May be helpful: paypal developers

Paypal Rest API on webshop provided to third party companies

Background
We are developing a webshop that we sell to other companies.
The companies hosts the webshops and sell their products on their own servers.
The webshop uses the Paypal Rest API for the customers to make payments.
https://developer.paypal.com/docs/api/
To activate Paypal as a payments method the companies provide their Paypal details in the webshop admin area.
How we do it now
Right now the companies need to create a Paypal Developer account, and then create a new App in developer.paypal.com to get their own Client ID and Client Secret Code.
They then provide their Client ID and Client Secret Code in the webshop admin area.
Question
Is this the correct way to do it?
We think it feels a bit strange to tell our customers (the companies) to create "Developer Accounts" in Paypal, when they are not actually developers, just webshop owners selling their products.
I found this information about setting a parameter called "payee", which means you can set the receiver of the payments, see: https://devblog.paypal.com/setting-payee/ and https://developer.paypal.com/docs/api/payments/#definition-payee
Is it possible to use the "payee" as a solution instead, like this?:
We as developers of the webshop have a Paypal developer account, and provide our Client ID and Client Secret Code, which are then used in all our customers webshops? Then the companies would only need to provide their Paypal Account Email in the webshop admin area, which is then used as the "payee" parameter.
Is this a good and ok solution? Or is the same App, Client ID and Client Secret Code not allowed to be used for multiple companies and their webshops? How can we solve this then?
Thanks!
This is solved after communication with PayPal support.
This is some information from the communication that answers my questions:
"Do not use then the payee field as you will be able to deal with all the transactions created, that you don't want as you are an external "actor" in the payment process."
"About creating a developer account and App it does not mean that they are developers. The developer portal is a tool that allow to manage the Apps and deal with Sandbox test accounts. It is the only way to create an App."
So the conclusion is that we are doing it the correct way today, which is like this:
"Right now the companies need to create a Paypal Developer account, and then create a new App in developer.paypal.com to get their own Client ID and Client Secret Code.
They then provide their Client ID and Client Secret Code in the webshop admin area."

One application to interact with multiple paypal accounts

I have a bunch of customers who would like to create and send invoices directly from my web application (without logging in to theirs paypal account). Is that possible to create paypal api which will manage invoices for different paypal accounts (not mine). Of course my application will hold their account data.
Thanks.
You could have your users manually grant API permissions from their PayPal account for your application to make API calls on their behalf.
Once they've done that, you would include the SUBJECT parameter with their PayPal account ID or email address as the value, and you would continue to use your own API USER, PWD, and SIGNATURE. This way the application calls would be made with your account, but any action that occurs would happen on the 3rd party account.
If you want to make this a little easier on your users (and yourself since you won't have to support them so much) you can use the Permissions API. This allows you to setup a way within your application for users to approve your application to make the calls it needs to make, and then you would be working with OAuth tokens instead of their email/account ID.

How to create Buy Now buttons for different merchants in paypal

I have a Digital Service Providing website. This service allows user's customers to take appointments for the services user is providing. Now the customers must be able to Pay for the service before confirming the appointment.
My requirement is each user of my website have different services and different price for it.
They have already configured these services on my web application. I have all details in the database.Now how can i integrate Pay Now buttons for this scenario? I do not want the user to configure the service price again on Paypal account?
There are a number of ways you can handle that. Do you have a shopping cart system setup on the site so people can browse and add service items and checkout all at once, or how exactly is that setup?
If you're tracking items and order price within a shopping cart you can use Payments Standard Cart Upload Method to easily gather order details and send the user over to PayPal for payment.
You could also use the Express Checkout API if you prefer web services. If you want to offer credit cards directly (without any PayPal redirect) you could include Payments Pro as well.
If you want to stick with standard buttons, but you want to automate the process, you can use the Button Manager API.