10-Jul-2026 — Publishing to Facebook and Instagram: the Meta approval process


This guide explains what Meta needs before your group or area can publish walk photo albums to a Facebook Page and an Instagram account directly from the website. It is written to be followed step by step, because the process is genuinely confusing the first time and Meta's own documentation assumes you already know how their pieces fit together.

NGX does the fiddly technical parts for you. You will never need to run an API call or copy an ID by hand — you paste one access token, choose your Page from a list, and NGX finds everything else.

Read this first — the single most important point

You do not need Meta's full App Review to start publishing to a Facebook Page and Instagram account that your group or area runs.

Meta has two levels of access:

Most of the pain people hit is from assuming the whole thing needs App Review from day one. It does not. Get it working with Standard Access first, prove it end to end, and only take on App Review if a wider rollout actually needs it.

flowchart TD
  A["Posting to a Facebook Page and Instagram account your group or area administers?"] -->|Yes| B["Standard Access"]
  B --> C["No App Review needed<br/>Verify the business, add the assets, generate a token"]
  A -->|"Need to post to Pages you do NOT administer"| D["Advanced Access"]
  D --> E["Business Verification + App Review<br/>with a screencast per permission"]
  C --> F["Paste the token into NGX and publish the album"]
  E --> F
  style B fill:#E8F5EE,stroke:#9BC8AB,stroke-width:2px,rx:12,ry:12,color:#404143
  style D fill:#FBEEDD,stroke:#E0B784,stroke-width:2px,rx:12,ry:12,color:#404143

What this unlocks

Once connected, the album editor gains a Share album to social media panel: pick the images, write a caption, and publish a multi-photo post to the Facebook Page and a carousel to Instagram in one step. The images are already hosted on the website, which is exactly what Instagram's publishing needs.

Before you start: the accounts and assets you need

You will need all of the following. Gather them before touching the developer console.

📸 Screenshot placeholder: the Instagram account showing as a professional account in the Instagram app settings.

📸 Screenshot placeholder: the Facebook Page "Linked accounts" screen showing the Instagram account connected.

The two routes through Meta

Standard Access Advanced Access
Use it for Posting to a Page and Instagram account you administer Posting to Pages and accounts you do not administer
App Review Not required Required, one submission per permission
Business Verification Not required to operate on owned assets, but recommended Required
Good for Getting it working, one group or area, testing A central rollout across many groups
Time to set up Under an hour 2–4 weeks per App Review submission

Route 1 — Get it working now (Standard Access, no App Review)

This is the path to a working setup for your own Page and Instagram account.

Step 1 — Create a Meta app

  1. Go to developers.facebook.com and, under My Apps, choose Create App.
  2. Pick the Business app type.
  3. Give it a name and attach it to the Business Portfolio.

📸 Screenshot placeholder: the Create App screen with the Business type selected.

Step 2 — Add the products

In the app dashboard, add:

📸 Screenshot placeholder: the app dashboard showing Facebook Login for Business and Instagram added as products.

Step 3 — Add the Page and Instagram account to the Business Portfolio

In Business Settings:

  1. Under Accounts → Pages, add the group or area's Facebook Page.
  2. Under Accounts → Instagram accounts, add the linked Instagram account.
  3. Under Accounts → Apps, make sure the app you just created is claimed by the Business Portfolio.

📸 Screenshot placeholder: Business Settings showing the Page, the Instagram account, and the app all present.

Step 4 — Generate an access token

This is the one value you copy out of Meta. NGX does everything else with it.

  1. In Business Settings → Users → System Users, create a system user (for example "Publisher") with the Admin role. A system user token does not expire, which is ideal.
  2. Assign the group or area's Facebook Page to it, with full control.
  3. Generate a new token, selecting the app and the permissions that mention content publishing and managing Pages (Meta names these pages_manage_posts, pages_read_engagement, pages_show_list, instagram_basic, instagram_content_publish and business_management).
  4. Copy the token.

