支付与银行业线上客户协议应用中的DocuSign集成方式选择——SDK和API

本文涉及的产品
可观测可视化 Grafana 版,10个用户账号 1个月
容器镜像服务 ACR,镜像仓库100个 不限时长
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
简介: 跨境支付公司和Docusign进行集成时,碰到问题时的解决方案。分别用SDK和API集成后的各自使用体验。

某跨境支付公司,专注于为中国跨境卖家提供低成本的跨境支付解决方案和定制金融服务。该公司业务遍及200多个国家和地区,是全球最大的跨境电商数字服务供应商之一。在全球设有多个分支机构,对于促进国际电子商务交易起着重要作用。他们为卖家提供跨境金融服务,同时需要在线上app上签署电子合同。

Docusign的嵌入式签署有着良好的客户体验,同时提供了极高的规范化和安全性要求,尤其是在客户数据处理和合规性方面。并且无论交易的数额庞大或普通,Docusign都提供了一致的信任和法律法规效力。这些都契合了该跨境支付公司的业务需求,故进行了引入使用。

随着跨境金融业务迅猛发展,他们引入了某外资商业银行进行合作,来提供更强大的后台服务,因他们在2022年就已经引入Docusign平台,并且使用反馈良好,故此次他们也推荐合作银行使用Docusign平台,用于此商业银行与他们的共同客户进行线上一站式签约。

在2022年时,这家跨境支付公司和Docusign的SDK进行集成时,有出现一个问题--JDK版本无法达到11,所以咨询了Support以后,得到以下答复:
image.png

经过公司内部讨论最终决定降级到Docusign版本。

根据业务需求,此商业银行公司最终也选择了Docusign的SDK集成方式,在测试过程中出现了一个NoSuchMethodError: org.glassfish.jersey.model.internal.CommonConfig.的错误。立刻咨询了Support,得到以下答复:

image.png

Support要求提供的资料繁琐并且来往信件时间花费很长,所以,我们直接开始排查这个问题。

首先排除客户下载的是否是Docusign完全依赖第三方的Shaded包。"Shaded" 在 Java 的上下文中通常指的是一种打包技术,用于创建包含项目所有依赖的 "uber-jar"(超级 jar 文件)。这种打包方式将项目的所有依赖项,包括所有必需的第三方库及其资源文件,全部打包到一个单独的 JAR 文件中。这样做的目的是为了避免类路径上的依赖冲突,简化部署流程,以及确保应用程序在运行时能够访问到其所有依赖。因为Shaded相对会比较大,所以第一时间确认了包的大小和版本。发现无错后,进一步去查看报错的报错栈。发现以下问题:
image.png

因为Docusign是基于jakarta的依赖,明明Shaded包里已经有,却没有引用到正确的版本,说明jar包冲突了,通过pom文件,依次发现两个包:

image.png
image.png

通过上图提示发现,jersey依赖的jakarta包与其公司的内部依赖jakarta包版本冲突,在考虑不影响其他项目,无法升级jakarta的前提下,给出两个建议:

1、降低Docusign的推荐版本

2、将SDK改成Rest API方式

为了方便客户全局考虑,我们针对这两种方式进行了对比,以帮助客户进行选择。

以下是SDK和REST API的使用体验比较:

1️⃣DocuSign SDK

定义: SDK是一组预打包的代码库和工具,旨在帮助开发者快速集成特定平台或服务。DocuSign SDK封装了对API的调用,提供了更简单的编程接口。优点:易用性: SDK通常包括示例代码、文档和其他资源,使得开发者更容易开始使用。快速开发: 由于SDK处理了很多底层细节,因此可以加速开发过程。更少的错误: 使用经过良好测试的SDK可以减少集成中的错误。缺点:灵活性有限: SDK可能不支持API的所有功能,限制了定制化的可能性。依赖性: 依赖特定的SDK可能会导致与特定语言或平台的强绑定。更新滞后: SDK的更新可能滞后于API的最新变化。

2️⃣DocuSign Rest API

定义: 建立不同软件应用程序之间的通信。DocuSign的Rest API允许直接与其服务进行交互,提供了更多的控制和灵活性。优点:灵活性和控制: 直接使用API可以访问所有的功能,允许更细致和定制化的集成。与技术更新同步: API通常会及时更新,反映出服务的最新变化。广泛的兼容性: API可以用于多种编程语言和平台。缺点:更复杂: 直接使用API可能需要更深入的技术知识和理解。开发时间更长: 需要手动处理更多细节,可能导致开发时间延长。错误风险更高: 直接与API交互增加了引入错误的可能性。

总之,选择SDK还是Rest API取决于你的具体需求、技术栈和资源。如果你需要快速开发和简化的集成流程,SDK可能是更好的选择。如果你需要更多的定制化和控制,直接使用API可能更合适。

需要特别强调的是:新版本(如4.5)通常包含在旧版本(如3.1)中不存在的附加功能、改进和错误修复。所以一旦以后出现错误或者是附加功能,都可能会被要求升级SDK来解决问题。另外DocuSign Support对于旧版本不提供技术支持。

