#scuba-connect-paymentmethods

1 messages · Page 1 of 1 (latest)

tawdry leafBOT
primal river
#

Let me know too if it would be helpful to share the site in question

ripe dragon
#

Hello! Just to be clear - you were planning on using Payment Element, right?

primal river
#

This is regarding an existing site - our customer recently enabled additional payment methods, some of which work, like Google Pay, but Affirm does not seem to be, and I'm trying to figure out if that's because it requires additional work.
And yes, the site is using Stripe's Payment Element, as long as my understanding that this is what that is:
paymentElement = elements.create('payment', { layout: 'tabs' });

ripe dragon
#

Yup looks like you're using payment element!

#

If you're already using payment element then I think the only change you'd have to make is collecting the shipping address

primal river
#

So I think that snippet sort of hints that we're not in a position to just start using Affirm without changes. Our call to stripe.confirmPayment right now does not include a return URL

#

Oh wait that's totally wrong, nevermind

#

Still though, at that point in the process we haven't shown the user affirm. Can you offer advice on why Affirm isn't showing up as a payment option?

#

Perhaps this is also relevant, the customer is using a Standard Connected Account. I think I just read that Affirm has to be enabled on both platform and connected...

#

Enabling it also on the platform account did not seem to help

ripe dragon
#

Do you mind sharing the account ID of your standard connected account so I can take a llook?

primal river
#

Sure, one moment

#

acct_1LG4qt2H3QNsqCMy

ripe dragon
#

You're doing direct charges (using the STripe-ACcount header) right? If so, then you. the issue is you haven't enabled affirm on your connected accounts - you only enabled it on your own account

tawdry leafBOT
primal river
#

Okay, perhaps the spot I enabled Affirm in a moment ago wasn't the correct spot. I'll give that a try

#

That page you linked, I don't want to turn on Affirm for all connected accounts. Which seems to be what that is doing:

Affirm is on by default for accounts

ripe dragon
#

Ah, you only want it enabled for that one connected account?

primal river
#

Yes, and I thought previously that we had enabled connected accounts to be able to manage their own payment methods

#

Yea that setting is actually on the same page, "Allow connected accounts to customize their own payment methods from the Dashboard"

placid dock
#

So what's the problem you are trying to solve that you're stuck on? If you want Affirm just for that one account you should ask them to enable it directly in their Dashboard in this case no?

primal river
#

The problem is that they have enabled it, but it's not available

placid dock
#

Can you give concrete information so that we can help?
1/ Exact PaymentIntent id
2/ Exact code creating the PaymentIntent
Then I can have a look

#

scuba-connect-paymentmethods

primal river
#

Okay, so I started a checkout, I have this payment intent ID
pi_3NxZS52H3QNsqCMy1AOKirZ0
And then minus some comments (and using a client secret not just the payment intent ID) this is the code to create the Stripe elements:
`stripe = Stripe(viewModel.stripePublicKey, { stripeAccount: viewModel.stripeConnectedAccountId });
let clientSecret = await paymentIntentPromise;

const appearance = {};

elements = stripe.elements({ clientSecret, appearance });

addressElement = elements.create('address', {
mode: 'shipping',
fields: {
phone: 'always'
},
validation: {
phone: {
required: 'always'
}
}
});
addressElement.mount('#address');

addressElement.on('change', event => this.addressUpdated(event));

paymentElement = elements.create('payment', {
layout: 'tabs'
});

paymentElement.on('change', event => this.checkPaymentMethod(event));

paymentElement.mount('#payment-method');`
I see Credit card and Google pay options, but not Affirm

placid dock
#

thanks let me have a look

#

Affirm has a minimum amount, your amount is below

#

We have a tool in the Dashboard where you can pass it a PaymentIntent id and it explains why some payment methods are ignored

#

trying to figure out how you access it give me a few minutes

primal river
#

Oh that's interesting... We use a placeholder amount because the order options haven't been selected yet - leading to a different amount before placing the order

#

And yea if you could share that tool that would be awesome

placid dock
#

But yeah you need to take into account the specificities of each payment method. Some have min/max amounts, other have specific currencies, others don't support setup_future_usage, etc.
Hope this helps!

primal river
#

Does that tool exist for connected accounts?

placid dock
#

It's the same tool, you can view their test account's Dashboard too

primal river
#

Ahh probably using that "View dashboard as this Account" thing?

placid dock
#

yeah

#

or try the same on your own account, it would have failed there too

#

What I often do when I hit this: try passing payment_method_types: ['affirm'] instead of automatic_payment_methods

#

that way you make sure that Affirm does work and here you would have received an API error

primal river
#

Don't have any payment intents for our platform account or a way to quickly make one.
Thank you very much though, I think I can address this now

placid dock
#

Don't have any payment intents for our platform account
it should take you 30s to write the code needed to test this on your own account though. If not you really should invest a couple hours to get there

#

I play with the API a lot to help devs here so I have a folder with many scripts that test specific features end to end

#

Create a PaymentIntent, create and confirm, update, delete, as many combinations as I can think of, I have thousands of them at this point 🙂