Digit manipulation in your scenario can be done in a number of ways. All of which have been pointed out here. Which one is best for you depends on what else is going on in your system and what your comfort level is with CUCM and/or IOS.
Yes, the easiest way to truncate DIDs to DN length is the use of the Significant Digits field on the Inbound Call Routing section of the trunk or gateway. However, I do not recommend this as it is heavy-handed and may give you problems later as you grow.
It is possible to use Voice Translation Profiles on the router to reduce the number of digits sent to CUCM. Many organizations do this, but it requires comfort with dial-peers and IOS in general. Given what you've said about your situation, I will guess that you are relatively new to voice which makes me think this is not a good choice for your situation at this time.
I would go with Translation Patterns for inbound calls in CUCM:
1) Create PSTN_Inbound_PT
2) Create PSTN_Inbound_CSS and add PSTN_Inbound_PT to it.
3) Create one or more translation patterns that match the 10-digit patterns sent by your service provider.
- Set the Partition to PSTN_Inbound_PT
- Set the CSS to one that has access to your internal DNs
- Set digit manipulation (discard digits or transform mask) to the Called Party (not Calling Party! easy mistake) that maps the 10-digits to your internal DNs
4) Set the Calling Search Space for your trunk or gateway under Inbound Call Routing to the PSTN_Inbound_CSS, and then reset it.