App Store Submission Checklist
App Store Submission Checklist
Project:
{{PROJECT_NAME}}Drop — Fintech Payment App Version:{{APP_VERSION}}1.0.0 Build:{{BUILD_NUMBER}}1 Date:{{DATE}}2026-02-23 Author:{{AUTHOR}}John (AI Director, ALAI) Status: Draft|—In Review | ApprovedPre-Submission Reviewers:{{REVIEWERS}}Alem Bašić (CEO)
Document History
| Version | Date | Author | Changes |
|---|---|---|---|
| 0.1 | Initial draft from app-store-metadata.md + screenshot-texts.md |
Pre-Submission Requirements
General Readiness
- All P1 and P2 bugs resolved
— issue tracker link:{{URL}} - QA sign-off obtained
— sign-off document:{{URL}} - Legal sign-off obtained (privacy policy,
terms)terms,—angrerettloven,finansavtaleloven){{URL}} - Release notes written and reviewed in Norwegian Bokmål
-
Version number followsVersion:(SemVer: MAJOR.MINOR.{{1.0.0PATCH}}PATCH) - Build
numbernumber:incremented1(monotonically incrementing — never reused) - All production environment variables set
for(NEXT_PUBLIC_APP_ENV=production,productionEXPO_PUBLIC_API_URL) - Crash-free rate > 99.5% in staging
(Sentry) - Analytics verified
— events firing correctlyin staging
Apple App Store
App Store Connect Setup
- App record created in App Store Connect
- App ID
no.getdrop.appregistered in Apple Developer Portal - Capabilities
matchconfigured:Xcode-
(Phase 2 — when push implemented){{listPushcapabilitiesNotificationsused}} - Background Modes → Remote notifications (Phase 2)
project: -
- Provisioning profiles up to date (distribution profile)
- Code signing certificate valid (not expiring within 30 days)
- App Store Connect API key configured for
CI/CDEASsubmissionSubmit
App Metadata
- App name:
({{AppDropname}}— Send pengermax18 chars — under 30chars)char limit) - Subtitle:
({{Subtitle}}Enklere betalinger for allemax28 chars — under 30chars)char— highlights key featurelimit) - Description:
See full description below ({{Description}}maxsource:4000 chars) — engaging, keyword-richproject/store/app-store-metadata.md) - Keywords:
({{keyword1, keyword2, ...}}betaling,penger,overføring,QR,remittance,utlandet,gebyr,BankID,vipps,wisе,internasjonalt,sendmaxunder 100chars total, comma-separated)chars) - Promotional text:
({{PromoSendtext}}penger til utlandet med 0,5% gebyr. Betal i butikk med QR. Trygt med BankID. Regulert i Norge.max97 chars — under 170chars)char— can update without new buildlimit) - Support URL:
{{https://support.domain.com}}getdrop.no/support - Marketing URL:
{{https://domain.com}}getdrop.no - Privacy policy URL:
{{https://domain.com/privacy}}getdrop.no/personvern - Age
ratingrating:completed17+ (4+financial/transactions12++/BankID17+)requirement — 18+ in practice) -
Category:Primary category:Primary:Finance -
|SecondarySecondary:category:Utilities{{Category}} - Copyright:
{{Year}}©{{Company2026Name}}ALAI Holding AS
{{Category}}Full Description (Norwegian):
Drop — Enklere betalinger. Lavere gebyrer.
Drop er den nye standarden for internasjonale overføringer og daglige betalinger i Norge. Enten du skal sende penger til familie i utlandet eller betale for kebaben på hjørnet, gir Drop deg enklere og billigere løsninger enn bankene.
HVA ER DROP?
Drop er en betalingsapp som gjør to ting ekstremt godt:
1. Send penger internasjonalt med lavere gebyrer enn Wise, Vipps eller Western Union
2. Betal i butikk med QR-kode — raskere og billigere enn bankkort
HVORFOR VELGE DROP?
• 0,5% gebyr på internasjonale overføringer — Send 10 000 kr til familie i utlandet for 50 kr i gebyr, ikke 500 kr
• 1% gebyr for QR-betalinger — Billigere for butikken, enklere for deg
• Trygt med BankID — Norsk autentisering du stoler på
• Regulert i Norge — Vi følger alle norske regler for finansielle tjenester
• Pengene dine forblir i banken din — Drop bruker Open Banking (PSD2), så vi holder aldri pengene dine
• Rask overføring — Internasjonale betalinger tar minutter, ikke dager
• 30+ land — Send til Balkan, Pakistan, Tyrkia, Polen, Tyskland og mange flere
SIKKERHET OG TILLIT
• BankID-pålogging — Norsk standard for sikker autentisering
• Ingen mellomlagring — Pengene dine går direkte fra din bank til mottaker
• Regulert av Finanstilsynet — Vi følger alle norske regler
• Open Banking (PSD2) — Vi bruker samme sikkerhet som bankene
• Transparent prising — Du ser alltid nøyaktig hva du betaler
PRISER
• 0,5% gebyr på internasjonale overføringer (ingen skjulte kostnader)
• 1% gebyr på QR-betalinger i butikk
• Gratis å laste ned og opprette konto
• Ingen månedlig avgift
Drop er et produkt av ALAI Holding AS (org.nr 932 516 136), et norskregistrert selskap.
Screenshots
Required screenshots (Norwegian text overlays — from project/store/screenshot-texts.md):
| # | Screen | Headline | Subtext | Device Required |
|---|---|---|---|---|
| 1 | Login / BankID | "Trygg pålogging" | "Verifiser deg med BankID på under 2 minutter" | All |
| 2 | Dashboard | "Alt på ett sted" | "Send penger, betal med QR, se saldo — enkelt" | All |
| 3 | Send Money | "0,5% gebyr" | "Send til 30+ land — billigere enn banken" | All |
| 4 | QR Payment | "Betal på sekunder" | "Skann QR-kode i butikk — raskere enn kort" | All |
| 5 | Transaction History | "Full kontroll" | "Se alle betalinger og overføringer" | All |
| 6 | Bank Accounts | "Koble banken din" | "Se saldo fra din bank med Open Banking" | Optional |
| 7 | Notifications | "Hold deg oppdatert" | "Varsler for hver betaling og overføring" | Optional |
| 8 | Profile | "Dine innstillinger" | "Administrer konto, sikkerhet og varsler" | Optional |
Required device sizes:
| Device | Dimensions | Required | Status |
|---|---|---|---|
| iPhone 6.7" ( |
1320×2868 | Required | TODO |
| iPhone 6.5" (11 Pro Max / 12 Pro Max) | 1242×2688 | Required | TODO |
| iPhone 5.5" (8 Plus) | 1242×2208 | Required | TODO |
| iPad Pro 12.9" (6th gen) | 2048×2732 | Required if iPad supported | |
TODO |
Screenshot rules:
- Max 10 screenshots per device
- First screenshot = most compelling (
primaryLoginimpression)with - BankID
Notrustdevice frames required (add if chosen)signal) - No "Download on the App Store" badge in screenshots
- Text overlays
readableuseatFrauncesthumbnail(headlines)size+ DM Sans (subtext) — see brand guide -
NoDropthird-partybranding:IPgreenwithout#0B6E35,permissiongold accent#D4A017 - Logo watermark in corner (48px height)
- Final review by Alem (native Norwegian speaker)
App Preview videovideo: (optional):Not required for v1.0
Max 30 seconds, format MP4 or MOVActual app footage — no simulated/demo content
App Privacy Details
Data types
collectedDrop collects:declared — mapped to usage purpose:
| Data Type | Collected? | Linked to User? | Used for Tracking? | Purpose |
|---|---|---|---|---|
| Name | Yes |
Yes |
No |
Identity verification (BankID), KYC/AML |
Yes |
Yes |
No |
Account communication, support | |
| Phone | Yes |
Yes |
No |
Registration, verification |
| Financial info (bank accounts) | Yes | Yes | No | AISP — balance display only |
| Transaction history | Yes | Yes | No | Service delivery, legal retention |
| Location (precise) | No |
— |
— |
Not collected |
| Location (coarse) | No |
— |
— |
Not collected |
| Usage data | Yes |
No |
No |
Service improvement (anonymized) |
| Crash data | Yes |
No |
No |
Bug fixing (anonymized) |
| Device ID | No | — | — | Not collected |
| Identifiers ( |
Yes |
Yes |
No |
Push notifications (Phase 2) |
- App Tracking Transparency (ATT)
framework—implementedNOTifrequiredusing(no IDFA usage) - NSUserTrackingUsageDescription
string—providedNOTin Info.plistrequired
Data retention: Transaction and identity data retained minimum 5 years per hvitvaskingsloven.
Review Guidelines Compliance
- No private API usage
(review using{{otool | MachOView}}) - No undocumented device capabilities
-
In-No in-apppurchasepurchasesimplemented(Dropforis a payment service, not selling digitalgoods (not bypassing IAP)goods) -
External payment links removed or comply with court order rules (US only) Login options: ifNo Sign in with Appleisrequiredavailable(Dropelsewhere,usesitBankIDMUST—beNorwegianofferedregulatory requirement)- User account deletion implemented via support contact (
required[email protected])since—Junepending:2022)self-service deletion - App
functionsworks as described — demo accountprovidedforreviewAppifReviewneeded(see below)
Demo account for App Review:
- Username:
{{[email protected]}}[email protected] - Password:
reference{{TBD — vaultreference}} - Notes to reviewer:
a Norwegian payment app. BankID (Norway's national ID system) is required for full verification. For App Review purposes, a pre-verified demo account is provided. Camera permission is requested for QR payment scanning — use 'Simuler skanning' button to test without physical QR code."{{special"Thissetupisinstructions}}
Language note for App Review team: "The app is in Norwegian (Bokmål) — Norway's primary language. App Review guidelines allow non-English apps when serving a specific geographic market."
TestFlight Beta Testing
- Internal testing completed (ALAI team
members— up to100)100 testers) - External beta testing
completed— testers:{{N}},TBD, duration:TBD{{N days}} - Crash rate < 1% in TestFlight
- Beta feedback addressed
- What's New
in(v1.0Thisbeta):Version:"FørsteDrop — gi oss tilbakemeldinger!"{{Betabetaversjonreleaseavnotes}}
App Transport Security
- All network connections use HTTPS (
drop-app.vercel.app) - No
NSAllowsArbitraryLoads: true(or justified withNSExceptionDomains) - Certificate pinning
active—forTBDcritical(requiresendpointsimplementation before production) - No ATS exceptions
documented:needed{{list any exceptions and justification}}
Common iOS Rejection Reasons — Prevention
| |
Google Play Store
Google Play Console Setup
- App created in Google Play Console
- Signing key configured (Play App Signing — recommended)
- Service account
configuredforCI/CDEASAPISubmitaccessconfigured - Developer account in good standing (ALAI Holding AS)
Store Listing
- App name:
({{AppDropname}}— Send pengermax18 chars — under 50chars)char limit) - Short description:
({{ShortSenddesc}}penger internasjonalt. Betal i butikk med QR. 0,5% gebyr. Trygt med BankID.max80chars)chars exactly) - Full description:
Norwegian content as iOS ({{FullSamedescription}}max4000chars)char limit) - App icon: 512×512
PNG,PNG (noalpha,alphano—roundedTODO:cornersexport(Playfromadds them)Figma) - Feature graphic: 1024×500
JPG/PNG —shown"drop"atwordmarktoponofgreenlistinggradient (TODO) - Screenshots: min 2, max 8 per device type
| Device | Min Dimensions | Status |
|---|---|---|
| Phone | TODO |
|
| 7" tablet | Same constraints | TODO |
| 10" tablet | Same constraints | TODO |
Content Rating Questionnaire
- IARC questionnaire completed in Play Console
- Expected rating: 17+ (financial transactions, real money)
- Rating certificate generated and applied
Rating matches app content (honest answers — inaccurate rating = suspension)
Data Safety Form
- Data types
collecteddeclareddeclared(same - as
DataApplesharingPrivacydisclosuresDetailscompleteabove) - Security practices answered:
- Data in transit encrypted:
Yes (HTTPS/TLS 1.3){{Yes/No}} - Data at rest encrypted:
TBD (server-side){{Yes/No}} - Users can request deletion:
Yes (via support contact — pending self-service){{Yes/No}}
- Data in transit encrypted:
Target Audience & Content
- Target age
groupgroup:declared18+ (underBankID13?requires—18+,COPPANorwegiancompliance required)residents) -
AdsNoconfiguration (if using ads)ads —appropriateDropaddoesformatsnotforserveage groupadvertisements - Sensitive
apppermissions:permissionsCamera (QR scanning) — justified indeclarationlisting
Testing Tracks
| Track | Audience | Status |
|---|---|---|
| Internal testing | TODO |
|
| Closed testing (alpha) | Limited |
TODO |
| Open testing (beta) | TODO |
|
| Production | Staged 10% → 100% |
TODO |
Staged rollout: Start at → increase to 25% after {{10%}}hours → {{48 hours}}{{100%}}
after
Common7 Android Rejection Reasons — Prevention
Cross-Platform Checklist
Version Naming
| Field | iOS | Android | Value |
|---|---|---|---|
| Version string | CFBundleShortVersionString |
versionName |
|
| Build number | CFBundleVersion |
versionCode |
( |
Version naming convention: MAJOR.MINOR.PATCH
MAJOR: Breaking change / major redesignMINOR: New featurePATCH: Bug fix / performance
Release Notes Format(Norwegian)
What'sVelkommen newtil inDrop!
v{{X.Y.Z}}:Dette er den første versjonen av Drop — din nye app for enklere og billigere betalinger.
Hva kan du gjøre:
• {{NewSend featurepenger 1}}til utlandet med 0,5% gebyr
• {{BugBetal fixi 1}}butikk med QR-kode
• {{ImprovementVerifiser 1}}deg Questionstrygt ormed feedback?BankID
Contact• usSe atalle support@{{domain.com}}transaksjoner på ett sted
Kommer snart:
• Støtte for flere land
• Wallet og dagligbetalinger
Har du tilbakemeldinger? Send oss en e-post på [email protected] — vi leser alt!
Rules:
Max 500 characters (App Store) / 500 characters (Play Store)Translate for each supported localeNo marketing language — factual changes onlyReference to known issues if applicable
Marketing Assets Checklist
- App icon final — 1024×1024 (
noiOS),placeholder)512×512 (Android) — from Figmabrand/assets - Feature graphic final — 1024×500 PNG (Google Play)
-
PressScreenshotskitwithupdated:Norwegiantext overlays — all device sizes{{URL}} -
AppPresspreviewkitvideoupdated(ifatapplicable)https://getdrop.no/presse - Social media announcement
contentin Norwegian prepared
Legal Requirements
- Privacy Policy URL:
URL:— GDPR-compliant, covers all data collected{{URL}}https://getdrop.no/personvern - Terms of Service URL:
URL:{{URL}}https://getdrop.no/vilkar - GDPR: Right to deletion
implemented(via support, pending self-service portal) -
CCPA:Angrerettloven:Do14-dayNotwithdrawalSellrightlinkform(ifatUS/withdrawal - Finansavtaleloven §3-53: Complaint form at
/complaints - Hvitvaskingsloven: 5-year AML data retention stated in privacy policy
- COPPA:
KidsNotcategory complianceapplicable (if18+<minimum13)age, Norwegian residents only)
Drop-Specific Submission Notes
- BankID requirement: Explicitly mention in App Review notes that BankID (Norwegian national digital ID system) is required. Provide pre-verified demo account.
- Age
In-apprestriction:purchase17+terms(ApplinkedStore) due to financial transactions and real money. BankID legally requires 18+. - Permissions: Camera (QR scanning) — justified as core feature. Push notifications (Phase 2) — transaction alerts.
- Regulatory compliance: ALAI Holding AS, Org.nr 932 516 136, Norway. Regulert av Finanstilsynet.
- Pass-through model: Drop never holds user money. Emphasize in reviewer notes to avoid confusion with e-money apps that require different regulatory disclosure.
- Norwegian language: All store content in Norwegian Bokmål — correct for geographic target market (Norway).
- Target market: Norway only (Phase 1). Sverige, Danmark in Phase 2.
Final Submission Sign-Off
| Item | Status | Sign-Off |
|---|---|---|
| All checklist items complete | Not yet |
|
| QA approval received | Not yet |
|
| Legal approval received | Not yet |
|
| Marketing assets ready | Not yet |
|
| Support team briefed ([email protected]) | Not yet |
|
| Alem final review | Not yet |
Approval
| Role | Name | Date | Signature |
|---|---|---|---|
| Author | John (AI Director) | 2026-02-23 | |
| Mobile Lead | |||
| QA Lead | |||
| Product Manager | Alem Bašić | ||
| Legal |