Fix it now
Microsoft publishes this as the Software Protection Service reporting that the format for the offline activation data is incorrect, and its resolution is to check the ID entered during phone activation. The check happens locally, before anything is sent, so your key is fine and nothing on the machine needs repairing.
slmgr /dti
slmgr /atp <Confirmation ID>
slmgr /dli
slmgr /xpr
slmgr /dtiprints the Installation ID, which you can copy rather than reading off a dialog. That removes the transcription step where this error is usually created.- Obtain the Confirmation ID for that exact Installation ID, then submit it with
slmgr /atprather than typing it into boxes. - If you are using the dialog instead, open it with
slui 4, or search for SLUI 04 from Start. - If you are pasting a value, strip spaces, dashes and line breaks first; punctuation that came with a copy is the second most common cause.
- Do the whole exchange in one sitting on one machine, without rebooting or changing the key in between.
Nothing in this article costs money. If you are being asked to pay for a tool that generates a Confirmation ID, that is not a route worth taking at any price.
If activation completes, you are done. If the value is refused again, the next section covers what is actually being checked and what the neighbouring codes mean.
Why it happens
Phone activation is the manual version of the exchange the machine normally does over the internet. Windows computes an Installation ID from the installed key and the installation itself; you pass that to Microsoft; Microsoft computes a matching Confirmation ID and passes it back; you give it to Windows. Two long numbers, moved between two systems by a human being, which is why the failure mode is what it is.
Microsoft’s published text for 0xC004F02C is that the Software Protection Service reported the format for the offline activation data is incorrect, and its listed resolution is to make sure the ID was entered correctly during phone activation. That is a local check on what you supplied, which is why the error is instant: there is no server involved at that point, no timeout to wait out, and no network fault to chase.
Because the check is local and about shape rather than content, it does not tell you whether the value is the right one. A perfectly formed Confirmation ID belonging to a different machine passes this check and fails the next one. That is useful information: when the code changes after you fix the formatting, you have moved on to a pairing problem rather than made things worse.
0xC004F02F, 0x803FA08E and 0x803FA08F are reported in the same situations and Microsoft publishes no meaning for any of them. There is no basis for treating the 0x803FA0 pair as the Settings-app rendering of the slmgr code; that mapping is asserted widely and is not documented.
Digits mis-keyed or transposed
You have this one if The value was read out over the phone or copied by hand, and it is refused the moment the last group is entered.
- Stop typing into the dialog and use
slmgr /atp <Confirmation ID>instead, which lets you paste the whole value at once. - If you must use the dialog, clear every box rather than correcting one, so you are not left with a half-corrected value.
- Read digits back in pairs rather than singly; it makes transposition much easier to catch.
Character confusion is the usual culprit: a capital O read as a zero, a capital I as a one, a five and an S transposed by someone reading aloud.
Whitespace or punctuation came in with a paste
You have this one if The value was copied from an email, a chat message or a ticket rather than typed.
- Paste into a plain text editor first and remove spaces, dashes and any line break.
- Check the character count matches what you were given before submitting it.
- Submit with
slmgr /atp, which fails cleanly rather than silently accepting a malformed paste.
The value came from a third-party generator
You have this one if The Confirmation ID was produced by a downloaded tool or a website rather than by Microsoft.
- Discard it. Nothing outside Microsoft’s activation service is in a position to compute a value that will pass.
- Try online activation first; most machines that end up at the phone dialog do not need to be there.
- If the machine genuinely has no internet route, use the phone route properly, or VAMT proxy activation for more than a handful of machines.
The dialog will not appear at all
You have this one if slui 4 does nothing, so the reader concludes phone activation is unavailable.
- Make one online activation attempt from Start, Settings, System, Activation first. On many builds the phone option is offered only after that fails.
- Search for SLUI 04 from Start, which is the route Microsoft’s activation help gives.
- Bypass the dialog entirely with
slmgr /dtiandslmgr /atp, which do not depend on it.
Full reference
The two commands that make this easier
| Command | What it does |
|---|---|
slmgr /dti |
Displays the Installation ID for offline activation, so it can be copied rather than read out |
slmgr /atp <Confirmation ID> |
Activates the product using the Confirmation ID you supply |
slui 4 |
Opens the phone activation dialog, where the numbers are typed into boxes |
slmgr /dli |
Confirms licence status afterwards |
slmgr /xpr |
Confirms the machine is permanently activated rather than in a grace window |
slmgr /ipk <key> |
Installs a key. Note that this regenerates the Installation ID |
Most of the pain in phone activation comes from the dialog rather than from the process. slmgr /dti and slmgr /atp let you copy and paste both halves, which removes the step where this error is created.
What usually went wrong, and how it shows
| Symptom | Cause |
|---|---|
| Refused as soon as the last group is entered | The value is the wrong length, or a group is short |
| Everything looks right on screen | A letter has been typed where only digits are valid |
| The value was pasted from an email or ticket | Spaces, dashes or a line break came with it |
| The groups were entered in a different order | Each box is a specific group and the order is not interchangeable |
| The code changes after you fix the formatting | The shape is now right and you have a pairing problem instead |
When the format is right and it still fails
- Read the Installation ID again with
slmgr /dtiand compare it with the one the Confirmation ID was issued against. If they differ, the pair is broken and a fresh exchange is the answer. - Check nothing regenerated the Installation ID in between: a key reinstall, a rearm, a rebuild or a snapshot restore will all do it.
- Confirm which product the value belongs to. A ticket covering both Windows and Office is an easy way to use the wrong one.
- Confirm the machine is the one you collected from. In a batch, this is the mistake that repeats.
- If the code has changed rather than repeated, follow the new code; it is more specific than this one.
Doing this at scale
Beyond a handful of machines, the manual exchange stops being reasonable. VAMT proxy activation collects Installation IDs from clients over WMI, sends them from a machine that has internet access, receives the Confirmation IDs and writes them back, pairing the two halves automatically. The documented run is Activate, then Proxy activate, then Apply Confirmation ID, apply to selected machine(s) and activate.
It needs VAMT on an internet-connected machine, an eligible key installed on the targets, administrative permissions on them, and WMI reachable through the firewall. That is more setup than one phone call, and it pays for itself the second time you would otherwise be reading numbers aloud.
What this code says about your licence
- Nothing has been rejected. The key has not been refused; the data you typed was not in the expected shape.
- Nothing has been consumed. A failed attempt does not spend an activation.
- Nothing needs buying. This is a formatting check on a value you can re-enter.
- Nothing is damaged. No repair, reinstall or licence-store rebuild is called for.
Availability of the telephone route
The offline route exists for machines with no internet connection, and the dialog is still part of Windows. What varies is the automated telephone service itself, which is not offered identically in every country and for every product. If the number you have does not lead anywhere useful, that is a reason to look at VAMT proxy activation or at getting the machine a route to the internet, rather than a sign that something on the PC is broken.
Every code this article covers
| Code | What it points at | Source |
|---|---|---|
0xC004F02C |
The Software Protection Service reported that the format for the offline activation data is incorrect. Microsoft’s resolution is to check the ID entered during phone activation | Microsoft Learn |
0x803FA08E |
Reported in the same circumstances by the Settings activation client. No published meaning | not published by the vendor |
0xC004F02F |
Another offline activation refusal in the same area. No published meaning; read it against the value you supplied | not published by the vendor |
0x803FA08F |
Seen alongside the codes above. No published meaning, and no source pairs it with a specific 0xC004F code | not published by the vendor |
Confirm the fix worked
- The activation completes rather than returning you to the entry boxes.
slmgr /dlireports Licence Status: Licensed.slmgr /xprreports the machine as permanently activated rather than in a grace window.- Start, Settings, System, Activation shows no remediation link.
- Reboot and re-check, so you know the state survived a restart.
Questions people ask about this
Do I need a new licence to fix this?
No. The code says nothing about your entitlement. It says the data you supplied is not in the expected shape, and the fix is to supply it correctly. Your key has not been rejected and nothing has been used up.
Why does slui 4 do nothing on my machine?
On some builds the phone activation option is offered only after an online attempt has failed. Let the online attempt run from Start, Settings, System, Activation first. You can also avoid the dialog altogether with slmgr /dti and slmgr /atp.
Can I write the Confirmation ID down and use it tomorrow?
It is a poor idea. The value is tied to the Installation ID that was current when it was issued, and anything that regenerates that ID overnight – a rekey, a rebuild, a snapshot restore – leaves you with a value that no longer pairs with anything.
Is phone activation still available?
The offline route exists for machines with no internet connection and the dialog is still part of Windows. Availability of the automated telephone service varies by country and product, which is one reason VAMT proxy activation is the better answer beyond a couple of machines.
The code changed after I retyped it. Is that worse?
No, it is progress. This code is a shape check. Once the shape is right, any remaining problem is about which values you are holding, and the new code will be more specific about it.
