# Create Offer

Easily create private offers directly from a HubSpot deal using the Suger App.

---

## Overview

A private offer is a custom deal you send to a specific buyer through a cloud marketplace — AWS, Azure, or GCP. It includes your negotiated pricing, contract terms, and expiration date. The buyer receives a link to review and accept the offer directly in their cloud marketplace account. Once the buyer accepts it, the contract is live and billing starts automatically through the marketplace.

After adding the Suger App to your HubSpot Console, you can create these offers straight from a deal, without leaving HubSpot. For more details on offers, see [Understand Marketplace Offers](/get-started/resources/#marketplace-offers).

## Prerequisites

- The Suger App must be set up in HubSpot and the Suger app card must be visible on your deal pages. If you haven't done that yet, see [Configuration](/hubspot-app/hubspot-app-configuration/).
- The product you want to create an offer for must already exist in Suger. If it doesn't, create it in the Suger Console first before continuing.

## Create an offer

1. Navigate to the deal's detail page and click the **"Suger"** tab at the top of the page.

> <img src="/img/hubspot/deal_suger_tab.jpg" alt="Suger tab on the HubSpot deal detail page" style="max-width:880px;width:100%;display:inline;margin:0 auto;box-shadow:5px 5px 5px #eee" />

2. Locate and click the **"New Offer"** button.

> <img src="/img/hubspot/create_offer_button.jpg" alt="New Offer button in the Suger panel" style="max-width:880px;width:100%;display:inline;margin:0 auto;box-shadow:5px 5px 5px #eee" />

3. The **Create Private Offer** panel opens with **"Choose the type of offer you wish to create."** Pick one of the three types:

    | Option | Use it when |
    | --- | --- |
    | **Private Offer** | You are sending a new negotiated offer directly to an end customer |
    | **Amendment Offer** | You are changing an offer or agreement that already exists |
    | **Reseller Offer** | You are creating the offer as a reseller, based on an authorization an ISV granted you |

    :::tip

    **Reseller Offer** here is the reseller side of the transaction. If you are the ISV authorizing a reseller to sell on your behalf, use the **New Resale** button instead — see [Create CPPO](/hubspot-app/hubspot-app-cppo/).
    :::

<!-- screenshot needed: the Create Private Offer panel showing the three offer-type options — Private Offer, Amendment Offer, Reseller Offer — BLOCKED: this screen renders inside HubSpot (the Suger app), not the Suger console, so it cannot be captured from this application; capture it from a HubSpot portal with the app installed -->

4. Choose the product on which the private offer will be based. The product list shows only products available in your Suger account.

> <img src="/img/hubspot/offer_select_product.jpg" alt="Product selection for creating a private offer" style="max-width:880px;width:100%;display:inline;margin:0 auto;box-shadow:5px 5px 5px #eee" />

5. Complete the required fields in the form. Note that the required fields may vary depending on the cloud marketplace and the type of offer.

> <img src="/img/hubspot/offer_form.jpg" alt="Private offer form with required fields" style="max-width:880px;width:100%;display:inline;margin:0 auto;box-shadow:5px 5px 5px #eee" />

:::tip

If field mapping has been configured, the form will be prefilled with corresponding fields from the HubSpot deal, making the offer creation process faster and easier. Review the prefilled values for accuracy before submitting.
:::

6. Once all necessary information is filled in, submit the form to create the offer.

> <img src="/img/hubspot/create_offer_form.jpg" alt="Completed offer form ready to submit" style="max-width:880px;width:100%;display:inline;margin:0 auto;box-shadow:5px 5px 5px #eee" />

:::warning

After submitting, wait 3–5 minutes before copying the offer link. Suger sends the offer data to the cloud marketplace immediately, but the marketplace takes a few minutes to process it. The offer URL is not available until the marketplace confirms the offer. Refresh the offer record after a few minutes and the link will be ready.
:::

7. You are all set!

## Azure: custom contract terms and renewal

On an Azure offer, the **Contract Duration** toggle includes a **Custom** option. Choosing it reveals two more fields:

- **Custom Duration Unit** — months or years.
- **Custom Duration Value** — the length. The helper text is *"1–120 months or 1–10 years; month values divisible by 12 must use years"*, so a 24-month term has to be entered as 2 years.

A custom term also makes **Renewal Behavior** required, and its "no renewal" option is hidden — Azure will not accept a custom-term offer without a renewal decision. The options are:

| Renewal Behavior | What happens at the end of the term |
| --- | --- |
| **No renewal configured** | The subscription does not renew. Not available when the term is custom |
| **Renew into private offer** | The customer rolls into the private offer pricing again |
| **Renew into public offer** | The customer rolls onto your public marketplace listing pricing |

When you pick a renewal that continues the subscription, set **Renewal Contract Duration** and **Renewal Billing Frequency** underneath it.

<!-- screenshot needed: the Azure pricing editor with Contract Duration set to Custom, showing Custom Duration Unit, Custom Duration Value and the required Renewal Behavior fields — BLOCKED: this screen renders inside HubSpot (the Suger app), not the Suger console, so it cannot be captured from this application; capture it from a HubSpot portal with the app installed -->

## Manage an offer after it is created

Each row in the **Offers** tab has an actions menu:

| Action | What it does |
| --- | --- |
| **Cancel Offer** | Cancels the offer so the buyer can no longer accept it |
| **Extend Expiry Date** | Pushes the offer's expiry date out |
| **Edit Offer Info** | Edits the offer's descriptive information |
| **Clone Offer** | Starts a new offer pre-populated from this one |

<!-- screenshot needed: the Offers tab row actions menu showing Cancel Offer, Extend Expiry Date, Edit Offer Info, and Clone Offer — BLOCKED: this screen renders inside HubSpot (the Suger app), not the Suger console, so it cannot be captured from this application; capture it from a HubSpot portal with the app installed -->

### When Extend Expiry Date is available

**Extend Expiry Date** is offered when the offer's status is one of:

| Status | Why it is extendable |
| --- | --- |
| **PENDING_ACCEPTANCE** | The buyer has not accepted yet and needs more time |
| **EXPIRED** | The offer lapsed and you want to revive it |
| **UPDATE_FAILED** | A previous extend attempt failed — extend again to retry it |

It is never available in these cases:

- **CPPO offers.** A CPPO is created and owned by the reseller, so the ISV cannot extend it.
- **AWS resale authorizations (CPPO_OUT).** AWS does not support extending an authorization.
- **Azure offers on v1 pricing.** Only v2 and v3 Azure pricing can be extended.

## GCP: replaced offers

When a GCP offer replaces an earlier one, the offer detail shows **Replaced Offer ID** — the identifier of the offer it supersedes. Once Suger resolves that identifier, a **Replaced Offer** row appears with the replaced offer's name, so you can see at a glance which offer this one took over from.

## What happens next

After you submit the offer:

- Suger creates the offer and links it to the HubSpot deal.
- The offer is sent to the cloud marketplace for processing.
- Once the marketplace confirms the offer, the offer status updates and the offer URL becomes available.
- Copy the offer URL and send it to the buyer — they use it to review and accept the offer in their cloud marketplace account.
- The offer is also visible in the Suger Console under your offers list.

## Troubleshooting common issues

| Issue | Possible cause | Resolution |
| --- | --- | --- |
| No Suger tab visible on the deal page | The Suger app card has not been added to the deal layout | Follow [Configuration](/hubspot-app/hubspot-app-configuration/) to add the app card |
| No New Offer button visible inside the Suger panel | The HubSpot integration connection has been disrupted | Go to Suger Console → Settings → Integrations → HubSpot and click Verify to re-verify the connection |
| Product list is empty | No products have been set up in Suger | Confirm that products exist in the Suger Console before creating an offer |
| Form fields are blank — not pre-filled from the deal | Field mapping has not been configured | Field mapping is an optional admin setup. Contact your admin to configure it |
| Offer URL is not available after the offer is created | The marketplace has not finished processing the offer yet | Wait 3–5 minutes and refresh the page. The URL appears once the marketplace confirms the offer |
| Offer was created but is not visible on the deal | Sync between Suger and HubSpot is delayed | Refresh the page after a few minutes. If it still doesn't appear, confirm the offer was created successfully in the Suger Console |

## Frequently asked questions

**Can I create offers for AWS, Azure, and GCP from HubSpot?**

Yes — as long as products are set up for each cloud in Suger. The product selector in the offer form shows all available products across clouds.

**What is field mapping and do I need it?**

Field mapping is an optional configuration that automatically pre-fills offer form fields with data from the HubSpot deal — like company name, deal value, or close date. It saves time and reduces manual entry errors. You can still create offers without it, but you'll need to fill in all fields manually.

**Will the offer show up in the Suger Console too?**

Yes. Any offer created from HubSpot is also visible in the Suger Console under your offers list.

**The buyer can't find the offer link. What do I do?**

Open the offer in HubSpot or in the Suger Console and copy the offer URL directly. Make sure at least 3–5 minutes have passed since the offer was created — the URL is not available until the marketplace confirms it.
