c# - Stripe.Net直充

标签 c# .net stripe-payments stripe.net

我正在尝试使用 Stripe 直接向客户收费。我正在使用这个示例代码:

var stripeChargeCreateOptions = new StripeChargeCreateOptions();

stripeChargeCreateOptions.Amount = 1000;
stripeChargeCreateOptions.Currency = "usd";

stripeChargeCreateOptions.Description = "Test";

stripeChargeCreateOptions.Source = new StripeSourceOptions()
{

    Number = "4242424242424242",
    ExpirationYear = "2022",
    ExpirationMonth = "10",
    AddressCountry = "US",                // optional
    AddressLine1 = "24 Beef Flank St",    // optional
    AddressLine2 = "Apt 24",              // optional
    AddressCity = "Biggie Smalls",        // optional
    AddressState = "NC",                  // optional
    AddressZip = "27617",                 // optional
    Name = "Joe Meatballs",               // optional
    Cvc = "1223"                          // optional
};

stripeChargeCreateOptions.Capture = true;

var stripeChargeService = new StripeChargeService();
StripeCharge stripeCharge = stripeChargeService.Create(stripeChargeCreateOptions);

这似乎在测试模式下有效。这是我的 3 个问题:

  1. 这里的金额 1000 是 10 美元 - 对吗?

  2. 这也适用于使用实时 key 吗?我听说 Stripe 不允许直接收费,需要我们使用他们的 Javascript 和存储 token 才能真正收费?它在测试模式下如何工作?

  3. stripeChargeCreateOptions.Capture = true; 的重要性是什么?如果我将它设置为 false,会发生什么?

最佳答案

  1. 是的,没错。所有金额均以美分/便士为单位。

  2. 恐怕我对 Stripe 的了解不够,无法帮助您解决这个问题。

  3. 这会告诉 Stripe 使用什么流程来执行交易 - 这是之前在 Capture 属性设置为“false”时创建的费用的后半部分。因此,您稍后需要调用 API 并将其设置为 true 才能真正完成充电。有关详细信息,请参阅 API:https://stripe.com/docs/api?lang=php#capture_charge

关于c# - Stripe.Net直充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32965829/

相关文章:

stripe-payments - Stripe - 获取最后的客户发票

c# - SQL Server CE 异常 InvalidDatabaseFormatException

c# - 检查数字的小数点和总长度

c# - 无法在 Docker 上运行 VS 项目

c# - 设置饼图切片和图例的颜色

paypal - 地址验证系统 (AVS) ) 检查电子商务

javascript - 在 React 中使用 Stripe 和 Axios 链接异步函数调用

C# + WinRT + 用于网络(Azure 移动服务)操作的 Monogame 线程

c# - WCF 错误 : Service too busy

c# - Windows 7 + .NET 4.0 中 'Marshal.StructureToPtr' 的访问冲突异常(Windows XP + .NET 3.5 工作正常)