> For the complete documentation index, see [llms.txt](https://developer.paddle.com/llms.txt).

# Paddle for digital products

Sell software licenses, digital downloads, plugins, courses, and other one-off purchases globally. Paddle handles payments, tax, fraud, and global compliance.

---

Sell your e-books, software licenses, courses, plugins, and other downloadable files anywhere in the world with Paddle as your merchant of record. Payments, localization, tax, and global compliance handled out-of-the-box.

Companies like [Nexus Mods](https://www.paddle.com/customers/helping-nexus-mods-unlock-the-gaming-community), [Fortinet](https://www.paddle.com/customers/how-fortinet-training-institute-optimized-self-serve-billing), [MotionVFX](https://www.paddle.com/customers/how-motionvfx-increased-conversions-with-paddle) and [MacPaw](https://www.paddle.com/customers/macpaw-move-to-saas) use Paddle to power their business.

## Key features for digital product businesses

{% card-group cols=2 %}
{% card title="Merchant of record" icon="carbon:manage-protection" %}
Paddle handles tax registration and sales tax. You don't need a tax department to sell globally on day one.
{% /card %}
{% card title="Instant access to 200+ markets" icon="carbon:earth" %}
Automatically convert prices to local currencies, and set country-specific prices for key markets.
{% /card %}
{% card title="Smart payment routing" icon="carbon:purchase" %}
Paddle routes payments to the best acquirer for that sale to get the best possible success rate.
{% /card %}
{% card title="AI-native integration" icon="mcp" %}
Integrate quickly with the Paddle MCP server, docs MCP, agent skills, and starter kits.
{% /card %}
{% /card-group %}

## One-time products

In Paddle, products and prices are flexible entities you compose into the structure you need. Products describe what you sell, and related prices describe how you sell a product.

A digital product in Paddle is typically a [product](https://developer.paddle.com/build/products/create-products-prices.md) with a price that has no recurring interval set.

This is how the flow works:

1. **Create a product** with one or more one-time prices in your Paddle catalog.
2. **Build a pricing page or buy button** that calls Paddle.js with the price ID.
3. **Customer pays** through Paddle Checkout. You can choose overlay checkout for a simple integration, or inline checkout for a more branded experience.
4. **Paddle sends** a [`transaction.completed`](https://developer.paddle.com/webhooks/transactions/transaction-completed.md) webhook. Your webhook handler grants access, sends a license key, or unlocks the download.

The one-time purchase flow isn't a watered-down version of subscriptions. You get the same optimized checkout experience, webhooks, AI tooling, and SDKs that we offer for subscriptions.

## Pricing flexibility

One-time products don't have to be flat prices:

- **Multiple price points per product**  
  Offer "Pro license $99" and "Team license $499" on the same product.
- **Localized pricing**  
  Set per-region prices in [30+ currencies](https://developer.paddle.com/concepts/sell/supported-currencies.md), or let Paddle auto-localize from your base price.
- **Discount codes and promotional pricing**  
  Apply percentage or fixed-amount discounts at checkout, scoped to specific products or campaigns.
- **Custom amounts at checkout**  
  Build more complex workflows by creating a transaction in your backend. Pass a one-off price into the transaction for "name your price" or quote-driven sales.
- **Bundle pricing**  
  Paddle supports multi-product checkout, so you can combine multiple products into a single transaction with a single payment.

You can launch promotions, regional sales, or customer-specific deals without redeploying.

## Going global without a tax department

Selling digital products across borders quickly turns into a tax problem: VAT in the EU and UK, GST in Australia, India, and Singapore, sales tax across US states, country-specific digital services taxes.

Paddle is a merchant of record, which means:

- **Tax is calculated and added at checkout** automatically based on the customer's location.
- **Paddle remits** the tax to the right authority — not you.
- **Customers see compliant invoices** with the correct VAT/GST treatment, downloadable from their email or the customer portal.
- **No registration thresholds to track** in each jurisdiction, because Paddle handles this for you.
- **You can offer [local payment methods](https://developer.paddle.com/concepts/payment-methods.md)** in a couple of clicks, since Paddle has local entities across the world.

[Nexus Mods saw a 9x revenue uplift in China](https://www.paddle.com/customers/helping-nexus-mods-unlock-the-gaming-community) after switching to Paddle and unlocking local payment methods and tax compliance they couldn't have built themselves.

## Optimized checkout experience

Paddle Checkout works out of the box for digital products:

- [**Overlay checkout**](https://developer.paddle.com/concepts/sell/overlay-checkout.md) opens over your existing site, with minimal disruption to your design.
- [**Inline checkout**](https://developer.paddle.com/concepts/sell/branded-integrated-inline-checkout.md) embeds the form directly in your page for full visual control.
- [**Hosted checkout**](https://developer.paddle.com/concepts/sell/hosted-checkout-mobile-apps.md) is fully hosted by Paddle, for Mac or iOS apps only.

All three support Apple Pay, Google Pay, PayPal, cards, and local methods like iDEAL, Bancontact, UPI, and Pix — selected automatically based on the customer's region.

After payment, Paddle sends the customer a receipt email with a downloadable invoice. The [customer portal](https://developer.paddle.com/concepts/sell/customer-portal.md) gives them a place to access past purchases without having to ask you.

## Where to start

{% card-group cols=3 %}
{% card title="Quickstart" icon="carbon:rocket" url="/get-started/quickstart" %}
Walk through the five-step framework-agnostic onboarding experience.
{% /card %}
{% card title="Create products" icon="carbon:purchase" url="/build/products/create-products-prices" %}
Create products and prices in your Paddle catalog.
{% /card %}
{% card title="Build a pricing page" icon="carbon:pricing-consumption" url="/build/checkout/build-pricing-page" %}
Drop in Paddle.js, render localized prices, and wire up a buy button on your site.
{% /card %}
{% /card-group %}