Connect an Embedded App
How-To Guide: Issue Credentials from Embedded Apps in the LearnCard App Store
Overview
Architecture
βββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β LearnCard App β
β βββββββββββββββββββββββββββββββββββββββββββββββββ β
β β Your Embedded App β β
β β β β
β β 1. User completes action β β
β β 2. App calls sendCredential(templateAlias) β β
β β 3. LearnCard issues from your template β β
β β 4. User sees claim modal β β
β β 5. Credential stored in wallet β β
β β β β
β βββββββββββββββββββββββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββPrerequisites
Quick Start
Step 1: Install the SDK
Step 2: Initialize and Send a Credential
Setting Up Your App Store Listing
1. Create Your App Listing
Age Restrictions
Field
Type
Description
2. Create Credential Templates
3. Configure Signing Authority
4. App Issuer Identity
API Reference
sendCredential({ templateAlias, templateData? })
sendCredential({ templateAlias, templateData? })Parameter
Type
Required
Description
Error Handling
initiateTemplateIssue(templateUri)
initiateTemplateIssue(templateUri)Parameter
Type
Required
Description
requestConsent(contractUri?, options?)
requestConsent(contractUri?, options?)Parameter
Type
Required
Description
Option
Type
Default
Description
User Experience Flow
Requesting Learner Context for AI
When to Use Learner Context
Prerequisites
Basic AI Tutor Integration
Using Structured Data
Error Handling
Configuration Checklist
Recording AI Sessions
When to Record Sessions
Session Structure
Basic Session Recording
Complete AI Tutor Example
Session Data Best Practices
π Use isNewTopic for first-run UX
isNewTopic for first-run UXEnd-to-End AI Tutor Tutorial
Tracking App State with Counters
When to use counters
When not to use counters
Limits (load-bearing β design around these)
Limit
Value
API
Example: simple progress tracking
Example: threshold-gated credential issuance
Example: daily streaks
Error handling
Best practices
Complete Example
Best Practices
1. Design Meaningful Credentials
2. Issue at the Right Moment
3. Handle Errors Gracefully
4. Test Thoroughly
Testing Your Integration
Using the Developer Portal Preview
Local Development
Related Documentation
Last updated
Was this helpful?