#starinje - Connect
1 messages ยท Page 1 of 1 (latest)
Hi ๐
Is this verification step supported by the Stripe Invoicing flow?
This is completely different from Invoicing
so there is no way to do address verification for Stripe Invoice payments?
Connect account verification is a separate requirement from Invoicing AFAIK
What is your actual question about. Connect? or Invoicing?
More specifically Invoices. We generate a Stripe Invoice via the API and send to the customer for payment. Im wondering if there is a way to verify the customers address against the address on file with the card provider.
Okay. that gives me some more details. thanks
So you are configuring your invoice to collect customer address info?
Not currently, but we could enable that if needed
AFAIK there isn't a way to do this via the APIs
But
You might look into Radar rules to see if you can do some address validation that way
ok yes I took a look into the rules and that seems like the right approach. What im not clear on is where the Customers address is collected.
Hi there ๐ jumping in as my teammate needed to step away. A little bit of insight into the underpinnings of an Invoice. An Invoice will create a Payment Intent for processing its payment, and that intent will have an underlying Charge object.
The verification check results can be found either on those Charges:
https://stripe.com/docs/api/charges/object#charge_object-payment_method_details-card-checks
Or directly on the associated Payment Method:
https://stripe.com/docs/api/payment_methods/object#payment_method_object-card-checks
And the billing_details on the Payment Method is where the information that is sent for validation comes from:
https://stripe.com/docs/api/payment_methods/object#payment_method_object-billing_details
Complete reference documentation for the Stripe API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries.
Complete reference documentation for the Stripe API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries.
ok that makes sense, since that happens under the hood, does stripe pull that billing_details data from the customer object?
IE would we need to make sure that when we create the customer, we provide the address data specified here: https://stripe.com/docs/api/customers/create
Complete reference documentation for the Stripe API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries.
I'm not 100% certain off the top of my head, but I don't think it relies on the address on the Customer as in practice a person could have payment methods with different billing addresses, so I'm pretty sure it pulls from the billing_details on the Payment Method.
Apologies for the delay, I just finished running a test case that confirmed the address information that is validated is pulled from the billing_details on the Payment Method, and is not inherited from the customer record.
ok so how would we set that though when creating an invoice?
I dont see that as a parameter on the create invoice endpoint: https://stripe.com/docs/api/invoices/create
You won't when you're creating the Invoice, instead they would be provided when creating the Payment Method if you're creating that ahead of time. Are you creating a Payment Method for the Customer before creating the Invoice, or are you letting your customers use the hosted invoice page to submit their payment details?
ahh yes thats the rub - were using the hosted invoice page
Gotcha, I don't think there is a way to force that page to collect billing address information, but am double checking that.
Yeah thats what made me think that the address is being set from the customer address: https://stripe.com/docs/api/invoices/object#invoice_object-customer_address
Just ran through using a hosted invoice page, and the payment method that it created was created without a billing address, so it doesn't look like it inherits the address from the customer and therefore doesn't do any address validation.
ok got it, I appreciate all of the help!
Any time!