How to protect digital goods from instant fulfillment fraud
Protect software keys, credits, files, API usage, and digital products by scoring checkout risk before payment and fulfillment.
Digital goods are risky because fulfillment is immediate. Once software keys, credits, downloads, gift cards, or API access are delivered, recovery is difficult even if the payment later fails or disputes arrive.
That means the fraud decision must happen before fulfillment and often before payment.
High-risk digital goods patterns
Watch for:
- New accounts buying high-value digital products.
- Disposable emails or suspicious domains.
- VPN, proxy, Tor, or datacenter connections.
- Country mismatch between IP, billing, and account data.
- Repeated checkout attempts from related sessions.
- Requests for instant credits or downloadable assets.
Score before fulfillment
const assessment = await requestGuard.assess({
ip,
email,
userAgent,
event: "digital_goods_checkout",
userId,
metadata: {
product_type: "api_credits",
amount,
currency,
instant_fulfillment: true,
},
});
If the decision is review, hold delivery. If it is challenge, require verification. If it is block, stop the flow.
Separate payment from delivery
Payment authorization does not mean fulfillment should be instant. For high-risk decisions, you can accept payment but delay delivery, or avoid creating the payment session until the risk gate passes.
Store proof
Store the RequestGuard request ID with the order. If support, fraud, or finance needs to review the transaction later, the decision and reasons are traceable.
Digital goods need earlier risk checks because the loss happens fast. RequestGuard gives your backend a decision before the irreversible step.