Я использую Stripe Connect в своем API, я хотел бы обновить существующий paymentIntent. Официальная библиотека для API предоставляет эти методы.
public PaymentIntent Get(string paymentIntentId,
PaymentIntentGetOptions options = null, RequestOptions requestOptions = null)
public PaymentIntent Update(string paymentIntentId,
PaymentIntentUpdateOptions options, RequestOptions requestOptions = null);
Единственное, что я хотел бы обновить на ресурсе, это пункт назначения, поэтому я начал это делать, прежде чем понял, что простого способа нет:
var paymentIntentService = new PaymentIntentService();
var paymentIntent = paymentIntentService.Get(transaction.ExternalTransactionId);
if (null != destinationStripeAccount)
{
paymentIntent.TransferData.DestinationId = destinationStripeAccount.AccountId;
}
//This takes in a PaymentIntentUpdateOptions instead of a paymentIntent WTF
paymentIntentService.Update(paymentIntent.Id, new PaymentIntentUpdateOptions { });
PaymentIntent не является опциями PaymentIntentUpdate, поэтому мне нужно сопоставить все значения с другими. Я бы предпочел не устанавливать дополнительную зависимость, такую как AutoMapper, и сопоставление полей вручную было бы хлопотом.
Кто-нибудь знает, есть ли способ просто обновить адресата или простой способ обновления платежного намерения?