#CodyL - ACH Debit
1 messages · Page 1 of 1 (latest)
Sure cus_LXOKO7GuA2h1nm
The bank account is ba_1KqJYcKUbaLgbekLQVUq3Q5w
and I used seti_1KqJxUKUbaLgbekLYpv7zSew to add a mandate and convert it to a payment method, but I must have screwed something up as it doesn't return when I query https://api.stripe.com/v1/customers/cus_LXOKO7GuA2h1nm/payment_methods?type=us_bank_account
I think that is due to the fact you used the Sources API. The bank account shows up in the customer.sources property when i look at it.
well I have thousands of accounts created via the sources api
and this is supposed to be the way to migrate them to the payment methods api
from what I'm reading
it retreives fine via https://api.stripe.com/v1/payment_methods/ba_1KqJYcKUbaLgbekLQVUq3Q5w
Have you created a SetupIntent or PaymentIntent with this bank account?
but not via the list on the customer.
seti_1KqJxUKUbaLgbekLYpv7zSew
which shows succeeded with a mandate attached
wondering if this isn't a bug
this is part of my migrating all of our cards and ach debits to the payment_intents which requires attaching a mandate to the ach debit bank accounts in order to use them
Okay, that makes sense
But the issue appears to be that they don't return when querying the customer for the payment method type
yeah imagine customer hits their online payments page (we are a phone company that sells them monthly service). I need to query their customer object for their attached payment methods to show them their options for how to pay
I am curious, what happens if you use the List Payment Methods by Customer API?
https://stripe.com/docs/api/payment_methods/customer_list
I think that is what I'm already using right?
what I get is
{
"object": "list",
"data": [],
"has_more": false,
"url": "/v1/customers/cus_LXOKO7GuA2h1nm/payment_methods"
}
it does seem to return with https://api.stripe.com/v1/payment_methods?customer=cus_LXOKO7GuA2h1nm&type=us_bank_account
seems buggy....
{
"object": "list",
"data": [
{
"id": "ba_1KqJYcKUbaLgbekLQVUq3Q5w",
"object": "payment_method",
"billing_details": {
"address": {
"city": null,
"country": "US",
"line1": null,
"line2": null,
"postal_code": null,
"state": null
},
"email": null,
"name": "CodyL",
"phone": null
},
"created": 1650384338,
"customer": "cus_LXOKO7GuA2h1nm",
"livemode": false,
"metadata": null,
"type": "us_bank_account",
"us_bank_account": {
"account_holder_type": "company",
"account_type": "checking",
"bank_name": "STRIPE TEST BANK",
"fingerprint": "sxWJncY1c182L0sp",
"last4": "6789",
"routing_number": "110000000"
}
}
],
"has_more": false,
"url": "/v1/payment_methods"
}
Hmmm that does seem like inconsistent behavior. I'm going to raise that internally
I suppose in the meantime I can use the https://api.stripe.com/v1/payment_methods query passing the customer and type
That does seem to do the job, I would just expect the PM by Customer list to do the same thing
it does say at the top of that page to use the Customer object
Complete reference documentation for the Stripe API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries.
For listing a customer’s payment methods, you should use List a Customer’s PaymentMethods
But probably an accetable workaround for right now
I'll give that a shot and set a reminder to check if the other call is fixed in a couple weeks.
@wispy spruce There seems to be another issue here too
I can't update the metadata on a payment method which has been created from a sources bank account
See request: req_GGWjAJGCNgsPPH
kind of kills the ability to migrate
That does appear incorrect and likely be an issue
Thank you for calling this to my attention
No problem. Looks like I might be putting this migration to sleep for a few weeks. Is there any way to be notified when these are addressed?
If you write in to Support and use my screen name I can retrieve that ticket and respond with more details when I have them
Thank you for calling this out.
No problem. I know this is a new part of the Payment Methods api
figured I might run into some early issues
our existing sources integration will work until this is addressed
Possibly related but after I tried to update the meta data that ba_1KqJYcKUbaLgbekLQVUq3Q5w is not returned by either of the search calls.
but can still be queried directly via https://api.stripe.com/v1/payment_methods/ba_1KqJYcKUbaLgbekLQVUq3Q5w
anyway seems like something fundamentally broken there. I submitted a support issue with your screen name. thanks for the help and I think this can be archived
Thanks again, these details are really useful