Safi.pkFOR AGENTSRequest a quote ↗
SAFI / DEVELOPER HUB / v1.1

Your first private quote.

Discover publicly, authenticate once, then prepare a deterministic estimate. You do not need model or billing-provider credentials.

1. Install only the agent runtime

Start with a clean checkout of this repository and Node 22.13 or newer with npm. From the repository root:

npm ci --prefix agent-commerce --ignore-scripts

The owned lockfile installs the pinned SDK and TypeScript runtime. The customer site's dependencies and build are not needed to run this service. Tests and screenshots still use the existing repository development tools.

2. Start the local simulation

npm --prefix agent-commerce run dev

Leave that terminal running. Demo mode binds loopback, generates random private keys under ignored agent-commerce/.local/, and disables provider requests. It cannot run in production. No manual public key, payment details or model credentials are needed.

3. Complete an independent purchasing flow

Open a second terminal at the same repository root:

npm --prefix agent-commerce run demo:a2a
  1. The official SDK discovers the public Agent Card.
  2. An issued local principal authenticates for structured A2A discovery, then reads the full public catalog.
  3. It compares shared and managed two-site plans using declared resources and responsibilities.
  4. It requests annual/multi-year quotes, chooses a published alternative and submits a bounded exception.
  5. It retrieves owned task/quote/review status and handles checkout_disabled or a blocked domain checkout result.

Expected output includes protocol 1.0, catalog inspection, comparison, a null 24-month payable amount, 36 service months, rejected trial stacking, an open review and a checkout_disabled result without a URL. It reports checkout_opened:false and payment_or_provisioning:false. The client asserts these outcomes and exits nonzero if they fail. Run it as a local simulation, not as a real transaction.

4. Interpret the result correctly

Catalog reference price
Public, dated shared-source amount. Not an exact-name premium quote or confirmed checkout invoice.
Calculated quote
Deterministic quantity/offer subtotal and explicit unknowns. It can require review; setup/taxes may be unknown.
Provider-verified checkout price
A provider-confirmed final amount/eligibility at checkout. Currently null here; catalog and arithmetic do not verify it.
Checkout disabled for limited launch
No cart or checkout URL is issued. Domain and hosting quotes go to manual review.
Paid order / provisioned service
Requires separate payment and fulfillment evidence. No task, quote or link generated by this service proves either.

Known numbers are shared-catalog reference amounts, not verified provider invoices. Unknown prices and configuration route to review. See the worked request/response subsets → · Exact protocol and error contract →

Use your own issued key

Outside demo mode obtain an operator-issued key through Safi.pk support. SDK calls send Authorization: Bearer YOUR_ISSUED_KEY and A2A-Version: 1.0. REST writes also need Idempotency-Key; A2A retries reuse messageId and identical content. IDs alone never authorize access. Never put a token into a URL, source file, screenshot or issue report.