Table of Contents

Class PurchaseAttribution

Namespace
VpnHood.AppLib.Abstractions.Billing
Assembly
VpnHood.AppLib.Abstractions.dll

What the store must be told before it takes a payment, so the order comes back tied to its buyer — and so a store token stolen from one device cannot be redeemed into another account.

A type rather than a bare string because it is what IOrderProcessor answers and what IBillingProvider is then handed: on neither side is there a parameter or property name to say which of a purchase's several ids is meant, so the type says it.

public class PurchaseAttribution
Inheritance
PurchaseAttribution
Inherited Members

Properties

UserId

The signed-in account's id. Every store asks for the same thing under its own name — Google's obfuscatedAccountId, Apple's appAccountToken, which must be a UUID — so shaping it is each billing provider's job, not this one's.

public required string UserId { get; init; }

Property Value

string