WHM exposes a standard API that WHMCS (and Blesta, and most billing panels) can drive directly, so a client's order can automatically create their cPanel account with no manual step from you.
Generate an API token
In WHM, go to Development → Manage API Tokens → Generate Token. Give it a name and copy the token immediately, it's only shown once.
Add the server in WHMCS
In WHMCS, go to Setup → Products/Services → Servers → Add New Server. Choose the cPanel/WHM server module, enter your hostname, and authenticate with the API token instead of a password.
Create a matching product
Under Products/Services, create a product and set its Package Name field to match a WHM package exactly, character for character, this is what tells WHMCS which resource tier to assign.
Test with a sandbox order
Place a test order end to end and confirm the account actually gets created in WHM before pointing real traffic at the product.
Using Blesta instead?
The setup is nearly identical, Blesta's cPanel/WHM module also authenticates against the same WHM API token, just added under a different menu path.