Glossary · IoT
IPA
IoT Profile Assistant
Also known as: IoT Profile Assistant
The IPA (IoT Profile Assistant) is the component in an IoT device that carries out eSIM profile management under SGP.32. It takes instructions from an eIM, downloads profiles from an SM-DP+, passes commands to the eUICC and reports the results. It is the IoT counterpart of the LPA in phones — SGP.32 explicitly maps the LPA references it inherits from SGP.22 onto the IPA.
What the IPA does
- Fetches work from the eIM: it receives eIM Packages over the ESipa interface — profile download triggers, eUICC Packages, or requests for device and eUICC data.
- Downloads profiles: in direct download it authenticates to the SM-DP+ itself; in indirect download the eIM handles the SM-DP+ exchange and the IPA relays messages to the eUICC.
- Forwards eUICC Packages: signed profile operations from the eIM (enable, disable, delete) go to the eUICC, which verifies the eIM’s signature, so the IPA cannot alter them.
- Returns results: it sends signed execution results and notifications back to the eIM, which acknowledges them.
- Handles discovery: it can poll an SM-DS for pending events when instructed.
Where the IPA lives
| Variant | Location | Notes |
|---|---|---|
| IPAd | Device software: module firmware or a host application | The default approach; needs IPA support in the module or host |
| IPAe | Inside the eUICC | Optional in SGP.32; useful when the device has no IPA software |
Unlike the LPA, the IPA has no user interface. It reports its IPA Capabilities to the eIM — for example, which parts of the profile download it handles itself — so the eIM can choose the right procedure for each device.
Why it matters for testing
Two devices with the same eUICC can behave differently because their IPAs differ: one supports direct download and another only indirect, or they check in with the eIM at very different intervals. The IPA also depends on the device’s data connection, so an operation can stall if the active profile has no working data path. Testing has to cover the IPA on the actual module, not just the eUICC — see IPAd vs IPAe for how the two variants differ in practice.
Last updated · SimCheck.ai team