> For the complete documentation index, see [llms.txt](https://features.scnd.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://features.scnd.com/v2.0/front-office/rendering-types/commoditized-rendering-types/product/buy-a-listing-product.md).

# Buy a Listing (Product)

### Definition

This page describes the purchase flow for a **Product** listing, from checkout to final confirmation of receipt.

### Triggering the purchase

From the listing page, clicking **BUY** opens the purchase flow, provided the vendor has enabled **Allow online purchase** on this listing (see [*Edit a Listing (Product)*, Price & conditions](/v2.0/front-office/rendering-types/commoditized-rendering-types/product/edit-a-listing-product.md#price-and-conditions)). If online purchase is not enabled, only the **Contact me** button is available (see [*Show a Listing (Product)*](/v2.0/front-office/rendering-types/commoditized-rendering-types/product/show-a-listing-product.md)).

***

### Order summary

Page: **"Buy this item — Order summary"**

* Recap of the listing (thumbnail, title, price)
* **Delivery** section — delivery availability for this item
* **Shipping address**:
  * **Address street number and name**
  * **Additional location information**
* **Product price**
* **Platform fees**
* Required checkbox: **"I accept the marketplace terms and conditions"**
* Buttons: **Edit** / **Confirm purchase**

<div align="center"><figure><img src="https://2306631548-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fn4EIoqjZx1xWQIo6LnjB%2Fuploads%2FfLPuUgamOgGBdsxVWXBn%2FOrder%20summary.png?alt=media&amp;token=49005fef-5a8f-42ea-8085-ada0e83bde84" alt=""><figcaption></figcaption></figure></div>

### Step 2 — Payment

Page: **"Your order — Payment"**

* Card entry form (Visa / Mastercard / CB) — a **Test card** button is available in test environments
* Notice: *"No amounts will be charged until your booking request is accepted. Additionally, the platform will hold the amount paid until the service is rendered."*
* **Total to pay** + **Pay** button

> 💡 **Confirmed business rule** — Payment is **authorized, not captured**, at checkout. The platform holds the funds until the vendor accepts the order, and only releases them to the vendor once the buyer confirms receipt.

<figure><img src="https://2306631548-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fn4EIoqjZx1xWQIo6LnjB%2Fuploads%2FMYBVPEp0IjPs8sMuXvzT%2Fimage.png?alt=media&amp;token=2d1ba012-dc63-4f88-b6c9-4253411242b6" alt=""><figcaption></figcaption></figure>

### Step 3 — Confirmation

Page: **"Thank you!"** — *"Your payment has been accepted, you will be redirected to the order details."* The buyer is redirected to the order, which starts at status **Pending**.

***

### Order lifecycle

| Status        | Triggered by                                                | Effect                                                                                            |
| ------------- | ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
| **Pending**   | End of the purchase flow (payment authorized, not captured) | A countdown to expiration is displayed (e.g. *Expires in 32h*); the vendor must Accept or Decline |
| **Paid**      | Vendor clicks **Accept**                                    | Payment is captured; contact information is revealed to both parties                              |
| **Completed** | Buyer clicks **Mark as received**                           | End of the cycle; the listing itself switches to status **Sold**                                  |
| **Declined**  | Vendor clicks **Decline**                                   | End of the cycle; the listing itself still **published**                                          |
| **Expired**   | Vendor didn't confirm in time                               | End of the cycle; the listing itself still **published**                                          |

#### Vendor view before decision

On a Pending order, the vendor sees:

* **Accept** (green) / **Decline** (red) buttons
* A **Total** reflecting their own net income — not the amount paid by the buyer
* The buyer's trust indicators (see [*Show a Listing (Product), about the offeror*](/v2.0/front-office/rendering-types/commoditized-rendering-types/product/show-a-listing-product.md))

#### Accepting the sale

Clicking **Accept** opens a modal, **"Accept this sale #\[id]"**:

* Delivery address recap
* Buyer profile
* Free-text field: **"Your message"** (optional message to the buyer)
* **Total** (vendor amount)
* Required checkbox: **"I accept the marketplace terms and conditions"**
* Button: **Accept this sale**

Once confirmed: notification *"This booking has successfully been accepted."* — the order moves directly to status **Paid**, confirming that acceptance triggers the capture of the held payment.

<figure><img src="https://2306631548-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fn4EIoqjZx1xWQIo6LnjB%2Fuploads%2FbGbdBzy95PT5n0uQ0Mwv%2Fimage.png?alt=media&amp;token=a38dca84-6b0d-45c6-92c5-7fd40d01b96a" alt=""><figcaption></figcaption></figure>

#### Paid status — contact & address revealed

Once **Paid**, a **Contact information** section appears on **both sides**:

* The vendor sees the buyer's name and email (and phone, where available)
* The buyer sees the vendor's name, email, and phone

The listing's **address** and **additional location information** (see [*Edit a Listing (Product)*](/v2.0/front-office/rendering-types/commoditized-rendering-types/product/edit-a-listing-product.md)) are revealed at this same point — both follow the same "revealed after acceptance" rule.

On the buyer's side, two additional actions appear:

* **Mark as received**
* **Download Confirmation**

#### Confirming receipt → Completed

Clicking **Mark as received** as the asker triggers :&#x20;

* a confirmation dialog (*"Are you sure you received this item?"*).
* the payout to the offerer (to be confirmed via the SBO by the administrators)

&#x20;Once confirmed:

* Notification: *"The item has been marked as received."*
* Order status: **Completed**
* The buyer's `Has completed X booking(s)` counter increases

#### Listing status: Sold

Once the associated order reaches **Completed**, the listing itself switches to status **Sold** in the vendor's listings. This reflects the "single unit" nature of Product listings — unlike Time Based / Seat Based / Flat Rate listings, which remain bookable after a transaction.

### Related resources

* [**Create a Listing (Product)**](/v2.0/front-office/rendering-types/commoditized-rendering-types/product/create-a-listing-product.md) — initial listing deposit process
* [**Edit a Listing (Product)**](/v2.0/front-office/rendering-types/commoditized-rendering-types/product/edit-a-listing-product.md) — managing an existing listing
* [**Show a Listing (Product)**](/v2.0/front-office/rendering-types/commoditized-rendering-types/product/show-a-listing-product.md) — access to an existing listing


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://features.scnd.com/v2.0/front-office/rendering-types/commoditized-rendering-types/product/buy-a-listing-product.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