⚠️ Meta's exact permission names shift depending on which Instagram product it shows you. Tick the ones described as content publishing and manage Pages — the screenshot below will pin down what you see.

📸 Screenshot placeholder: the token generation screen with the permissions ticked.

Step 5 — Connect it in NGX (this is where the technical part disappears)

In the NGX admin site, go to System Settings → External Systems → Social Media:

  1. Paste the token into Access token.
  2. Click Find my Pages.
  3. Choose your Page from the list.

That is it. NGX reads back your Page and the Instagram account linked to it, and fills in everything behind the scenes — there are no IDs to copy and no API calls to run. Tick Publish walk albums to Facebook and Publish walk albums to Instagram, press Test Facebook and Test Instagram to confirm, then Save.

📸 Screenshot placeholder: the NGX Social Media settings after pasting the token, showing the Page chosen from the dropdown and both Test buttons confirming green.

Step 6 — Publish a test album

Open a walk photo album in the album editor, use the Share album to social media panel, pick a couple of images, write a caption, and publish. Check the post appears on the Page and on Instagram.

📸 Screenshot placeholder: the Share album panel with images selected and a caption written.

📸 Screenshot placeholder: the resulting Facebook post and Instagram carousel.

Route 2 — A central rollout across groups (Advanced Access + App Review)

When the feature is used across Pages that are not administered from one Business Portfolio, Meta requires Advanced Access, which means Business Verification and App Review. Allow at least a month, because each permission is reviewed separately and each review takes two to four weeks.

Step A — Get the app ready for review

Meta will reject a submission that is missing any of these, so do them first:

📸 Screenshot placeholder: the app's Basic Settings with the privacy policy, icon and category filled in.

Step B — Complete Business Verification

In Business Settings → Security Centre, start Business Verification. Meta checks the organisation is real, using registration details and, usually, a domain or a document. This has to pass before Advanced Access can be granted.

📸 Screenshot placeholder: the Security Centre showing Business Verification status.

Step C — Request Advanced Access and submit for App Review

For each permission (pages_manage_posts, instagram_content_publish, and the others), request Advanced Access and provide:

  1. A clear use-case description — what the app does with the permission, in plain terms. Example: "The website lets a volunteer publish a photo album of a completed group walk as a multi-photo post to the group's Facebook Page."
  2. A screencast (see below).
  3. Step-by-step reproduction instructions for the reviewer, and test credentials so they can log in and see it work.

What the screencast must show — the part that gets people rejected

This is where most first attempts fail. The reviewer must be able to watch, in one recording, the whole flow of that specific permission being used in the live product:

A screencast that only shows the settings screen, or describes the feature without demonstrating it end to end, will be rejected. Record the actual publish happening.

📸 Screenshot placeholder: the App Review submission screen for one permission, showing the use-case text and the attached screencast.

Permissions reference

Permission What it does Access level for your own Page Needs App Review?
pages_show_list Lists the Pages you manage Standard No
pages_read_engagement Reads Page details Standard No
pages_manage_posts Publishes posts to a Page Standard Only for Pages you do not administer
instagram_basic Reads the linked Instagram account Standard No
instagram_content_publish Publishes to Instagram Standard Only for accounts you do not administer
business_management Manages business assets and system users Standard No

Who does what

NGX does for you:

You do once, on the Meta side:

Meta controls:

Common reasons approval fails

Where we are now

The NGX side is built: pasting a token, choosing a Page, the automatic Instagram lookup, the Test buttons and the Share album panel are all in place. The remaining work is on the Meta side — creating the app, adding the assets, and generating the token for Route 1 so we can test end to end and fill in the screenshots above. Route 2 (Business Verification and App Review) only becomes necessary for a central rollout beyond the first group or area.

A future refinement will replace the paste-a-token step with a single Connect Facebook button, removing even that. It needs the Meta app to exist first, so it comes after Route 1 is working.


Sources: Meta's own documentation on access levels, Instagram content publishing, App Review and System Users.