API Upload Logo Merchant

API upload logo merchant lên S3. Logo được hiển thị trên header của hosted link WebView.


API Endpoint

POST
https://bankhub-api-sandbox.sepay.vn/v1/merchant-config/logo

Request Body (multipart/form-data)

Lưu ý
  • API này yêu cầu Bearer Token trong header Authorization
  • Content-Type phải là multipart/form-data
  • Logo cũ (nếu có) sẽ tự động bị xóa khỏi S3
  • Logo mới được upload lên S3 với tên file: {merchant_id}-{timestamp}.png
  • Logo hiển thị ngay lập tức trên tất cả hosted link

Xử lý lỗi

400Bad Request

File không hợp lệ (định dạng sai, kích thước quá lớn, MIME type không khớp)

401Unauthorized

Access token không hợp lệ hoặc đã hết hạn

413Payload Too Large

File vượt quá 1MB

API Response

Response 200 - Upload thành công
{
  "data": {
    "logo_url": "https://example.com"
  }
}
dataobject

Dữ liệu logo

Code mẫu

1
2
3
4
5
curl --request POST \
--url https://bankhub-api-sandbox.sepay.vn/v1/merchant-config/logo \
--header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \
--header 'content-type: multipart/form-data' \
--form logo=string

Ví dụ sử dụng

JSUpload logo từ file
1
2
3
curl --location 'https://bankhub-api-sandbox.sepay.vn/v1/merchant-config/logo' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--form 'logo=@"/path/to/logo.png"'

Validation Rules

File Requirements:

  • Format: Chỉ chấp nhận JPG hoặc PNG
  • Size: Tối đa 1MB (1,048,576 bytes)
  • MIME Type: Phải khớp với extension (image/jpeg hoặc image/png)
  • Extension: File extension được kiểm tra (.jpg, .jpeg, .png)
Lưu ý quan trọng
  • Logo cũ tự động bị xóa, không thể rollback
  • Logo mới hiển thị ngay lập tức trên tất cả hosted link
  • Timestamp trong URL giúp bypass browser cache
  • Nếu file > 1MB, API trả về 400
  • Chỉ chấp nhận JPG/PNG, không chấp nhận GIF, WebP, SVG