Tích hợp API, đồng bộ dữ liệu và phát triển API

Tích hợp API cho phép hai hệ thống trao đổi dữ liệu mà không cần người ở giữa. Việc đó xuất hiện trên website, trong chương trình Windows và trong tiện ích Office — nhưng ở đâu cũng là cùng một công việc và mang cùng một rủi ro: một nửa mã phụ thuộc vào hệ thống của người khác, thứ bạn không kiểm soát và có thể thay đổi mà không báo trước. Vì vậy đây là dịch vụ riêng, có phân tích và giá riêng: kết nối với dịch vụ bên ngoài, đồng bộ dữ liệu và tích hợp ERP, cùng phát triển API khi hệ thống khác cần truy cập vào hệ thống của bạn.

Phản hồi trong 24 giờ · Báo giá trước khi bắt đầu · Sửa lỗi miễn phí 30 ngày · Mã nguồn và tài khoản thuộc về bạn

Phía bên kia

Một nửa công việc không nằm trong tay bạn

Mã do tôi viết thì tôi sửa được trong một giờ. Dịch vụ ở phía bên kia có quy tắc riêng, hạn mức riêng và sự cố riêng, và ở đó thì phải chờ. Mọi thứ tiếp theo trên trang này đều được viết vì câu đó.

Ở khắp nơi

Xuyên suốt mọi việc khác tôi làm

Cùng một tích hợp được đưa vào website, vào chương trình Windows hoặc vào tiện ích Office. Chỉ có màn hình xung quanh là khác, còn khối lượng công việc thì như nhau.

Bằng chứng

Nhìn thấy được đã gửi gì

Mỗi tích hợp đều có nhật ký: đã gửi gì, nhận về gì và vào lúc nào. Không có nó thì mọi tranh cãi đều thiếu bằng chứng; có nó thì trong một phút đã thấy lỗi thuộc về bên nào.

Tôi làm gì

Kết nối với dịch vụ bên ngoài

Phần mềm của bạn gọi phần mềm của người khác: thanh toán thẻ, dịch vụ kế toán, đơn vị vận chuyển, bảng giá của nhà cung cấp, SMS hoặc email. Tôi viết lệnh gọi, xử lý phản hồi, cách hành xử khi không có phản hồi, và nhật ký để kiểm tra về sau.

Đồng bộ hai chiều

Hai hệ thống giữ cùng một dữ liệu và cả hai đều sửa nó — website và ERP, cửa hàng và kho, CRM và kế toán. Phần khó nhất nằm ở câu hỏi thay đổi của bên nào mới hơn và phải làm gì khi cả hai cùng sửa một bản ghi.

Sửa tích hợp đã ngừng chạy

Nó chạy nhiều năm, rồi phía bên kia ngừng phiên bản cũ, đổi cách đăng nhập hoặc áp hạn mức số lệnh gọi. Tôi đi vào mã có sẵn, tìm ra điều gì đã thay đổi và đưa kết nối trở lại, bất kể ai là người đã viết.

API của riêng bạn

Khi phần mềm của người khác cần lấy dữ liệu từ bạn — đối tác, ứng dụng, website hay hệ thống của khách hàng — tôi xây API cho bạn: khóa truy cập, phân quyền, hạn mức lệnh gọi và tài liệu để lập trình viên bên kia làm việc mà không phải gọi điện.

Thanh toán và hóa đơn điện tử

Thanh toán thẻ, hoàn tiền và gói thuê bao, cũng như gửi lên hệ thống hóa đơn điện tử. Đây là trường hợp đặc biệt vì lỗi làm mất tiền chứ không chỉ mất thời gian, nên phải có cơ chế thử lại mà không thu tiền hai lần cho cùng một khoản.

Chuyển và nhập dữ liệu

Chuyển một lần từ hệ thống cũ sang hệ thống mới, hoặc nhập định kỳ bảng giá và tồn kho từ nhà cung cấp. Khi công việc chủ yếu nằm trong chính cơ sở dữ liệu — lược đồ, chỉ mục, làm sạch — thì đó là công việc với cơ sở dữ liệu.


Vì sao đây là việc riêng, không phải một phần của việc xây dựng

