SM-DP+ console: tasks with tested values
The hands-on companion to the SM-DP+ console guide. Every
result below was produced on 4 October 2026 by a principal holding only
smdpp: maintain — no admin — starting from an empty account.
Before you start
| Address | smdpplus.rsplab.click/console |
| Role needed | smdpp: read to look at lists and package details; smdpp: maintain for every change on this page. No screen needs admin — an admin only also sees other people’s items |
| A new account sees | Overview with no counts, and the two lab profile types |
1. See what you can order from
Open Profile types. A new account sees two shared lab defaults:
| Type | Service provider | Profile name | Package |
|---|---|---|---|
TS48v1_A | RSP Lab | TS.48 test profile | TS48v1_A.der |
ProfileType1 | SPN1-ProfileType1 | ProfileName1 | TS48v1_A.der |
Open Packages. Seven shared packages are listed, among them TS48v1_A.der
(11913 octets). Its row reports:
| Column | Value |
|---|---|
| Declared ICCID | 98001032547698103214 |
| Profile type | GSMA Generic eUICC Test Profile |
| Elements | 26 |
A shared package has no Download button for you, and the API answers not found if you ask anyway. Lab defaults can be used and read, never downloaded.
2. Issue an activation code
- Generate orders → Next free ICCIDs, How many
1. - Profile type TS48v1_A. No overrides, no EID.
- Generate 1 download order.
Expected result. One row reaches RELEASED:
| Step | Answer |
|---|---|
| Stocking | ICCID 8944500000000000570, state AVAILABLE, owner you |
| Reserving (ES2+ DownloadOrder) | Executed-Success |
| Releasing (ES2+ ConfirmOrder) | Executed-Success, SM-DP+ address smdpplus.rsplab.click |
| Activation code | LPA:1$smdpplus.rsplab.click$<MatchingID> |
Download orders now lists the ICCID as RELEASED.
3. Install it on a simulated eSIM
-
Simulator shows your limit: 0 of 10 held.
-
Mint a fresh simulated eSIM.
You get a new EID — in this run
89049032202600000200000000058769, product CONSUMER, no profiles. -
Choose the order
8944500000000000570and the new card, then Install on this simulated eSIM.
Expected result. Success, with the LPA’s transcript:
Step 1 initiateAuthentication OK (txId=…)Step 3 authenticateClient OK (eUICC chain accepted)Step 4 getBoundProfilePackage OK (BPP 12461 bytes)Step 5 LoadBoundProfilePackage OK (profile installed)Installed profiles: 1Step 6 notifications: 1/1 delivered seq 1 -> smdpplus.rsplab.click (removed from card)The card’s profile list then shows TS.48 test profile, service provider
RSP Lab, disabled, ICCID 984405000000000075F0 — the same ICCID in the
card’s nibble-swapped form. Overview shows INSTALLED 1.
4. Enable, disable and delete on the card
| Action on the profile | Answer | Order state afterwards |
|---|---|---|
| Enable | ok, result code 0 | ENABLED |
| Disable | ok, result code 0 | DISABLED |
| Delete | ok, result code 0 | RELEASED — the same code downloads it again |
The order follows because the card signs a notification and the SM-DP+ records it.
5. Retire the order
| Do this | Answer |
|---|---|
| Delete, then Delete for good, while it is RELEASED | refused: 8944500000000000570 is RELEASED — the SM-DP+ is mid-download on it. Set the state to UNAVAILABLE first if the download is abandoned |
| Set state to UNAVAILABLE | state UNAVAILABLE |
| Delete, then Delete for good | deleted: 8944500000000000570 |
6. Make a profile type of your own
Profile types: name DocsGuideType, package TS48v1_A.der, service
provider Docs Lab, profile name Docs test profile, class operational.
Expected result. Saved as user:<you>/DocsGuideType — types are namespaced to
their owner — with the package resolved to TS48v1_A.der. The name shown is always
the name you typed; a separate display name sent to the API is ignored. Delete
answers deleted.
7. Change what one ICCID announces
Profile metadata → Per-profile metadata: ICCID 8944500000000000570, type TS48v1_A, profile name
My lab line, everything else left as the type says.
Expected result. The resolved view shows profile name My lab line, with
profileName listed as overridden and the rest inherited from the type.
8. Allow an Android app to manage a type
Carrier privileges → Access rules for user:<you>/DocsGuideType:
| Field | Value |
|---|---|
| DeviceAppID-REF-DO | the SHA-256 of the app’s signing certificate, 64 hex characters |
| PERM-AR-DO | 0000000000000001 |
Expected result. Saved, with the digest reported as SHA-256.
| If you see | It means |
|---|---|
| DeviceAppID-REF-DO must be 64 hex characters (SHA-256) or 40 (SHA-1) of the app’s SIGNING CERTIFICATE | The field was empty or the wrong length |
9. Be told about downloads
Notifications → Notification destinations for your type: receiver rsp-lab, callback
https://example.invalid/notify, enabled. Saved as entered; Delete answers
deleted.
10. Scrap the simulated eSIM
Simulator → Scrap this simulated eSIM answers deleted: true. The EID is never
issued again.
Errors you may meet
| Message | Meaning |
|---|---|
| no such simulated eSIM in your inventory (404) | You named a card that is not yours — for example the shared demo EID |
| the LPA rejected this operation (502) | The LPA could not carry the operation out — the simulator did not accept the command. One cause: an ICCID typed as printed rather than in the card’s form; the console’s own buttons always send the card’s form. A card that runs the command and says no answers ok: false with a result code instead |
| not found on a package download | Shared lab packages are never downloadable |
Not yet verified
| Capability | Why |
|---|---|
| Upload a package | No package of the right shape was at hand that is safe to publish |
| Orders bound to an EID, and confirmation codes | Not run in this pass |
| Installing from a real phone | Needs a device |