随着互联网的普及,支付成为了商业活动不可或缺的一部分。为了方便开发者使用支付功能,有许多支付服务商提供了各种支付 SDK 或 API。其中,Cardinity 是欧洲领先的、面向中小企业的在线支付服务提供商,它的支付 API 可以帮助开发者轻松地实现信用卡支付。
本文介绍的是 Cardinity 的 JavaScript SDK,即 cardinity-js,它可以在前端直接调用 Cardinity 的支付 API。在本文中,我将为大家详细介绍 npm 包 cardinity-js 的使用方法,并提供一些示例代码。
安装
在使用 cardinity-js 之前,你需要先安装 npm。安装 npm 的方法可以在网上轻松找到,此处不再赘述。安装好 npm 之后,在项目根目录下打开终端,输入以下命令安装 cardinity-js:
$ npm install cardinity-js
安装完成后,我们就可以开始使用 cardinity-js 来处理支付请求了。
配置
在调用 cardinity-js 的 API 之前,你需要先进行配置。你需要在 Cardinity 的后台获取以下参数:
apiKey
和apiSecret
:用于身份验证和调用 Cardinity API。merchantId
:亦称为 "项目 ID",标识你的商户账户。debug
:是否开启调试模式。
获取好这些参数后,我们可以编写如下代码进行配置:
import Cardinity from 'cardinity-js'; const cardinity = new Cardinity({ apiKey: 'your_api_key', apiSecret: 'your_api_secret', merchantId: 'your_merchant_id', debug: true, // 是否开启调试模式 });
在调试模式中,你便可以看到更多有用的信息来帮助你调试问题。但在生产环境中,我们必须将这个选项设为 false。
创建支付订单
一旦 cardinity-js 配置完成,我们就可以开始创建支付订单了。在 Cardinity API 中,每笔支付都需要对应一个支付订单,而在 cardinity-js 中,我们可以通过 createPayment
方法来创建一个支付订单。
-- -------------------- ---- ------- ----- ----------- - - ------- ------ -- ---- --------- ------ -- ---- -------- ----- -- ------- --------------- ------- -- ---------------- ------------------- - ---- ------------------- -- -- --------- ----- -- ---- ---------- -- -- ---- ---- ------ -- --- -- --------- ----------- -- --- ------------ ----- --------- -- ---- -- ----- ------- - ----- ------------------------------------- ---------------------
这里我们创建了一个包含必要参数的 paymentData
对象,并使用该对象调用 createPayment
方法。方法执行成功后,会返回包含支付订单信息的 payment
对象,在 console.log
中输出该对象以便调试。
需要注意的是,创建支付订单所需的参数与 Cardinity API 官方文档中的参数基本一致,只是稍微有些调整。所以,你可以在文档中找到更多详细参数信息。
获取支付订单信息
我们已经成功创建了一个支付订单,那么如何获取支付订单信息呢?很简单,你可以使用 getPayment
方法来获取指定的支付订单。
const paymentId = 'your_payment_id'; // 支付订单 ID,需要提前保存 const payment = await cardinity.getPayment(paymentId); console.log(payment);
这里我们将支付订单 ID 填入 getPayment
方法中,并在控制台中打印出返回的支付订单信息。如果你在之前的创建支付订单部分中已经保存了支付订单 ID,那么你要做的只是把它放到这个方法的第一个参数中,并执行该方法即可。
撤销支付订单
在某些情况下,我们需要撤销一笔支付订单。Cardinity 的 API 中提供了撤销订单的方法,而在 cardinity-js 中,我们可以直接调用 cancelPayment
方法来完成此操作。
const paymentId = 'your_payment_id'; // 支付订单 ID,需要提前保存 const reason = 'refund'; // 撤销原因 const payment = await cardinity.cancelPayment(paymentId, reason); console.log(payment);
在上述代码中,我们填入了支付订单 ID 和撤销原因,然后执行了 cancelPayment
方法。这个方法将客户端指定的订单标记为取消状态,并将相关信息上传到服务器。方法执行成功后,将返回一个包含支付订单信息的 payment
对象。
结尾
至此,我们已经学习了如何使用 cardinity-js 执行各种支付相关的操作。本文提供的示例代码仅用于演示各个方法的基本用法,实际应用中仍需要你自己根据实际需求进行修改。Cardinity 的官方文档中还有更多的信息和操作,你可以前往文档页面学习更多内容。
如果你对本文的内容有任何疑问或建议,欢迎在评论区中留言,我们很乐意为你解答。希望这篇文章可以帮助你更好地在前端中使用 Cardinity 实现支付功能!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60065f86238a385564ab6cd9