Khi tôi làm màn hình, cơ sở dữ liệu hay báo cáo, tôi biết mọi thành phần và sửa được tất cả. Với tích hợp thì không như vậy, nên việc ước tính, kiểm thử và tính phí đều khác. Sáu điều sau xuất hiện trong hầu hết mọi dự án loại này:

  • Tài liệu không khớp thực tế. Trường dữ liệu mà theo hướng dẫn luôn tồn tại đôi khi lại trống, còn ví dụ trong tài liệu thì trả về lỗi. Phần đầu của công việc là xác định dịch vụ thực sự hành xử thế nào.
  • Đăng nhập và khóa. Mật khẩu, token hết hạn, cửa sổ OAuth cần người bấm, chứng chỉ có thời hạn. Mỗi cách gia hạn một kiểu và cách nào cũng có thể làm đứt kết nối lúc ba giờ sáng.
  • Hạn mức số lệnh gọi. Các dịch vụ đếm lệnh gọi và hoặc tính tiền hoặc từ chối. Vì thế cần hàng đợi và ghi nhớ những gì đã lấy, thay vì mỗi lần tải lại toàn bộ.
  • Phía bên kia thay đổi không báo trước. Một phiên bản bị ngừng, một trường bị đổi tên, điều kiện siết lại. Tích hợp được viết sao cho điều đó lộ ra ngay và ở một chỗ, chứ không phải ba tháng sau qua khiếu nại của khách.
  • Lỗi lúc có lúc không. Dịch vụ sập hai phút. Công việc không được dừng mà cũng không được chạy hai lần — vì vậy cần thử lại và quy tắc một đơn hàng không thể gửi đi hai lần.
  • Môi trường thử không phải môi trường thật. Dịch vụ thử nghiệm thường chấp nhận thứ mà bản thật từ chối. Một phần công việc chỉ có thể khép lại trên dữ liệu và tài khoản thật của bạn.

Tích hợp trí tuệ nhân tạo là một trường hợp đặc biệt của cùng câu chuyện: đó cũng là kết nối tới dịch vụ bên ngoài, chỉ khác ở chỗ câu trả lời cho cùng một câu hỏi không nhất thiết giống nhau hai lần, nên nó có trang riêng và phân tích riêng.


Công việc diễn ra thế nào

  • Bạn cho biết cần nối hai hệ thống nào và điều gì nên xảy ra — ví dụ „khi khách thanh toán trên website, hóa đơn phải vào phần mềm kế toán".
  • Phân tích API của bên kia. Tôi đọc tài liệu, gọi thử bằng tài khoản của bạn và xác định điều gì là khả thi. Đây là phần duy nhất không thể bỏ qua, vì thiếu nó thì không biết giá cũng không biết công việc có lời giải hay không.
  • Báo giá cho phạm vi đã thỏa thuận. Sau phân tích, bạn nhận giá cố định và danh sách các tình huống được bao gồm, kể cả việc phải làm gì khi phía bên kia không trả lời.
  • Làm trên tài khoản thử nghiệm ở những nơi dịch vụ bên ngoài có hỗ trợ, rồi kiểm tra trên dữ liệu của bạn trước khi đưa vào chạy thật.
  • Bàn giao. Bạn nhận mã nguồn, khóa đứng tên bạn, nhật ký lệnh gọi và hướng dẫn ngắn về việc phải làm khi phía bên kia đổi quy tắc.

Nhận xét của khách hàng

★★★★★5/5

“Hợp tác với Dejan rất tuyệt vời. Anh ấy chuyên nghiệp, đáng tin cậy, có chuyên môn cao và luôn bàn giao công việc chất lượng đúng hạn. Anh ấy giao tiếp rõ ràng, phản hồi nhanh trước các góp ý và thể hiện sự hiểu biết sâu sắc về yêu cầu dự án. Tôi sẵn lòng tiếp tục làm việc với anh ấy và nhiệt tình giới thiệu anh ấy cho các khách hàng khác.”

Xiao Z.
Từ dự án: Chương trình tự tải tài liệu từ cổng thông tin không có API
★★★★★5/5

