标签: stripe-payments

为什么Stripe paymentRequest.canMakePayment()在Localhost上失败?

我让它在我的生产服务器上工作,但是在localhost canMakePayment()return上null

我已经通过最小的Stripe代码跟踪了这一点,但是遇到了一个函数ko,该函数只是将调用发送CAN_MAKE_PAYMENT到某个消息队列,此后执行将变为异步,并且e.available === false在没有进一步信息的情况下解决请求之前,我无法进行进一步跟踪。

我已验证该API确实可在localhost上的Chrome浏览器中使用(window.PaymentRequest可用)。我也在本地运行https(尽管没有绿色复选标记)。

如何跟踪导致Stripe报告PaymentRequest不可用的原因?如果我没有绿色的SSL支票,Chrome会拒绝PaymentRequest呼叫吗?如果是这样,我将如何测试?Chrome文档只是说如果PaymentRequest可用,那么您可以调用API。

如果我知道在哪里处理消息队列,则可以进一步调试。

stripe-payments

11
推荐指数
2
解决办法
3803
查看次数

StripeException:没有这样的计划

我正在创建一个客户对象并将它们分配给 Stripe 中的一个计划,但出现错误“不存在这样的计划”。错误中给出的计划 ID 是正确的计划 ID:No such plan: prod_EIcYiWkVa7LF7T

