Если кому-то еще это нужно, я получил его с помощью предложения karllekko на стороне сервера, как показано ниже:
СТОРОНА КЛИЕНТА
stripe.handleCardPayment(
clientSecret, cardElement, {
source_data: {
owner: {
name: cardholderName.value,
address: {
line1: cardholderAddress,
line2: cardholderAddress2,
city: cardholderTown,
county: cardholderCounty
},
email: cardholderEmail,
phone: cardholderTel
}
}
}
).then(function (result) {
if (result.error) {
// Display error.message in your UI.
var errorElement = document.getElementById('payment-errors');
errorElement.textContent = result.error.message;
} else {
// The payment has succeeded. Display a success message.
var form = document.getElementById('payment-form');
var hiddenInput = document.createElement('input');
hiddenInput.setAttribute('type', 'hidden');
hiddenInput.setAttribute('name', 'srcId');
hiddenInput.setAttribute('value', result.paymentIntent.source);
form.appendChild(hiddenInput);
// Submit the form
form.submit();
}
});
СЕРВЕРСТОРОНА
[HttpPost]
public ActionResult BookingPaymentForm(FormCollection formData, PaymentEventModel model)
{
model.SourceId = formData["srcId"];
var service = new SourceService();
var source = service.Get(model.SourceId);
var postcode = source.Owner.Address.PostalCode;
}