我在Jaymedavis的stripe.net库的帮助下使用条带连接(目的地付款)。
我遇到的问题是我无法检索目标付款ID以更新已连接帐户中的元数据。以下行返回null,阻止我更新已连接帐户上的元数据。但奇怪的是,当我登录仪表板时,目的地支付ID存在。我不知道为什么我无法在代码中检索它。
电荷创建是否异步?我不确定。 Stripe的连接文档也无济于事。以下行返回null。我的代码在下面。寻求帮助。
String deschargeID = result.Transfer.DestinationPayment;
以下是我正在使用的代码
var service = new StripeChargeService(ZambreroSecretKey);
var result = (Stripe.StripeCharge) null;
try {
result = service.Create(newCharge);
if (result.Paid) {
//get the chargeID on the newgen account and update the metadata.
//Returns null even though it exists in the dashboard
String deschargeID = result.Transfer.DestinationPayment;
var chargeService = new StripeChargeService(newgenSecretKey);
StripeCharge charge = chargeService.Get(deschargeID);
charge.Metadata = myDict;
Response.Redirect("PgeCustSuccess.aspx?OrderID=" + OrderID);
}
} catch (StripeException stripeException) {
Debug.WriteLine(stripeException.Message);
stripe.Text = stripeException.Message;
}
答案 0 :(得分:1)
默认情况下,charge object的transfer
属性不是expanded,这意味着它只是一个ID为transfer object的字符串( "tr_..."
),而不是完整的转移对象。
根据Stripe.net的documentation,您可以通过添加以下行来展开transfer
属性:
service.ExpandTransfer = True
在发送费用创建请求之前。