Mở cửa với Ngân hàng hướng API
Bởi: Pannerselvam D, AVP, Intellect Design Arena
Các dịch vụ dựa trên đám mây như SaaS (Phần mềm dưới dạng dịch vụ), PaaS (Nền tảng dưới dạng dịch vụ), IaaS (Cơ sở hạ tầng dưới dạng dịch vụ) và NaaS (Mạng dưới dạng dịch vụ) đã trở thành những từ thông dụng trên thị trường. Theo một báo cáo, thị trường điện toán đám mây toàn cầu ước tính đạt mức khổng lồ 219 tỷ đô la vào năm 2020 và có khả năng tăng lên 791 tỷ đô la vào năm 2028 1 . Mặc dù đại dịch đóng vai trò quan trọng trong việc các doanh nghiệp chuyển sang Đám mây, nhưng cũng có những yếu tố khác giúp thúc đẩy sự thay đổi này. Một số trong số đó là chi phí bảo trì thấp hơn, áp dụng nhiều hơn các công nghệ như AI và ML và tăng cường tài trợ cho Đám mây ở các nước phát triển.
Mặc dù các ngân hàng chuyển sang Đám mây để cải thiện khả năng mở rộng, giảm bớt rắc rối bảo trì và chi phí, nhưng việc di chuyển lên Đám mây không phải lúc nào cũng là giải pháp. Khi ngân hàng phát triển, các sản phẩm và ứng dụng hỗ trợ các sản phẩm đó cũng phát triển theo. Điều có thể xảy ra là các ứng dụng này sẽ tiếp tục hoạt động trong các silo. Theo mặc định, điều đó có nghĩa là ngân hàng không có được bức tranh toàn cảnh. Không chỉ vậy, còn nhiều hơn thế nữa.
Ngân hàng nên chuẩn bị như thế nào cho quy mô liên tục? API có thể là câu trả lời không?
Như đã đề cập trước đó, một trong những vấn đề chính mà các ngân hàng phải đối mặt là quản lý nhiều loại ứng dụng khác nhau trong bối cảnh CNTT của mình. Khi có nhiều ứng dụng hơn, thì việc giao diện các ứng dụng này trở thành một nhiệm vụ cồng kềnh. Hãy lấy ví dụ về một tổ chức tài chính đa dạng hàng đầu trong khu vực APAC cung cấp đầy đủ các sản phẩm và dịch vụ tài chính cho cả khách hàng tổ chức và cá nhân. Ngân hàng đã triển khai hơn 300 ứng dụng với các công nghệ khác nhau, tất cả đều ở nhiều giai đoạn khác nhau. Do đó, ngân hàng gặp phải một số khó khăn trong việc giao diện các hệ thống này. Một số trong số đó là:
1. Duy trì nhiều hệ thống giao diện: Mỗi hệ thống cần có chức năng giao diện riêng để kết nối với nhiều hệ thống hạ nguồn khác. Điều đó dẫn đến việc triển khai các loại chức năng giao diện tương tự trong tất cả các hệ thống.
2. Chi phí và thời gian lớn cho bất kỳ yêu cầu thay đổi nào: Vì có sự thay đổi trong giao diện của hệ thống hạ lưu, tất cả các chức năng giao diện của các ứng dụng bị ảnh hưởng đều phải thay đổi. Những thay đổi giao diện này tốn kém và đòi hỏi thời gian triển khai dài hơn.
3. Khó khăn trong việc duy trì các tài liệu giao diện: Vì có nhiều ứng dụng nên ngân hàng gặp khó khăn trong việc duy trì các tài liệu giao diện cho tất cả các ứng dụng này.
4. Khó khăn trong phân tích tác động: Ngân hàng gặp khó khăn khi thực hiện phân tích tác động của những thay đổi giao diện và có trường hợp sản xuất bị gián đoạn do phân tích tác động không phù hợp.
5. Chi phí cấp phép cao: Một số ứng dụng có chức năng giao diện được triển khai trong phần mềm trung gian cụ thể như JBOSS, dẫn đến chi phí cấp phép bổ sung cho ngân hàng, ngoài chi phí liên quan đến ứng dụng.
API có thể là câu trả lời cho những vấn đề này. API là một tập hợp các quy tắc hướng dẫn máy tính hoặc ứng dụng giao tiếp với nhau. API hoạt động như một lớp trung gian giữa ứng dụng và máy chủ web, xử lý việc truyền dữ liệu giữa các hệ thống 2 .

