---
slug: "/docs/v1/integration-guide/deliver"
title: "Deliver licenses to customers"
description: "Stage 12: deliver licenses to customers with a clear outcome, verification steps and one next action."
section: "Integration Guide"
order: 27
audience: "all"
level: "beginner"
last_updated: "2026-10-20"
version: "v1"
related: []
draft: false
layout: "guide"
---
## What you will do
Choose one [delivery](/docs/v1/start/glossary#delivery) route. Sending a key and protecting the software are separate tasks.
### No-code manual route
1. Open [Sandbox](/docs/v1/start/glossary#sandbox) **[Licenses](/docs/v1/start/glossary#license) → New license**.
2. Choose the [customer](/docs/v1/start/glossary#customer)'s [product](/docs/v1/start/glossary#product) and plan, enter their email and create the key.
3. Deliver it through your private customer channel. The full key is shown once.
4. Inspect [Devices](/docs/v1/start/glossary#device) and the license status for support, never request a password.
### WooCommerce
1. Install the official connector and connect your workspace.
2. Use **Import store products → Complete setup & enable sync** to prepare App IDs, plans and mappings together. Existing IDs are reused.
3. Review the shared device/access defaults once. Official subscription metadata comes from WooCommerce; inferred name-based periods need review.
4. Test a confirmed store order and verify the key in the order and My Account.
5. Keep Test/[Live](/docs/v1/start/glossary#live) payment evidence, quotas and product permissions enforced.
The native connector is different from the advanced standalone store-service reference.
### Another store or backend
Choose the matching [sales-platform guide](/docs/v1/sell). A [webhook](/docs/v1/start/glossary#webhook) is a server notification, not payment proof by itself.
1. Verify the provider notification's signature using original raw bytes.
2. Retrieve/confirm the current purchase with the provider and match product/customer/amount/state.
3. Issue or update through a scoped management API key on your trusted backend.
4. Save a durable purchase-to-license mapping and deduplicate retries.
5. Handle cancellations, paid-through access, refunds and disputes without blind reissuance.
No-code automation still needs a trusted verification/fulfillment step; do not paste a [developer](/docs/v1/start/glossary#developer) key into public browser code.
## Expected result
One eligible purchase produces the intended license, and repeated notifications do not duplicate it.
## If it does not work
Customer software license sales are separate from Stripe/Mollie billing for your KDPika [platform subscription](/docs/v1/start/glossary#platform-subscription). Delayed notifications and an unconfirmed payment must not unlock customer access.
## Stage checklist
- I chose one delivery route.
- Confirmed purchase and license ownership match.
- I tested duplicate delivery, cancellation and refund handling.

## Next steps
[Continue to Stage 13: Test the complete lifecycle](/docs/v1/integration-guide/test)
