Skip to content

feat(payment): add payment-ppp-pos skill - #91

Merged
ricardoaerobr merged 7 commits into
mainfrom
feat/payment-ppp-pos
Sep 25, 2026
Merged

ricardoaerobr merged 7 commits into
mainfrom
feat/payment-ppp-pos

Conversation

@ricardoaerobr

@ricardoaerobr ricardoaerobr commented Sep 9, 2026 •

Copy link
Copy Markdown
Contributor

Description

Add a Payment track skill for Payment Provider Protocol on VTEX Sales App (POS), covering card-present methods that the existing ecommerce connector skills do not.

  • New Payment track skill for Venda Direta Credito / Venda Direta Debito, two-phase Payment Apps, null Gateway card data, and IO retry vs standalone notification
  • Companions: generation workflow, PPF overlay files, expected payloads
  • Cross-links from PPP, PPF, async, PCI, and the Sales App track
  • Catalog count: 40 → 41 skills; Payment track 5 → 6

Contribution Checklist

  • Source files only: Edited skill files in tracks/{track}/skills/{name}/skill.md, not in skills/, exports/, or rules/ directories
  • Correct file name: Skill file is named skill.md (lowercase), not SKILL.md or other variants
  • Frontmatter complete: Includes name, description, and metadata with track and tags fields
  • Validation passed: Ran bun run validate and all hard checks pass
  • Exports regenerated: Ran bun run export and committed both source and generated files
  • Skill name format: Uses kebab-case and is unique across the repository
  • Track directory correct: Track name in frontmatter matches the directory structure

Note: local Windows bun run validate fails track-consistency on every skill (path.split(/) vs \). Ubuntu CI is the intended gate.

Public Documentation Sync

  • Public docs update required — list the affected pages and link the follow-up below:

  • VTEX Skills → intro skill count 40 → 41; Payment track 5 → 6 in the Tracks and skills table

  • Follow-up: open a PR in vtex/dev-portal-content after this merges (not filed yet)

Test plan

  • CI bun run validate passes on Ubuntu
  • CI export check (exports/, rules/, skills/ up to date) passes
  • Confirm payment-ppp-pos appears in Cursor, Copilot, Claude, AGENTS.md, OpenCode, and Kiro exports
  • Confirm companion files load (generation.md, ppf-scaffold.md, examples.md)

Related Issues

N/A

Help Alliances partners scaffold VTEX Sales App POS connectors from the official PPF example instead of inventing an ecommerce card flow.

Co-authored-by: Cursor <cursoragent@cursor.com>
@vtex-pr-sentinel

Copy link
Copy Markdown

🛡️ SDD Check — action required

I couldn't detect an SDD in this PR. Please check one option below (requires write access to the repo):

  • SDD lives in another PR — paste the SDD PR URL here:
  • This PR doesn't need an SDD
  • SDD applies, but I'm not adopting it in this PR

@github-actions

github-actions Bot commented Sep 9, 2026 •

Copy link
Copy Markdown
Contributor

✅ Validation passed — all checks OK

Full validation output
$ bun run scripts/validate.ts --ci
Validating 46 skill files (9 hard, 4 soft checks)...

⚠️  tracks/faststore/skills/faststore-storefront/skill.md — 10/13 checks passed (3 warnings)
   WARN: [required-sections] — Missing required H2 section: "## When this skill applies"
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=required-sections::Missing required H2 section: "## When this skill applies"
   WARN: [required-sections] — Missing required H2 section: "## Decision rules"
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=required-sections::Missing required H2 section: "## Decision rules"
   WARN: [required-sections] — Missing required H2 section: "## Hard constraints"
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=required-sections::Missing required H2 section: "## Hard constraints"
   WARN: [required-sections] — Missing required H2 section: "## Preferred pattern"
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=required-sections::Missing required H2 section: "## Preferred pattern"
   WARN: [required-sections] — Missing required H2 section: "## Common failure modes"
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=required-sections::Missing required H2 section: "## Common failure modes"
   WARN: [required-sections] — Missing required H2 section: "## Review checklist"
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=required-sections::Missing required H2 section: "## Review checklist"
   WARN: [detection-patterns] — No "Detection" or "**Detection**" pattern found in content
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=detection-patterns::No "Detection" or "**Detection**" pattern found in content
   WARN: [paired-examples] — Missing correct example marker (✅ or **Correct**)
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=paired-examples::Missing correct example marker (✅ or **Correct**)
   WARN: [paired-examples] — Missing incorrect example marker (❌ or **Wrong**)