Trung tâm API bên ngoài: Lớp này bao gồm các container API cho mỗi hệ thống frontend do ngân hàng, các công ty con và các công ty Fintech khác cung cấp. Mục đích của lớp này là triển khai các yêu cầu chức năng của hệ thống frontend và tránh mọi logic trong hệ thống frontend. Điều này cũng có thể được gọi là Backend cho Hệ thống Frontend.
Các chức năng của trung tâm API bên ngoài bao gồm:
Ủy quyền: Ủy quyền truy cập API của từng hệ thống giao diện người dùng với Red Hat Single Sign-On.
Tổng hợp: Gọi nhiều API nội bộ và tổng hợp kết quả cho hệ thống giao diện người dùng.
Chuyển đổi: Chuyển đổi các thông điệp yêu cầu và phản hồi theo nhu cầu của hệ thống giao diện như lọc, định dạng dữ liệu, chuyển đổi thông điệp, v.v.
Bộ nhớ đệm: Phục vụ tham số hoặc dữ liệu tĩnh cho hệ thống giao diện.
2. Internal API Hub: Lớp này bao gồm các container API cho từng bộ xử lý sản phẩm hoặc hệ thống phụ trợ. Mục đích của lớp này là phục vụ các API chuẩn thông qua chuyển đổi. Ví dụ, trong trường hợp của ATM, các thông báo được chuyển đổi từ định dạng ISO sang định dạng JSON cho mục đích chuẩn hóa.
Thiết kế API Hub mới này giúp ngân hàng:
Chuẩn hóa giao diện API: API Hub đảm bảo rằng tất cả các giao diện API đều có định dạng JSON và tuân theo Thiết kế API chuẩn. Điều này giúp các nhà phát triển dễ dàng hiểu được thông số kỹ thuật và cách sử dụng API.
Bảo trì hồ sơ: Thông số kỹ thuật của tất cả API được hợp nhất và duy trì như một phần của API Hub và mọi người đều có thể dễ dàng tham khảo.
Giảm chi phí cấp phép: API được phát triển trong khuôn khổ Apache Camel và triển khai dưới dạng Microservices trong nền tảng container RH OpenShift. Điều này giúp giảm chi phí cấp phép cho từng phiên bản JBOSS cần thiết cho chức năng giao diện của ứng dụng.
Phân tích tác động và yêu cầu thay đổi: Theo thiết kế của API Hub, các ứng dụng được kết nối với một hệ thống (API Hub) thay vì được kết nối với nhiều hệ thống hạ nguồn. Do đó, phân tích tác động và yêu cầu thay đổi được xử lý trơn tru.
Cải thiện hiệu suất: Thiết kế API Hub giúp giảm TAT của các chức năng frontend, thay vì gọi nhiều API từ hệ thống frontend. Hãy lấy ví dụ về chuyển tiền, nhiều xác thực, kiểm tra AML, giới hạn tài khoản và OTP đã được kiểm tra thông qua các lệnh gọi API song song và sau đó chuyển tiền thực tế được bắt đầu. Các lệnh gọi API song song giúp giảm thời gian xử lý cho từng hoạt động.

Phần kết luận
Các ngân hàng trong tương lai không chỉ phục vụ nhu cầu ngân hàng và đầu tư của chúng ta mà còn hoạt động như một điểm dừng chân cho mọi nhu cầu liên quan đến tiền bạc. Giống như Đám mây, API cũng không phải là viên thuốc vạn năng cho quá trình chuyển đổi số. Các ngân hàng nên đầu tư vào các nền tảng đám mây gốc toàn diện, có khả năng phục hồi trong tương lai, có thể mở rộng và nhanh nhẹn.
Nguồn
1. https://www.fortunebusinessinsights.com/cloud-computing-market-102697
2. https://www.ibm.com/cloud/learn/api