#connect-paymentmethod-dashboard

1 messages · Page 1 of 1 (latest)

polar sealBOT
polar imp
#

hi koopajah. i am so lost

willow swan
#

Nothing is breaking, you literally went and changed the feature the other day with me

polar imp
#

yes i know

willow swan
#

You went and said "yep I want them to pick whatever paymeht method they want" and I told you "hey we're even working on a feature in the future that lets you see all of this in the API and offer a UI to control this for them"

#

connect-paymentmethod-dashboard

polar imp
#

By "any payment they want"

willow swan
#

I don't really get the problem overall though, what you're offering still just works.

polar imp
#

I mean we just look at their account and see their payment methods.

#

Yesterday, I went into the connected account and i see this

#

I am confused.

#

When they are setting payment methods for (1) No platform and (2) Platform A, where do those exist?

willow swan
#

what does that mean "where do those exist"

polar imp
#

I guess I need to now say to customers, "You know how you have to go into your Stripe account and set all those payment methods in livemode and then in testmode, now when you connect to our app, you have to go in and set another subset of those same settings in duplicate after choosing from the dropdown." ????? I don't need/want our customers to have to do this 2x. Do they have to? I am confused. And confused whether our current code is getting their accounts "no platform" settings or those new settings and, when I checked that box, I am not sure how you just created all the "App" payment methods? Did you just set it all to copies of their account settings? Are now everyones payment methods wrong? Or, since I am using account.capabilites I am looking in the wrong place anyway so those are still what they have set for "No platform"

willow swan
#

Can I ask you to slow down a bit? Sorry but you write so many words with ????????????? and all that. I get you're frustrated but I'm here helping you in real time like my whole team does constantly

polar imp
#

On what object are payment methods which we should be using

willow swan
#

On what object are payment methods which we should be using

#

None. In the API this does not exist today

polar imp
#

I have had this feature for 6 months

willow swan
#

I mean last week you maintained all the payment methods for everyone yourself. So again that is not the case. You decided to change this setting with me this week. You can always revert that decision

polar imp
#

stripe_account = Stripe::Account.retrieve(stripe_user_id, {stripe_account: stripe_user_id})
stripe_account_capabilities = stripe_account.capabilities

willow swan
#

None. In the API this does not exist today

polar imp
#

I have a range of stripe accounts from around the world, so I don't want to set their payment methods. Some may want SEPA, some may want Afterpay, Some may want ACH. I don't know what they want. I do want to honor what exists in their Stripe account, but I don't want them to have to set them in duplicate.

#

The problem is that when I checked the box to let them choose their own Payment Methods, you are giving them a duplicate task of setting their Payment Methods twice - once in a dropdown for "No platform" and once in a dropdown for "Our Platform" and I am confused as to where those are set.

willow swan
#

Cool then in that case what you did this week is perfect. You let them control what they want, you set no payment_method_types and then it just works and defaults to what they enabled

polar imp
#

koopajah

#

give me one second

willow swan
#

task of setting their Payment Methods twice - once in a dropdown for "No platform" and once in a dropdown for "Our Platform" and I am confused as to where those are set.
One is for their own integration with their own code and API keys
The other is for the payments from your platform

polar imp
#

That never existed and creates so much friction we will not get people to sign up if they have to do this. 😦

willow swan
#

I mean this has been live for 9+ months and no it doesn't create "so much friction"

polar imp
#

Do you see those three items. One button and two links.

#

The first is a button with a payment link for Credit Card payments.

#

The second is a payment link, linked to text that opens ONLY Afterpay

#

The third is a link for ONLY ACH

#

We do not want to go on ALL the payment methods enabled in the account like Stripe does, we want the user to be able to program specifically into a Payment Link specific payment method(s)

#

Here Bob, I am emailing you a payment link to collect an ACH payment from you. Yes, I have Afterpay and credit cards "enabled" in my Stripe account, but this link I am sending you is to collect an ACH payment from you.

willow swan
#

I understand that, and I explained earlier that you basically can't do that. Or you can try to create one and see if it errors, that's all.

polar imp
#

We have been doing this for 6 months

#

I just had a mysterious Google Pay on it that I couldn't remove.

willow swan
#

we keep running in circles

polar imp
#

Which I now know was being taken from the platform account.

#

I am very confused.

willow swan
#

Before: you did it because you controlled all their payment methods yourself and knew them
After: you changed the settings, now you don't control them, and there's no way in the API to know what is enabled for now, so you can't

polar imp
#

Yesterday, when you created a new bucket of "Our app" payment methods on our connected accounts - do I have to email people and tell them to go in and make sure they match what they want? We they all set to off or copied from their "no platform" account

#

It's on their account.capabilities

willow swan
#

yes you have to tell them to go and set this properly in that section manually for now

