Follow these steps to connect Directo, import your clients and articles, and export invoices from Uku to Directo.
Who can do this
Section titled “Who can do this”- Set up the connection and the settings: Company Admin or Company Owner, on the Team or Elite plan.
- Export invoices: any member who can work with the invoice, once the connection is set up.
- Create a Directo customer card for a client: a Company Owner or Company Admin, a member allowed to edit invoices, or the client’s Client Admin. The rule is the same as for creating invoices for that client. Other members see the Create client button, but Uku answers “Insufficient permissions”.
- In Directo: someone who can set up XML Direct, usually the firm’s Directo administrator.
What the Directo integration does
Section titled “What the Directo integration does”Uku and Directo exchange these data:
| Data | Direction | When |
|---|---|---|
| Clients | Directo → Uku | when you click Start import |
| Articles | Directo → Uku | when you click Import lists |
| Invoices and credit notes | Uku → Directo | when you click Export to accounting |
| Paid status | Directo → Uku | every day, while Update invoice status is on |
| New client card | Uku → Directo | when you click Create client on a client |
Step 1: Order XML Direct in Directo
Section titled “Step 1: Order XML Direct in Directo”Contact Directo and order the XML Direct add-on for your Directo account. Ask Directo to activate these three feed directions:
- Customers out (and if needed, Customers in)
- Invoices in (and if needed, Invoices out)
- Articles out
Without XML Direct and these directions, Uku cannot read clients or articles from Directo, and cannot send invoices to Directo.
Step 2: Find the XML Direct key in Directo
Section titled “Step 2: Find the XML Direct key in Directo”Once XML Direct is active, the key is on the integration user’s employee card in Directo.
-
In Directo, open the Personal menu and choose Employees (Personal → Töötajad).

-
Find the employee created for the integration and click the entry in the Code column.

-
On the employee card, open the Admin tab.

-
Scroll to the bottom of the page. The XML Direct key is shown there. Copy it.

Step 3: Connect Directo in Uku
Section titled “Step 3: Connect Directo in Uku”Pasting the key connects Uku to your Directo account. Connecting does not import anything yet.
Path: Settings & Apps → Directo
- Open Settings & Apps and click the Directo card.
- Paste the XML Direct key into the key field.
- Click Connect. Uku checks the key and saves it.

The Import tab now shows Start import. To use another key later, click Change access token on the same tab.
Step 4: Import your clients from Directo
Section titled “Step 4: Import your clients from Directo”The client import reads your Directo customers and lets you choose which ones to add to Uku or update.
Path: Settings & Apps → Directo → Import
- Under Add & update data, click Start import.
- When the import finishes, Uku shows the clients it read from Directo.
- Choose which clients to add or update, and confirm.
For each client, Uku imports the name, registration code, VAT number, address, country, e-mail, phone, payment term and currency. The payment term becomes the client’s due date period in Uku. A closed Directo customer arrives in Uku as an inactive client.
Uku updates an existing client instead of creating a second one when one of these matches, in this order:
- The Directo customer code stored by an earlier import or link.
- The registration code.
- The name, when one of the two has no registration code.
The import stores each client’s Directo customer code as the client’s link to Directo. The import does not change the client’s Client code in Uku.
Step 5: Connect Directo in the Billing app
Section titled “Step 5: Connect Directo in the Billing app”To export invoices, choose Directo as the accounting service in the Billing app too.
Path: Settings & Apps → Billing → Connect
- In Service, choose Directo. Directo needs no more fields here.
- Click Save.
Update invoice status turns on by itself. Uku then reads the paid status of exported invoices from Directo every day.

Step 6: Import articles and match your codes
Section titled “Step 6: Import articles and match your codes”Every invoice row needs an article code and a VAT code that Directo knows. Import the articles, and enter the Directo codes for taxes and resources in Uku.
Path: Settings & Apps → Billing → Setup
- Click Import lists. Uku imports your active Directo articles with their code, name, unit and price.
- In Taxes, enter each Directo VAT code in the Code column of the matching Uku tax.
- In Resources, enter each person’s Directo salesman or object code in the Code column.

