Square 和 Firebase 之间有集成吗?

Is there integration between Square and Firebase?

背景信息

Square 最近发布了 SquareSDK

Firebase 兼容 StripeSDK

问题

Firebase 与 Square 兼容吗?

是否有允许集成的支持?

我已经完成了 Square 的准备工作,我注意到他们的示例应用程序中有一个演练,具体来说,他们的 sample code 允许我们更换收费服务器,我可以将其更换为Firebase 托管?

示例代码

Square Cookie Demo,"take"支付指南中的收费服务器设置代码:

private static final String CHARGE_SERVER_HOST = "REPLACE_ME";
private static final String CHARGE_SERVER_URL = 
"https://" + CHARGE_SERVER_HOST + "/";

Firebase Stripe 演示,"process" 付款指南中设置密钥的代码:

firebase.initializeApp({
    apiKey: "your-web-api-key",
    authDomain: "your-firebase-project-id.firebaseapp.com",
    databaseURL: "https://your-firebase-project-id.firebaseio.com",
    storageBucket: "your-firebase-project-id.appspot.com",
    messagingSenderId: "your-cloud-messaging-sender-id"
  });
  Stripe.setPublishableKey('your-stripe-publishable-key');

一些想法

来自 Square cookie 演示的演练,

(1) 注册 square 以获得访问密钥,目的是通过应用程序与他们的 api 进行通信,[✓]

(2) 注册 heroku,以部署应用程序。并托管收费服务器,[✓]

(3) 将我们从square 获得的密钥放入heroku 账户。 [✓]

我想 .setPublishableKey(...) 与此过程类似?

(1)注册square获取访问密钥,[✓]

(2) 注册 firebase 以获得应用程序的托管功能。,[✓]

(3) 将我们从 Square 获得的密钥放入 firebase 帐户(通过 CLI)。 [???]

Square 没有与 Firebase 的官方集成,但肯定与 Square 兼容。

除非您将特定的 Firebase 托管路由配置为指向正在处理您的收费的 Firebase 云功能,否则您将无法将收费服务器替换为 Firebase 托管。

您会在 source code of Firestripe 中看到他们正在创建一个云函数来处理 "backend" 上的费用。

至于可发布密钥,它在 Square 中相当于您的应用程序 ID。它用于识别您的付款表单,用于生成您传递给后端以创建客户卡或直接用于处理交易的随机数。

由于您似乎引用了应用内支付 SDK,因此您可以引用 backend server quickstart 来查看收费情况。将其重构为云函数应该相当容易。

补充阅读: