tÀi liỆu ĐẶc tẢ · 2020-01-10 · 4.1.2 bảng mã lỗi payment platform trả về cho...

12
1 VĂN PHÒNG CHÍNH PHỦ TÀI LIỆU ĐẶC TẢ API THANH TOÁN CHO BỘ/NGÀNH/ĐỊA PHƯƠNG

Upload: others

Post on 22-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TÀI LIỆU ĐẶC TẢ · 2020-01-10 · 4.1.2 Bảng mã lỗi Payment Platform trả về cho BNĐP 5 97 Chữ ký không hợp lệ 6 99 Các lỗi khác No Mã lỗi Mô tả

1

VĂN PHÒNG CHÍNH PHỦ

TÀI LIỆU ĐẶC TẢ

API THANH TOÁN CHO BỘ/NGÀNH/ĐỊA PHƯƠNG

Page 2: TÀI LIỆU ĐẶC TẢ · 2020-01-10 · 4.1.2 Bảng mã lỗi Payment Platform trả về cho BNĐP 5 97 Chữ ký không hợp lệ 6 99 Các lỗi khác No Mã lỗi Mô tả

2

MỤC LỤC

MỤC LỤC ................................................................................................................................. 2

I. Tổng quan ......................................................................................................................... 4

1.1 Mục tiêu ...................................................................................................................... 4

1.2 Luồng thanh toán ........................................................................................................ 4

1.3 Mô hình kết nối ........................................................................................................... 5

II. Mô tả API ......................................................................................................................... 6

2.1 Mô tả cách giao tiếp .................................................................................................... 6

2.2 Mô tả chi tiết các API ................................................................................................. 6

2.2.1 API Khởi tạo giao dịch ........................................................................................ 6

2.2.2 API Lấy biên lai thanh toán ................................................................................. 8

2.2.3 API Nhận kết quả giao dịch ................................................................................. 9

2.2.4 Hướng dẫn tạo chữ ký ....................................................................................... 10

III. DỮ LIỆU GIAO DỊCH .............................................................................................. 11

3.1 Mô tả ......................................................................................................................... 11

3.2 Định dạng file ........................................................................................................... 11

IV. BẢNG MÃ LỖI ........................................................................................................... 11

4.1.1 Bảng mã lỗi BNĐP trả về cho Payment Platform ............................................. 11

4.1.2 Bảng mã lỗi Payment Platform trả về cho BNĐP ............................................. 12

Page 3: TÀI LIỆU ĐẶC TẢ · 2020-01-10 · 4.1.2 Bảng mã lỗi Payment Platform trả về cho BNĐP 5 97 Chữ ký không hợp lệ 6 99 Các lỗi khác No Mã lỗi Mô tả

3

DANH MỤC CÁC TỪ VIẾT TẮT

STT VIẾT TẮT Ý NGHĨA

1. DVCQG Dịch vụ công Quốc gia

2. BNĐP Bộ/Ngành/Địa phương

3.

4.

Page 4: TÀI LIỆU ĐẶC TẢ · 2020-01-10 · 4.1.2 Bảng mã lỗi Payment Platform trả về cho BNĐP 5 97 Chữ ký không hợp lệ 6 99 Các lỗi khác No Mã lỗi Mô tả

4

I. Tổng quan

1.1 Mục tiêu

- Tài liệu hướng các Bộ/Ngành/Địa phương kết nối đến hệ thống Payment Platform của

Cổng DVCQG

1.2 Luồng thanh toán

Hình 1: Quy trình thanh toán

Page 5: TÀI LIỆU ĐẶC TẢ · 2020-01-10 · 4.1.2 Bảng mã lỗi Payment Platform trả về cho BNĐP 5 97 Chữ ký không hợp lệ 6 99 Các lỗi khác No Mã lỗi Mô tả

5

1.3 Mô hình kết nối

Hình 2: Mô hình kết nối

Hệ thống các API trao đổi, chia sẻ dữ liệu cần đi qua Nền tảng tích hợp, chia sẻ

dữ liệu (VDXP) được phát triển từ Trục liên thông văn bản quốc gia, các nội dung kỹ

