#greggles_invoicing-pmts

1 messages · Page 1 of 1 (latest)

worthy pumiceBOT
onyx folioBOT
#

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.

worthy pumiceBOT
#

👋 Welcome to your new thread!

⏲️ We'll be here soon! We typically respond in a few minutes, but in some cases we might need a bit more time (e.g., server's busy, you've got a complex question, etc.).

⏱️ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can 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/1260616839495684178

📝 Have more to share? Add details, code, screenshots, videos, etc. below.

visual oasis
#

Please see prior post greggles_best-practices

I implemented as the Stripe rep suggested and am still getting this behavior.

velvet condor
#

Hello, thanks for the ID, checking in to this and will get back to you

visual oasis
#

Thank you.

velvet condor
#

I see a few that were excluded for a few reasons, which payment methods didn't show up on the invoice that you were expecting?

visual oasis
#

Let's start with AliPay and WeChat Pay.

velvet condor
visual oasis
#

Thanks for the tool. That seems helpful

velvet condor
#

Looking in to AliPay, for WeChat Pay, it looks like we don't support it for charge_automatically invoices

visual oasis
#

Only for send_invoice?

velvet condor
#

Does the dashboard tool say anything about WeChat pay?

visual oasis
#

OK, thanks for clarifying.

#
This PaymentIntent specified payment methods in the payment_method_types parameter. When specifying payment methods this way, we do not use your dashboard settings to determine which payment methods are on. Please upgrade your integration by removing the payment_method_types parameter and including automatic_payment_methods: { enabled: true } on the PaymentIntent to begin using payment methods from your dashboard.
#

I used the payment intent ID I provided you but I am not specifying payment methods, including automatic_payment_methods:{enabled:true} anywhere.

#

The payment intent ID I listed was obtained from the finalization of the invoice.

velvet condor
#

Ah, I think that invoices use payment_method_types behind the scenes which gets in the way of the tool working. That is unfortunate

visual oasis
#

I see.

worthy pumiceBOT
visual oasis
#

Not sure if it's relevant but I'm creating the address element like so> Hopefully formatting is't too bad.

const stripe = Stripe('<? echo $stripe_key; ?>');
const appearance = {
    theme: 'stripe',
    labels:'above',
    variables: {
        'colorPrimary': '#0570de',
        'colorBackground': '#ffffff',
        'colorText': '#171717',
        'colorDanger': '#df1b41',
        'fontFamily': '"proxima_nova_light", Arial, Helvetica, sans-serif',
        'spacingUnit': '2px',
        'borderRadius': '0',
    },
    rules: {
        '.Label' : {
        color: '#d9d9d9',
        'fontFamily': '"proxima_nova_light", Arial, Helvetica, sans-serif',
        'marginBottom':0
        },
    }
};
const options = {
    // defaultValues: defaultAddressObject,
    appearance: appearance,
};
const elements = stripe.elements(options);
const addressElement = elements.create('address', {
    mode: 'billing',
    autocomplete: {
        mode: 'google_maps_api',
        apiKey: 'AIzaSyDCAySCjFfnvaBlr22HndNA_cQGmOs3E8c'
    }
});
bitter robin
#

Hello! I'm stepping in, give me a sec

visual oasis
#

BTW google autocomplete stopped working out of the box yesterday for some reason.

#

So I created a google maps api key to step in.

bitter robin
#

@visual oasis I am not sure on your question on Address Element, is it just that Google autocomplete stopped working? or something else?

visual oasis
#

Yes, it stopped working.

#

Separate question though. I'd like to focus on the payment elements first, please.

bitter robin
#

yep looking

visual oasis
#

Just checking in... I don't want the thread to be closed for inactivity.

#

One hour in and counting. 😦

bitter robin
#

asking team members on my team

this won't close. Just a tricky space of Invoice PMs + PaymentIntent PMs and combatability across countries/certain params etc

visual oasis
#

Thank you. Originally, I asked for the easiest integration method to sell a one off payment product with the payment element. Apparently this is not it. I'm not sure why this has become so difficult.

bitter robin
#

and one more thing to clarify, you said it later so want to confirm

you're using Payment Element right? On the Invoice's PaymentIntent? and that's where the right PaymentMethod types aren't showing, correct?

