In asterisk queue, one outbound number show “Not in Use”, but other show as “Invalid”.
Agent 07734xxxxx (Local/07734xxxxx@software_agent/n) (ringinuse disabled) (realtime) (Not in use) has taken no calls yet (login was 58478 secs ago)
Agent 07877xxxxx (Local/07877xxxx@software_agent/n) (ringinuse disabled) (realtime) (Invalid) has taken no calls yet (login was 58876 secs ago)
My first guess, for the information you have provided, is that you do not have any dialplan for the 2nd number.
A good way of troubleshooting that, is simply asking asterisk to show the dialplan for the extension and context you want to call.
In your case try these commands using the Asterisk CLI
dialplan show 07734xxxxx@software_agent
dialplan show 07877xxxx@software_agent
If both show a sensible dialplan, you need to provide more information. Eg. relevant parts of your configuration, the logged messages during a failed call etc.