thuật bao gồm:

- Các Bộ/Ngành/Địa phương cần liên hệ với VPCP để xin kết nối thông đến

mạng truyền số liệu chuyên dụng – CPNET theo mô hình như ở dưới:

Page 6: TÀI LIỆU ĐẶC TẢ · 2020-01-10 · 4.1.2 Bảng mã lỗi Payment Platform trả về cho BNĐP 5 97 Chữ ký không hợp lệ 6 99 Các lỗi khác No Mã lỗi Mô tả

6

- Thiết lập, cài đặt máy chủ bảo mật kết nối (SS – Secure Server) để kết nối với

Cổng Dịch vụ công quốc gia hoặc thiết lập máy chủ bảo mật mới theo tài liệu hướng

dẫn tại support.chinhphu.vn

- Cấu hình máy chủ bảo mật kết nối với Cổng dịch vụ công quốc gia theo hướng

dẫn của Văn phòng Chính phủ, tài liệu tại: https://dichvucong.gov.vn/p/home/huong-

dan-bo-nganh-dia-phuong.html

II. Mô tả API

2.1 Mô tả cách giao tiếp

- Các API được cung cấp dưới dạng RESTful, hệ thống cung cấp các API sau:

o API Khởi tạo giao dịch

o API Lấy biên lai thanh toán

- BNĐP cần cung cấp API và return_url để nhận kết quả giao dịch từ Payment

Platform:

o API nhận kết quả giao dịch

o Return URL để chuyển hướng khách hàng sau khi thanh toán xong

2.2 Mô tả chi tiết các API

2.2.1 API Khởi tạo giao dịch

URL: {api_base_url}/init

Request method: POST

Page 7: TÀI LIỆU ĐẶC TẢ · 2020-01-10 · 4.1.2 Bảng mã lỗi Payment Platform trả về cho BNĐP 5 97 Chữ ký không hợp lệ 6 99 Các lỗi khác No Mã lỗi Mô tả

7

Tham số đầu vào và đầu ra là một đối tượng JSON với các thuộc tính dưới đây:

Thuộc tính đầu vào

Thuộc tính đầu ra

Name Type Length Mandatory

/optional Comments

LoaiBanTin String 1,50 M INIT

PhienBan String 1,50 M 1.0.6

MaDoiTac Number 1,12 M Mã định danh đối tác

MaThamChieu String 1,255 M Mã giao dịch phía đối tác

SoTien String 1,50 M Số tiền thanh toán

LoaiHinhThanhToan String 1,50 M PAY

MaKenhThanhToan String 0,255 M Kênh thanh toán

1: WebApp - 2: MobileApp

MaThietBi Number 0,12 M Mã thiết bị, mặc định truyền 1

NgonNgu String 1,10 M Ngôn ngữ: vi-VN/en-US; mặc định

là vi-VN

MaTienTe String 1,50 M Đơn vị tiền tệ VND hoặc USD

MaNganHang String 1,50 M Phương thức thanh toán

ThongTinGiaoDich String 1,255 M Mô tả giao dịch

LoaiXacThuc String 1,255 M Phương thức xác thực:

1: Thẻ, 2=tài khoản, 3=CIF

ThongTinBienLai String 1,4000 M Thông tin để xuất biên lai và hạch

toán

ThongTinTaiKhoan String 1,4000 M Thông tin tài khoản

ThoiGianGD String 1,50 M Thời gian giao dịch, định dạng

yyyyMMddHHmmss

Ip String 1,50 M IP của người dùng

MaXacThuc String 1,255 M Chuỗi mã hóa của bản tin

Name Type Length Mandatory

/optional Comments

MaLoi String 1,10 M Mã lỗi

Page 8: TÀI LIỆU ĐẶC TẢ · 2020-01-10 · 4.1.2 Bảng mã lỗi Payment Platform trả về cho BNĐP 5 97 Chữ ký không hợp lệ 6 99 Các lỗi khác No Mã lỗi Mô tả

8

Các thông tin chi tiết trong trường ThongTinBienLai:

Name Type Comments Mandatory

/optional