visual oasis
#

I'm rewriting an earlier attempt at this goal and I have not yet written the integration for rendering the payment element. Last time, all the payment methods showed, but I got errors using the payment methods other than "card", "cashapp", "link", "us_bank_account" .

bitter robin
#

so where are you seeing / not seeing these payment methods? Hosted Invoice Page? Want to confirm so we look in the right place

#

like

but I got errors using the payment methods other than "card", "cashapp", "link", "us_bank_account"
where did you get/see this error

visual oasis
#

In stripe's response to confirmPayment(). Unfortunately those responses are more than 7 days old so I can't pull the req ID from workbench.

visual oasis
#

Based on my prior experience, rendering the payment element would be a waste of time at this point. I'd either see many payment methods that I can't use because they'd produce an error, or I would not see any other payment methods other than the 4 above.

bitter robin
#

In stripe's response to confirmPayment()
that's with Payment Element right? or no? cause you said you didn't code it up so just making sure my repro attempt is same as yours

visual oasis
#

In my earlier attempt, I rendered the address element and the payment element together on DOM creation, so the deferred payment method. Yes, you're correct. on confirmPayment() with the payment element.

bitter robin
#

got it, thanks!

so here's what I found for Alipay atleast - the docs are wrong on that, Invoices with Alipay are not fully released (in some beta state) so that explains why it doesn't work. We can fix the docs or work with the product team on what pathway they have to fully release the feature so it "just works" for your case

visual oasis
#

Ideally the "just works" path is preferred since it furthers my goal of diversifying our available payment methods.

#

But let's take a step back. I keep asking the same question hoping for a clear answer. I want to sell a one off product, paid at the time of checkout, with all of the checked payment methods available in the invoice payment methods settings. Or at least more than the 4 U.S.-based payment methods I listed so I can cater to my international clients. I need to potentially add tax as a line item based on the customer's location so I need the address info early in the transaction and I want to leverage Stripe's address element's validation and autocomplete feature to get that info. What's the best way to do that?

#

If it's not invoices, then what is it?

#

I'm not trying to go off on my own path here and my needs don't seem atypical.

bitter robin
#

do you want a form on your own webpage? or is a Stripe hosted Checkout page work?

#

the options change based on that^

visual oasis
#

I'd like to keep everything on our own site. If you're going to suggest checkout.

bitter robin
#

my needs don't seem atypical.
correct, you're not off base, just that Invoice<>Payment Intent feature/payment method interoperability have edge cases which is where you're blocked right now

#

ok so everything on your site

#

I'll voice my thinking out

visual oasis
#

Yes please.

#

OK shoot.

bitter robin
#

a) Checkout works out of the box for everything you want (tax, address collection, one off payment, etc). But you don't want a Stripe hosted page.
a1) Checkout does have an embedded version which embeds in your webpage. Not fully caught up on the feature set supported over regular full page Checkout due to limitations in certain payment methods etc.
a2) Checkout also is building (I think maybe in beta?) a feature to use Checkout features built into Payment Element. Obv again like (a1), don't know how much is/isn't supported as regular Checkout is well ahead in its feature set.

#

that is all Checkout. A1 and A2 options could work for you but don't want to send you down that path yet given the "you may hit X limitation"

#

now on to PaymentIntents (give me a sec, answering a couple other threads quickly)

visual oasis
#

I forgot to mention we use a 3rd party tax agency so I need to make an api request to calculate tax and add that as an invoice line item, or something similar.

#

We have a "Tax" product in Stripe that has a $0 amount. If we collect tax, we add that tax product and the custom amount to recurring subscriptions or, in this case, to the invoice as a line item.

bitter robin
#

oh so you don't use Stripe Tax? or Tax Rates in Stripe?

visual oasis
#

No we do not.

bitter robin
#

like you make a separate API call to 3rd party for "add $X tax to $Y"

visual oasis
#

Correct.

bitter robin
#

