#bytecrafter_stripe-apps-grandfather-connections
1 messages ยท Page 1 of 1 (latest)
๐ Welcome to your new thread!
โฒ๏ธ We'll be here soon! Typically we respond in a few minutes, but sometimes we might take a bit longer if the server is busy or if you have a particularly tricky question.
โฑ๏ธ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can always start a new thread if you have another question.
๐ This thread will always be available, even after it's closed. You can find it again using Discord's search, or you can save this link: https://discord.com/channels/841573134531821608/1372588503958818897
๐ Have more to share? Add more details, code, screenshots, videos, etc. below.
Hello there
Are you seeing any specific errors?
Can you share a screenshot of what you are seeing?
{
"object": "list",
"data": [
{
"id": "appinst_test_61SYL3lvsg7Wtm6f441RjsqpcqhPfCrY",
"app_id": "tailorapp*AZbTC2VPmAAAAJHI#EhcKFWFjY3RfMVF6WFZuUmpzcXBjcWhQZg",
"app_merchant_id": "acct_1QzXVnRjsqpcqhPf",
"authorized_content_security_policy": {
"connect_src": [],
"image_src": [],
"purpose": ""
},
"authorized_permissions": [],
"channel_id": "appchnl_61SYL2rengOZVbYO841RjsqpcqhPfDuS",
"channel_link_id": "",
"channel_name": "PRIVATE_TEST",
"created_at": 1747297517101,
"install_control": {
"install_control_group": "INSTALL_GROUP_INVALID",
"install_control_reason": "REASON_INVALID"
},
"key_id": "",
"merchant_id": "acct_1QzXVnRjsqpcqhPf",
"mode": "TESTMODE",
"state": "INSTALLING",
"stripe_api_access_type": "OAUTH",
"ui_app_build_version": {
"id": "",
"assets": {},
"bundle_sha256": "",
"merchant_id": "",
"name": "",
"permissions": [],
"public_id": "",
"ui_extension": {
"content_security_policy": {
"connect_src": [],
"image_src": [],
"purpose": ""
},
"views": []
},
"version": ""
},
"visibility": "PRIVATE"
}
],
"has_more": false,
"url": "/v1/tailor/install"
}
this is what I found in installed app listing page where its stuck at installing
{
"id": "fluxmap.dev",
"version": "0.0.2",
"name": "Fluxmap Dev App",
"icon": "./logo.png",
"permissions": [
{
"permission": "charge_read",
"purpose": "Show sales fees"
},
{
"permission": "transfer_read",
"purpose": "Payout analytics"
},
{
"permission": "balance_transaction_source_read",
"purpose": "Fee breakdowns"
},
{
"permission": "application_fee_read",
"purpose": "Application fee analytics"
},
{
"permission": "event_read",
"purpose": "Subscribe to payment events"
},
{
"permission": "webhook_read",
"purpose": "Subscribe to payment events"
},
{
"permission": "customer_read",
"purpose": "Customer analytics"
}
],
"connect_permissions": null,
"allowed_redirect_uris": [
"https://devapi.fluxmap.io/api/auth/stripe/callback"
],
"stripe_api_access_type": "oauth",
"distribution_type": "private",
"sandbox_install_compatible": true
}
this is the manifest file
Thanks, let me take a look at our logs for that and see what I can see
Ah wait it looks like OAuth apps aren't supported yet: https://docs.stripe.com/stripe-apps/enable-sandbox-support#oauth-sandbox-links
How do I test the app on sandbox then?
We Onboard merchants and they will connect stripe
and what we want to get is through webhooks data from the merchants as well as the connected accounts,
we cannot set webhooks on connected accounts ofc, so we need to go through creating stripe app right?
can you please help me out
You would need to test in test mode still until this flow is supported on Sandbox.
can you please point to the document regarding this?
i have a sandbox account within my main account,
how to go to test mode?
and how to install app in test mode?
You want to go to your production Dashboard and then click the dropdown in the top left and hover over the "Switch to sandbox" toggle and you will see a Test mode toggle:
Then you can follow https://docs.stripe.com/stripe-apps/test-app for testing
Thanks will checkout and let you know.
One more question,
for the oauth flow how do I get the client_id here?
previously i was using oauth on sandbox but now we want to use stripe app to validate that,
in our use case how to proceed with oauth?
our plan is to get webhook events from Second tier user
Our App -> Merchant A -> Connected Accounts (when events occuer in connected accounts account it should be caught on the top level.)
Grandfather connections aren't supported for Stripe Apps -- you can't interact with your merchant's Connected Accounts.
but how do platform like revenue get the data from the client merchants?
is it by manual webhook installation on the second tier client?
But with stripe app, i can set webhook on Merchant A and when setting on merchant A (we can select connected accounts no?)
Are you saying you want to be able to create a Connect endpoint on the account your app is installed on in order to listen to Events on that account's Connected Account?
So Merchant A sells scheme to a retailer X, retailer Y etc
retailers are both connected account on Merchant A (right?)
so what we want to give is information that (transaction on Retailer A happened (X amount and you made lets say 5$ (based on your application_fee value)))
Creating webhook on our account works and we get events from merchant A (when the connect their stripe account) meaning they will be connected account on ours (This was what we were doing but in prod use case we can't be like merchant as we are just analytics platform right),
so what is our option here?
Thank you
Creating webhook on our account works and we get events from merchant A (when the connect their stripe account)
This is because the accounts who install your app are connected to your account, similar to how a Platform can receive webhook events from Connected Accounts.
What you cannot do is listen to webhook events on the Connected Accounts that are linked to the account that installs your app.
What is your end goal here?
To show merchants who are onboarding retailers on stripe platform( with certain rate), how much money they are making from stripe buy rate - sell rate - network fees and other fees like
So that we can give them overview how well their merchant onboarding is working
And in your use case, all the payments are occurring on the Connected Accounts (direct charges) so the records are not created on the Platforms?
Yes something like that just better overview
https://revenew.co/ almost similar to this
Okay well I can confirm you cannot receive webhook events from accounts connected to the accoun that installs your app
if they add the webhooks manually then?
I would avoid that approach because it seems brittle to me
I'm trying to consider how you could retrieve the data you are looking for directly from the account that installs your app
On stripe how can i see how my retailers are doing?
lets say I have a hair salon app i solde to 10 barbers
how can i see how much money did i make on stripe dashboard atm?
deducting the network fees, interchange fees etc.
in 1000 transaction at best merchant will make around 25 no? is the sell rate is 2.5 and no other fees apply, but we need to pay lets say 1.5% back to stripe meaning, will only make around 10$ or something like that?
how can merchants see this on stripe dashboard atm?
I cannot speak to what is available already on the dashboard. We don't specialize in Dashboard functionality on this server.
That being said, I think you could achieve this kind of summary data using Balance Transactions (which is also how you would get the data on fees to subtract).
One event you can listen to on the accounts that install your application is the application_fee.created event
This will identify which Connected Account is driving this revenue
But does it give access to lets say transaction of 200$ was made on retailer A (which is connected account on Merchant (who installed the app))?
It will provide the ID of the transaction but you cannot access it
Again, we do not support grandfather connections.
alright, but for read only access we need to go through the stripe app method right?
One more question,
for the oauth flow how do I get the client_id here?
when using stripe apps
For any Extension, the Stripe Apps approach is the recommended approach. To be 100% clear, we would not support grandfather connections in any type of integration (Stripe Apps or Stripe Conenct).
One more question,
for the oauth flow how do I get the client_id here?
can you please answer this?
i was using sandbox account previously for oauth
Now would like to move to stripe app for this as we are using read only access, where can I set the oauth callback for stripe app and client id?
Sorry this isn't clear to me. You should be able to see the client_id in the Apps settings for the account you are using to develop the app
alright thank you.