diff --git a/meta-oniro-blueprints/recipes-apps/vending-machine/vending-machine-ui-application/vending-machine-ui-application.service b/meta-oniro-blueprints/recipes-apps/vending-machine/vending-machine-ui-application/vending-machine-ui-application.service
new file mode 100644
index 0000000000000000000000000000000000000000..2f18a95c767f5495b8e2adbaae1983d0e5a9ffb6
--- /dev/null
+++ b/meta-oniro-blueprints/recipes-apps/vending-machine/vending-machine-ui-application/vending-machine-ui-application.service
@@ -0,0 +1,18 @@
+# SPDX-FileCopyrightText: Huawei Inc.
+#
+# SPDX-License-Identifier: Apache-2.0
+
+[Unit]
+Description=Vending Machine UI Application
+Requires=weston@root.service
+After=weston@root.service
+After=vending-machine-control-application.service
+
+[Service]
+Environment="WAYLAND_DISPLAY=wayland-0"
+Environment="XDG_RUNTIME_DIR=/run/user/0"
+ExecStart=/usr/bin/vending-machine-ui-application
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-oniro-blueprints/recipes-apps/vending-machine/vending-machine-ui-application_git.bb b/meta-oniro-blueprints/recipes-apps/vending-machine/vending-machine-ui-application_git.bb
index 48138f162acce8da2f18bddaa2f87224bbaf6c57..2e9524fa43437b409c36a290ef060dc1b61bc469 100644
--- a/meta-oniro-blueprints/recipes-apps/vending-machine/vending-machine-ui-application_git.bb
+++ b/meta-oniro-blueprints/recipes-apps/vending-machine/vending-machine-ui-application_git.bb
@@ -10,17 +10,22 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=ba963850f6731c74878fe839d227e675"
 
 SRC_URI = "git://git.ostc-eu.org/distro/components/${BPN};protocol=https;branch=main;"
 SRCREV = "f9b9a709a299782f6f3accc7af8c743057294f95"
+SRC_URI += "file://${BPN}.service"
 S = "${WORKDIR}/git"
 
 DEPENDS= "json-c libwebsockets lv-drivers lv-lib-png lvgl"
 
-inherit pkgconfig features_check
+inherit pkgconfig features_check systemd
 
-REQUIRED_DISTRO_FEATURES = "wayland"
+SYSTEMD_SERVICE_${PN} = "${BPN}.service"
+
+REQUIRED_DISTRO_FEATURES = "systemd wayland"
 
 EXTRA_OEMAKE += "DESTDIR=${D}"
 EXTRA_OEMAKE += "sysroot=${RECIPE_SYSROOT}"
 
 do_install() {
     oe_runmake install
+    install -d "${D}${systemd_system_unitdir}/"
+    install -m 0644 "${WORKDIR}/${BPN}.service" "${D}${systemd_system_unitdir}/"
 }