“Tin tuyệt vời là phiên bản 6 hoạt động rất tốt cả trên máy của chúng tôi lẫn máy của đồng nghiệp. Vậy có thể xem đây là phiên bản cuối ở thời điểm hiện tại. Cảm ơn bạn vì sự hợp tác đến nay và chúc bạn có thời gian vui vẻ tại Việt Nam! 😊”

Ivan R.
Từ dự án: Tạo công việc trên Productive.io
★★★★★5/5

“Dejan thật tuyệt vời. Anh ấy hoàn thành mọi công việc đúng hạn, rất kiên nhẫn và kỹ lưỡng trong trao đổi cũng như tài liệu. Cảm ơn Dejan!”

Feilian W.
Từ dự án: Công cụ thu thập dữ liệu từ hai cấp trang
★★★★★5/5

“Dejan chắc chắn là bậc thầy trong lĩnh vực của mình. Anh ấy không chỉ hỗ trợ dự án mà còn nâng tầm nó. Hành trình từ ý tưởng đến hoàn thành đầy bất định, nhưng Dejan dẫn dắt chúng tôi bằng chuyên môn và sự kiên nhẫn hiếm có. Việc giao tiếp của anh luôn nhất quán, mang tính xây dựng và có vai trò then chốt đối với thành công của dự án. Tôi chân thành giới thiệu Dejan và mong được hợp tác với anh trong tương lai. Sự tận tâm của anh thật đặc biệt — một chuyên gia thực thụ. Xin cảm ơn rất nhiều vì tất cả!”

Chris S.
Từ dự án: Ứng dụng C# theo dõi tham số và gửi lệnh qua API môi giới
★★★★★5/5

“Lại thêm một dự án thành công với Dejan. Khả năng giao tiếp dễ dàng và kiến thức chuyên môn sâu rộng của anh ấy giúp dự án diễn ra suôn sẻ.”

Reginald B.
Từ dự án: Dịch vụ web VB.NET xác minh JWT token
★★★★★5/5

“Tôi đặc biệt trân trọng cách tiếp cận mang tính hướng dẫn trong suốt dự án. Dejan không chỉ bàn giao một giải pháp tuyệt vời mà còn bảo đảm tôi hiểu từng bước. Chuyên môn và khả năng hỗ trợ của anh ấy rất đáng khen. Tôi nhiệt tình giới thiệu cho bất kỳ ai cần cả kiến thức lẫn kết quả!”

Ferruh K.
Từ dự án: Dịch vụ web gửi email theo lịch

Dự án đã thực hiện

Tích hợp có mặt trong toàn bộ danh mục dự án, vì chúng xuất hiện trong mọi loại phần mềm tôi làm: từ trao đổi dữ liệu với kế toán và thanh toán qua Stripe đến lấy dữ liệu từ nhà cung cấp và các công việc tự chạy mà không cần mở cửa sổ.


Ai thực hiện dự án của bạn

Dejan Dozet, lập trình viên độc lập, lập trình từ năm 2002. Tôi trực tiếp phụ trách công việc từ buổi trao đổi đầu tiên đến khi bàn giao, không qua trung gian.

Tôi đã kết nối SEF, Stripe, Xero và Dropbox với chương trình, website và Office; từ công việc đó ra đời tiện ích SEF cho Excel và tiện ích Word-GPT.

Dejan Dozet PR Xử lý dữ liệu Tomislavci, mã số doanh nghiệp 63144568, mã số thuế 108005073.

Tìm hiểu thêm về tôi

Giá

Cùng cách sắp xếp như các dịch vụ khác: phân tích trước, sau đó là hạng mục công việc có giá khởi điểm rõ ràng, còn chỉnh sửa nhỏ thì tính theo giờ.

Bước đầu tiên

Phân tích API của bên thứ ba

Đọc tài liệu và thực hiện các lệnh gọi thử bằng tài khoản của bạn để xác định những gì có thể thực hiện và chi phí dự kiến.

Giá 29.900 RSD ($285.90)

Phân tích được trả tiền và đặt trước, và sẽ được trừ vào giá công việc nếu chúng ta tiếp tục. Nếu hóa ra dịch vụ bên ngoài không cho phép điều bạn cần, bạn biết điều đó sau khi phân tích chứ không phải sau khi đã trả tiền phát triển.

