Re: The shop parameter of redirect url is set to undefined when using Billing API.

Solved

The shop parameter of redirect url is set to undefined when using Billing API.

yoshixj
Tourist
7 2 2

Hey,I develop paid shopify app.

When I call appSubscriptionCreate mutation and then confirm subscription, app redirect to "https://app-url.com?shop=undefined".

Why is shop query parameter undefined?

 

This is example of appSubscriptionCreate mutation request.

curl 'https://APP_URL.herokuapp.com/graphql' \
-H 'Connection: keep-alive' \
-H 'Pragma: no-cache' \
-H 'Cache-Control: no-cache' \
-H 'sec-ch-ua: "Chromium";v="92", " Not A;Brand";v="99", "Google Chrome";v="92"' \
-H 'accept: */*' \
-H 'X-Requested-With: XMLHttpRequest' \
-H 'sec-ch-ua-mobile: ?0' \
-H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwczpcL1wvc3RvcmUteW9zaGl4ai5teXNob3BpZnkuY29tXC9hZG1pbiIsImRlc3QiOiJodHRwczpcL1wvc3RvcmUteW9zaGl4ai5teXNob3BpZnkuY29tIiwiYXVkIjoiMjlkM2Q4NTY2MDcxMjljOGU3MDJhMGJlYWZmNzRmNjYiLCJzdWIiOiI3MzIxMzQ3NzAzMCIsImV4cCI6MTYyODUxNzg3NywibmJmIjoxNjI4NTE3ODE3LCJpYXQiOjE2Mjg1MTc4MTcsImp0aSI6IjMxOTllM2RhLTA1YTMtNDg2ZS1iMzNjLWU1YjI0NTBiNjVlYiIsInNpZCI6IjEwNWEwM2VmZDA0NDgxN2U5YWMyMzdhZGJkODFjYjgyNWQ0MWZkYzExYzZmYWQwZmY4NzEzNTFhODU4MTM0Y2YifQ.ZghSl4hLXH3Lwg4QqjHTthtw6FW9RXo6PATZ6vuKfpA' \
-H 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36' \
-H 'content-type: application/json' \
-H 'Origin: https://APP_URL.herokuapp.com' \
-H 'Sec-Fetch-Site: same-origin' \
-H 'Sec-Fetch-Mode: cors' \
-H 'Sec-Fetch-Dest: empty' \
-H 'Referer: https://APP_URL.herokuapp.com/plan?shop=store-yoshixj.myshopify.com' \
-H 'Accept-Language: en-US,en;q=0.9,ja;q=0.8' \
--data-raw $'{"operationName":"appSubscriptionCreate","variables":{"name":"月額プラン","trialDays":7,"returnUrl":"https://APP_URL.herokuapp.com?shop=store-yoshixj.myshopify.com","test":true,"lineItems":[{"plan":{"appRecurringPricingDetails":{"price":{"amount":8,"currencyCode":"USD"},"interval":"EVERY_30_DAYS"}}}]},"query":"mutation appSubscriptionCreate($name: String\u0021, $trialDays: Int\u0021, $lineItems: [AppSubscriptionLineItemInput\u0021]\u0021, $returnUrl: URL\u0021, $test: Boolean\u0021) {\\n appSubscriptionCreate(\\n name: $name\\n lineItems: $lineItems\\n returnUrl: $returnUrl\\n test: $test\\n trialDays: $trialDays\\n ) {\\n appSubscription {\\n id\\n name\\n status\\n test\\n __typename\\n }\\n confirmationUrl\\n userErrors {\\n field\\n message\\n __typename\\n }\\n __typename\\n }\\n}\\n"}' \
--compressed

 

 

Accepted Solutions (2)

yoshixj
Tourist
7 2 2

This is an accepted solution.

I tried it today,  redirect to `https://STORE_URL/?charge_id=23604658342&shop=STORE_NAME`  after the payment is confirmed.

How is the redirect url determined?

 

This is capture  of phenomenon.


https://gyazo.com/77afdc4cb42e1d170a3d2133ca663509

View solution in original post

yoshixj
Tourist
7 2 2

This is an accepted solution.

This Problem was fixed by downgrade shopify-app-bridge version 2.0.3 to 1.30.0.

This cause is not providing host parameter from shopify when redirecting after billing was confirmed.

So, I decide to downgrade shopify-app-bridge version 1.30.0  host parameter is not required from 2.0.3 host parameter is required anytime.

View solution in original post

Replies 2 (2)

yoshixj
Tourist
7 2 2

This is an accepted solution.

I tried it today,  redirect to `https://STORE_URL/?charge_id=23604658342&shop=STORE_NAME`  after the payment is confirmed.

How is the redirect url determined?

 

This is capture  of phenomenon.


https://gyazo.com/77afdc4cb42e1d170a3d2133ca663509

yoshixj
Tourist
7 2 2

This is an accepted solution.

This Problem was fixed by downgrade shopify-app-bridge version 2.0.3 to 1.30.0.

This cause is not providing host parameter from shopify when redirecting after billing was confirmed.

So, I decide to downgrade shopify-app-bridge version 1.30.0  host parameter is not required from 2.0.3 host parameter is required anytime.