I want to change the name on an energy account. The account is mine in the sense that I am the authorised person on it. The address has not changed. The service has not changed. The relationship between me and the energy company has not changed. The name requires updating. That is the complete description of the task.
The system does not support name changes on existing accounts. The system supports account creation and account closure. A name change, from the system’s perspective, is not a mutation of an existing record. It is the closure of one account and the creation of another. These are treated as separate events, involving separate processes, requiring separate verification. The same person, at the same address, with the same service, wanting a different label on their account, must close the existing relationship and establish a new one from scratch.
This would be merely inconvenient if the two processes could proceed simultaneously. They cannot.
The verification of the new account requires a mobile number. My mobile number is attached to the account being closed. The system binds one mobile number to one active account. The old account is still open. The new account requires the number. The number is unavailable because it is elsewhere in the system, attached to a record the system has not yet closed. The system cannot verify that I am me, because I am already me in a different record.
This is not a problem I created. It is a problem the system created by modelling a name change as two separate events rather than one continuous one. The system has no concept of transition—no state between open and closed, no mechanism for carrying an identity across the gap between an account being closed and an account being opened. The system knows active and closed. The moment between them, the moment in which I need to be both in order to maintain service continuity, does not exist in the system’s model.
The consequence of this gap is that I may lose gas and electricity. Not because I have failed to pay a bill or breached a contract or done anything that would, in any reasonable model of a customer relationship, justify the interruption of a service I have been receiving continuously. Because the system cannot represent the same person changing one attribute without recreating the entire relationship from scratch, and cannot recreate it from scratch while the original version still exists, and cannot close the original version until the new one is verified, and cannot verify the new one because the original version still exists.
The service depends on both accounts. The system can only process one at a time.
I called the company to resolve this. The phone system spent five minutes telling me things I had not asked. Privacy information. Advertising. Account details delivered in a sequence I could not interrupt. By the time the system had finished communicating what it was required to communicate, it informed me that the office was busy and suggested I call back. It did not state the office hours. The office hours are not on the website. I do not know when to call back. I do not know what state my account is in. I do not know what will happen next. The system does not tell me these things because the system communicates what it must say, not what I need to know.
I hung up. I am now in the same position as before the call, with the addition of five minutes spent listening to information I did not need, and the absence of any information I did need.
I tried the chatbot. I asked a specific question: my mobile number is connected to another account where I am only the authorised person. How do I apply it to this account?
The bot answered: to apply your mobile number to your current account, you will need to add yourself as an authorised person on this account. It provided navigation instructions. Log in, select your name, go to Profile, navigate to Account Authorisation, select Edit.
I had asked about a mobile number. The bot told me to add myself as an authorised person. These are different operations. The mobile number is an identity token. Authorised person is a role. The bot mapped my question to the nearest available action rather than the relevant one, because the bot does not understand identity constraints or cross-account conflicts. It understands keywords. My question contained the words mobile number, account, and apply. The bot matched these to a known action and provided instructions for performing it.
I followed the instructions.
The form that appeared required a mobile number. The field accepted nine digits. Australian mobile numbers have ten digits. The system did not indicate the required format. I entered the number in the format that seemed logical. The form rejected it. I entered it without the leading zero. The form rejected it. I entered it again with the leading zero. On the third attempt the form accepted the number. No SMS arrived to verify it. The number is stored. The number is not verified. Without verification, the number cannot authenticate me. The new account remains unverified. The problem remains.
The bot’s instruction was followed exactly. The form was completed after several attempts. The system accepted the input. The system is satisfied. The step has been logged as completed.
The situation is unchanged.
What the system has produced, across these interactions, is a sequence of completed steps that have not moved toward resolution. The phone call was completed in the sense that it ended. The chat conversation was completed in the sense that it reached a conclusion. The form was completed in the sense that it accepted the data and returned a confirmation. Each step produced an output the system could record. None of the outputs addressed the underlying constraint.
The constraint is simple to state: the system cannot move a verified identity from one account to another. It cannot do this because it was not built to do this. It was built to create accounts and close them, and it has modelled every possible customer request as a variation of these two operations. A name change is not a variation of these two operations. It is a third operation the system does not contain. In the absence of the third operation, the system offers the two it has, applied sequentially, producing the conflict I am now inside.
The bot cannot see this conflict because the bot does not have a model of the system’s constraints. It has a model of the system’s available actions, and it matches questions to actions. The action it matched my question to is valid. The action is logged. The action did not resolve the conflict because the action is unrelated to the conflict. The bot does not know this. The bot’s model does not include the concept of an action that is valid and irrelevant simultaneously.
I added myself to my own account. The system accepted me after several attempts. The number is stored but not bound. I am authorised but unverified. The old account is still open. The new account is not verified. The service continues on the old account while the new account waits in a state the system cannot process. I do not know if the service will continue. The system has not told me. The system does not contain a field for what happens to the service during an administrative transition it cannot represent.
The system cannot change an account, so it creates another. It cannot verify the second because the first still exists. It cannot close the first because the second is not verified. The service depends on both. The system depends on neither.
I have been the same person throughout this process. I have been at the same address. I have wanted the same service under a different name. The system has required me to prove my identity to a system that already holds it, in a format the system’s own form could not accept without multiple attempts, producing a record that is complete in every field except the one that would allow it to function.
The step has been completed. The problem remains. These are, in the system’s accounting, the same thing.
I remain unverified. The service remains uncertain. The name has not changed.
There is, somewhere in a log I cannot access, a record of several completed steps.