Hạng mục công việc

Tích hợp API

Sửa tích hợp đã ngừng hoạt động

Bên kia đã tắt phiên bản cũ, đổi cách đăng nhập hoặc đặt thêm giới hạn; tôi đưa kết nối chạy lại, bất kể ai đã viết nó.

  • Kiểm tra mã và nhật ký hiện có, đồng thời tái hiện lỗi bằng một ví dụ cụ thể.
  • Xác định nguyên nhân là phiên bản API mới, cách đăng nhập thay đổi, định dạng dữ liệu hay hạn mức lệnh gọi.
  • Điều chỉnh các lệnh gọi và cách xử lý phản hồi hiện có trong quy trình trước đây vẫn hoạt động.
  • Nhật ký lỗi rõ ràng và cơ chế thử lại không thực hiện cùng một thao tác hai lần.
  • Kiểm tra kết nối đã sửa bằng tài khoản và ví dụ thực tế của bạn trước khi đưa trở lại hoạt động.
Giá khởi điểm44.900 RSD($429.33)
Đặt phân tích

Kết nối với dịch vụ bên ngoài

Phần mềm của bạn gọi sang phần mềm của người khác: thanh toán thẻ, kế toán, dịch vụ chuyển phát, bảng giá nhà cung cấp, SMS hoặc e-mail.

  • Kết nối phần mềm hiện có của bạn với một dịch vụ đã thỏa thuận bằng tài khoản và khóa của bạn.
  • Gửi và lấy dữ liệu đã thỏa thuận hoặc thực hiện thao tác đã thỏa thuận qua API.
  • Ánh xạ các trường, mã định danh và trạng thái giữa hai hệ thống.
  • Xử lý phản hồi, lỗi và gián đoạn, với cơ chế thử lại không tạo công việc trùng lặp.
  • Nhật ký lệnh gọi và kiểm tra kết nối trong môi trường thử nghiệm, sau đó bằng tài khoản thực.
Giá khởi điểm59.900 RSD($572.76)
Đặt phân tích

Chuyển và nhập dữ liệu

Lấy dữ liệu một lần hoặc lặp lại từ hệ thống bên ngoài vào hệ thống của bạn, kèm kiểm tra những gì đã chuyển sang.

  • Lập danh sách và ánh xạ các trường đã thỏa thuận từ hệ thống nguồn sang hệ thống đích.
  • Tập lệnh hoặc quy trình cho việc chuyển một lần hoặc nhập định kỳ theo lịch đã thỏa thuận.
  • Kiểm tra định dạng và chuyển đổi giá trị đã thỏa thuận trước khi ghi vào hệ thống đích.
  • Xử lý theo lô và có thể tiếp tục sau gián đoạn mà không nhập lại các bản ghi đã hoàn tất.
  • Báo cáo số bản ghi đã chuyển, đã bỏ qua và không hợp lệ, kèm danh sách lỗi để kiểm tra.
Giá khởi điểm59.900 RSD($572.76)
Đặt phân tích

API của riêng bạn

Dành cho khi phần mềm bên ngoài cần lấy dữ liệu từ bạn: khóa, quyền, giới hạn số lần gọi và hướng dẫn cho lập trình viên của họ.

  • Các endpoint API để đọc hoặc ghi đúng dữ liệu đã thỏa thuận và thực hiện các thao tác đã thống nhất.
  • Khóa truy cập, phân quyền theo người dùng hoặc hệ thống và hạn mức lệnh gọi.
  • Kiểm tra dữ liệu đầu vào, trạng thái rõ ràng và phản hồi mô tả từng lỗi.
  • Tài liệu về endpoint và các trường, kèm ví dụ lệnh gọi cho lập trình viên bên ngoài.
  • Nhật ký lệnh gọi và kiểm tra với hệ thống sẽ sử dụng API.
Giá khởi điểm89.900 RSD($859.61)
Đặt phân tích

Thanh toán và hóa đơn điện tử

