Код: Выделить всё
var options = new Stripe.Checkout.SessionCreateOptions
{
LineItems = new List
{
new Stripe.Checkout.SessionLineItemOptions
{
PriceData = new Stripe.Checkout.SessionLineItemPriceDataOptions
{
Currency = "aud",
ProductData = new Stripe.Checkout.SessionLineItemPriceDataProductDataOptions
{
Name = "Gift Voucher",
},
UnitAmount = 30000,
},
Quantity = 1,
},
},
PaymentIntentData = new Stripe.Checkout.SessionPaymentIntentDataOptions
{
ApplicationFeeAmount = 110,
},
Mode = "payment",
UiMode = "embedded",
ReturnUrl = "https://localhost:44389/blah/StripeCheckoutReturn",
ClientReferenceId = "12345"
};
var requestOptions = new RequestOptions
{
StripeAccount = "abcd..."
};
var service = new SessionService();
Session session = service.Create(options, requestOptions);
TempData["StripeSession"] = session.Id;
return Json(new { clientSecret = session.ClientSecret });
Проблема возникает, когда я пытаюсь чтобы получить сеанс в моей конечной точке ReturnUrl. Приведенный ниже код завершается сбоем из-за исключения Stripe, говорящего нет такого checkout.session.
Код: Выделить всё
[HttpGet]
[AllowAnonymous]
public async Task StripeCheckoutReturn()
{
string session_id = TempData["StripeSession"].ToString();
var service = new SessionService();
Session session = service.Get(session_id);
if (session.PaymentStatus == "paid")
{
}
}
Код: Выделить всё
[HttpGet]
[AllowAnonymous]
public async Task StripeCheckoutReturn()
{
string session_id = TempData["StripeSession"].ToString();
var requestOptions = new RequestOptions
{
StripeAccount = "acct_12345..."
};
var service = new SessionService();
Session session = service.Get(session_id, requestOptions: requestOptions);
if (session.PaymentStatus == "paid")
{
}
}
Я поднял эту проблему в службе поддержки Stripe и сначала они вернулись ко мне и сказали, что проблема в том, что я не установил ApplicationFeeAmount. Но когда я отписал свой ответ в службу поддержки по электронной почте, в котором говорилось, что я действительно установил сумму правильно и что сеанс разрешается нормально, когда я предоставляю идентификатор учетной записи клиента, я просто получил автоматический ответ по электронной почте, в котором мне предлагалось связаться со Stripe через их чат. это всего лишь робот-помощник с искусственным интеллектом.
Я не получил надлежащего обращения в службу поддержки, и на моей панели управления нет раздела «Поддержка», где я мог бы решать вопросы поддержки.
Подробнее здесь: https://stackoverflow.com/questions/791 ... -account-i