It would be nice to have an add-on remote available with buttons, but for now, if you have a phone or tablet handy, the Roku app does allow direct number entry (touch the keyboard icon up top to pop up an on-screen keyboard). This works for channel selection in Live TV (for over-the-air broadcasts you do have to include the subchannel number, e.g. 7.1 rather than just 7), and also for entering a parental control code, so hopefully whatever app is asking for a profile code will also respond to these number inputs.
Another member here, @Tivoburkee has posted numeric-button IR codes that can be entered into certain third-party universal remotes:
https://community.roku.com/t5/Remotes/Roku-remotes-with-channel-numbers/m-p/836547#M36339
A computer on the same network segment can also send number-key events via http using the External Command Protocol, as documented here: https://developer.roku.com/docs/developer-program/debugging/external-control-api.md
Here's a quick shell script fragment to send a digit string
ROKU_IP=x.x.x.x # set to match yours
D=0; NUM=$1
while [[ $D -lt ${#NUM} ]]; do
curl -d "" http://${ROKU_IP}:8060/keypress/lit_${NUM:$D:1}
D=$[ $D + 1 ]
done