在.net mvc中动态使用付款网关的分条

问题描述 投票:2回答:1
  @model Stripe 

    <form action="/Home/Charge" method="POST">
      <article>
        <label>Amount: $5.00</label>
      </article>
      <script src="//checkout.stripe.com/v2/checkout.js"
              class="stripe-button"
              data-key="@Stripe.Value.PublishableKey"
              data-locale="auto"
              data-description="Sample Charge"
              data-amount="500">
      </script>
    </form>


<form action="/Home/Charge2" method="POST">
  <article>
    <label>Amount: $5.00</label>
  </article>
  <script src="//checkout.stripe.com/v2/checkout.js"
          class="stripe-button"
          data-key="@Stripe.Value.PublishableKey"
          data-locale="auto"
          data-description="Sample Charge"
          data-amount="500">
  </script>
</form>


<form action="/Home/Charge3" method="POST">
  <article>
    <label>Amount: $24.00</label>
  </article>
  <script src="//checkout.stripe.com/v2/checkout.js"
          class="stripe-button"
          data-key="@Stripe.Value.PublishableKey"
          data-locale="auto"
          data-description="Sample Charge"
          data-amount="1200">
  </script>
</form>

我正在尝试在asp.net mvc中实现条带化每个表单都相应地起作用,我的疑问是可以通过模型动态显示它们并允许用户选择一种付款方式,并确定用户在控制器中选择了哪种订阅计划?

public ActionResult charge(string stripeEmail, string stripeToken,int planId)
        {
            var customers = new StripeCustomerService();
            var charges = new StripeChargeService();
            var subscriptions = new StripeSubscriptionService();

            var customer = customers.Create(new StripeCustomerCreateOptions
            {
                Email = stripeEmail,
                SourceToken = stripeToken

            });

            var charge = charges.Create(new StripeChargeCreateOptions
            {
                Amount = 100,//charge in cents
                Description = customer.Description,
                Currency = "usd",
                CustomerId = customer.Id,
                ReceiptEmail = customer.Email
            });


            return View(charge);

        }


        public ActionResult charge2(string stripeEmail, string stripeToken)
        {
            var customers = new StripeCustomerService();
            var charges = new StripeChargeService();
            var subscriptions = new StripeSubscriptionService();

            var customer = customers.Create(new StripeCustomerCreateOptions
            {
                Email = stripeEmail,
                SourceToken = stripeToken

            });



            var charge = charges.Create(new StripeChargeCreateOptions
            {
                Amount = 2500,//charge in cents
                Description = customer.Description,
                Currency = "usd",
                CustomerId = customer.Id,
                ReceiptEmail = customer.Email
            });

            var subscription = subscriptions.Create(customer.Id, new StripeSubscriptionCreateOptions()
            {
                PlanId = "paln2"
            });




            return View(charge);
        }

这是我的控制器,在这里为每个表单添加提交。此代码可以正常工作,但我需要更改此硬代码并使它们动态生成,

asp.net-mvc payment
1个回答
0
投票

如果您仍在寻找针对自定义Web表单的asp.net c#中的条带化支付集成的最新解决方案,则>]

看看==> https://techtolia.com/Stripe/

通过集成和自定义Web应用程序,您可以通过Stripe从所有卡(信用卡,借记卡和预付卡),支付宝,微信支付,Bancontact,iDEAL,Multibanco,Sofor,EPS,Giropay接收付款。

从使用Apple Pay,Google Pay,Microsoft Pay和浏览器付款请求API(Chrome,Opera,Edge,Safari)的客户那里收集付款和地址信息。

© www.soinside.com 2019 - 2024. All rights reserved.