Skip to content

Paylinks Privacy

Anonomi Paylinks is designed with privacy as a core principle, not an afterthought. This document explains what data we handle, how we handle it, and what guarantees we can (and cannot) make.


When you create a Paylink, we store:

  • Your Monero primary address (public)
  • Your private view key (encrypted at rest)
  • Configuration options (label, index range, generation mode)
  • A derived owner key (hash) for authentication
  • Your spend key — never requested, never stored
  • Your identity — no accounts, no emails, no phone numbers
  • IP addresses or access logs tied to paylinks

Your private view key allows us to derive subaddresses but cannot be used to spend funds. It is:

  • Encrypted before storage
  • Used only during subaddress generation
  • Never exposed in API responses

Nothing.

When a donor generates a payment request:

  • No IP address is logged
  • No amount is stored
  • No description is saved
  • No timestamp is recorded

The payment details exist only in the donor’s browser during the session.

Donors should be aware:

  • Clearnet: Requests go through standard HTTPS. Your ISP can see you visited anonomi.org (but not the content).
  • Tor: Use the onion service for stronger anonymity. Exit nodes don’t apply since it’s a hidden service.

For maximum privacy, donors should:

  • Use Tor Browser
  • Access the onion version of Paylinks
  • Use a privacy-respecting Monero wallet

Monero subaddresses are derived deterministically from:

  • The primary address
  • The private view key
  • An index number

This means:

  • The server can generate receiving addresses
  • The server cannot spend received funds
  • Each subaddress is unlinkable to others (on-chain)

Random (default): A random index within a configured range is selected for each request. This provides good privacy with minimal configuration.

Sequential (coming soon): Indices are assigned in order. Useful for tracking donations but reduces privacy.


Once a payment is made, standard Monero privacy applies. Monero provides strong on-chain privacy by default.

Donor isolation: Each donor receives a distinct subaddress. If one donor is coerced into revealing their transaction, they cannot expose other donors — they only know the address they sent to, not the addresses given to others. This is particularly important for groups (e.g., supporters of a cause) where one compromised individual should not endanger the rest.

Subaddress reuse: If the same subaddress is given to multiple donors (e.g., due to a narrow index range), payments to that address could be correlated. Use a sufficiently wide index range to minimize this risk.

If the donor’s device is compromised, the payment address and amount may be exposed regardless of Paylinks privacy measures.

If a publisher exposes their own identity through other means (blog content, social media, etc.), Paylinks cannot retroactively protect that.


MethodAddress reuseView key exposureMetadata logging
Static donation addressEvery paymentN/ADepends on platform
PaylinksFresh per requestServer only (encrypted)None
Messenger Payment RequestsFresh per requestNever leaves deviceNone

The Paylinks API is available at:

  • Clearnet: https://paylinksd.anonomi.org
  • Onion: http://[onion-address].onion
  • Paylinks can be deleted by the publisher at any time
  • No payment metadata is retained
  • Deleted paylinks are permanently removed

Both the client (this website) and the API are open source:


AspectGuarantee
Spend keyNever requested
View keyEncrypted at rest
Donor IPNot logged
Payment amountsNot stored
Payment descriptionsNot stored
SubaddressesFresh per request