从Stripe Webhook更新Parse.com用户

时间:2015-04-28 16:31:13

标签: javascript wordpress parse-platform stripe-payments webhooks

首先我看到这里有几个Parse / Stripe问题,但没有一个对我有任何帮助。

我有一个具有免费和付费功能的移动应用程序。变量存储在Parse.com中的User类中,并在运行函数时检查其权限。我想设置一个帐户门户(与我的应用分开),因此当用户希望注册时,他们会被发送到他们的浏览器,并可以通过SSL等注册计划。

对于帐户门户网站,我有一个带有Stripe插件的Wordpress网站,可以为我进行会计,发票和表单创建工作。

在Wordpress网站上注册后,我想在Parse.com上收到webhook并运行一个更新User类的函数。理想情况下,这将是一个捕获所有功能,将根据他们的帐户状态将用户更改为多个州(即他们停止支付并且计划将被暂停)。

我的问题有两个:

  1. 我需要在Stripe webhook设置中放置哪些详细信息(URL等)才能将所有事件发送到我的Parse.com云代码?

  2. 如何在收到Parse.com的webhook后收到/运行我的云端功能?

  3. 如果您对我的应用程序应该如何运作有任何建议,我会批评并在我的实施中保持灵活性。

    非常感谢提前。

2 个答案:

答案 0 :(得分:6)

经过一些实验后确定:

  1. 使用以下网址在Stripe Accounts区域中创建一个webhook: https://**APPLICATION_ID**:javascript-key=**JAVASCRIPT_KEY**@api.parse.com/1/functions/update_user

  2. 在您的云代码中,使用与URL最后部分相同的功能名称。就我而言update_user

  3. 创建webhook的测试版本并将其放入您的云代码中进行测试:

  4. Parse.Cloud.define("update_user", function(request, response) { response.success('** WEBHOOK WORKING **' + request); });

    在条带仪表板中运行测试时,您应该看到:

    enter image description here

    希望这有助于某些人 - 感谢任何人对我的实施所做的任何输入或者在我的User课程更新中运行的光滑功能。

答案 1 :(得分:1)

大多数情况下,我认为您的解决方案可行。

我认为如果您没有验证来自条纹的事件,使用javascript密钥可能会带来安全风险。

您的javascript密钥将出现在您的网站上。有人可以得到它并调用您的云代码功能。我会使用主密钥,因此您只能从您信任的来源获知它。他们可能会更改重要的结算信息。

在云功能定义中,您可以检查是否使用了主密钥。

Parse.Cloud.define('stripeEvents', function (request, response) {
if (request.master){
    return response.success('stripeEvents - master');
}
response.error('stripeEvents - must use master key');});