---
ref: tool:paddle/create-transaction
name: Create a transaction
company: company:paddle
workflows: []
access: [mcp, api]
tags: [capability:collect-payments, category:payments, has:api, has:mcp]
docs: https://developer.paddle.com/api-reference/transactions/create-transaction
updated: 2026-09-27
---

# Create a transaction

Creates a transaction for the catalog prices or one-off items you pass and returns it with a checkout URL for collecting payment.

List `items` by price ID and quantity. An automatically collected transaction
(the default) is paid at `checkout.url`, your default payment link plus
`?_ptxn=` and the transaction ID. Adding `customer_id` and `address_id` makes
it `ready`, and completing it creates the related subscription. On the MCP
server, find the method with `search` and run it with `execute`; a live OAuth
connection needs write access first.

## Set up

Use the first option your agent supports.

### MCP (official, remote)

Add this server to your agent's MCP settings, then sign in when asked.

```json
{ "mcpServers": { "paddle": { "url": "https://mcp.paddle.com/mcp" } } }
```

Call the MCP tool `execute`.

Server URL: https://mcp.paddle.com/mcp

### API (official)

- Base URL: https://api.paddle.com
- Endpoint: `POST /transactions`
- Auth: send the header `Authorization: Bearer $PADDLE_API_KEY`
- Get a key: https://vendors.paddle.com/authentication-v2
- Docs: https://developer.paddle.com/api-reference/about

Before doing anything else, make one read-only call to confirm access.

## Rules

- Ask the user before anything that sends messages, costs money, or changes data.
- Never print API keys.