TKThuHuong String Tài khoản ngân hàng thụ hưởng M

MaNHThuHuong String Mã ngân hàng thụ hưởng M

TenTKThuHuong String Tên chủ tài khoản của ngân hàng

thụ hưởng M

MaHoSo String Mã hồ sơ M

LoaiPhiTTHC String Loại phí thủ tục hành chính M

NoiDungThanhToan String Nội dung thanh toán M

Các thông tin chi tiết trường ThongTinTaiKhoan

2.2.2 API Lấy biên lai thanh toán

URL: {api_base_url}/get_bill

Request method: POST

Tham số đầu vào và đầu ra là một đối tượng JSON với các thuộc tính dưới đây:

Thuộc tính đầu vào

MoTaLoi String 1,255 M Mô tả lỗi

UrlThanhToan String 1,255 M URL để chuyển hướng người dung

MaXacThuc String 1,255 M Chuỗi mã hóa bản tin

Name Type Length Mandatory

/optional Comments

SoCMND String 1,255 M Số CMND/Hộ chiếu

TenTaiKhoan String 1,255 M Họ tên KH

NgaySinh String 1,255 M Ngày sinh KH

SoTaiKhoan String 1,255 M Số TK khách hàng

SoThe String 1,255 M Số thẻ ATM của KH

NgayHieuLuc String 1,255 M Ngày hết hạn thẻ

SoDienThoai String 1,255 M SĐT đăng ký SMS tại ngân hàng

Name Type Length Mandatory

/optional Comments

LoaiBanTin String 1,50 M GET_BILL

Page 9: TÀI LIỆU ĐẶC TẢ · 2020-01-10 · 4.1.2 Bảng mã lỗi Payment Platform trả về cho BNĐP 5 97 Chữ ký không hợp lệ 6 99 Các lỗi khác No Mã lỗi Mô tả

9

Thuộc tính đầu ra

2.2.3 API Nhận kết quả giao dịch

Request method: POST

Content-type: application/x-www-form-urlencoded

Parameter name: data

Bản tin thông báo kết quả giao dịch có dạng như sau:

POST /merchant/confirm HTTP/1.1

HOST: example.com

Content-type: application/x-www-form-urlencoded

Content-length: 8

data={“LoaiBanTin”:”CONFIRM”,“MaLoi”:”00”,….}

Tham số đầu vào và đầu ra là một đối tượng JSON với các thuộc tính dưới đây:

Thuộc tính đầu vào

PhienBan String 1,50 M 1.0.6

MaDoiTac Number 1,12 M Mã định danh đối tác

MaThamChieu String 1,255 M Mã giao dịch phía đối tác

ThoiGianGD String 1,50 M Thời gian thực hiện giao dịch

yyyyMMddHHmmss

MaXacThuc String 1,255 M Chuỗi mã hóa của bản tin

Name Type Length Mandatory

/optional Comments

MaLoi String 1,10 M Mã lỗi

MoTaLoi String 1,255 M Mô tả lỗi

NoiDungHoaDon String O Nội dung dạng Base64 của file Biên

lai

Name Type Length Mandatory

/optional Comments

LoaiBanTin String 1,50 M CONFIRM

MaLoi String 1,10 M Kết quả thực hiện giao dịch

MaDoiTac Number 1,12 M Mã định danh đối tác

Page 10: TÀI LIỆU ĐẶC TẢ · 2020-01-10 · 4.1.2 Bảng mã lỗi Payment Platform trả về cho BNĐP 5 97 Chữ ký không hợp lệ 6 99 Các lỗi khác No Mã lỗi Mô tả

10

Thuộc tính đầu ra

2.2.4 Hướng dẫn tạo chữ ký

Chữ ký của bản được tính toán dựa trên thuật toán SHA-256, giá trị này được tính toán

dựa trên một chuỗi gồm các trường thông tin trong bản tin gửi sang Payment Platform,

nguyên tắc tạo chuỗi như sau:

- Thứ tự các trường chính là thứ tự từ trên xuống dưới trong các bảng mô tả

thông tin đầu vào

- Các trường được phân tách nhau bởi ký tự “|”

