Issue with Inbound Route not matching DID from Gupshup WhatsApp SIP Integration

Hello community,

I’m working on a SIP trunk integration between VitalPBX (v) and Gupshup WhatsApp Voice.
The trunk registers/authenticates correctly, and I can see the INVITE arriving from Gupshup in sngrep.

Example INVITE:

From: +5212XXXXXXXX
To: +521XXXXXXXXX
Codec: opus/48000

However, the call fails with 603 Decline.

I have created an Inbound Route with the following DID Pattern:

521XXXXXXXX

(but also tried with _X., _521XXXXXXXXXX, etc.)

When using _X. as a catch-all, the system shows the error “Please enter a valid Asterisk pattern.”

My questions:

  1. How should I properly configure the Inbound Route so that VitalPBX matches the DID including the “+” prefix?
  2. Does VitalPBX strip the + symbol automatically, or should I always define the DID without the +?
  3. Is there a recommended way to handle international format DIDs for SIP trunks in VitalPBX?

Any help or suggestions would be appreciated.

Thanks in advance!