Create a payment link

Create a Stripe checkout link for the quote total on the sub-account's connected Stripe account. Every call also creates a new pending invoice. The link is saved on the quote and included when you email it.

POST https://api.centerfy.ai/webhooks/inbound/quotes/:id/payment-link

Headers

HeaderRequiredValueDescription
x-api-keyYesyour sub-account API key (cfy_…)Authenticates the request; or use Authorization: Bearer <key>.

Path parameters

NameTypeRequiredDescription
idstring (uuid)YesThe quote or estimate id.

Example

curl -X POST "https://api.centerfy.ai/webhooks/inbound/quotes/{id}/payment-link" \
  -H "x-api-key: $CENTERFY_API_KEY"
import { CenterfyClient } from "@centerfy/sdk";

const centerfy = new CenterfyClient({ apiKey: process.env.CENTERFY_API_KEY! });

const result = await centerfy.quotes.createPaymentLink("<quoteId>");
console.log(result);
centerfy quotes payment-link <quoteId>

MCP tool: centerfy_quotes_create_payment_link (see MCP server)

Response

{
  "status": "success",
  "quote_id": "f2a3b4c5-d6e7-4f8a-9b0c-1d2e3f4a5b6c",
  "payment_url": "https://checkout.example.com/pay/cs_test_example",
  "invoice_id": "e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b",
  "invoice_number": "INV-2026-0013"
}

Errors

  • 400 — if the quote total isn’t greater than zero, no payment account is connected, or the connection has expired.
  • 502 — if the link could not be created.
  • 404 — if the quote is not in this sub-account.

Notes

Call it once per quote — repeated calls create extra invoices.

© 2026 Centerfy AI. All rights reserved.