如何在iOS应用程序中使用Stripe Connect

有没有人有成功使用条纹连接与iOS应用程序。 我有几个问题:

我遵循这里的指导: https : //stripe.com/docs/connect/getting-started

注册应用程序:容易,没有问题

然后再往下看:

发送你的用户到Stripe:再次,容易没有问题在这里,我只是有一个button,在UIWebView中打开链接。 我认为在URL中的client_id是好的? 我的很多不确定因素是我应该硬编码到应用程序中的ID /密钥

然后再往下看:

用户连接或创build一个Stripe帐户后,我们会将它们redirect回到您在应用程序设置中使用代码参数或错误设置的redirect_uri。

我在这里做的是使用UIWebview的webView:shouldStartLoadWithReqest:navigationType委托方法来检查URL中的string“code =”。 如果发现,那么我可以抓住“代码”参数。 所以现实中,redirect_uri对我来说完全没有必要。 这是处理这个问题的正确方法吗? 我应该在我的应用程序或我的服务器上做这个吗?

收到代码后,我们应该进行POST调用来接收access_token。 同样,这应该在应用程序内还是在服务器上完成? 它需要使用一个secret_key,所以我猜服务器? 如果需要将令牌发送到服务器,我该如何发送信用卡信息以及此令牌? 我知道如何获得卡号,有效期和CVV。 但是就传递给服务器而言(有或没有令牌)是我不确定的。

然后,当涉及到实际上在服务器上编写PHP,Ruby或Python代码时,我完全不知所措。

任何帮助将不胜感激。

你应该设置一个小型的networking应用程序来创build条带费用,并存储您的客户授权码。 在您的web应用程序中为redirect_uriwebhook_uriconfiguration两条路线,并在您的条纹应用程序设置中添加URL。 收费应该从服务器端的应用程序创build,因为它需要secret_key / authorization_code不应该存储在iPad应用程序。 否则可能会导致安全漏洞。 我试图描述下面的概念:

  1. 在应用程序中提供分stripe connect button ,并将链接设置为在Safari中打开(而不是在Web视图中)。 你应该添加一个state参数到一个用户唯一的id的url。

  2. 点击button,你的用户将被redirect到Stripe,他/她将被要求授权你的应用程序。 在授权条纹会打你的redirect_uri一个authorization_code和你以前提供的state 。 根据带有authorization_code Stripe文档进行邮寄调用以获得access_token 。 将与state映射的access_token存储在数据库中。

  3. 在您的应用中定义自定义urlscheme。 从您的Web应用程序调用自定义url。 用户应该在移动Safari浏览器中打开url。 所以调用自定义url将重新打开您的应用程序。 您可以传递一个额外的参数来指示失败/成功。 在您的应用程序基于此参数更新视图。

  4. 现在,您已经准备好代表iPad用户在您的服务器上进行收费。 使用stripe iOS sdk从卡信息生成一个card_token 。 这将需要你的条纹publishable_key 。 然后在你的web应用程序中定义一个API,它需要3个参数: card_tokenuser_idamount 。 只要你想创build一个收费,从你的iPad应用程序调用这个API。 如果您担心使用任何标准encryption方法的安全性,您也可以使用密钥encryption这些信息。 您可以轻松解密您的Web应用程序中的信息,因为您知道密钥。

  5. 当从iPad应用程序调用此API时,您将收到user_id (您之前保存为state ), card_tokenamount 。 检索映射到user_id (或状态)的access_token 。 然后,您可以使用access_tokencard_tokenamount代表用户收费。

您可以在服务器中使用ruby / php / python / node,因为Stripe为它们提供了sdk。 我认为还可以使用其他语言,还有一个REST接口。

请注意,这只是一个概念。 它应该像这样工作,但我还没有实现它。 完成后,我会用示例代码更新这个答案。

你可以使用UIWebView。 您仍然需要使用redirectURL,并使用委托“webView:shouldStartLoadWithRequest:navigationType:”监视redirect

Interesting Posts