# Create your first offer
Create a checkout offer that can be hosted, embedded, tested, and connected to follow-up workflows.
Source: /docs/offers/create
Last modified: 2026-06-18
Create the offer before embedding it. The SDK opens an offer by slug, so the offer is the source of truth for layout, products, payment behavior, and completion handling.

## Build the offer


### Create or import products


    Add products and prices in Plandalf, or sync them from Stripe where supported.


### Choose a template


    Start from a checkout template that matches the sale: simple purchase, multi-step application, subscription upgrade, bundle, or add-on flow.


### Customize the layout


    Arrange checkout blocks, copy, product summaries, payment methods, forms, and confirmation behavior.


### Test the flow


    Open a test session and confirm totals, invoices, taxes, discounts, bumps, and redirects.


### Publish


    Use the hosted URL or embed the offer with the SDK.


## Open it from code

```js
await plandalf.present("your-offer-slug");
```

## Open it from HTML

```html
<button data-plandalf-present="your-offer-slug">
  Buy now
</button>
```

## Related docs

- [Products](/docs/offers/products)
- [Pricing models](/docs/offers/pricing)
- [Design your checkout](/docs/offers/design)
- [Add to your site](/docs/offers/add-to-site)