#

And this is completely separate from capabilities

polar imp
#

that is how i coded it and it pulls in their payment methods

#

i am so confused

#

stripe_account = Stripe::Account.retrieve(stripe_user_id, {stripe_account: stripe_user_id})
stripe_account_capabilities = stripe_account.capabilities
capabilities = []
stripe_account_capabilities.each do |capability|
capabilities << capability[0].to_s if capability[1] == "active"
end

        # pm_types = ['card']
        pm_types = []
        capabilities.each do |pm|
willow swan
#

Please breathe and take a step back

#

You are trying to do something that is impossible. You are not "confused", you just seem to want it to be possible and it isn't. I told you 4 times.
I know it's not the answer you want, but it is the current state. For a really specific situation: Platforms with Standard accounts who give full control of which payment methods to enable/disable automatically in their Dashboard, it is impossible for the platform to know which of those payment methods are on or off.
I repeat: this is currently impossible to do.

#

I know it sucks, we are actively working on fixing it for platforms in your situation, just it's not ready yet. I am literally involved myself in designing this API currently to solve your needs.

polar imp
#

OK got it

#

koopajah

#

listen

#

taking a step back

#

Stripe has made it very very hard for us to use Payment Links

#

And Payment Links potentially killed our business

#

That is the context

#

Our app generated custom Stripe Checkout code. We literally had a code generator and we created the code and the customer copied and pasted it for v1 checkout for SKUs and Plans.

#

So they you introduced Payment Links that basically killed the value of our app. 😦

#

OK, so how about the customer makes a Payment Link in the fancy new Stripe dashboard with a preview. Great. We will just update that payment link so it works with our app. We will make sure we get our application fee and put a customer redirect on it with a CHECKOUT_SESSION.

#

NOPE!

#

Can't let them make a link in Stripe, Stripe blocks us from updating the link.

#

So.........

#

We have to build an entire UI to create payment links in our UI. Ugh, but OK Stripe, we will do it to save the business.
So here we are.

#

And you guys won't even put a :name attribute on Payment Links so we can match the name of the link in our app to the name in Stripe.

#

That is the context on my end.

willow swan
#

because since launch you literally are the only one that ever asked for those features. I have pushed on your behalf internally already. But no other platform has ever asked

#

Ultimately: you really are misunderstanding the whole thing I think

polar imp
#

Why are these companies using a standard connect strategy?

#

It sounds like they are using one of the other strategies?

#

Honestly, I don't want to have a UI for payment links. Can you just let customers update an existing link they made in your UI to work with our app so we get our fee. That would be much easier!

willow swan
#

The settings in the Dashboard are specifically here for what we call "Automatic Payment Method management". You go in the Dashboard you enable/disable what you want and then whenever you accept a payment (Checkout, PaymentLink, PaymentIntent, etc.) we magically default to the right subset of payment methods based on what you have chosen (and other criteria like currency, min/max amount, etc.).

In your case, you do none of this because you allow creating PaymentLinks that have a specific and manually chosen payment method like ACH Debit only.
In that world it makes no sense to me to want to use Automatic Payment Methods. What you want instead is to rely on Capabilities (which means "what are the allowed to use). And then you show a UI saying "those are all your allowed Payment Methods right now" and you say "which one(s) do you want on that PaymentLink" and then you can use those in payment_method_types and it does just work.

The main limitation/problem you have is your inability to disable "wallets" (Apple Pay and Google Pay specifically). That one we do not have any solution for today unfortunately

#

Can you just let customers update an existing link they made in your UI to work with our app so we get our fee
no plan to do this. Otherwise any bad actor could just update every single existing PL and take a 100% application fee.

polar imp
#

Yeah i get it that's why i built that UI, and yes, that's why I use capabilites even though you keep saying it is impossible and doesn't work. that's exactly what we are doing and why.

willow swan
#

I never said that

polar imp
#

So seems like the way I did it was the best method available and in the future there will be something different in the API. K.

willow swan
#

All I said is: it is impossible for you as a platform to know what payment method they manually switched on/off in the UI.

polar imp
#

????

#

Oh, it is still a capability even if they switch it off you are saying.

willow swan
#

yeah

polar imp
#

So I will tell the current customer to disregard the dropdown with "our app" b/c it doesn't matter what is there anyway?

#

Not that i checked the box, does it matter for the implementation we are doing what they have enabled in the "Our app" dropdown? I think not at all right? I will have to test this since i just do not understand. I will try to like disable Afterpay and see if the Checkout Session opens or fails and toggle it ON/OFF in the "no platform" and "our app". I am still totally lost. I am sorry. Stripe has become too complex for me.

#

If anyone wants to purchase a complex Stripe app please let me know. I'm kind of done.