iiamhuman Developer Docsv1.0

PERSONHOOD CREDENTIAL INTEGRATION · STEP 4

Register Your App

Register trusted domains and download your app configuration.

Register Your App

Register your app with the Presentation Exchange Platform before creating wallet requests. Registration tells the wallet and credential services which app is asking, which domains are allowed, and which credential types the app may request.

What Registration Creates

App registration creates an app record that includes:

  • app ID
  • display name and description
  • app URL and allowed origin
  • allowed Presentation Definition fetch domains
  • allowed verifiable credential submission domains
  • scopes and request credential types
  • trusted request issuer DID
  • app status
  • downloadable app config

The trusted request issuer DID is used by your backend to sign wallet request credentials.

Registration Checklist and Example

Use the following checklist to plan your app registration. The example shows fields for a Developer Forum scope.

ItemExampleNotes
App IDdeveloper-forumUse a stable identifier with letters, numbers, dots, underscores, or hyphens.
App nameDeveloper ForumShown in wallet context.
App URLhttps://developer.iamhuman.link/forumPublic website or product URL.
Allowed originhttp://192.168.0.100:5175Browser origin allowed to start the flow. HTTP is acceptable for a local-development frontend origin
PD fetch domain192.168.0.100Host name only (no scheme or path) for the backend endpoint where the wallet fetches the request. Local load is acceptable with HTTP, but public URLs must use HTTPS.
VC submission domain192.168.0.100Host name only (no scheme or path) for the backend endpoint where the wallet submits the result. Local load is acceptable with HTTP, but public URLs must use HTTPS.
Scope IDdeveloper-forum-accountIdentifier for this scope inside the app.
Scope TitleForum AccountDisplay name for this scope inside the app.
Credential Type NameBasic AccessDescribe the object or action this scope authorizes.
DescriptionProve you are human to post and commentExplain to the user what this credential type represents.
Request ModeConfigDrivenChoose ConfigDriven for the flow in this guide. Choose DeveloperDefined only if you are implementing that separate integration model.
Target CredentialHumanChoose whether this request needs Human or Uniqueness.
Human SourcePlatform user dataPlatform user data means the name and photo are retrieved from the user's Facebook or LINE account.

Select Save changes to save your app registration.

Download App Config

After registration, download the app config and store it with your backend deployment configuration. Presentation Exchange SDK uses this config to validate request types, domains, and allowed credential targets.

The app config does not include private key material.

Download Request Issuer DID

Download the complete request-issuer DID and store it in your secret manager. The Presentation Exchange SDK uses it to sign presentation requests. You can download the complete DID only once.

Security requirements:

  • store the complete DID and private key material only in backend secret storage
  • never ship the request issuer private key to the browser
  • keep separate app records and secrets for stage and production

Screenshot needed: Developer console app registration form.

Output Of This Step

By the end of this step, you should have:

  • a registered app
  • an app config file
  • a request issuer DID stored in backend secret storage
  • registered PD fetch and VC submission endpoint domains for your backend

Next Step

Continue to Add the SDK and Load Config.