::warning file=tracks/faststore/skills/faststore-storefront/skill.md,title=paired-examples::Missing incorrect example marker (❌ or **Wrong**)
✅ tracks/vtex-io/skills/vtex-io-admin-react/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-app-contract/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-react-apps/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-messages-and-i18n/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-session-apps/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-auth-and-policies/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-auth-tokens-and-context/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-service-configuration-apps/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-graphql-api/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-http-routes/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-masterdata-strategy/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-storefront-react/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-render-runtime-and-blocks/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-masterdata/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-storefront-theme-versioning/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-security-boundaries/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-service-paths-and-cdn/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-application-performance/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-data-access-patterns/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-app-settings/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-events-and-workers/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-rootpath/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-service-apps/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-rbac/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-client-integration/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-service-runtime/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-observability-and-ops/skill.md — 13/13 checks passed
✅ tracks/vtex-io/skills/vtex-io-storefront-theme-app/skill.md — 13/13 checks passed
✅ tracks/masterdata/skills/masterdata-storage-strategy/skill.md — 13/13 checks passed
✅ tracks/payment/skills/payment-provider-protocol/skill.md — 13/13 checks passed
✅ tracks/payment/skills/payment-provider-framework/skill.md — 13/13 checks passed
✅ tracks/payment/skills/payment-pci-security/skill.md — 13/13 checks passed
✅ tracks/payment/skills/payment-idempotency/skill.md — 13/13 checks passed
✅ tracks/payment/skills/payment-async-flow/skill.md — 13/13 checks passed
✅ tracks/payment/skills/payment-ppp-pos/skill.md — 13/13 checks passed
✅ tracks/headless/skills/headless-bff-architecture/skill.md — 13/13 checks passed
✅ tracks/headless/skills/headless-checkout-proxy/skill.md — 13/13 checks passed
✅ tracks/headless/skills/headless-caching-strategy/skill.md — 13/13 checks passed
✅ tracks/headless/skills/headless-intelligent-search/skill.md — 13/13 checks passed
✅ tracks/marketplace/skills/marketplace-catalog-sync/skill.md — 13/13 checks passed
✅ tracks/marketplace/skills/marketplace-fulfillment/skill.md — 13/13 checks passed
✅ tracks/marketplace/skills/marketplace-order-hook/skill.md — 13/13 checks passed
✅ tracks/marketplace/skills/marketplace-rate-limiting/skill.md — 13/13 checks passed
✅ tracks/sales-app/skills/sales-app-extensibility/skill.md — 13/13 checks passed
✅ tracks/architecture/skills/architecture-well-architected-commerce/skill.md — 13/13 checks passed

Summary: 45 passed, 1 warned (46 total)

…output

Co-authored-by: Cursor <cursoragent@cursor.com>
ricardoaerobr and others added 2 commits September 22, 2026 09:09
Co-authored-by: Isabella Veloso Sá <77300325+Isabella-Veloso@users.noreply.github.com>
Use SDK Direct Sale helpers, align charge start with the POS guide, and make overlapping Create Payment writes concurrency-safe.

Co-authored-by: Cursor <cursoragent@cursor.com>
ricardoaerobr and others added 3 commits September 22, 2026 10:48
The Claude exporter lowercases the skill description; keep the generated file in that form so CI export check stays green.

Co-authored-by: Cursor <cursoragent@cursor.com>
Corrected capitalization and punctuation for consistency and clarity in the guidance text.
The Claude exporter lowercased entire skill descriptions, so restoring names like VTEX Sales App always failed the exports-up-to-date check. Lowercase only the first character so generated files keep source casing.

Co-authored-by: Cursor <cursoragent@cursor.com>

@brunoamui brunoamui left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Analisei a formatação e a aderência à pasta tracks. Tudo certo

@ricardoaerobr
ricardoaerobr merged commit 799a5a2 into main Sep 25, 2026
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants