使用 Express.js 和 Stripe API 处理信用卡付款

阅读时长 5 分钟读完

在网站开发中,处理信用卡付款是非常重要的功能。现今的支付网关 API 现已复杂而庞大,但 Stripe 简明易懂、可扩展性强,因此成为了最受欢迎的支付网关之一。在这篇文章中,我们将讨论如何使用 Express.js 和 Stripe API 处理信用卡付款。

Stripe API 概述

Stripe 是一家主打开发人员友好型支付网关的公司,他们提供了一个易于使用的 API,能够进行信用卡付款,处理退款,发票开具以及电子邮件通知等等。Stripe 甚至可以为我们检测诈骗,并自动防止欺诈行为的发生。

在使用 Stripe 之前,必须在 Stripe 网站上注册一个帐户。注册成功后,可以获得一个唯一的 API 密钥,用于配置和实现 Stripe API。

Express.js 概述

Express.js 是一个轻量级、灵活且具有强大功能的 Node.js web 应用程序框架。它提供了丰富的 HTTP 功能,并可以轻松地与第三方库和中间件集成在一起。Express.js 简化了从客户端向服务器传递数据的过程,并使使用 Node.js 快速搭建 web 应用变得容易。

创建 Stripe 帐户及 API 密钥

首先,请到 Stripe 网站注册并创建一个账户。注册成功后,在 dashboard 里面可以找到一个 tab 控件,点击里面的 API keys 可以找到你的密钥。

图一: Stripe API 密钥

集成 Stripe API 到 Express

在开始使用 Stripe API 之前,我们首先需集成它到我们自己的 Express 后台应用程序中。

1. 安装 Stripe Node.js 模块

我们首先需要在终端窗口中安装 Stripe Node.js 模块。您可以使用 npm 命令如下安装它:

2. 配置 Stripe API 密钥

在 Express 应用程序中获取配置信息通常是最好的实践,在 app.js 文件末尾添加以下代码:

请在字符串中使用您的 API 密钥代替 sk_test_xxxxxxxxxxxxxxxxxxxx

3. 使用 Stripe 的 API 功能

Stripe 的 Node.js 包提供了各种功能来处理信用卡交易。这些功能可以用于检查客户卡的有效性、处理付款、创建客户等操作。以下是一些简单的示例:

1. 创建订单

要创建收款订单,请使用以下代码:

2. 捕获付款

Stripe 在确保客户卡被授权的同时暂时将款项保留。要捕获款项并将其分发给帐户余额,请使用以下代码:

3. 退款

Stripe 允许您在帐户余额中之前没有足够的资金的情况下回收款项。要进行退款,请使用以下代码:

当然,这只是 Stripe API 的一部分,而 Stripe 的完整 API 可以支持许多其他类型的操作,例如创建和管理客户,创建和管理订阅等。

处理 Stripe API 中的 Webhooks

Stripe 的 Webhooks 功能可作为事件驱动的后端支持,例如账单事件、付款确认事件、退款事件等。Webhooks 是一种针对 Stripe 的基于 HTTP POST 请求的通知机制,可使用 Stripe 的 API 网关接收通知。

通过以下步骤可将 Stripe Webhooks 集成到您的 Express 应用程序中:

1. 安装开发依赖

2. 配置 Webhooks 端点

在 Express 应用程序中,请求 Stripe 执行 Webhooks 功能是非常容易的,只需定义我们的路由监听器,如下:

-- -------------------- ---- -------
-- -- ---- ------ ------ -------- -------- ----
--- ---------- - -----------------------

-- ------- -------- -----
---------------------------- --------------------- --------------------- ------------- ---- -
  --- ----- - ---------

  -- - ------------ --- -------- ----
  -- ----------- -- --------------- -
    -- ---
  -
  
  -- -- -------- --
  ---
  
  --------------------
---

3. 配置 Stripe Webhooks

要配置 Stripe Webhooks,请转到 Stripe Dashboard 中的 webhook 部分( 图 2 ),添加会话 URL 和相关的事件。Stripe 将使用您公开的 URL 以 POST 请求的形式向该 URL 发送 Webhooks 更新请求。

图二: Stripe Webhook 页面

结论

本文中我们探讨了如何使用 Stripe API 和 Express.js 来处理信用卡交易。我们讲解了 Stripe API 的基本概念和基本用法,并提供了如何将它集成到 Express 中的示例代码,最后讨论了如何通过 Webhooks 接收和处理 Stripe API 的事件和快照。这个流程对于前端开发人员是非常有指导意义的。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6751766a8bd460d3ad89ed90

纠错
反馈