MaThamChieu String 1,255 M Mã giao dịch phía đối tác

SoTien Number 1,8 M Số tiền

MaTienTe String 1,50 M Đơn vị tiền tệ VND hoặc USD

MaGiaoDich String 1,255 M Mã giao dịch tại Payment Platform

MaNganHang String 1,50 M Phương thức thanh toán

ThoiGianGD String 1,50 M Thời gian giao dịch, định dạng

(yyyyMMddHHmmss)

ThongTinGiaoDich String 1,255 M Thông tin mô tả giao dịch

Token String 1,255 M Token thanh toán của người dùng

SoThe String 1,255 M Số thẻ

ThangThe String 1,50 M Tháng hết hạn của thẻ

NamThe String 1,50 M Năm hết hạn của thẻ

MaXacThuc String 1,255 M Chuỗi mã hóa bản tin

Name Type Length Mandatory

/optional Comments

MaLoi String 1,10 M Mã lỗi

MoTaLoi String 1,255 M Mô tả lỗi

MaDoiTac Number 1,12 M Mã định danh đối tác

MaThamChieu String 1,255 M Mã giao dịch phía đối tác

ThoiGianGD String 1,50 M Thời gian tại phía đối tác

(yyyyMMddHHmmss)

MaXacThuc String 1,255 M Chuỗi mã hóa bản tin

Page 11: TÀI LIỆU ĐẶC TẢ · 2020-01-10 · 4.1.2 Bảng mã lỗi Payment Platform trả về cho BNĐP 5 97 Chữ ký không hợp lệ 6 99 Các lỗi khác No Mã lỗi Mô tả

11

- Các trường được định nghĩa là không bắt buộc (Optional) thì giá trị bằng

rỗng

- Secret key luôn đứng cuối cùng

III. DỮ LIỆU GIAO DỊCH

3.1 Mô tả

Hàng ngày hệ thống Payment Platform sẽ sinh ra file dữ liệu giao dịch

(yyyymmdd_ECOM.csv) trong ngày (ngày T) từ 00:00 đến 23h:59 bao gồm các giao dịch

thành công lên thư mục SFTP đã thống nhất giữa các bên trước 08h00 ngày hôm sau

(ngày T+1).

3.2 Định dạng file

Định dạng dòng dữ liệu: Các trường được đặt cách nhau bởi dấu #

Tham số Kiểu Mô tả

MaThamChieu String Mã giao dịch đối tác

MaGiaoDich String Mã giao dịch phía Payment Platform

ThoiGianGD String Thời gian giao dịch

TrangThai String Trạng thái giao dịch

Định dạng dòng kết thúc: Checksum tạo bởi các transactionId của các dòng dữ liệu

theo thứ tự từ trên xuống dưới

IV. BẢNG MÃ LỖI

4.1.1 Bảng mã lỗi BNĐP trả về cho Payment Platform

STT Mã lỗi Mô tả lỗi

API Notify

1 00 Thành công

2 01 Không tìm thấy giao dịch

3 02 Giao dịch đã confirm

4 08 Hệ thống bận hoặc timeout

Page 12: TÀI LIỆU ĐẶC TẢ · 2020-01-10 · 4.1.2 Bảng mã lỗi Payment Platform trả về cho BNĐP 5 97 Chữ ký không hợp lệ 6 99 Các lỗi khác No Mã lỗi Mô tả

12

4.1.2 Bảng mã lỗi Payment Platform trả về cho BNĐP

5 97 Chữ ký không hợp lệ

6 99 Các lỗi khác

No Mã lỗi Mô tả lỗi

1 00 Thành công

2 01 Giao dịch thất bại

3 02 Dữ liệu không đúng định dạng

4 03 Mã giao dịch đã tồn tại

5 04 Timeout

6 05 Không tìm thấy dữ liệu

7 06 Lỗi hệ thống

8 07 Chữ ký không đúng

9 08 Tài khoản đối tác đang bị khóa

10 09 Tài khoản đối tác không tồn tại

11 96 Hệ thống đang bảo trì

12 99 Lỗi không xác định