Skip to content
  1. Home
  2. Help centre
  3. Connect Meta Ads

Ad spend

Connect Meta Ads

Balanik reads your daily Meta spend per campaign with an access token from a system user. You make the token once in Meta, paste it in, and Balanik checks it before it saves.

What you need

  • Admin access to your Meta business portfolio, so you can add a system user.
  • A Meta app to pick when you generate the token.
  • Your ad account ID. In Ads Manager it appears as act_ followed by a number. You need the number only.
  • An administrator account in WordPress. Shop managers can see the spend but can’t connect accounts.

Create the token in Meta

  1. Open Meta Business Settings → Users → System users and add a system user. Admin is fine.

  2. Choose Assign assets, pick your ad account and allow View performance.

  3. Choose Generate new token and select your Meta app. Tick ads_read and set the expiry to Never.

  4. Copy the token and keep it somewhere safe until you’ve pasted it into Balanik.

Paste it into Balanik

  1. In WordPress, open Balanik and go to the Ad spend tab.

  2. On the Meta Ads card, open Connect Meta in 5 minutes.

  3. Fill in Ad account ID and Access token. Leave API version at its default, v25.0.

  4. Press Verify and save. Balanik asks Meta for the account’s currency and time zone before it saves anything.

When it works, the card shows a Connected chip with the account ID and its currency. The count at the top of the tab, Spend sources connected, goes up by one.

The time zones must match. Your ad account and your store need the same time zone. If they differ, Balanik refuses the connection and names both time zones. Otherwise a day’s spend would land on the wrong day in your daily profit.

What comes in, and when

Balanik imports spend per campaign, per day. It doesn’t import clicks, conversions or ROAS. Nothing about your orders or customers is sent to Meta.

  • While the dashboard is open, Balanik imports the selected period again if its Meta data is older than 15 minutes.
  • In the background, you can switch on an hourly refresh of orders and ad spend. It’s off by default. Find it under Costs → Email and background refresh.
  • For older dates, pick the period at the top of the dashboard and press Import selected period.

If your ad account bills in another currency than your store, add an exchange rate under Costs → Exchange rates first. Without a rate for that currency on or before the day, the import stops and tells you which rate is missing.

Check, replace or disconnect

  • Check access asks Meta whether the token still works.
  • Replace access token reconnects the same ad account with a new token. Saved history stays.
  • Disconnect deletes the saved token. Spend you already imported stays in your reports.

To switch to a different ad account, disconnect the old one first. Balanik won’t swap accounts on a saved connection.

If something goes wrong

MessageWhat to do
Meta access expired or was revoked. Reconnect the account.Generate a new token for the system user and use Replace access token.
Account timezone … differs from reporting timezone …Your ad account and store use different time zones. Connect an ad account that uses the store’s time zone.
Provider rate limit reached. Wait a few minutes before retrying.Meta is limiting requests. Wait, then import again.
Provider could not be reached. Saved data has been kept.A network problem between your host and Meta. Try again later.
Provider request failed (HTTP …)Meta returned an error. Check the account ID and the token’s permissions, then retry.
Enter a valid advertising account IDUse digits only, without the act_ prefix.

When a token stops working, a notice at the top of the dashboard says Meta needs reconnecting. Profit keeps using the spend already saved, which may be out of date until you reconnect.

What to do next