Step 7: Choose how invoices are exported
Section titled “Step 7: Choose how invoices are exported”The Directo app’s Settings tab decides what Uku sends with each invoice. Every default keeps the export as it was before these settings existed, so you only change what your firm needs.
Path: Settings & Apps → Directo → Settings
Create client
Section titled “Create client”Directo customer code for a new client decides which code Uku uses when you create a Directo customer card from a client:
- Registry code (default): the client’s registration code. A client with no registration code gets its Uku client number.
- Client code: the client’s Client code in Uku. Uku refuses a client whose Client code is empty.
Invoice export
Section titled “Invoice export”Invoices go to the client’s Directo customer code. If the client has none, they go to its Client code. A client with neither cannot be exported.
- Invoice status in Directo — Draft (default) creates the invoice as a draft in Directo, for review there. Confirmed confirms it straight away.
- VAT zone — Client’s Country (default) sends the zone from the client’s country: Estonia, another EU country, or outside the EU. Directo customer card sends nothing, and Directo uses the zone on its customer card.
- Payer name — Client name in Uku (default) sends the name from Uku. Directo customer card sends nothing, and Directo uses the name on its customer card.
- Object — Resource (default) sends each row’s resource code. Cost centre sends each row’s cost centre code. Directo default sends nothing.
- Salesman — see the list below.
- Orderer (Invoice to parent company) — Not sent (default), or Directo customer code of the sub-company. The second choice is for clients billed to their parent company through the contract setting Invoice to parent company. Directo then shows which sub-company ordered the work.
The Salesman choices:
- Client Manager, else Resource (default): the invoice salesman is the Client Manager’s resource code. If the Client Manager has none, Uku uses the first row’s resource code. Each row gets its own resource code.
- Fixed code: enter a Salesman code. The invoice gets this code. Invoice rows with a resource keep the resource code as their salesman, and other rows get the fixed code.
- Directo default: Uku sends no salesman. Directo uses the default salesman of its XML connection, so check it on the first exported invoice.
Click Save after you change a setting.
XML preview
Section titled “XML preview”The XML preview shows exactly what Uku would send for one invoice, with the choices on the screen, saved or not. Nothing is sent to Directo.
- In Invoice number, enter the number of an existing invoice or credit note.
- Click Show XML.
Use the preview to check a new setting before you export real invoices.
Send an invoice to Directo
Section titled “Send an invoice to Directo”Uku sends an invoice to Directo only when you export it.
- Open the invoice.
- Click Export to accounting.
To export several invoices at once, select them in the invoice list and use the Export to accounting bulk action. Credit notes go to Directo with positive amounts, marked as credit notes.
Directo accepts only invoice numbers made of digits. Use an invoice number series of digits only, for example 20260042.
The row resource is decided when Uku creates the invoice, not when it exports it. A row without a resource gets the contract’s default resource. If the contract has none, it gets the Client Manager’s resource, when By default, use manager resource is on in the Billing settings. A row with no resource code is still exported, just without a salesman or object.
Link a client to Directo by hand
Section titled “Link a client to Directo by hand”The client page shows the client’s Directo link under Integrations. Use it for a client that the import did not link.
- Open the client.
- Under Integrations, choose one action:
- Create client — creates a new customer card in Directo for this client, with the code from Directo customer code for a new client.
- Edit — changes the client’s Directo customer code.
- Remove — removes the link. Invoices then go to the client’s Client code. A client with no Client code cannot be exported until you link it again.
Uku refuses Create client when the code is already linked to another Uku client, or when Directo already has a customer with that code. Nothing is then sent to Directo. Use Edit and enter the existing Directo customer code instead.
Troubleshooting
Section titled “Troubleshooting”Connection fails right after pasting the XML Direct key
Section titled “Connection fails right after pasting the XML Direct key”The cause is almost always one of these:
- The key has spaces before or after it. Copy the key again from the Admin tab in Directo.
- XML Direct was ordered, but the three feed directions (Customers out, Invoices in, Articles out) were not activated. Ask Directo to check.
- The key belongs to another Directo company than the one you want to connect.
Some clients from the import are inactive
Section titled “Some clients from the import are inactive”A closed customer in Directo arrives in Uku as an inactive client. Reopen the customer in Directo and run the import again, or activate the client in Uku.
Invoice export fails with a VAT-code error
Section titled “Invoice export fails with a VAT-code error”The Uku tax on an invoice row has no matching Directo VAT code. Open Settings & Apps → Billing → Setup → Taxes, enter the Directo VAT code in the Code column, and export again.
Invoice export fails with an article-code error
Section titled “Invoice export fails with an article-code error”An invoice row uses a product whose article is not in Directo. Run Import lists under Billing → Setup, link the product to the imported article, and export again.
Directo does not accept the invoice number
Section titled “Directo does not accept the invoice number”Directo accepts only invoice numbers made of digits. Change your invoice number series to digits only, then export again.
Invoice export fails with “Missing Directo customer code”
Section titled “Invoice export fails with “Missing Directo customer code””The client has no Directo customer code and no Client code. Link the client under Integrations on the client page, or fill in its Client code.
Directo shows the wrong salesman or object
Section titled “Directo shows the wrong salesman or object”Check the Salesman and Object choices on the Directo app’s Settings tab. Then check that each resource has its Directo code in Billing → Setup → Resources. Use XML preview to see what Uku sends before you export again.
What’s next
Section titled “What’s next”After Directo is connected, set up your billing products and then client contracts, so Uku can create invoices from monthly work.