How to retrieve the order id during the payment process

Topic summary

Goal: obtain the order ID and order data when a custom payment app processes a checkout payment. The payment request payload from Shopify (per linked docs) contains no order information.

Multiple developers asked for a workaround or official method. No direct solution was shared by others.

Latest update/constraint: it’s not possible in an approved Shopify payment app due to permission (scope) restrictions. Shopify only approves payment-app-specific scopes (API permissions): write_payment_sessions, write_payment_gateways, read_payment_gateways, read_payment_sessions.

A developer reports that using the read_orders scope and webhooks can retrieve order data during development, but the app will not pass Shopify’s approval with that scope. They had to remove it.

Outcome: there is no approved way to access the order ID at payment time for payment apps under current policies. Status: unresolved from a feature perspective; effectively blocked by platform limitations, with no endorsed workaround.

Summarized with AI on January 9. AI used: gpt-5.

Hello,

I built a payment app that add a new payment method on the merchant’s checkout page. When the customer would place an order using my payment method, I want to get the id and data of that order. But when Shopify sends the payment request to my payment app, there’s no any information relating to order (refer request sample )

Is there any way to get the order id that is created with my payment method? Please help me!

5 Likes

Can someone provide assistance?

Thanks!

1 Like

Hey @EddieLuong Did you find any solution for this?

Is there a way to do that?

@Manish_G @EddieLuong Did you find any solution?

This is not possible. As Shopify doesn’t approve any scopes other than payment app scopes during app approval.

Only allowed scopes:
write_payment_sessions,write_payment_gateways,read_payment_gateways,read_payment_sessions

I developed the app using read_order scope and got data using webhooks. It was working but Shopify didn’t approve the app. So I had to revert the code.