目录
相关文章
|
1月前
|
监控 API 计算机视觉
CompreFace:Star6.1k,Github上火爆的轻量化且强大的人脸识别库,api,sdk都支持
CompreFace 是一个在 GitHub 上拥有 6.1k Star 的轻量级人脸识别库,支持 API 和 SDK。它由 Exadel 公司开发,基于深度学习技术,提供高效、灵活的人脸识别解决方案。CompreFace 支持多种模型(如 VGG-Face、OpenFace 和 Facenet),具备多硬件支持、丰富的功能服务(如人脸检测、年龄性别识别等)和便捷的部署方式。适用于安防监控、商业领域和医疗美容等多个场景。
|
2月前
|
人工智能 IDE API
AI驱动的开发者工具:打造沉浸式API集成体验
本文介绍了阿里云在过去十年中为开发者提供的API服务演变。内容分为两大部分:一是从零开始使用API的用户旅程,涵盖API的发现、调试与集成;二是回顾阿里云过去十年为开发者提供的服务及发展历程。文中详细描述了API从最初的手写SDK到自动化生成SDK的变化,以及通过API Explorer、IDE插件和AI助手等工具提升开发者体验的过程。这些工具和服务旨在帮助开发者更高效地使用API,减少配置和调试的复杂性,提供一站式的解决方案。
|
1月前
|
人工智能 JSON 自然语言处理
AI 程序员的4个分身 | 代码生成专家+注释精灵+API集成助手+智能调试伙伴
AI 程序员的4个分身 | 代码生成专家+注释精灵+API集成助手+智能调试伙伴
217 35
|
1月前
|
SQL 人工智能 关系型数据库
Flink CDC YAML:面向数据集成的 API 设计
本文整理自阿里云智能集团 Flink PMC Member & Committer 徐榜江(雪尽)在 FFA 2024 分论坛的分享,涵盖四大主题:Flink CDC、YAML API、Transform + AI 和 Community。文章详细介绍了 Flink CDC 的发展历程及其优势,特别是 YAML API 的设计与实现,以及如何通过 Transform 和 AI 模型集成提升数据处理能力。最后,分享了社区动态和未来规划,欢迎更多开发者加入开源社区,共同推动 Flink CDC 的发展。
426 12
Flink CDC YAML:面向数据集成的 API 设计
|
24天前
|
SQL 人工智能 关系型数据库
Flink CDC YAML:面向数据集成的 API 设计
Flink CDC YAML:面向数据集成的 API 设计
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
企业级API集成方案:基于阿里云函数计算调用DeepSeek全解析
DeepSeek R1 是一款先进的大规模深度学习模型,专为自然语言处理等复杂任务设计。它具备高效的架构、强大的泛化能力和优化的参数管理,适用于文本生成、智能问答、代码生成和数据分析等领域。阿里云平台提供了高性能计算资源、合规与数据安全、低延迟覆盖和成本效益等优势,支持用户便捷部署和调用 DeepSeek R1 模型,确保快速响应和稳定服务。通过阿里云百炼模型服务,用户可以轻松体验满血版 DeepSeek R1,并享受免费试用和灵活的API调用方式。
216 12
|
2月前
|
人工智能 自然语言处理 API
百聆:集成Deepseek API及语音技术的开源AI语音对话助手,实时交互延迟低至800ms
百聆是一款开源的AI语音对话助手,结合ASR、VAD、LLM和TTS技术,提供低延迟、高质量的语音对话体验,适用于边缘设备和低资源环境。
1256 5
百聆:集成Deepseek API及语音技术的开源AI语音对话助手,实时交互延迟低至800ms
|
2月前
|
人工智能 JSON 安全
DeepSeek Engineer:集成 DeepSeek API 的开源 AI 编程助手,支持文件读取、编辑并生成结构化响应
DeepSeek Engineer 是一款开源AI编程助手,通过命令行界面处理用户对话并生成结构化JSON,支持文件操作和代码生成。
943 6
DeepSeek Engineer:集成 DeepSeek API 的开源 AI 编程助手,支持文件读取、编辑并生成结构化响应
|
2月前
|
弹性计算 监控 安全
API稳定安全最佳实践:用阿里云SDK为业务保驾护航
阿里云智能集团高级技术专家赵建强和曹佩杰介绍了API稳定安全最佳实践,涵盖业务上云真实案例、集成开发最佳实践、配额管理和共担模型四部分。通过分析企业在不同阶段遇到的问题,如签名报错、异常处理不严谨、扩容失败等,提出了解决方案和工具,确保API调用的安全性和稳定性。特别强调了SDK的使用、无AK方案、自动刷新机制以及配额中心的作用,帮助用户构建更稳定、安全的服务,提升运维效率。最终介绍了集成开发共担模型,旨在通过最佳实践和平台工具,保障业务的稳定与安全,推动行业创新与发展。
|
3月前
|
XML API 开发工具
如何接入电竞体育直播API或者SDK
接入电竞体育直播API或SDK的步骤包括:1. 选择合适的API/SDK提供商,如ESL、Riot Games、Twitch等;2. 注册并获取API密钥;3. 阅读官方文档,了解接口调用和数据处理;4. 实现实时更新,确保数据同步;5. 测试与优化,确保功能稳定;6. 遵守使用规范。通过这些步骤,可成功集成电竞直播功能。