> ## Documentation Index
> Fetch the complete documentation index at: https://labs.prompthon.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Messaging Transaction Assistant Starter

> A vendor-neutral starter for Business-AI-style messaging assistants with profile and catalog context, human takeover, and payment handoff boundaries.

<div className="not-prose my-4 rounded-md border border-gray-200 bg-gray-50 p-2 text-sm dark:border-gray-800 dark:bg-gray-900/40">
  <div className="mb-2 px-1 text-xs font-semibold uppercase tracking-wide text-gray-500 dark:text-gray-400">Need help?</div>

  <div className="flex flex-wrap gap-2">
    <a className="inline-flex items-center gap-2 rounded-md border border-gray-200 bg-white px-3 py-1.5 font-medium text-gray-700 no-underline shadow-sm hover:border-gray-300 hover:bg-gray-50 dark:border-gray-800 dark:bg-gray-950/60 dark:text-gray-200 dark:hover:bg-gray-900" href="https://discord.gg/sDE2HhGTg4" target="_blank" rel="noreferrer">
      <Icon icon="discord" iconType="brands" size={14} />

      <span>Ask in Discord</span>
    </a>

    <a className="inline-flex items-center gap-2 rounded-md border border-gray-200 bg-white px-3 py-1.5 font-medium text-gray-700 no-underline shadow-sm hover:border-gray-300 hover:bg-gray-50 dark:border-gray-800 dark:bg-gray-950/60 dark:text-gray-200 dark:hover:bg-gray-900" href="https://github.com/Prompthon-IO/agent-systems-handbook/issues/new/choose" target="_blank" rel="noreferrer">
      <Icon icon="github" iconType="brands" size={14} />

      <span>Open a GitHub issue</span>
    </a>

    <a className="inline-flex items-center gap-2 rounded-md border border-gray-200 bg-white px-3 py-1.5 font-medium text-gray-700 no-underline shadow-sm hover:border-gray-300 hover:bg-gray-50 dark:border-gray-800 dark:bg-gray-950/60 dark:text-gray-200 dark:hover:bg-gray-900" href="https://github.com/Prompthon-IO/agent-systems-handbook/blob/main/SUPPORT.md" target="_blank" rel="noreferrer">
      <Icon icon="life-ring" size={14} />

      <span>Support guide</span>
    </a>
  </div>
</div>

## Summary

This starter shows a messaging-native transaction assistant in the smallest
useful shape: bounded business context, intent capture, plan selection, user
confirmation, and payment handoff.

## Status

`starter`

Source code: [ecosystem/examples/messaging-transaction-assistant-starter](https://github.com/Prompthon-IO/agent-systems-handbook/tree/main/ecosystem/examples/messaging-transaction-assistant-starter)

## Why It Exists

Messaging surfaces are becoming places where users complete real tasks without
switching apps. The assistant pattern is not "let the model pay for something."
It is a bounded flow where the assistant collects intent, presents a reviewable
choice, and hands off to a trusted payment surface after explicit confirmation.

Meta's May 2026 `Business AI on WhatsApp` launch sharpens the business-side
version of that pattern: a small business can ground the assistant in its
profile, catalog, and support context, let it answer customer questions after
hours, and still step in directly whenever needed. This starter keeps that
shape vendor-neutral and repo-native.

## Related Lab Pages

* [Ecosystem Overview](/ecosystem)
* May 2026 Agentic Shopping Assistant Watch
* [Source Project Guidelines](/contributor-kit/source-project-guidelines)

## Folder Structure

```text theme={null}
messaging-transaction-assistant-starter/
├── README.md
├── SOURCE_NOTES.md
├── index.mdx
└── src/
    ├── run_demo.py
    └── transaction_flow.py
```

## Included Sample Files

* `src/transaction_flow.py`: typed helpers for bounded business context, intent
  capture, plan selection, confirmation, and payment handoff
* `src/run_demo.py`: tiny command-line demo of the flow
* `SOURCE_NOTES.md`: source lineage and attribution boundary

## Flow Boundaries

The assistant may:

* answer from a local business profile, catalog, and support notes
* infer a recharge-like intent from a message
* ask for missing plan or recipient details
* show a confirmation summary
* keep business takeover available when a human seller wants to step in
* prepare a handoff payload for a payment surface

The assistant must not:

* execute payment
* store card or bank credentials
* bypass user confirmation
* imply vendor-specific integration that does not exist

## Current Source Signal

The current signal for this refresh is Meta's May 2026 `Business AI on
WhatsApp` launch for Indian small businesses. Meta frames the assistant around
catalog-grounded product questions, key business information, after-hours
coverage, and seller control. That makes the reusable handbook lesson more
specific than a generic chatbot: the assistant should stay inside a visible
business context boundary while a human still owns final overrides and payment.

## Next Steps

* Add a richer state machine for missing details.
* Add localization fixtures for different messaging markets.
* Add a fake payment adapter that only records handoff state for tests.
