我正在使用Stripe API设置付款,以允许用户在iPad上登录其Stripe帐户并接受任何人的付款.为此,我使用Stripe Connect登录并保存他们的帐户ID,然后我用它STPPaymentCardTextField
来获取信用卡详细信息,然后使用Stripe iOS SDK我提交了一张卡(带有测试卡信息) - 4242 ...)并通过获取令牌createTokenWithCard
.这成功返回一个令牌.此时我需要将该令牌连同目标帐户ID(在用户登录后提供给应用程序)和其他信息(货币,金额等)提交到我自己的服务器以将付款提交给Stripe.我已经确认信息正在提交并转发到Stripe,但Stripe返回错误:
{ type: 'invalid_request_error',
app[web.1]: message: 'No such token: tok_13vxes2eZkKYli2C9bHY1YfX',
app[web.1]: param: 'source',
app[web.1]: statusCode: 400,
app[web.1]: requestId: 'req_7AIT8cEasnzEaq' },
app[web.1]: requestId: 'req_7AIT8cEasnzEaq',
app[web.1]: statusCode: 400 }
Run Code Online (Sandbox Code Playgroud)
如果我们直接提交信用卡信息,完全避免令牌,则付款成功.这个令牌有问题,我们不确定它为什么会失败.这可能会出错?
[[STPAPIClient sharedClient] createTokenWithCard:card completion:^(STPToken *token, NSError *error) {
//submit tokenId and other info to 'charge' endpoint below
}
Run Code Online (Sandbox Code Playgroud)
的NodeJS:
app.post('/charge', (req, res, next) => {
stripe.charges.create({
amount: req.body.amount,
currency: req.body.currency,
source: req.body.token,
description: req.body.description,
destination: req.body.destination
}, (err, charge) => { …
Run Code Online (Sandbox Code Playgroud) 我确定我在这里遗漏了一些明显的东西,但是我无法理解如何检查现有卡片对顾客的看法.
我在laravel应用程序中使用条带连接api来代表其他人管理付款,基本过程如下:
token
通过stripe.js
付款表单创建并提交条带stripe_id
,否则使用令牌作为源/卡创建新客户charge
然后使用检索到的或新客户创建astripe_id
目前,如果客户退回并使用不同的卡,由于收费仅包括客户而非来源,因此无论如何都将对其默认卡收费.
我想做的是:
token
customer
本地数据库等card
客户卡的指纹card
在客户的记录上创建新的customer
和card
ids 创建费用简单地说:我无法看到过程card_id
中生成持久性的位置; 在stripe.js
响应中使用的那些以及在条带仪表板中创建的那些看起来都是唯一的,这意味着每次充电都会创建一个全新的卡片对象.
我知道我可以检索存储在客户帐户中的卡片列表 - 但是我card_id
从哪里获取初始搜索?
我在这里看到了一个涉及此问题的问题 - 在创建新卡片之前,我是否可以检查条带是否已经存在? - 但我不知道Ruby,所以不能做头或尾.
编辑:
更简单的版本 - 有没有办法在这里获得fingerprint
条纹文档中描述的内容 - https://stripe.com/docs/api/php#card_object - 无需先创建卡片对象?
我正在开发一个C2C门户网站,卖家将发布他们的产品,其他人可以购买.我计划将Braintree用于付款流程.现在,一旦付款完成,系统将收取佣金,并应将剩余部分转移给卖方.
我以为我可以使用ACH,但我找不到任何解决方案或要求的文件转移到卖家帐户.
注意:我可以使用Stripe Connect实现相同的功能.提出问题的原因是使用他人拥有的知识.
我正在尝试使用Stripe API收取申请费.我确信我在请求中遗漏了一些东西.
条带投诉它需要以下任一项:OAuth密钥,Stripe-Account标头或目标参数.
我正在传球Stripe-Account
.
你能指点我正确的方向吗?
这是我的卷曲请求:
curl https://api.stripe.com/v1/charges \
-u sk_test_<key>: \
-H "Stripe-Account: acct_<key>" \
-d amount=2000 -d currency=usd -d capture=true \
-d card=tok_<key> -d description="curl" -d application_fee=48
Run Code Online (Sandbox Code Playgroud)
以下是我得到的回复:
{
"error": {
"type": "invalid_request_error",
"message": "Can only apply an application_fee when the request is made on behalf of another account (using an OAuth key, the Stripe-Account header, or the destination parameter).",
"param": "application_fee"
}
}
Run Code Online (Sandbox Code Playgroud) 框架: Ionic Cordova
API: Stripe Connect(允许用户相互发送付款).
获取付款的注册过程是通过Stripe Connects自己的外部窗口进行的.注册Stripe Connect时,它使用重定向URI(在我的Stripe帐户的设置中设置)返回到您带有身份验证代码的屏幕.这适用于浏览器(因为重定向URI设置为localhost或IP),但手机上实际运行的应用程序没有,因为应用程序没有URL.因此它显示"站点不可访问/不存在"浏览器错误消息.
我目前使用以下方法打开Stripe Connect注册屏幕:
var link = "https://connect.stripe.com/oauth/authorize?response_type=code&client_id=MYCLIENTID&scope=read_write";
window.open(link, '_blank', 'location=no');
Run Code Online (Sandbox Code Playgroud)
我已经向Stripe支持寻求帮助,但他们没有解决方案.
我已尝试使用自定义URL方案为应用程序提供URL - 但Stripe仅允许"Http://"URL,而不是自定义URL方案提供的CoolAppName //:.
请不要对此感到困惑:如果我在cmd中运行"ionic run -l",然后使用给定的URL作为Redirect URI,它实际上也会使用手机上的身份验证代码重定向回来.但是,删除存储在应用程序中的每个信息,因此它"忘记"用户登录的内容.当然,此解决方案也只能在本地使用.
任何建议表示赞赏.
提前致谢.
我正在开发Ride Sharing应用程序并选择Stripe
付款程序.在应用程序中会发生什么,骑手可以提示给司机.为此,我使用这种方法,Rider将支付给App的stripe
帐户,然后app将保持其百分比,然后它将剩余的金额转移到驱动程序的条带帐户.
到目前为止一切都很顺利.App已经成功地向骑手收费,但是对于将金额转移到驾驶员的条带账户有点困惑.我查看了条纹文档,说我需要驱动程序的条带帐户CONNECTED_STRIPE_ACCOUNT_ID
,我无法找到它,也无法弄清楚它是什么.什么是条纹连接帐户?如何添加用户从android到我的平台条纹连接?
这是条带提供的代码段
Stripe.apiKey = PLATFORM_SECRET_KEY;
Map<String, Object> transferParams = new HashMap<String, Object>();
transferParams.put("amount", 1000);
transferParams.put("currency", "gbp");
transferParams.put("destination", {CONNECTED_STRIPE_ACCOUNT_ID});
Transfer.create(transferParams);
Run Code Online (Sandbox Code Playgroud)
如果有人向我解释这将是很好的.谢谢Ps我不想webview
在任何情况下在我的应用程序中使用.我不被允许使用它.
我已经浏览了文档,并且无法找到查询Stripe管理帐户的余额信息的方法.以下是用例:第三方通过启用Stripe Connect的平台设置托管帐户; 在一些顾客购买商品/服务后,我在他们的帐户上创建了一些收费对象(所以他们的余额现在是积极的); 现在他们想要支付但我想在发出转账之前查询他们的余额,以确保他们不会要求比他们的帐户更多.
当然我错过了一些明显的东西.提前致谢.
当我通过我的应用程序运行连接用户以接受付款的测试时,我将需要帐户ID来为其帐户收费.
Stripe\Token::create(
array("customer" => CUSTOMER_ID, "card" => CARD_ID),
array("stripe_account" => CONNECTED_STRIPE_ACCOUNT_ID) // id of the connected account
);
Run Code Online (Sandbox Code Playgroud)
在这个片段(来自Stripe)中,CONNECTED_STRIPE_ACCOUNT_ID
暗示了以acct_开头的id的连接
我如何获得这个?
谢谢,Rich.
我在提供外部银行详细信息以使用测试帐号和路由号码创建或更新帐户时遇到问题,它说:
在测试模式下进行转账或借记时,只能使用测试银行账号; request-id:req_8bwGXgBiv.
没有外部银行帐户更新和创作工作正常.我需要将我的外部银行详细信息放在我面临的问题上.我在这里堆积以更新我的帐户.
我使用account_number = 000123456789
与routing_number = 110000000
该帐户和路由号码由下式给出stripe api
map externalAccountParams = new HashMap(); externalAccountParams.put("routing_number",stripeAccount.getBankRoute()); externalAccountParams.put("account_number",stripeAccount.getBankAccount()); accountParams.put("external_account",externalAccountParams);
我正在尝试使用Stripe设置以下内容:
我创建了一个主帐户和一个子帐户.我已通过Stripe Connect将子帐户连接到主帐户.我在Stripe Connect过程结束时收到并存储了access_token和refresh_token.
付款时,一次付款可以涵盖多个项目.我有以下代码(PHP)来处理付款:
Stripe_Charge::create(array(
"amount" => $amt,
"currency" => "EUR",
"source" => $stripeCardToken,
"description" => $description),
"application_fee_percent" => 0.5
),
$stripeAccessToken
);
Run Code Online (Sandbox Code Playgroud)
对于每个付费项目,这都放在一个循环中.它也位于具有多个Stripe异常捕获的try/catch块中.但是,此方法失败,不会引发任何错误.
这是正确的类方法吗?是信用卡令牌的"来源"字段吗?有没有办法在不使用循环的情况下跟踪针对多个项目支付的金额?是 $stripeAccessToken
从Connect进程返回的子帐户的access_token,还是refresh_token?或者它是Master Account Publishable/Secret密钥?或者是其他东西?我可以将这种格式用于$ stripeAccessToken,还是必须Stripe::setApiKey($stripeAccessToken)
在循环之前使用?
主账户和子账户目前都在使用测试环境和假卡,但我也想测试实时交易.