usdc-earnings-reconcile-withdraw · EN · 2026-11-05

Reconciling Contributor Earnings Before You Withdraw: Matching Accrued USDC to Actual API Usage

A practical walkthrough for contributors on an LLM API aggregator: how to reconcile accrued USDC credit (official price × 1.1, or × 1.2 for premium) against the deduction records generated by your own API calls, so the withdrawable balance is verifiable before you initiate a withdrawal.

Why Reconciliation Matters

On a pay-per-use aggregator, your balance moves for two different reasons: your own API calls deduct from it, and contributions you make to the shared key pool accrue credit back into it. The withdrawable figure is the net of those two flows. If you only look at the headline balance, you cannot tell whether a discrepancy comes from an unexpected call, a contribution that was valued differently than you assumed, or a timing gap between when a charge settled and when a credit landed.

Reconciliation is the habit of lining those two ledgers up side by side before you withdraw.

Know the Two Rates That Apply

Before comparing numbers, restate the pricing rules you are reconciling against:

  • What you pay as a caller: official model price × 1.3.
  • What you earn as a contributor: official price × 1.1 credited in USDC, or × 1.2 for premium contributions.
  • Settlement currency: USDC on Base. Top-ups are made in USDC with no KYC step.

Because the multiplier differs by direction, a contribution and a call of identical official cost do not cancel out one-to-one. Your reconciliation has to track which side each line item belongs to.

Build the Two-Sided Ledger

Treat your account as two stacked statements that must sum to the balance you see.

  • Deductions ledger: every call you made, with the model, the token counts or units billed, the official price applied, and the × 1.3 multiplier line.
  • Accruals ledger: every contribution you made, with the asset or model it involved, the official price basis, and the × 1.1 or × 1.2 multiplier line.
  • Opening balance and closing balance: the balance at the start and end of the reconciliation window.

The identity you are testing is simple: opening balance, minus total deductions, plus total accruals, should equal the closing balance you are about to withdraw against.

Pull Your Own Usage Records First

Start from the records you control, not the aggregate figure.

  • Export or page through your call history for the reconciliation window and capture request IDs, timestamps, model, and billed units.
  • Group calls by model so you can apply the correct official price basis to each group.
  • Keep the raw export unedited — it is your source of truth for the deductions side.
  • Note calls that were retried or that returned errors, since these are the most common source of apparent mismatches.

Pull the Accrual Records Second

Then gather the contribution side for the same window.

  • List each contribution with its timestamp and the basis used to value it.
  • Confirm whether each was treated as standard (× 1.1) or premium (× 1.2).
  • Separate contributions by the period in which they were credited, not the period in which the underlying usage occurred. Credit timing and usage timing are not the same thing.

Align on Time Windows

The most frequent false alarm in reconciliation is a window mismatch.

  • Use one explicit time range, in one timezone, for both ledgers.
  • If a charge and its corresponding credit fall on opposite sides of your cut-off, the balance will look wrong even when nothing is.
  • Widen the window by a small margin at both ends, then re-check any line items that sit near the boundary.

Recompute the Multipliers, Don't Trust the Total

Rather than comparing totals directly, recompute each line and compare line to line.

  • For deductions, take the official price basis and apply × 1.3.
  • For accruals, apply × 1.1, or × 1.2 where the contribution qualifies as premium.
  • Sum your recomputed lines and compare that sum to the platform's per-line figures.
  • Where a single line differs, investigate it individually; where everything differs by a consistent factor, you have likely applied the wrong multiplier or the wrong official price basis.

Investigate the Usual Suspects

When the identity does not balance, check these in order:

  • Rounding: small per-line rounding differences accumulate across many calls. Confirm the rounding convention before treating a few cents as an error.
  • Model mapping: a model billed under a different official price basis than you assumed will shift every line for that model.
  • Premium classification: a contribution you treated as premium but that was valued as standard, or the reverse, shows up as a clean 1.1-versus-1.2 gap.
  • Timing: charges that settle later than the request, or credits that post in the next cycle.
  • Duplicate or retried requests: the same call recorded more than once inflates the deductions side.

Decide When the Number Is Trustworthy

You do not need every line to match to the cent. You need the residual to be explainable.

  • If the unexplained difference is bounded by rounding and timing, and each remaining line has a known cause, the withdrawable figure is trustworthy.
  • If an unexplained difference is large, structural, or grows with volume, reconcile before withdrawing rather than after.
  • Record your reconciliation window and the residual so the next reconciliation starts from a known point.

Before You Withdraw

A short pre-withdrawal checklist:

  • Confirm the closing balance matches your reconciled ledger within the tolerance you accepted.
  • Verify the withdrawal destination is a Base address you control, since settlement is in USDC on Base.
  • Keep the export and the reconciliation notes; they are the audit trail if a later cycle looks off.
  • Re-run the same procedure next cycle so drift is caught early rather than compounded.

Reconciliation is not about distrusting the platform. It is about making the number you withdraw against one you can defend from your own records.