EveryCord Developers
Earnings tracking and payment terms
EveryCord's share is a percentage of what you earn from the EveryCord-powered features in your app, after app store fees. Instead of relying only on numbers you report, EveryCord reads your earnings from the stores' own reports, checks them against the purchases the SDK sees, and sends you a statement each month.
Early access. Earnings tracking turns on with the Partner API. Write to services@symaro.com with questions. The routes are in the API reference.
What counts
You mark which of your products are EveryCord-powered: the in-app purchase product IDs (App Store) and SKUs (Google
Play) whose value comes from EveryCord features, for example a "Pro streaming" subscription that unlocks multistreaming.
Only those products count toward the share. Mark them in the partner dashboard or with
PUT /v1/partner/earnings/products.
App Store
- In App Store Connect, under Users and Access > Integrations > App Store Connect API, create a team key with the Finance role (financial reports and payments). Sales and Reports is the minimum; Finance also gives the payment dates that set the due date.
- Download the
.p8file (Apple lets you download it once), and note the Key ID, the Issuer ID and your vendor number (Payments and Financial Reports). - Upload them in the partner dashboard (or with
PUT /v1/partner/earnings/apple). The.p8is stored encrypted, never logged and never shown again.
EveryCord checks the key right away: it must see your app's bundle ID and be able to request a Sales and Trends report. Then, once a day, EveryCord reads the daily Sales summary reports of the last 4 days for your apps: units, and proceeds (units times your developer proceeds, in the proceeds currency). A failed pull keeps the earlier numbers and shows the error in the dashboard.
Google Play
- The partner dashboard shows EveryCord's Google Cloud service account email.
- In Play Console, under Users and permissions, invite that email with View financial data for your app.
- Enter your reports bucket ID (
pubsite_prod_..., from Download reports > Financial) in the dashboard.
EveryCord checks that it can read the bucket and that your package name appears in the newest report. Once a day it then reads the monthly earnings reports of this month and last: per SKU and day, units (charges less refunds), gross (charges) and proceeds (after Google's fees and refunds; tax rows are left out).
The SDK cross-check
The SDKs watch for purchases of your EveryCord-powered products in your app (StoreKit 2 transaction updates on iOS, Play
Billing purchase updates on Android) and send each one to POST /v1/partner/purchases: product ID, transaction ID,
price, currency, storefront and time. EveryCord removes duplicates by transaction ID and flags gaps against the store reports.
The SDK never sees or sends card details or the buyer's Apple Account or Google account, and never finishes or changes
a transaction. Sandbox and Xcode test purchases are marked and kept apart.
Consumables on iOS. A consumable your app finishes right away shows up in StoreKit's purchase history only on iOS 18
and later, and only with SKIncludeConsumableInAppPurchaseHistory set to YES in your app's Info.plist. Add it if
your EveryCord-powered products are consumables; otherwise the SDK sees such a purchase only as it happens. The store
reports stay the reference either way.
Revenue the stores do not report
Web sales, ads and other revenue from EveryCord-powered features: report it once a month with
POST /v1/partner/revenue-reports (API reference). Without store
connections, your share is billed from self-reported numbers and the SDK cross-check.
What is stored
Per day, store, app and product: units, gross, proceeds (after store fees), currency and, for US dollar rows, the US
dollar value, with the report it came from (apple_report or google_report). The SDK's purchases and your
self-reported revenue sit beside them. You see your own numbers in the dashboard and with
GET /v1/partner/earnings?month=YYYY-MM.
Statements and payment terms
Each month EveryCord makes a statement per store and currency:
- the calendar month (UTC),
- the proceeds of your EveryCord-powered products, from the store's reports,
- EveryCord's share at your tier,
- the date the store paid you (EveryCord records it from the store's payment),
- the due date: 30 days after the store paid you.
A draft follows the reports until it is issued; a statement is issued only once the payout date is known.
You pay EveryCord's share within 30 days of receiving the money from Apple (or from Google, for Google Play).
| Status | Meaning |
|---|---|
| draft | being prepared |
| issued | sent to you, with its due date |
| paid | paid, with the amount, date and reference |
| overdue | past the due date and unpaid |
| disputed | you raised a question about it |
See your statements in the dashboard or with GET /v1/partner/statements. If a statement stays unpaid well past its
due date (15 days by default, or as your agreement says), EveryCord may pause your partnership; that is always a
person's decision, never automatic, and you hear from us first.
Questions about a statement
Write to services@symaro.com with the statement's month and store. A disputed statement is not overdue while we look at it together.
The EveryCord SDKs and the Partner API are in early access. For access, keys and questions, write to services@symaro.com.
These docs are also on GitHub with the install files: earnings.md in SymaroTeam/everycord-sdk.
Updated October 22, 2026.