Code available in this git repo.
There is the /OpenBootloader project folder and another folder with a simple blinky code i used as payload for the bootloading process.
Inside OpenBootloader i used the CubeIDE environment.
Output from the logs of CubeProgrammer
15:16:19 : STM32CubeProgrammer API v2.18.0 | Windows-64Bits
15:16:27 : UR connection mode is defined with the HWrst reset mode
15:16:27 : ST-LINK FW : V3J8M1B5
15:16:27 : Voltage : 0.00V
15:16:27 : Bridge Freq : 48000 KHz
15:16:27 : Baudrate : 125 Kbps
15:16:27 : BL version : 2.0
15:16:27 : Device ID : 0x469
15:16:28 : UPLOADING OPTION BYTES DATA ...
15:16:28 : Bank : 0x00
15:16:28 : Address : 0x1fff7800
15:16:28 : Size : 36 Bytes
15:16:28 : Bank : 0x01
15:16:28 : Address : 0x1ffff808
15:16:28 : Size : 36 Bytes
15:16:28 : Bank : 0x02
15:16:28 : Address : 0x1fff7828
15:16:28 : Size : 4 Bytes
15:16:28 : Bank : 0x03
15:16:28 : Address : 0x1ffff828
15:16:28 : Size : 8 Bytes
15:16:28 : UPLOADING ...
15:16:28 : Size : 1024 Bytes
15:16:28 : Address : 0x8000000
15:16:28 : Read progress:
15:16:28 : Data read successfully
15:16:28 : Time elapsed during the read operation is: 00:00:00.208
15:16:49 : Opening and parsing file: nucleog474_blinky.elf
15:16:49 : Memory Programming ...
15:16:49 : File : nucleog474_blinky.elf
15:16:49 : Size : 5.80 KB
15:16:49 : Address : 0x08008000
15:16:49 : Erasing memory corresponding to segment 0:
15:16:49 : Erasing internal memory sectors [16 18]
15:16:49 : Download in Progress:
15:17:06 : File download complete
15:17:06 : Time elapsed during download operation: 00:00:17.085
15:17:06 : Verifying ...
15:17:06 : Read progress:
15:17:08 : Download verified successfully
15:17:08 : RUNNING Program ...
15:17:08 : Address: : 0x08008000
15:17:08 : Start operation achieved successfully
Wiring details https://community.st.com/t5/stm32-mcus-products/stlink-v3-canbus-transceiver-wiring/td-p/764738