可能值得注意的是,客户的 StripeCustomerId 也没有写入数据库,但这可能是因为代码稍后失败,因此没有进行任何更改。

 [HttpPost]
        [Authorize]
        public ActionResult Subscribe(SubscribeViewModel model)
        {

            string CurrentUserId = User.Identity.GetUserId();
            var CurrentUser = UserManager.FindById(CurrentUserId);


            StripeConfiguration.SetApiKey(ConfigurationManager.AppSettings["StripeSecretKey"]);

            var custoptions = new CustomerCreateOptions
            {
                Description = "Customer object for " + CurrentUser.Email,
                SourceToken = model.StripeToken
            };

            var custservice = new CustomerService();
            Customer customer = custservice.Create(custoptions);

            CurrentUser.StripeCustomerId = customer.Id;

            var items = new List<SubscriptionItemOption>
            {
                new SubscriptionItemOption
                {
                    PlanId = db.Plans.Where(a=>a.Id == CurrentUser.Plan).FirstOrDefault().StripePlanId
                }
            };
            var options = new SubscriptionCreateOptions …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc stripe-payments

11
推荐指数
1
解决办法
7942
查看次数

我应该如何将 `cardNumberElement`、`cardExpiryElement` 和 `cardCvcElement` 传递到 `stripe.confirmCardPayment` 的 `payment_method.card` 中?

在条纹文档中,我可以轻松创建这样的卡片

var cardElement = elements.create("card");
Run Code Online (Sandbox Code Playgroud)

我只是简单地传递cardElementconfirmCardPayment

stripe.confirmCardPayment("{PAYMENT_INTENT_CLIENT_SECRET}", {
  payment_method: {
    card: cardElement,
  },
});
Run Code Online (Sandbox Code Playgroud)

但是,出于视觉样式 css 的原因,我必须cardElement像这样分成三部分:

var cardNumberElement = elements.create("cardNumber");
var cardExpiryElement = elements.create("cardExpiry");
var cardCvcElement = elements.create("cardCvc");
Run Code Online (Sandbox Code Playgroud)

然后我想打电话stripe.confirmCardPayment,我现在该怎么办?

该文档仅显示cardElement方法,没有拆分示例。

javascript stripe-payments

11
推荐指数
3
解决办法
1891
查看次数

'new' 不可用:您不能直接实例化 STPIssuingCardPin

我刚刚更换了带有 M1 芯片的新 MacBook Pro,但无法在 Xcode 上构建我的应用程序。我已经更新了所有的 cocoaPods 并且已经在终端中安装了 sudo gem cocoa pods install 命令和 Rosetta。这是我得到的两个错误并使构建失败:

'new' is unavailable: You cannot directly instantiate an STPIssuingCardPin
Run Code Online (Sandbox Code Playgroud)

xcode stripe-payments swift

11
推荐指数
3
解决办法
6260
查看次数

NextJS Stripe Webhook 原始主体

试图在 NextJS 上传递 Stripe webhook 的原始主体时,我费尽心思!

\n

尝试了很多来自各地的解决方案,但我似乎无法使其发挥作用。

\n

打开具有超能力的开发人员(我仍在获取其中)。

\n

条纹测试错误:

\n
\n

未找到与负载的预期签名匹配的签名。您是否传递了从 Stripe 收到的原始请求正文

\n
\n

我的 NextJS webhook 端点测试:

\n
import { buffer } from 'micro';\nconst stripe = require('stripe')(process.env.STRIPE_SECRET_KEY);\n\nexport default async function handler(req, res) {\n\n    console.log("Payment intent")\n\n    const event = req.body\n\n    console.log(event)\n\n    if (process.env.STRIPE_WEBHOOK_ENDPOINT_SECRET) {\n        // Get the signature sent by Stripe\n        const signature = req.headers['stripe-signature'];\n        console.log(signature)\n        try {\n          event = stripe.webhooks.constructEvent(\n            req.body,\n            signature,\n            process.env.STRIPE_WEBHOOK_ENDPOINT_SECRET\n          );\n        } catch (err) {\n          console.log(`\xe2\x9a\xa0\xef\xb8\x8f  Webhook signature verification failed.`, err.message);\n …
Run Code Online (Sandbox Code Playgroud)

javascript webhooks stripe-payments serverless-framework next.js

11
推荐指数
1
解决办法
4083
查看次数

Stripe CLI:如何使用嵌套元数据触发事件

我正在使用 Stripe CLI 触发本地 Webhook 事件。该命令允许我使用以下选项/语法设置元数据:

\n

--add resource:path1.path2=value

\n

我尝试创建的元数据结构如下所示:

\n
{\n    id: 1,\n    artistId: 2,\n    image: { \n        url: `https://somepath` \n    }\n}\n\n
Run Code Online (Sandbox Code Playgroud)\n

这是我的命令:

\n
$ stripe trigger payment_intent.succeeded --add payment_intent:metadata.id=1 --add payment_intent:metadata.artistId=1 --add payment_intent:metadata.image.url=https://www.arweave.net/ij5O6dDlzxOuWHUnikZapq10kkeEVe_elLWvpfE6ado?ext=PNG\n\xe2\xa3\x9f Checking for new versions... Setting up fixture for: payment_intent\nRunning fixture for: payment_intent\nTrigger failed: Request failed, status=400, body={\n  "error": {\n    "message": "Invalid value type: {:url=\\u003E\\"https://www.arweave.net/ij5O6dDlzxOuWHUnikZapq10kkeEVe_elLWvpfE6ado?ext=PNG\\"} must be a string",\n    "param": "metadata",\n    "type": "invalid_request_error"\n  }\n}\n
Run Code Online (Sandbox Code Playgroud)\n

起初,我认为.URL 中的 违反了语法。但是当我将 URL 替换为foo。 …

command-line command-line-arguments stripe-payments

11
推荐指数
2
解决办法
5775
查看次数

如何使用 React 17 安装 next-js?

如何使用 React 17 安装 next.js?当我输入:npx create-next-app --ts时,npx使用React 18安装了Next,但我无法使用React 18,因为Stripe目前无法与R18一起工作(https://www.npmjs.com/包/条)。

stripe-payments reactjs next.js

11
推荐指数
2
解决办法
1万
查看次数

如何在 Stripe Reactjs 中获取客户端密钥?为什么没有它就无法呈现付款表单?

我遵循了基本的 React stripe 文档:\n https://stripe.com/docs/stripe-js/react

\n

所以这是我有问题的代码:

\n

索引.js

\n
import React from \'react\';\nimport ReactDOM from \'react-dom\';\nimport App from \'./App\';\nimport {Elements} from \'@stripe/react-stripe-js\';\nimport {loadStripe} from \'@stripe/stripe-js\';\n\n// Make sure to call `loadStripe` outside of a component\xe2\x80\x99s render to avoid\n// recreating the `Stripe` object on every render.\nconst stripePromise = loadStripe(\'process.env.REACT_APP_STRIPE_PUBLIC_KEY\');\n\nfunction Index() {\n/*     const options = {\n        // passing the client secret obtained from the server\n        clientSecret: \'{{CLIENT_SECRET}}\',\n      }; */\n  return (\n    <Elements stripe={stripePromise} /* options={options} */>\n      <App/>\n      \n    </Elements>\n  );\n};\nReactDOM.render(<Index />, document.getElementById(\'root\'));\n …
Run Code Online (Sandbox Code Playgroud)

checkout stripe-payments reactjs

11
推荐指数
2
解决办法
5066
查看次数

无法在 Flutter 中找到 id=0 的同步

我正在使用 flutter_stripe 包,并根据他们的要求更改了 android 文件。

  • 颤振SDK:3.0.5
  • 颤振条纹:4.0.0
  • 设备:MacBook Pro m1 pro

控制台中显示的是

/SurfaceSyncer(12958): Failed to find sync for id=0
Run Code Online (Sandbox Code Playgroud)

有时也表现出

/SurfaceSyncer(12958): Failed to find sync for id=1
Run Code Online (Sandbox Code Playgroud)

/SurfaceSyncer(12958): Failed to find sync for id=2
Run Code Online (Sandbox Code Playgroud)

这是什么意思?付款也不起作用。它显示付款单。输入卡详细信息后,网络挂钩的网络视图会出现,然后消失。然后什么也没有发生。付款状态不完整。请帮助我

项目级构建 Gradle

buildscript {
ext.kotlin_version = '1.6.10'
repositories {
    google()
    mavenCentral()
}

dependencies {
    classpath 'com.android.tools.build:gradle:7.2.1'
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
allprojects {
    repositories {
        google()
        mavenCentral()
    }
}

rootProject.buildDir = '../build'
subprojects {
    project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
    project.evaluationDependsOn(':app')
}

task clean(type: Delete) { …
Run Code Online (Sandbox Code Playgroud)

android stripe-payments flutter flutter-dependencies flutter-stripe

11
推荐指数
1
解决办法
2万
查看次数

条纹:必须提供来源或客户

我正在尝试将Stripe集成到我的购物车项目中.我无法提交结帐表单.我不断收到此错误消息:"必须提供来源或客户." 要么我没有正确设置我的Stripe帐户,要么我在我的javascript中缺少一些参数.我花了好几个小时才解决这个问题,但仍然无法理解.

这是来自Stripe的日志:
Parsed Request POST Body

{
  "amount": "21000",
  "currency": "usd",
  "description": "Test Charge"
}
Run Code Online (Sandbox Code Playgroud)

响应机构

{
  "error": {
    "type": "invalid_request_error",
    "message": "Must provide source or customer."
  }
} 
Run Code Online (Sandbox Code Playgroud)

这是我的app.js.

var express = require('express');
var path = require('path');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var expressHbs = require('express-handlebars');
var mongoose = require('mongoose');
var session = require('express-session');
var passport = require('passport');
var flash = require('connect-flash');
var validator = require('express-validator');
var …
Run Code Online (Sandbox Code Playgroud)

javascript mongodb node.js stripe-payments

10
推荐指数
2
解决办法
1万
查看次数