nexbid_purchase
<tool_description> Initiate a purchase for a product found via nexbid_search. Returns a checkout link that the user can click to complete the purchase at the retailer. The agent should present this link to the user for confirmation. </tool_description>
<when_to_use> ONLY after user has expressed clear purchase intent for a specific product. Requires a product UUID from nexbid_search or nexbid_product. ALWAYS confirm with user before calling this tool. </when_to_use>
<combination_hints> nexbid_search (purchase intent) → nexbid_purchase → present checkout link to user. After purchase → nexbid_order_status to check if completed. Use checkout_mode=wallet_pay when the user has a connected wallet with active mandate. </combination_hints>
<output_format> For prefill_link (default): Checkout URL that the user clicks to complete purchase at the retailer. For wallet_pay: Intent ID and status for mandate-based authorization. Include product name and price for user confirmation. </output_format>
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cart_id | No | Optional cart UUID. Server generates one if omitted. | |
| quantity | No | Quantity for single-item purchase (default: 1, ignored in cart-mode) | |
| line_items | No | Array of line items for cart purchase. Mutually exclusive with product_id. | |
| product_id | No | Product UUID to purchase. Mutually exclusive with line_items. | |
| checkout_mode | No | Checkout mode. Default: prefill_link. wallet_pay requires a connected wallet with active mandate. | |
| cart_ttl_seconds | No | Cart mandate lifetime in seconds (default 900, max 3600) | |
| cart_total_max_cents | No | Cart-level hard-bound on total amount (only with line_items) | |
| publisher_content_id | No | Optional UUID of the publisher content (recipe, editorial, review, etc.) that surfaced this product to the user. When set, a successful purchase emits a premium-tier enriched_snippet_impression and the publisher gets credited 90% of the conversion value. Pass-through from nexbid_search, where it is returned alongside each product as `match_publisher_content_id` (when applicable). |