Kết nối với dịch vụ thanh toán hoặc với hệ thống hóa đơn điện tử, kèm ghi nhận từng chứng từ đã gửi.

  • Kết nối với một dịch vụ thanh toán hoặc hóa đơn điện tử đã thỏa thuận bằng tài khoản của bạn.
  • Các thao tác đã thống nhất đối với thanh toán, hoàn tiền, gói thuê bao hoặc chứng từ điện tử.
  • Ánh xạ số tiền, khách hàng, chứng từ, mã định danh và trạng thái giữa các hệ thống.
  • Xử lý xác nhận và từ chối, với cơ chế thử lại không thể thu tiền hoặc gửi cùng một chứng từ hai lần.
  • Ghi lại mọi lần trao đổi và kiểm tra bằng tài khoản thử nghiệm, sau đó bằng tài khoản thực.
Giá khởi điểm89.900 RSD($859.61)
Đặt phân tích

Đồng bộ hai chiều

Hai hệ thống giữ cùng một dữ liệu và cả hai đều thay đổi nó: website và ERP, cửa hàng và kho, CRM và kế toán.

  • Ánh xạ các trường, mã định danh và trạng thái đã thỏa thuận mà hai hệ thống cùng sử dụng.
  • Quy tắc xác định hệ thống nào là nguồn dữ liệu chuẩn và cách xử lý khi cả hai bên cùng sửa một bản ghi.
  • Chuyển dữ liệu mới và dữ liệu đã thay đổi theo cả hai chiều, theo lịch hoặc sự kiện đã thống nhất.
  • Hàng đợi và cơ chế thử lại tuân thủ giới hạn của dịch vụ và không tạo bản ghi trùng lặp.
  • Ghi lại lần đồng bộ gần nhất, các lỗi và những bản ghi cần kiểm tra thủ công.
Giá khởi điểm119.900 RSD($1,146.47)
Đặt phân tích

Chỉnh sửa nhỏ trên tích hợp đang chạy không cần đi qua hạng mục riêng: với chúng có hình thức tính theo giờ. Bảng giá đầy đủ nằm ở trang giá.

Tôi cam kết:

  • Tôi trả lời trong cùng ngày làm việc, chậm nhất là ngày làm việc kế tiếp.
  • Bạn biết giá trước, không phải sau. Giá cố định và thời hạn được đưa ra sau khi phân tích, và mọi việc ngoài thỏa thuận đều được báo trước khi tôi làm.
  • Kết nối không được đưa vào chạy trước khi kiểm tra trên dữ liệu thật, kể cả trường hợp bên kia trả về lỗi.
  • Những gì đã gửi và những gì nhận về đều được ghi lại, để sau này biết dữ liệu dừng ở đâu.
  • Khóa và quyền truy cập đứng tên bạn và thuộc về bạn. Mã nguồn được bàn giao cùng công việc.
  • Lỗi được sửa miễn phí trong 30 ngày kể từ khi bàn giao. Lỗi là khi thứ gì đó không chạy như đã thỏa thuận; thay đổi là khi bạn muốn khác với những gì đã thỏa thuận.

Không nằm trong giá:

Tôi viết điều này để bạn hiểu giá trước khi đặt hàng, chứ không phải sau. Mọi thứ trong danh sách tôi đều làm được, nhưng được thỏa thuận và tính phí riêng.

  • Phí thuê bao và phí của dịch vụ bên kia. Tài khoản, gói dịch vụ và phí theo giao dịch tại dịch vụ bạn kết nối tới do bạn trả, từ tài khoản của bạn.
  • Những gì bên kia không cho phép. Nếu API của họ không có chức năng bạn cần, hoặc chức năng đó nằm trong gói đắt hơn, lập trình không giải quyết được.
  • Thay đổi trên hệ thống bên kia. Tôi làm phía bạn của kết nối. Việc sửa đổi ở đối tác, ngân hàng hay nhà cung cấp do bạn thỏa thuận với họ.
  • Dọn dẹp dữ liệu chưa sẵn sàng. Nếu các danh mục không có khóa chung, hoặc cùng một mặt hàng mang tên khác nhau ở hai hệ thống, việc đó là công việc riêng.
  • Đánh giá pháp lý và thuế. Về kỹ thuật tôi có thể đáp ứng yêu cầu của quy định, nhưng đánh giá thuộc về kế toán hoặc luật sư.
  • Dịch vụ bên kia còn hoạt động lâu dài. Nếu họ đổi API, tăng giá hay ngừng dịch vụ, việc thích ứng là công việc mới.

