List earnings by transaction
Sync estimated earnings incrementally. Each row is one completed transaction with its customer_reference and earnings, in completion order. Save next_cursor after storing a page and pass it alone on your next read; you receive each completion once. Upsert rows by reference. Reconcile with /api/deriv/statistics/earnings/customers, because corrected rows are not resent. Rows sum to the earnings in /api/deriv/statistics for the same completion period. Shares the statistics rate limit.
Sync estimated earnings incrementally. Each row is one completed transaction with its customer_reference and earnings, in completion order. Save next_cursor after storing a page and pass it alone on your next read; you receive each completion once. Upsert rows by reference. Reconcile with /api/deriv/statistics/earnings/customers, because corrected rows are not resent. Rows sum to the earnings in /api/deriv/statistics for the same completion period. Shares the statistics rate limit.
Required API key scope: transactions:read.
Request example
GET /api/deriv/statistics/earnings?completed_since=2026-10-01&cursor=eyJ2IjoxLCJwIjoiOWYyYzRlMWE3YjNkNWM2MCIsImsiOiJsZWRnZXIiLCJ0IjoiMjAyNi0xMC0xMlQwOTowMDowMFoiLCJpIjoiNTA3ZjFmNzdiY2Y4NmNkNzk5NDM5MDExIn0&customer_reference=customer-1001&timezone=UTC&limit=500 HTTP/1.1Host: api.edgepro.siteX-API-Key: <your-api-key>X-Deripay-API-Version: 2Accept: application/jsonpartnerAPIKeyX-API-Key<token>completed_since?stringWhere a first sync starts: an RFC3339 timestamp, or a calendar date in timezone. Defaults to the start of the last 30 days. Do not combine with cursor.
cursor?stringnext_cursor from your previous read. Resumes after the last row you received and keeps its customer_reference filter.
customer_reference?stringOnly completions for this external customer reference. If sent with cursor, it must match the cursor.
timezone?stringIANA timezone for a date-only completed_since; defaults to Africa/Nairobi.
limit?integerRows per page, 1 to 500. Defaults to 100.
X-API-Key*stringYour API key. Send requests from your server.
X-Deripay-API-Version*stringSelects the response and error format documented here. Without it, the same URL returns the original format.
Accept?stringSuccessful request.
application/json- response
success*booleanmessage*stringdata*curl -X GET 'https://api.edgepro.site/api/deriv/statistics/earnings?completed_since=2026-10-01&cursor=eyJ2IjoxLCJwIjoiOWYyYzRlMWE3YjNkNWM2MCIsImsiOiJsZWRnZXIiLCJ0IjoiMjAyNi0xMC0xMlQwOTowMDowMFoiLCJpIjoiNTA3ZjFmNzdiY2Y4NmNkNzk5NDM5MDExIn0&customer_reference=customer-1001&timezone=UTC&limit=500' \ -H 'X-API-Key: <your-api-key>' \ -H 'X-Deripay-API-Version: 2' \ -H 'Accept: application/json'{ "success": true, "message": "Earnings retrieved successfully", "data": { "as_of": "2026-10-12T09:05:00Z", "complete_through": "2026-10-12T09:03:00Z", "currency": "USD", "basis": "estimated_gross_fx_spread_by_completion", "partner_share_bps": 4800, "deripay_share_bps": 5200, "transactions": [ { "reference": "507f1f77bcf86cd799439011", "connection_id": "conn_example_01", "customer_reference": "customer-1001", "type": "deposit", "payment_method": "mobile_money", "currency": "KES", "local_amount": "1400.00", "usd_amount": "9.80", "created_at": "2026-10-12T08:58:00Z", "completed_at": "2026-10-12T09:00:00Z", "earnings_included": true, "gross_earnings": "0.20", "partner_earnings": "0.10", "deripay_earnings": "0.10" } ], "has_more": false, "next_cursor": "eyJ2IjoxLCJwIjoiOWYyYzRlMWE3YjNkNWM2MCIsImsiOiJsZWRnZXIiLCJ0IjoiMjAyNi0xMC0xMlQwOTowMDowMFoiLCJpIjoiNTA3ZjFmNzdiY2Y4NmNkNzk5NDM5MDExIn0" }}Export statistics CSV GET
Download a CSV report using the same filters as /api/deriv/statistics. The response includes Content-Disposition: attachment; filename="deripay-performance.csv". Group amounts by currency and amount_basis before adding them. Total attempt and customer counts appear once, on USD rows.
Get earnings by customer GET
Get estimated earnings for a completion period, one row per customer_reference, optionally split by day, week or month. totals covers every page and matches the earnings in /api/deriv/statistics for the same period. Use it to reconcile data synced from /api/deriv/statistics/earnings.