Skip to main content
POST
/
v1
/
quotes
/
{id}
/
finalize
Finalize quote
curl --request POST \
  --url https://api.hyperline.co/v1/quotes/{id}/finalize \
  --header 'Authorization: Bearer <token>'
{
  "id": "quo_hXQCd5y8P3GYXa",
  "customer_id": "cus_QalW2vTAdkR6IY",
  "invoicing_entity_id": "ive_47484fjdhy5",
  "template_id": "quot_9hNWq4c84Z146W",
  "crm_opportunity_id": null,
  "number": "327",
  "comments": "Please find the contract and subscription details we discussed.",
  "terms": "By signing this quote, you accept our conditions of use for the use of our products and services.",
  "owner_email": "joe@acme.com",
  "collect_payment_details": true,
  "collect_custom_property_ids": [],
  "require_tax_id": false,
  "display_quote_value": true,
  "display_quote_value_with_tax": false,
  "display_taxes": true,
  "display_price_tiers": "matching",
  "display_phase_value": false,
  "display_first_invoice_amount": false,
  "display_documents_in_preview": false,
  "display_subscription_on_update": false,
  "post_signature_activation_enabled": true,
  "generate_draft_invoices": false,
  "attachments": [
    {
      "id": "quof_5GYXy8P3QCdaXh",
      "name": "General Conditions of Sale",
      "mimetype": "application/pdf"
    }
  ],
  "signed_file": null,
  "url": "https://billing.hyperline.co/quote/quo_hXQCd5y8P3GYXa",
  "created_at": "2024-04-23T09:10:00.220Z",
  "updated_at": "2024-04-23T10:22:08.100Z",
  "status": "draft",
  "amount": 200000,
  "expires_at": null,
  "type": "subscription",
  "subscription_id": "sub_B6ClkdqNqVNBgY",
  "child_subscription_ids": [
    "sub_0z39oqdhKl0PXb"
  ]
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

id
string
required

Response

200 - application/json
id
string
required

Quote ID.

Example:

"quo_hXQCd5y8P3GYXa"

customer_id
string
required

ID of the customer.

Example:

"cus_QalW2vTAdkR6IY"

invoicing_entity_id
string
required

ID of the invoicing entity attached to the quote.

Example:

"ive_47484fjdhy5"

template_id
string | null
required

ID of the quote template.

Example:

"quot_9hNWq4c84Z146W"

crm_opportunity_id
string | null
required

ID of the related opportunity/deal in the connected CRM.

Example:

null

number
string
required

Quote sequential number.

Example:

"327"

comments
string | null
required

Custom comments displayed on the quote.

Example:

"Please find the contract and subscription details we discussed."

terms
string | null
required

Custom quotation terms.

Example:

"By signing this quote, you accept our conditions of use for the use of our products and services."

owner_email
string<email> | null
required

Email address of the Hyperline user acting as the quote owner.

Example:

"joe@acme.com"

collect_payment_details
boolean
required

Collect customer payment method mandate during signature flow or not.

Example:

true

collect_custom_property_ids
string[]
required

IDs of the customer custom properties required to be filled during the signature flow.

Example:
[]
require_tax_id
boolean
required

Require the customer to provide a tax ID during the signature flow.

Example:

false

display_quote_value
boolean
required

Display the total quote value on the quote.

Example:

true

display_quote_value_with_tax
boolean
required

Display the total quote value including tax on the quote. Only applies to one_off quotes.

Example:

false

display_taxes
boolean
required

Display tax breakdown on the quote.

Example:

true

display_price_tiers
enum<string>
required

Controls which price tiers are displayed on the quote.

  • all: Display all pricing tiers.
  • matching: Only display the tiers used to compute the price based on quantity.
  • none: Hide all pricing tiers.
Available options:
all,
matching,
none
Example:

"matching"

display_phase_value
boolean
required

Display per-phase value breakdown on the quote.

Example:

false

display_first_invoice_amount
boolean
required

Display the first invoice amount on the quote.

Example:

false

display_documents_in_preview
boolean
required

Display attached documents in the quote preview.

Example:

false

display_subscription_on_update
boolean
required

Display subscription details on subscription update quotes.

Example:

false

post_signature_activation_enabled
boolean
required

Whether the subscription is automatically orchestrated after the quote is signed. Only applies to the Hyperline CPQ-only product.

Example:

true

generate_draft_invoices
boolean
required

When true, the invoice issued after signature stays in draft status instead of being emitted for payment. Use this when you want to review the final invoice manually before sending it. Defaults to false.

Example:

false

attachments
object[]
required

List of documents attached to the quote.

Example:
[
{
"id": "quof_5GYXy8P3QCdaXh",
"name": "General Conditions of Sale",
"mimetype": "application/pdf"
}
]
signed_file
object
required

Final signed quote (manually uploaded).

Example:

null

url
string<uri> | null
required

URL to access the quote publicly. Only applies to the pending_signature or signed quote.

Example:

"https://billing.hyperline.co/quote/quo_hXQCd5y8P3GYXa"

created_at
string<date-time>
required

Quote creation date. UTC date time string in the ISO 8601 format.

Example:

"2024-04-23T09:10:00.220Z"

updated_at
string<date-time>
required

Quote update date. UTC date time string in the ISO 8601 format.

Example:

"2024-04-23T10:22:08.100Z"

status
enum<string>
required

Quote status.

  • draft: The quote is a draft.
  • pending_approval: The quote is pending manager review and approval.
  • changes_requested: Some changes have been requested following manager review.
  • approved: The quote is approved and ready to be sent to the customer.
  • pending_signature: The quote is awaiting the customer's signature.
  • signed: The quote is signed and fully finalized.
  • voided: The quote is voided.
Available options:
draft
Example:

"draft"

amount
number | null
required

Estimated contract value.

Example:

200000

expires_at
string<date-time> | null
required

Quote expiration date. UTC date time string in the ISO 8601 format.

Example:

null

type
enum<string>
required

Quote type.

  • subscription: The quote will create and start a new subscription.
  • subscription_update: The quote will update an existing subscription.
  • one_off: The quote will issue an one-off invoice.
Available options:
subscription,
subscription_update
Example:

"subscription"

subscription_id
string | null
required

ID of the subscription attached to the quote. It corresponds to the state at the time of the quote signature. Only applies to the subscription and subscription_update quote types. The get subscription endpoint (GET /v2/subscriptions/{id}) can be used to retrieve the related details.

Example:

"sub_B6ClkdqNqVNBgY"

child_subscription_ids
string[]
required

IDs of the created subscriptions from the quote. Subscriptions configuration can change after the quote signature. The get subscription endpoint (GET /v2/subscriptions/{id}) can be used to retrieve the related details.

Example:
["sub_0z39oqdhKl0PXb"]