Payment indexing turns Stellar payment operations into EarnProof payment records.

Flow

  1. Worker authenticates.
  2. Worker triggers payment sync.
  3. Backend queries Horizon for incoming payments.
  4. Backend normalizes operations.
  5. Backend checks supported asset configuration.
  6. Backend encrypts payment amounts with AES-256-GCM.
  7. Backend upserts payments by operation ID.

Sync Endpoint

Normalized Fields

Exact payment amounts are stored as authenticated ciphertext using PAYMENT_ENCRYPTION_KEY. Legacy redacted: values can still be decoded for compatibility, but new synced payments use the enc:v1: format.

Classification

Workers can classify payments as:
  • income,
  • reimbursement,
  • personal transfer,
  • unknown,
  • excluded.
Only supported assets that are also classified as income should be used by income proof evaluators. User classification does not make an unsupported asset eligible.