Shopify Offsite Payment extension

I am trying to build a Shopify offsite Payment extension and using this documentation. I am a partner along with the shopify and I am finding myself stuck after going through the first 2 steps in the documentation as I am not sure exactly how to proceed further. I am making a extension which my merchants will install on their stores so that they can pay using my checkout page. I am the payment provider as well so I process all the transaction from my backend which is java totally different API call. So how can I proceed with the configuration file of the extension.toml file and after that how would I proceed furter? The document confuses me a lot exactly.

Hi Nisarg,

In order to use the payments extension API you’ll need to be an approved by our payments team. Currently this is only available either by contacting your Plus Account Manager (if you’re on the Shopify Plus plan) or by invite from the payments team, see: Get approved for payments

Yes, I understand that in order to request access, I need to create an app, build an extension, configure it, test it locally, and then submit it for review. This process is outlined in the documentation for offsite payment extensions.

I have already created the app and configured it, but I am facing challenges with local testing. Additionally, I am both the payment provider and the one processing the payments on my end. For this reason, I need to include extra parameters while processing transactions for every merchant who installs my app. However, I’m unsure how to implement this, as the documentation does not explain how to take extra parameters, which extension to use to create fields for merchants to enter that information, or where this data should be stored.

These extra parameters are crucial for processing transactions. On top of this, I noticed that the code examples shown in the documentation are nowhere to be found when I create the app or the extension. I had to manually write and add that code by creating the necessary files, as instructed in the documentation. While the documentation suggests creating an extension-only app, it seems that if I want to send requests, add a UI, or perform other tasks, I also need a Remix app.

All of this is very confusing, and I’m struggling to understand how to proceed. Could you please clarify this process and guide me on how to set everything up correctly?