You can create a specific dial-peer which will match the incoming calling number (ANI). Under this DP you can configure a voice translation rule to change the called number.
Something like this:
dial-peer voice 1012 voip
description INCOMING CALLING with prefix 290
translation-profile incoming XLATE_B_NUM
answer-address 290
modem passthrough nse codec g711alaw
codec g711alaw
no vad
voice translation-profile XLATE_B_NUM
translate called 15
voice translation-rule 15
rule 1 /^\([0-9]\)/ /2299\1/
All incoming calls with a calling number 290xxx use the DP 1012.
The DP 1012 doesn't route the call but simply adds the prefix 2299 to the called number.
A second dial-peer uses the called number 2299xxx to route the call.
Regards.