(cause I was under the impression you're referring to Stripe Tax when you're using "tax)

that changes things!

visual oasis
#

Based on amount and address

#

Sorry.

bitter robin
#

no all good, Invoices + Stripe Tax work together so I short cutted

#

so disregard Checkout, disregard Invoices

visual oasis
#

Let me rephrase on tax.
We make a seperate API call to 3rd party and send the address and amount. If a tax amount comes back, it is non-binding and unassociated with the transaction until we add it in Stripe. We add tax in Stripe by adding the Stripe product called "Tax" to the initial subscription, or in this case, the invoice, as a line item. Am i being clearer?

bitter robin
#

all you need is PaymentIntent + Payment Element

#

you won't have to use Products/Prices within Stripe to associate a "line item" for the tax.

#

all PaymentIntents are are "tell me total amount X and I'll charge it" where X = $10 + 0.50 tax"

visual oasis
#

I do actually. Anrok, our third party tax people uses the Tax product's Stripe product ID to do the allocation.

bitter robin
#

I'm guessing you do

We add tax in Stripe by adding the Stripe product called "Tax" to the initial subscription, or in this case, the invoice, as a line item
for any reason?

#

ah wait, you're sayign the 3rd party integration does rely on Stripe Products for tax calc?

visual oasis
#

This is the current implementation of what we're doing, but we're only taking payments. We need to associate that payment with 1 product and an optional tax product.

worthy pumiceBOT
visual oasis
#

Oh boy. koopajah on scene. It's officially serious. 🙂

pearl plover
#

👋 I skimmed the thread but it doesn't make sense to me :p You mention a 3rd party but also using Stripe Tax (our own tax calculation)

visual oasis
#

BTW the link to our product page says "subscription" but it's really a one-time payment, fixed access period of 12 months or 6 months.

visual oasis
pearl plover
#

Okay so you do use Subscriuptions and Invoices? Because a bit above it seemed you talked about the opposite.
Ultimately: what's your exact issue?

visual oasis
#

Separate payment flows, but yes, we use both. In this case I want to focus on selling a one-time payment product.

visual oasis
pearl plover
#

what does "read the card" mean?

#

it's a 2+ hours long thread and it seems you're still stuck. So I think taking a step back and a clear new attempt at explaining the issue will likely help reset the conversation

#

greggles_invoicing-pmts

visual oasis
#

The help card I filled out to create the thread.

#

The inital post in this thread

pearl plover
#

So for the past 2 hours you haven't made progress on this? I was working with @bitter robin for example and explained why Alipay wasn't appearing.
Sorry to push but we're helping a lot of people in real time and it looks like a lot of confusion in this thread.
What exactly is your issue, summarized clearly with what you already was explained/understood?

visual oasis
#

Aside from using Stripe Checkout.

pearl plover
#

Some payment methods aren't supported on Invoicing by default such as Alipay and WeChatPay. Others require collection_method: 'send_invoice' instead such as Klarna or iDEAL. Many payment methods have strict criteria around currency, min/max amount, being enabled, etc.
So that should answer your question, you only get those 4 because of all of those criteria.

visual oasis
#

If I create a payment intent with a specific amount and render the payment element, all of the payment methods I want to use are available. I can take a payment fine in our current implementation but it's not associated with a product/invoice. I need to be able to create a customer, create an invoice, add stuff to that invoice, and apply that payment to the invoice for a one-time payment product.

So the problem I'm having is connecting that payment intent and the confirmed payment to the invoice.

pearl plover
#

Invoicing and PaymentIntent behave differently in terms of allowing certaion payment methods so my answer above holds. Alipay and WeChatPay for example don't work by default on Invoicing.
If you have another payment method type that you want me to investigate, please clearly explain which one it is and I can have a look

visual oasis
#

Are you saying Klarna, for instance, can't be used on an invoice that's set to automatic payment?

pearl plover
#

correct

#

Try collection_method: 'send_invoice' and then see if Klarna appears

visual oasis
#

But it is available if I use Stripe Checkout?

pearl plover
#

They are different products.

visual oasis
#

That's not what I asked.

#

Is Klarna available if I sell a Stripe product using Checkout?

pearl plover
#

yes. But it works the same with just PaymentElement. The issue is that you are using Invoicing which is a different product that comes with different rules for which payment methods to support/show

visual oasis
#

A payment made with Checkout can be associated with a Stripe product, but using the payment element alone to take a payment can't be used to pay for a product?

#

Just trying to understand here.

pearl plover
#

yes

pearl plover
#

@visual oasis did you have a follow up question before I archive?