6.2.3 Handling of USSD request at VLR
23.0903GPPRelease 17Stage 2TSUnstructured Supplementary Service Data (USSD)
When a VLR receives a USSD request containing an HPLMN service code and the user is not in the HPLMN, it shall set up a transaction to the HLR and forward the request unchanged. If this forwarding fails, an error shall be returned to the MS. The VLR shall be transparent to any further requests or responses (in either direction) for that transaction, passing them between the MSC and HLR without taking any action. When one transaction is released (MSC-VLR or VLR-HLR), the VLR shall release the other.
If an HPLMN service code is not included, or the user is in the HPLMN, the VLR shall process the request locally (see clause 6.2.5).
If the VLR does not support the alphabet used in a USSD request, it shall set up a transaction to the HLR and forward the request unchanged, in the same way as when a HPLMN service code is received and the user is not in the HPLMN.