Associate your native Android or iOS app with its relying party domain and configure passkeys in the OwnID Console.
Passkeys require a verified association between your native app and its relying party domain. Configure the platform association file, app signing, and the OwnID Console before adding an authentication or enrollment flow.
OwnID Android SDK supports API 23+, but Android passkeys require API 28+.
OwnID iOS SDK supports iOS 13+, but passkeys require iOS 16+.
The endpoint must be public over HTTPS, return HTTP 200 with a JSON content type, and must not redirect. Allow automated retrieval of /.well-known/assetlinks.json; if the domain uses robots.txt, make sure it does not block /.well-known/.
Add an entry for every application ID and SHA-256 signing certificate that should use passkeys, including relevant debug, release, and product-flavor builds.You can inspect a keystore certificate with:
OwnID uses Apple’s AuthenticationServices framework for passkey creation and authentication.
1
Add the Associated Domains capability
In Xcode, open your app target, select Signing & Capabilities, and add Associated Domains. Add the relying party domain without a protocol or path:
webcredentials:<relying-party-domain>
Associated Domains capability configured for web credentials
Enable Associated Domains for the matching App ID in Apple Developer as well. If the app uses manual signing, regenerate and install its provisioning profiles after enabling the capability.
The endpoint must be public over HTTPS, return HTTP 200 with a JSON content type, must not redirect, and its uncompressed content must stay at or below 128 KB.
Add every app target that should use passkeys. Each <APP_ID_PREFIX>.<BUNDLE_ID> value must match the signed app’s application-identifier entitlement.The App ID prefix is often your Apple Team ID, but it can differ. Use the prefix from the signed app or provisioning profile.
Fetch each association URL directly and confirm it returns the expected JSON with HTTP 200 and no redirect. For Android, also confirm automated retrieval is not blocked by robots.txt.
Confirm the Android application ID and certificate fingerprints match the installed build.
Confirm the iOS bundle ID, App ID prefix, Apple Developer App ID capability, provisioning profile, and signed Associated Domains entitlement match.
Test with a passkey-capable OS version and a real relying party domain.