# Mã lý do

> Danh mục mã lý do (`reason_code`) GHN dùng trên vòng đời đơn hàng. Đối tác gặp mã này ở hai chỗ:

- **Gửi lên** khi [Hủy đơn](https://developer.ghn.vn/vi/docs/order/cancel.md) — trường `reason_code` (chỉ nhóm "Hủy bởi người gửi" bên dưới).
- **Nhận về** qua [Callback trạng thái đơn](https://developer.ghn.vn/vi/docs/webhook/callback-order-status.md) — cặp trường `ReasonCode` + `Reason`; cột "Thông điệp" bên dưới là đúng nội dung trường `Reason`.

Danh mục do GHN quản lý tập trung (master data) và có thể được bổ sung theo thời gian — hệ thống của bạn nên chấp nhận mã lạ thay vì báo lỗi.

## Hủy bởi người gửi

Các mã đối tác được phép gửi trong API [Hủy đơn](https://developer.ghn.vn/vi/docs/order/cancel.md).

| reason_code | Thông điệp (Reason) |
| --- | --- |
| `GHN-CO001` | Thời gian lấy hàng quá lâu |
| `GHN-CO002` | Hết hàng, chưa có hàng để gửi |
| `GHN-CO003` | Người nhận không còn nhu cầu nữa |
| `GHN-CANCEL-OTHER` | Lý do khác |

## Lấy hàng thất bại

Nhóm `GHN-PFA*`, `GHN-PFC*` — phát sinh khi lấy hàng không thành công, đơn quay về chờ lấy lại.

| reason_code | Thông điệp (Reason) |
| --- | --- |
| `GHN-PFA1A0` | Người gửi hẹn lại ngày lấy hàng |
| `GHN-PFA1A1` | Người gửi muốn gửi hàng tại bưu cục |
| `GHN-PFA2A1` | Thuê bao không liên lạc được / Máy bận |
| `GHN-PFA2A2` | Thông tin lấy hàng sai (địa chỉ / SĐT) |
| `GHN-PFA2A3` | Người gửi không nghe máy |
| `GHN-PFA3A2` | Nhân viên gặp sự cố |
| `GHN-PFA3A4` | Nhân viên gặp sự cố |
| `GHN-PFA3A5` | Nhân viên gặp sự cố |
| `GHN-PFA3A6` | Nhân viên gặp sự cố |
| `GHN-PFA3A7` | Nhân viên gặp sự cố |
| `GHN-PFA3A8` | Nhân viên gặp sự cố |
| `GHN-PFA3A9` | Nhân viên gặp sự cố |
| `GHN-PFA3A10` | Nhân viên gặp sự cố |
| `GHN-PFA3A11` | Nhân viên gặp sự cố |
| `GHN-PFA4A1` | Hàng vi phạm quy cách đóng gói |
| `GHN-PFA4A2` | Hàng hóa GHN không vận chuyển |
| `GHN-PFC1A8` | Nhân viên gặp sự cố |
| `GHN-PFC1A9` | Nhân viên gặp sự cố |

## Hủy tại điểm lấy hàng

Nhóm `GHN-PCB*` — đơn bị hủy ngay tại thời điểm lấy hàng.

| reason_code | Thông điệp (Reason) |
| --- | --- |
| `GHN-PCB0B1` | Người gửi không muốn gửi hàng nữa |
| `GHN-PCB0B2` | Hàng vi phạm quy định khối lượng, kích thước |

## Giao hàng thất bại

Nhóm `GHN-DFC*` — phát sinh khi giao không thành công, đơn chờ giao lại.

| reason_code | Thông điệp (Reason) |
| --- | --- |
| `GHN-DFC1A0` | Người nhận hẹn lại ngày giao |
| `GHN-DFC1A1` | Người nhận đổi địa chỉ giao hàng |
| `GHN-DFC1A2` | Không liên lạc được người nhận / Chặn số |
| `GHN-DFC1A4` | Người nhận không nghe máy |
| `GHN-DFC1A6` | Nhân viên gặp sự cố |
| `GHN-DFC1A7` | Người nhận từ chối nhận do không cho xem / thử hàng |
| `GHN-DFC1A9` | Người nhận không đặt hàng |
| `GHN-DFC2A0` | Tai nạn/thời tiết |
| `GHN-DFC2A1` | Nhân viên gặp sự cố |

## Người nhận từ chối nhận

Nhóm `GHN-DCD*` — sự cố tại điểm giao liên quan người nhận, thường dẫn tới hủy hoặc chuyển hoàn.

| reason_code | Thông điệp (Reason) |
| --- | --- |
| `GHN-DCD0A1` | Sai thông tin người nhận (địa chỉ / SĐT) |
| `GHN-DCD0A5` | Người nhận từ chối nhận do hàng hư hỏng |
| `GHN-DCD0A6` | Người nhận từ chối nhận do sai sản phẩm |
| `GHN-DCD0A7` | Người nhận từ chối nhận do sai COD |
| `GHN-DCD0A8` | Người nhận đổi ý không mua nữa |
| `GHN-DCD1A1` | Người nhận báo không đặt hàng |
| `GHN-DCD1A5` | Người nhận từ chối nhận do không có tiền |

## Trả hàng thất bại

Nhóm `GHN-RFE*` — phát sinh khi trả hàng về người gửi không thành công.

| reason_code | Thông điệp (Reason) |
| --- | --- |
| `GHN-RFE0A0` | Người nhận hàng trả hẹn lại ngày trả hàng |
| `GHN-RFE0A1` | Người nhận hàng trả đổi địa chỉ trả hàng |
| `GHN-RFE0A3` | Người nhận hàng trả từ chối nhận do sai sản phẩm |
| `GHN-RFE0A4` | Người nhận hàng trả từ chối nhận do hàng hư hỏng |
| `GHN-RFE0A5` | Nhân viên gặp sự cố |
| `GHN-RFE0A6` | Người nhận hàng trả không nghe máy/ Thuê bao không liên lạc được |
| `GHN-RFE0A7` | Nhân viên gặp sự cố |
| `GHN-RFE0A8` | Nhân viên gặp sự cố |

## Giao lại

Hai mã này không gửi kèm thông điệp trong callback (`Reason` rỗng); nội dung dưới đây là bản hiển thị trên app/web GHN.

| reason_code | Thông điệp |
| --- | --- |
| `GHN-RDAI01` | Hệ thống đánh giá giao lại |
| `GHN-RDC001` | Người nhận khiếu nại giao hàng |
