#mexner-paymentelement-acss

1 messages · Page 1 of 1 (latest)

visual elkBOT
#

Hello! We'll be with you shortly. Below are links to other discussions we've had with you in the past week in case you want to review that information. If your question is related to one of these previous discussions, please provide a comprehensive summary of the current state and what you need help with now. We help many users simultaneously, so a summary allows us to resolve your issue as soon as possible.

  • mexner, 24 minutes ago, 3 messages
  • mexner, 1 day ago, 4 messages
pliant fog
#

@compact crystal What's the question beyond that one link? Please provide a clear summary of your ask and what you need help with

compact crystal
pliant fog
#

Not really, I'm helping a lot of other people and can't go back and read past conversations. Please try and summarize your question clear here.

compact crystal
#

ah, ok

#

using payment elements, I can successfully submit payment elements and create a payment method for CC's. I've now added Canadian ACH as a payment option, and when I try to create a payment method, I'm getting a validation error. The error is too generic and I don't know what is missing since it works for CCs. Any ideas on how I can figure out what information is missing?

    "error": {
        "code": "incomplete_payment_details",
        "type": "validation_error",
        "message": "Please provide complete payment details."
    }
}```

The support person asked for this request ID to investigate further,
https://dashboard.stripe.com/test/logs/req_8ybRZREBP5Whyl
pliant fog
#

mexner-paymentelement-acss

#

I don't understand the request you shared. This doesn't come from your own code and is an internal request made by PaymentElement

compact crystal
#

Yes, PAD.

#

Hmm.. Ok, let me try to find the correct request

pliant fog
#

And the link is a picture of code so I also can't do much with this

#

Are you using the deferred intent flow where you collect payment method details first and then later create the PaymentIntent?

#

If so, ACSS Debit is not supported with that flow

compact crystal
#

Ah... Yes I am using deferred payment intent and realize ACSS Debit is not supported. I am now trying to rebuild our integration to not use deferred intent - so that we can support ACSS Debit.

pliant fog
#
          console.log("loaderror!!!! ", event);
        });```
#

add this to your code, if you do you'd see the error on load

compact crystal
#

sweet - i'll do that now. thank you!

#

btw - is there anything i can do to prevent a thread from auto closing? Or is that just the way it is?

pliant fog
#

That's the way it is. We help in real time here. There are dozens of people who ask for help a day. So it's not a long running private support chat for yourself.

compact crystal
#

makes sense, thanks!

pliant fog
#

sure thing!

#

It's totally fine to ask us new questions in #dev-help, just make sure you're clear about your overall question so that it's all self contained! And try to engage in real time with us here (like you're doing now) when asking for help as we can't just keep threads open for multiple hours waiting

compact crystal
#

👍

pliant fog
#

Do you have any other questions?

compact crystal
#

will this create a request Id in stripe?

                elements,
                params: {
                    billing_details: {
                        name: name,
                        address: {
                            postal_code: postal,
                            country: country
                        },
                        email: email
                    }
                },
            })```
#

this is what is throwing me the generic error "incomplete_payment_details"

pliant fog
#

When you call createPaymentMethod, it's going to call our Create PaymentMethod API https://stripe.com/docs/api/payment_methods/create. But here nothing happens because you are tring to create a PaymentMethod with PaymentElement that is crashed. Like I assume you noticed on the screen nothing appears, you never enter ACSS Debit details or anything like this, so it's normal this is failing

compact crystal
#

yep - 100%, but I can't figure out why.

pliant fog
#

I just explained why already I thought we were aligned

compact crystal
#

b/c of deferred intent?

pliant fog
#

ACSS Debit is not supported in PaymentElement with the deferred flow. So if you try to initialize PaymentElement for ACSS Debit, it will fail, so you get a loaderror which you weren't handling, and then instead of realizing "oh there's no ACSS Debit detials to enter something is wrong" you just confirmed and called createPaymentMethod() which errors saying "well we have no payment method details at all, something is missing, please investigate"
Does that part make sense?

compact crystal
#

Yes.

pliant fog
#

Okay so that's why the error is a bit vague. IT's because it's purely a dev error. So really if you use the deferred flow (which is fine to use) then you just can't use ACSS

compact crystal
#

yep - i'm trying to learn how to undo deferred flow

pliant fog
#

ACSS Debit is extremely hard to use because that payment method comes with extremely strict rules around mandate collection for example and you have to provide a lot of information upfront on the PaymentIntent creation. My advice is to just not bother with ACSS if you want to use the Deferred flow which seems to work for you already

compact crystal
#

yea - I'm on the same page as you; but our company is expanding into Canadian territory and I have to learn how to support ACSS. And I realize it's a lot of work to implement.
I think a good question to help me reframe all of this is, how do I undo deferred intent?
I just don't have context of how to implement outside of deferred intent. Is there a support page showing a "normal" way?

pliant fog
#

you basically have to flip the order over completely

  1. Create the PaymentIntent server-side and get a client_secret
  2. Render PayemntElement client-side
compact crystal
#

gotcha - this really helps. Thank you!

#

I can run with this for a while...