#twirtle2_docs

1 messages ¡ Page 1 of 1 (latest)

mental stirrupBOT
#

👋 Welcome to your new thread!

⏲️ We'll be here soon! Typically we respond in a few minutes, but sometimes we might take a bit longer if the server is busy or if you have a particularly tricky question.

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

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

hearty moth
#

just to add, have gotten our account enabled for MOTO

hollow swallow
#

Deferred intent integration should be used, i.e. collect the payment method details first, then create the Payment Intent with moto later: https://docs.stripe.com/payments/finalize-payments-on-the-server

This will allow the ConfirmationToken (Payment Method equivalent) to be present during the Payment Intent creation

Build an integration where you render the Payment Element before you create a PaymentIntent or SetupIntent, then confirm the Intent from your server.

hearty moth
#

oh interesting, is there any preference to creating payment intents before vs after?

I assume for web transactions it'd be better to create the payment intent first so if the payment method fails it can be recovered on the spot?

#

and is the confirmationtoken returned as part of the payment Element JS?

hollow swallow
#

We generally recommend to create Payment Intent before the payment method collection for standard online payment flow. However, we also support deferred intent integration for special cases that a payment method should be created first such as MOTO.

hearty moth
#

thanks @hollow swallow really appreciate the guidance, I think these docs are enough to get me started. One final question for now, we currently don't capture CVV in our MOTO payments. Is that something that's configurable or is it automatically disabled if MOTO is set?

hollow swallow
#

CVC collection is not configurable. Payment Element will always collect CVC

hearty moth
#

ugh drats...in that case what are our options if I want to avoid opening up PCI scope? and not capturing CVV*

#

sorry follow up. As mentioned i'm working on a salesforce integration, so I'm using the Stripe Connector for Salesforce which has in built API calls for flows. in the CreatePaymentIntent call there's no option for confirmation_token (just payment_method)

is confirmation_token a recent api parameter?

hollow swallow
#

Confirmation Token was released late last year. It might be that the Salesforce Connecter is not update to date

#

I'm checking if there is any other way to skip CVV collection for moto flow

hearty moth
#

thanks, really appreciate it!

hearty moth
hollow swallow
#

Another alternative will be using Split Card Element instead of Payment Element. Split Card Element has its own different elements for card number, card expiry and cvc: https://docs.stripe.com/js/element/other_element?type=cardNumber

The steps will be:

  1. Render Split Card Element (without CVC element) to collect the payment method details
  2. Use stripe.createPaymentMethod() to create a Stripe PaymentMethod ID: https://docs.stripe.com/js/payment_methods/create_payment_method > Set the card field to card number element
  3. Create Payment Intent with the Payment Method ID in Step (2) and moto flag
#

Instead of using ConfirmationToken, this flow will use Payment Method which should be compatible with Salesforce Connector

hearty moth
#

Ah ok, so basically build the payment fields manually. So I assume we would need to build the UI for selecting different payment methods as well? for one off transactions it's just card payments, however with subscriptions will be supporting au_becs_debit as well via MOTO

hollow swallow
#

If it's online payment flow, Payment Element with standard Payment Intent integration should be used.

It'll be easier to have a separate page for MOTO integration with split card element to handle the MOTO situation

#

MOTO only applies to card payment method

#

For standard online payment, you shouldn't set the Payment Intent to MOTO

#

MOTO should only be used for the support agent (call center)

hearty moth
#

yep yep that's the scenario I'm still talking about, the bit about subscriptions is just me thinking next steps after I get this working with one off transactions

#

thank you I think I've got enough to continue working, really appreciate the help and time