Trước khi bắt đầu, hãy chuẩn bị:

  • Quyền truy cập cả hai hệ thống — tài khoản thử nghiệm hoặc bản sao, kèm tài liệu nếu có.
  • Khóa và quyền tại dịch vụ bên kia, cấp dưới tên bạn.
  • Một người phụ trách biết công việc hiện đang chạy thế nào và thế nào là dữ liệu đúng.
  • Vài mẫu dữ liệu thật, kể cả những trường hợp đã gặp lỗi.
  • Quyết định về việc phải làm gì khi bên kia không phản hồi — chờ, thử lại hay báo lỗi.

Quyền sở hữu và lối ra

  • Tài khoản và khóa đứng tên bạn. Bạn là người mở quyền truy cập tới dịch vụ bên ngoài, nên kết nối vẫn chạy kể cả khi chúng ta không còn liên lạc.
  • Mã nguồn là của bạn, kèm mô tả mọi lệnh gọi được sử dụng.
  • Nhật ký ở lại với bạn. Bản ghi những gì đã gửi và nhận được lưu trên máy chủ của bạn, không phải chỗ tôi.
  • Không có bên trung gian. Phần mềm của bạn gọi thẳng dịch vụ bên ngoài; tôi không chen vào một máy chủ của mình để dữ liệu của bạn phải đi qua.

Câu hỏi thường gặp

Vì phần lớn sự bất định nằm đúng ở đó. Dịch vụ bên ngoài có cho dữ liệu bạn cần hay không, với điều kiện nào và hạn mức nào — điều đó chỉ xác định được bằng lệnh gọi thử, không phải bằng đọc tài liệu. Số tiền này được trừ vào giá công việc nếu chúng ta tiếp tục; nếu không, bạn vẫn giữ bản mô tả những gì khả thi và có thể mang tới bất kỳ đơn vị nào.

Điều đó vẫn xảy ra và không phải lỗi của phần đã bàn giao. Tích hợp được viết sao cho thay đổi như vậy lộ ra ngay, ở một chỗ và kèm thông báo rõ ràng trong nhật ký. Việc điều chỉnh được tính như một thay đổi mới, thường theo giờ, vì phụ thuộc vào phía bên kia đã đổi gì.

Đôi khi có, qua xuất và nhập tệp, qua email hoặc qua cơ sở dữ liệu dùng chung. Cách đó chậm và mong manh hơn API thật, và tôi sẽ nói thẳng như vậy, kèm ước tính giải pháp đó dùng được bao lâu trước khi gây phiền. Khi ngay cả điều đó cũng không khả thi thì tốt hơn là không bắt đầu.

Bạn, và tài khoản đứng tên bạn. Nhiều dịch vụ tính tiền theo lệnh gọi hoặc theo tháng, nên phần phân tích có kèm ước tính chi phí đó — nó có thể lớn hơn cả chi phí phát triển nếu dữ liệu được lấy về dày hơn mức cần thiết.

Được, và thường là như vậy. Nhưng nó vẫn là một mục riêng có giá riêng, vì mang rủi ro mà phần còn lại của công việc không có. Nhờ đó bạn cũng thấy rõ kết nối tới hệ thống bên ngoài tốn của bạn đúng bao nhiêu, thay vì bị giấu trong một khoản gộp.

Hai hệ thống nào cần nói chuyện với nhau?

Hãy viết ra đó là những hệ thống nào và điều gì nên xảy ra. Nếu kết nối khả thi, tôi sẽ nói cách làm và chi phí khoảng bao nhiêu; nếu không khả thi, tôi cũng sẽ nói trước khi bạn trả bất cứ khoản nào.

Gửi yêu cầu

Tôi thường trả lời trong ngày.

Tích hợp API và kết nối các hệ thống doanh nghiệp