Connect MYOB
Import your workers from MYOB (AccountRight / MYOB Business), the accounting and payroll platform. You authorise Oho to read from MYOB once, and Oho creates your workers and keeps them in step with MYOB on the schedule you choose — so people don't have to be added in two places.
This connector is still being rolled out. It imports employee cards and their status (active or inactive), employee card ID, and contact email — job and payroll detail live elsewhere in MYOB and aren't imported yet. If you hit something unexpected, contact support@weareoho.com.
Your MYOB employees in Oho as workers — each ready for credentials to be added and checked — kept in step with MYOB, without maintaining two lists.
Before you start
You'll need:
- Your people already recorded as employee cards in MYOB, with the details you want in Oho — their names and contact email.
- A my.MYOB login with access to the company files you want to import, to approve the one-time authorisation in Step 1.
- Someone who can register an app on the MYOB Developer Centre — this is a developer task, so loop in whoever handles that for you before you start. It's done once, not per sync.
Step 1: Get your auth details
An app registered at developer.myob.com, and a my.MYOB login you can sign in with to authorise it. You'll finish this step holding three values to paste into Oho: an API Key, an API Secret, and a Refresh Token.
MYOB uses the Authorise with OAuth pattern, but unlike some sources the app is registered by you rather than by Oho — so the one-time consent happens before you reach Oho, and you carry the result across.
- On the MYOB Developer Centre, register an application. MYOB issues an API Key (client ID) and an API Secret (client secret).
- Complete the one-time browser consent for that app against your my.MYOB account. MYOB returns a Refresh Token.
- Copy all three values. Oho mints its own short-lived access tokens from the refresh token from then on, so this is the only time anyone signs in.
Technical detail: the OAuth exchange, company files & file credentials
Hand these points to whoever registers the app — a non-technical admin can skip them.
- Grant. MYOB's Business API uses the OAuth 2.0
authorization_codegrant againsthttps://secure.myob.com/oauth2/account/authorize. The resulting refresh token is what Oho stores; access tokens are short-lived (20 minutes) and Oho mints a fresh one per run withgrant_type=refresh_token. - Headers. The API Key is also sent as the
x-myobapi-keyheader on every request. - Company files. Oho lists the company files the credentials can access, then reads employees from each with
GET {base_url}/{company_file_id}/Contact/Employee. The defaultbase_urlishttps://api.myob.com/accountright, which serves online AccountRight / MYOB Business files. - File credentials. Online files using my.MYOB user-based access need nothing extra. A desktop or credential-protected file needs a company file username and password (typically
Administrator), which Oho sends as the Base64-encodedx-myobapi-cftokenheader — set them in the integration's advanced settings. - Rate limits. MYOB allows 8 requests/second and 8,000 requests/day per company file. Oho caps itself below that and backs off on HTTP 429.
Together they grant ongoing access to worker PII for as long as they're valid. Never post them in email, chat, or a ticket, and revoke the app in MYOB if the connection is removed or someone with access to them leaves.
Expected outcome: you have the API Key, API Secret, and Refresh Token copied, ready to paste into Oho.
Step 2: Connect it in Oho
In the left menu under Admin, click Integrations, then start a new integration.

Pick MYOB from the list of sources.

Paste your API Key (Client ID), API Secret (Client Secret), and Refresh Token, then continue. Two optional settings sit alongside them:
- Company File IDs — leave blank to import every company file your credentials can reach, or list specific file IDs (GUIDs) to narrow it.
- Include Inactive Employees — on by default, so inactive employee cards import and are marked inactive rather than silently disappearing from Oho. Turn it off to import active employees only.
Expected outcome: the MYOB connection is accepted in Oho, and it moves you on to field mapping.
Step 3: Map your fields
Oho creates one worker per MYOB employee card. It recognises a returning worker by their MYOB employee card ID, carried on source.externalId — so a re-sync updates the existing worker in place rather than creating a duplicate.
The company file a worker sits in becomes their organisation in Oho. MYOB has its own names for things; the setup screen asks you to line each value up with its Oho equivalent before your first sync. For what each field expects, which are required, and how re-syncs avoid duplicates, see the shared Map your fields reference, and the MYOB integration reference for what this connector imports at a glance.
A MYOB value you leave unmapped still imports, but Oho can't place it correctly until it's mapped. If a new value appears in MYOB later, Oho flags it so you can map it.
Expected outcome: every MYOB value the setup screen lists maps to its Oho equivalent, and each worker carries their MYOB employee card ID as the match key.
Step 4: Set the schedule
Choose how often the sync runs, then name it and save.
- Once — a one-off load to get started. You can revoke the app in MYOB afterwards if you don't intend to sync again.
- Recurring — Oho re-reads MYOB on a schedule, so new starters and deactivated employee cards flow through automatically. The refresh token from Step 1 must stay valid for future runs.

Expected outcome: the connection is saved and scheduled, and appears in your Integrations list.
Step 5: Run & verify your first sync
Run it now with Save & Run, or wait for the first scheduled run. Once it's run, confirm your people are in: they appear under All Workers, and each credential you later add is checked against its official source (see One-off verification).

If the run didn't bring everyone in, check the run history and the Common questions below.
Expected outcome: your people are in Oho under All Workers, ready for credentials to be added and checked.
What happens next
- Your people appear under All Workers, ready for checks.
- To keep those checks current, add a verification source for the credential types you hold — synced credentials then verify at the register automatically.
- If recurring, you don't re-import by hand — change it in MYOB and Oho picks it up on the next run.
Common questions
The sync found nothing. The refresh token may have expired or the app been revoked in MYOB. Re-authorise the app and paste a fresh refresh token into the integration's settings.
A company file didn't import. If you listed Company File IDs, only those files import — clear the list to take everything the credentials can reach. If the file is credential-protected, it also needs a company file username and password in advanced settings.
Terminated staff are missing. Include Inactive Employees may be turned off. Turn it back on and re-run, and inactive employee cards import marked inactive.
Some workers didn't import. Oho matches returning workers on their MYOB employee card ID (source.externalId). Check the match key and the values you mapped in Step 3.
I don't see Integrations. This is an admin area — if it's not in your menu, ask an admin in your organisation, or contact support@weareoho.com.
Related
- MYOB integration — what the MYOB connector imports, at a glance
- Add a data source — all the ways to bring data into Oho
- Integrations — every source Oho can connect to