Swedbank Pay SDK for iOS
Swedbank Pay iOS SDK 简化了在 iOS 应用程序中实现 Swedbank Pay API 平台。
安装
SDK 有两个组件,SwedbankPaySDK
和 SwedbankPaySDKMerchantBackend
。第一个是核心 SDK,第二个包含与实现 商户后端 API 的服务器接口的实用工具。
如果您不使用商户后端 API 进行后端通信,您只需要使用 SwedbankPaySDK
组件。否则,您应该将这两个组件添加到您的项目中。
Swift 包管理器
SDK 可通过 Swift 包管理器获取。这是将 SDK 添加到 Xcode 项目的最简单方法。
按照 此处 的说明添加 SwiftPM 依赖项。使用 https://github.com/SwedbankPay/swedbank-pay-sdk-ios.git
作为仓库 URL。根据您的用例选择只添加 SwedbankPaySDK
库或添加两个库。
Cocoapods
SDK 还可以通过 CocoaPods 获取。这两个组件分别有自己的 pod,名为 SwedbankPaySDK
和 SwedbankPaySDKMerchantBackend
。
请在您的 Podfile
中添加相关的依赖。
pod 'SwedbankPaySDK', '~> 3.0'
pod 'SwedbankPaySDKMerchantBackend', '~> 3.0'
使用方法
请参阅 开发者门户 以获取使用说明。
要探索使用 SDK 的示例应用程序,请参阅 示例项目。
要将 API 文档导入 Xcode,在文档窗口中浏览类型和函数,请双击文档文件夹中的任何 .doccarchive
文件。对于完整的集合,请选择 SwedbankPaySDK+MerchantDocumentation
,如果您未使用 BackendMerchant,则选择其他选项。
演示/集成到现有应用中
开始处理支付,您需要以下四个东西
- 一个 SwedbankPaySDKConfiguration 对象,用于描述如何与您的后端进行通信。要快速入门,提供了一个默认实现,称为 MerchantBackendConfiguration。
- 一个支付订单,用于描述要购买的内容、成本、货币和类似信息。
- 将支付订单提供给 SwedbankPaySDKController 的一个实例,并将其显示在视图层次结构中。
- 实现 SwedbankPaySDKDelegate 回调,等待支付成功或失败。
我们不仅口头讲,还提供了一个示例应用程序,详细展示了集成方法。在构建自己的解决方案时,请以此作为参考
1. SwedbankPaySDKConfiguration 详细信息
使用 MerchantBackendConfiguration,您只需要提供后端 URL、API 密钥和访问令牌的头部值。请参阅示例应用程序中 PaymentViewModel.swift 中的配置变量,作为参考。
SDK将随后与您的后端进行通信,期望使用与示例后端相同的API。您无需提供所有API,只需要 /paymentorders 即可进行支付,但您可能很快就会想支持 /tokens 和 /patch。要开始,您可以查看我们的后端示例实现,它提供了一个完整的功能集,并以非常清晰易懂的方式描述了如何处理请求。
使用商家示例后端,您可以设置(例如)一个Node.js后端,并在集成应用程序的同时以调试模式向客户端提供服务。请记得在appconfig.json文件中提供您的api密钥和其他值,以确保请求可以正确运行。
2. PaymentOrder详情
在PaymentViewModel.swift中有一个paymentOrder属性,它说明了我们如何创建它。PaymentOrders为人民提供了可以省略的属性默认值,这样您就只需要提供客户打算购买的价值或是为了访问高级功能。
3. 呈现支付菜单
最后一步是创建SwedbankPaySDKController的实例并呈现给用户。在示例应用程序中,我们将其添加为子视图控制器,但它可以通过任何其他方式进行管理,请参阅PaymentViewController.swift以获取详细信息。
4. SwedbankPaySDKDelegate
委托模式在iOS社区中非常知名,并且广泛使用。实现您感兴趣的委托回调以获取通知,了解购买的当前状态。通常,您至少需要知道付款是否成功、已取消或失败,但还有一些可以使用的更多回调。请参阅SwedbankPaySDKDelegate协议或示例应用程序实现以获取更多详细信息。
集成结论
这就是您开始接受付款所需的一切,下一步是让您的客户保存其卡片详细信息,或为订阅或稍后阶段的费用创建购买令牌。具体取决于您的使用场景。
继续阅读仅限付款令牌浏览或企业令牌浏览,了解更多关于付款令牌的讨论。这些功能在Swedbank Pay开发者门户的“可选功能”部分也有很好的文档记录。
有关如何操作SDK以及设置必要的回调的更深入细节,请参阅SwedbankPay SDK文档。
贡献
在GitHub上欢迎提交bug报告和拉取请求。本项目旨在成为一个安全、欢迎的协作空间,并期望贡献者遵守行为准则并签署贡献者许可协议。
许可
此存储库中的代码以Apache 2.0许可证和贡献者许可协议的条款下提供为开源。