Supported Features
Account Deletion Account CreationPrerequisites
Creating an Organization
Integrating with GitHub requires an organization. Go to the GitHub admin page and verify that an organization has been created. If no organization exists, create one. Attempting to integrate without an organization will result in an error (errors.ids.oauth_no_workspace).
If you have already created an organization but are still seeing an error, see “Integrating Multiple Organizations” below.
Integration Setup
There are the following methods to create a new integration:- General (Non-Enterprise Plan · OAuth)
- General (Non-Enterprise Plan · App)
- Enterprise Plan
General (Non-Enterprise Plan · OAuth)
- Go to Integrations > Integrations, search for Github, and select the General tab.

- Select OAuth from the connection type dropdown.

- Select a permission level — Read And Write (recommended) / Read Only / Read Only (excluding collaborators and invitations) — and click [Connect].

- You will be redirected to the GitHub login page. Enter your GitHub username or email address and password to log in.

- After logging in to GitHub, a permission grant confirmation screen will appear as shown below.

- Review the permissions to be granted, click [Grant] for your organization, then click [Authorize].
- Once the integration with GitHub is successful, registered user information will appear in the account list.
If you use multiple organizations and accidentally clicked Authorize without clicking Grant, see “Integrating Multiple Organizations” below.
General (Non-Enterprise Plan · App)
- If you select the connection type App, install the app in advance.
- Go to Integrations > Integrations, search for Github, and select the General tab.

- Select App from the connection type dropdown, enter the organization name as the workspace key, and click [Apply].

- Select your organization. Once the integration with GitHub is successful, registered user information will appear in the account list.
GitHub Enterprise (Self-Hosted)
If you use GitHub Enterprise, the integration process is different. Follow the steps below.These instructions apply when using GitHub in a self-hosted environment. If you use a github.com URL, integrate from the General tab.
Creating an OAuth App
- Create an OAuth app following the GitHub documentation. The following notes cover the parameters to enter.

- For [Application name], enter
Admina by Moneyfoward.

- For [Homepage URL], enter
**https://itmc.i.moneyforward.com/**.

- For [Authorization callback URL], enter
**https://itmc.i.moneyforward.com/oauth/callback**.
Confirming the Base URI
Check the domain you added when verifying or approving a domain for your GitHub Enterprise organization. (Include https://) Copy and save it.
Confirming the Client ID and Client Secret
- After creating the OAuth app, the Client ID will be displayed. The Client ID is your client ID — save it.

- Click the [Generate a new client secret] button.
- The Client secret will be displayed. The Client secret is your client secret — save it.

Integration Setup
- Go to Integrations > Integrations, search for Github, and select the Enterprise Plan tab.

- Enter the Base URI, client ID, and client secret obtained in the previous steps.
- Select a permission level — Read And Write (recommended) / Read Only / Read Only (excluding collaborators and invitations) — and click [Connect].

- Once the integration with GitHub is successful, registered user information will appear in the account list.
Manual Account Matching for SaaS Services Where Email Address Cannot Be Retrieved
Because email addresses cannot be retrieved for this service, user types are identified as “Unknown.” If needed, manually match (merge) accounts with other accounts. For configuration details, refer to Manually Matching (Merging) SaaS Accounts with Other Accounts.Integrating Multiple Organizations
The following cases require action on the GitHub side:- You want to add a new organization after the initial GitHub integration
- You accidentally clicked Authorize without clicking Grant during initial setup (organization cannot be selected)
Actions on the GitHub Side
Perform the following steps to grant access to the additional organization or the organization you forgot to grant.- Go to https://github.com/settings/applications.
- Click the Admina by Money Forward app.

- Click the Grant button under Organization access.

- Re-integrate in MoneyForward Admina. As shown in the image below, the organization you granted access to will now be selectable.

Integrating 11 or More Organizations
GitHub OAuth tokens have a limit of**10** tokens per user/application/scope combination. If more than 10 tokens are created for the same user and scope combination with an application, the oldest token for that user/application/scope combination will be revoked.
Tokens revoked due to too many OAuth app tokens with the same scope
If you need to integrate 11 or more organizations (workspaces), change the account used for integration and run the integration again.
