Tasks
- Review designs and project goals and ensure validators are satisfactory or recommend improvements
- Submit schema details to Legal for approval
- Create or update schema based on designs
- Instrument feature based on schema doc from Shay
- Create data validation task
Validation:
Indicator: 4.0% average CTR across both apps per unique user
Indicator: 20% increase in banner impressions
Indicator: 20% increase in donor acquisition
Guardrail: Abandonment rate is no more than 25%
Guardrail: No further decline in average donation YoY
Guardrail: Reports of a negative experience related to donations do not exceed 25% of user feedback during campaign period
Schema will track Donor Experience feature engagement and banner/promo impression, CTR and donor engagement data for both Android and iOS. Recurring donor, donor retention and donation financial data will be tracked by Fundraising and they will give us access to their outcome data through Superset at end of campaign. Note: Previously the Fundraising team used our internal Feed impression data to calculate impressions/CTR - we will replicate that data in this schema so they are able to maintain access to that data.
Preliminary Docs:
Apps Donor Experience Data Instrumentation Planning deck
Apps Donor Experience Instrumentation Process and Spec
Design:
iOS: Figma files
Android: Figma
Reference
Donor Experience Deck
Testing notes for iOS
This can be tested starting in Wikipedia TestFlight 7.4.3 (2811) build.
Testing tips:
All new donor experience work (in-app web view, new campaign modals with maybe later, multilingual campaign support, Apple Pay native donation) are set up to become available in the app only once the Netherlands or Italy Oct/Nov 2023 campaigns become valid. To test native Apple Pay, your device needs to be set up like this:
- Device iOS Settings > Language & Region > Region needs to be set to either the Netherlands or Italy
- Device date & time needs to be set on or after the campaign start date (change device date to 10/17)
- After fresh install, turn on logging in onboarding. After landing on the Explore feed you must background and foreground the app, then pull to refresh on the Explore feed to trigger a force refresh of the campaign data.
- To be provided the option to donate via Apple Pay (native donate form), you must have a valid card set up in Apple Wallet.
- IMPORTANT: Production charges are rate-limited to 4 transactions per 4 hours.
Testing notes on Android
From @cooltey notes on main task :
We have introduced some new developer preferences for the new donor experience for testing purposes.
Use the test.wikipedia debug URL
If you are going to test with a specific start date or end date, you can access the following page to edit the JSON file if you have the administrator permission. This will help you to test the "Maybe later" button visibility.
https://test.wikipedia.org/wiki/MediaWiki:AppsCampaignConfig.json
announcementCustomTabTestUrl
This helps you to override the web page link when you tap on "Donate now" in the dialog, and will load the page you specified in the CustomTab.
In general, you will only need to test the "thankyou" page behaviors (click on the link and see how it goes) since it should be opened in a native WebView instead of an external browser.
announcementPauseTime
This relates to the visibility of the "Maybe later" button. The number is the date time in milliseconds. You can use this tool to get the desired date time in milliseconds.
Special note:
We will load the donation page in a CustomTab, which is the one with the URL shown on the toolbar.
and we will load the "thankyou" page in a native WebView after the payment is submitted. The thankyou page will only be loaded if the campaign is from the Android app. (with utm_campaign=Android)