Tax ID transfers in the app
How to give a company to another account from the web app and how to receive one: the link and the code, accepting with an existing or a new account, a new account for a person on your team, and what the giving account keeps paying.
A tax ID transfer moves a company, with its data and its history, from one Factuarea account to another. This guide follows the web app screen by screen: how the account that gives the company issues the transfer, how the other side accepts it and what each case costs. The same transfers can be issued and accepted over the API, and Accounts and tax IDs describes those operations.
Issue a transfer
Only the owner and the administrators of an account can issue transfers. Open Companies, press Transfers and then Issue a transfer. From the file of a company, Transfer to another account opens the same form with that company already chosen.
The form asks for the company, for who can accept it and for the expiry. Next to them it lists what happens when they accept: which people lose access, which API keys stop reaching the company and which webhooks and integrations are paused. If the company is the main tax ID of your account (the titular NIF in the API guides), the account needs another active tax ID, which becomes the main one when the transfer is accepted.
| Who can accept it | What it means |
|---|---|
| Any account with the link | Whoever has the link or the code can accept the transfer. |
| Only one specific account | Only that account can accept it. You paste the account code, which the other account finds in Access to my account. |
| A person on your team (new account) | An administrator or a member of your account opens a new account with the company. We notify them and there is no link or code. See a new account for a person on your team. |
The expiry is 24 hours, 3 days or 7 days. A shorter expiry gives the link less time to reach someone it shouldn't.
In Also transfer these people (optional) you can choose people on your team to move, with the company, to the account that receives it. See Bring people from your team.
Press Issue transfer and confirm with Yes, issue transfer. Until someone accepts it you can withdraw it from Transfers with Revoke; you can add a reason, which stays in the audit trail of the account.
The link and the code
Once the transfer is issued, the app shows Transfer issued with the Acceptance link (Copy link) and the Transfer code (Copy code). Each works once, and the screen shows them only this time. If you lose them, revoke the transfer and issue another. Send them only to whoever has to receive the company, and close the window with Done, I've copied it.
The link looks like …/nif-transfers/accept#token=…. Browsers don't send what follows the # to any server, and the app removes it from the address bar as soon as it reads it. Older links that carry ?token= keep working until they expire. The code is the same secret without the address, and whoever receives it can paste either of the two in Companies › Accept a transfer.
A transfer to a person on your team has neither: the screen says We've notified followed by the name of the person.
Accept a transfer
Open the link, or go to Companies › Accept a transfer and paste the link or only the code. What you see depends on whether you have a session.
Without a session, the first screen explains what a transfer is and offers Create a new account and Sign in with an account I already have. It doesn't show the company, which appears only after you sign in. Either choice keeps the transfer, so you don't paste the link again, even after confirming your email on another device or coming back from Google.
With a session, the page says where the company would arrive (Arrives at, with the name of your active account, its number of tax IDs and its plan) and, under What changes when you accept, what moves and who will see it. From there you can:
- accept it in that account, with Accept transfer;
- choose Use another account, among the accounts you administer, and the app switches to it and comes back to the transfer;
- choose Create a new account with your user, which has its own section;
- Sign out, to register with a different email.
Accepting can't be undone: the company leaves the giving account, and getting it back would take another transfer in the opposite direction. That is why the page asks you to confirm before it moves anything: a dialog asks again and you confirm with Accept transfer, or with Yes, accept transfer when the company will be the main tax ID of a new account. Not yet leaves everything as it was. Accepting never charges anything: the receipt on the page shows 0.00 € and says what starts being billed later and from when. Only the owner and the administrators of an account can accept transfers in it. A member sees who can, and can still use another account or create a new one with their user.
If the transfer was issued by the account you are in, the page says that the company is already in this account and offers a new account with your user or another account. The API answers the same case with 422 nif_transfer_invalid and the subcode own_account.
A new account by signing up
If you don't have an account yet, press Create a new account and sign up with your email or with Google. When you confirm your email, on this device or another one, the app takes you back to the transfer and shows that it arrives at your new account.
The company enters as the main tax ID of that account, so it takes no additional tax ID seat, and it replaces the empty company that the sign-up created. After you accept, you choose a plan. If the company was already using Factuarea in the giving account, on a paid plan or on a trial, your new account has no free trial and you pay the plan when you choose it. If that account never had a plan, you start the 10-day trial like any new account. The accept receipt tells you which of the two cases is yours. If the empty company already has data, the transfer can't replace it: the page says so and your data stays as it was.
An existing account
In an account that already has a tax ID, the company enters as an additional tax ID. That needs the Profesional plan or a higher one. Accepting charges nothing:
- With a free additional tax ID seat, the company takes it.
- Without a free seat, the company still moves in. The giving account already paid that seat until its renewal, so the receipt shows 0.00 € and says Covered until your renewal on with the date. At that renewal the seat is added to the ones you have contracted and starts being billed each month, in a separate invoice from your plan.
- The same goes for the employees who arrive with the company: those who don't fit in your free employee seats are not charged today and are added at the renewal of those seats. The receipt says how many they are and how much they add per month.
- If your plan doesn't include additional tax IDs, the page offers Upgrade to Profesional. If the account has no plan, it offers Choose a plan. We keep the transfer in your account while you pay and bring you back to it afterwards.
- If your accounting firm pays your account, whoever pays has to accept the transfer.
While the coverage lasts, Billing tells it in one sentence under each item: how many tax IDs and how many employees arrived by transfer, until what date they are free of charge and how much they add afterwards.
Additional tax ID seats explains how contracted, in use and free seats work.
A new account for a person on your team
This option gives the company to someone who already has a user in your account, so that the company ends up in an account of their own, with the same email.
Issue the transfer to that person. Choose A person on your team (new account) and look for them by name or email. The owner and the employees of the portal don't appear in the list. The person gets a notice in the app and an email with the company, the account that offers it and the expiry.
The person opens the notice. They see the company, who offers it and what changes, and they choose a plan and monthly or yearly billing. The plans on offer are Esencial, Profesional and Avanzado. When the company has active employees, only the plans with time tracking are available, and the others say why they are locked.
Review and pay. The summary shows the plan, which is the only thing charged when you pay, with VAT apart because the payment calculates it. The seats of the employees who arrive with the company are not charged today: they are added at the first renewal, one month later, and the summary says how much they add. Pay and open the account goes to Stripe Checkout. There is no trial, so the first payment is charged right away.
The account opens when the payment is confirmed. The person is its owner, with the same email, and the company enters as its main tax ID with its data and its employees, who keep clocking. The person stops being a member of the giving account, unless they are its owner: from then on they work only in their new account. The page says Your account is ready and offers to enter the company.
If you offer several companies to the same person, only the first one opens an account. In their new account they get a notice for each of the others, which land in that account as an additional NIF: opening them shows no plan to choose and no payment, the person sees the page to accept a transfer, and the seat of each company is added at their next renewal. A person has one account only, so someone who already administers their own cannot open another one with an offer.
Anyone who opens a link while signed in can do the same with Create a new account with your user. It is the way for a person of the giving account to take the company without registering again with another email.
Until the payment is confirmed the company doesn't move. If the person doesn't complete the payment, nothing is charged and the offer stays valid until it expires, so they can go Back to the offer and try again. If the giving account revokes the offer while they pay, or the company can no longer move, we refund the payment and cancel the subscription, and the page says We have refunded your payment. If a refund can't be made automatically, the page says We are reviewing your payment and we write to the person within one business day.
After Stripe, the page waits up to a minute for the confirmation. If it hasn't arrived, it says Your payment is being confirmed and we notify the person by email and in the app when the account opens.
Bring people from your team
A transfer moves the company and, if you want, the people who work with it. A person belongs to one account only: the ones you choose move to the account that receives the company and stop being in yours.
- You choose. In Also transfer these people (optional) you choose who, among the administrators, the members and the external advisor of your account, up to 20 people. The owner is not in the list because they cannot leave the account. In a transfer to a person on your team, that person is not in the list either: they already leave with the company. The confirmation and the transfer row in Transfers name the people you chose.
- The receiver decides. Before accepting, they see the name, the email and the access of each person, and the Add them to my account box, which comes checked. If they uncheck it, the transfer is accepted anyway and the people stay in your account.
- How they arrive. When the transfer is accepted, each person joins the account that receives the company as a member with access to that company only, and leaves yours at that same moment. If they could only view it in your account, or had no access to it, they arrive with read-only access. The external advisor arrives as an external advisor and takes no user of the plan. They keep their user and their email, and whoever administers the new account can change their role and access in Team.
- What the person notices. Their session in your account is closed. When they sign in again they work in the new account, no longer see your companies and have a notice telling them which account they moved to.
- If someone doesn't fit. The transfer is accepted anyway and the page says who could not be added and why, for example because the plan of that account doesn't allow more people. That person stays in your account.
It works the same when a person on your team opens a new account: they see the people before paying, and they move to the new account once it is open.
It is an option of the web app: accepting a transfer through the API moves nobody.
What the giving account keeps paying
What an account pays follows the seats it has contracted. A company that leaves frees the seats it used, but those seats stay contracted and billed until you reduce them, so the bill doesn't drop by itself. The form says so under What happens to what you pay: for additional tax IDs and for employee seats it shows how many are contracted, in use before and after, and free after, together with what you keep paying each month and the renewal date.
To reduce them, tick the box that starts with When they accept, schedule the reduction for the renewal on and ends with your renewal date. When the transfer is accepted, or when the new account of a person on your team opens, we schedule the reduction of the seats that the transfer frees, and never the others. From the renewal you pay the amount the form shows, and until then nothing changes. No refund is made for the days in between.
If the reduction would break a package with minimums, the form lists what changes and asks you to confirm with I understand I lose the agreed price. Without that confirmation the transfer can't be issued. If the reduction can't be scheduled when the transfer is accepted, the transfer stays accepted and we notify the owner of the giving account with a link to Billing. If you don't tick the box, you can reduce the seats whenever you want from Billing.
Related
the operations, scopes and errors to issue and accept a transfer without the app.
what an additional tax ID costs and how to buy and reduce seats.
how the seats of the employees who clock in are contracted.
the recipient_member field and the own_account subcode of the API.