Skip to content
This repository was archived by the owner on Jul 21, 2026. It is now read-only.

feat: add support to abacatepay provider - #33

Merged
almeidazs merged 8 commits into
mainfrom
feat/abacatepay
Jun 10, 2026
Merged

feat: add support to abacatepay provider#33
almeidazs merged 8 commits into
mainfrom
feat/abacatepay

Conversation

@almeidazs

@almeidazs almeidazs commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

  • New Features

    • Added AbacatePay payment provider with support for checkout, PIX transparent charges, customer management, and webhook verification.
    • Made payment creation fields (amount, currency) optional, with per-provider validation as needed.
  • Documentation

    • Added comprehensive AbacatePay provider guide covering setup, capabilities, and usage examples.
    • Updated installation, basic usage, and provider selection guides with AbacatePay examples and guidance.
  • Improvements

    • AbacatePay now listed as official live provider on home page.
    • Enhanced provider selection and sandbox detection documentation.

@almeidazs almeidazs self-assigned this Jun 10, 2026
@almeidazs almeidazs added the enhancement New feature or request label Jun 10, 2026
@vercel

vercel Bot commented Jun 10, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
paymesh Ready Ready Preview, Comment Jun 10, 2026 9:26pm

@coderabbitai

coderabbitai Bot commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Caution

Review failed

Pull request was closed or merged during review

📝 Walkthrough

Walkthrough

This PR introduces a complete AbacatePay payment provider for Paymesh, including the new @paymesh/abacatepay package with full support for checkout payments, PIX transparent charges, customer management, catalog sync, and webhooks. It also updates existing providers to validate required fields, extends documentation, and integrates the new provider throughout the web application.

Changes

AbacatePay Provider Implementation & Integration

Layer / File(s) Summary
Type Definitions & Provider Configuration
packages/abacatepay/src/types.ts, packages/abacatepay/package.json, packages/abacatepay/tsconfig.json, packages/abacatepay/tsdown.config.mjs
Defines provider options, API response/webhook schemas, checkout/PIX/customer/product models, package metadata, and build configuration for the new package.
Constants, Data Extraction & Mappers
packages/abacatepay/src/shared/constants.ts, packages/abacatepay/src/shared/data.ts, packages/abacatepay/src/shared/mapper.ts
Exports provider capabilities, event/status mappings, HMAC key, error extraction utility, and three mappers (checkout, PIX, customer) that translate AbacatePay responses to Paymesh normalized types.
Provider Implementation
packages/abacatepay/src/index.ts
Full AbacatePay provider with payments (checkout validation/creation), PIX operations (create/retrieve), customer CRUD, catalog listing, and webhook verification/event handling with optional raw payload support.
Provider Test Suite
packages/abacatepay/test/abacatepay.test.ts, packages/abacatepay/test/catalog.test.ts, packages/abacatepay/test/customers.test.ts, packages/abacatepay/test/webhooks.test.ts
Comprehensive Bun tests covering checkout/PIX/customer operations, request/response mapping, catalog filtering/defaults, webhook signature verification, event normalization, and sandbox detection.
Core Framework Type Updates & Validation
packages/paymesh/src/types/providers.ts, packages/stripe/src/index.ts, packages/polar/src/index.ts
Makes amount/currency optional in PaymentCreateData to support catalog-driven providers, and adds upfront validation to Stripe and Polar for required fields.
Provider Documentation
apps/web/content/docs/providers/abacatepay.mdx
Complete provider guide with setup options, capability matrix, checkout/PIX/customer/catalog/webhook usage patterns, event mapping table, and selection criteria.
Documentation Integration & Guidance
apps/web/content/docs/basic-usage.mdx, apps/web/content/docs/installation.mdx, apps/web/content/docs/introduction.mdx, apps/web/content/docs/concepts/*, apps/web/public/llms.txt
Integrates AbacatePay throughout documentation alongside Stripe/Polar with examples, updates PIX/sandbox/selection guidance, and marks AbacatePay as live provider in release notes.
Web Application Build & Navigation Configuration
apps/web/.source/browser.ts, apps/web/.source/server.ts, apps/web/next-env.d.ts, apps/web/src/lib/docs-navigation.ts
Registers AbacatePay MDX doc module, updates lazy-loading map, corrects Next.js type reference, and adds navigation entry linking to provider guide.
Web Application UI & Styling Updates
apps/web/src/app/page.tsx, apps/web/src/app/docs/layout.tsx, apps/web/src/components/docs/doc-nav-icon.tsx, apps/web/src/components/docs/docs-sidebar.tsx
Updates homepage provider card status/tags, adds dark-mode logo variants for Bun/Hono/Elysia/Express, refactors docs header layout, and restructures sidebar search styling.
Root & Release Configuration
package.json, .changeset/add-abacatepay-provider.md
Includes AbacatePay in root typecheck script and adds minor version changeset for provider release.

🎯 4 (Complex) | ⏱️ ~60 minutes

Possibly Related PRs

  • usepaymesh/paymesh#27: Introduced the docsNavigation structure that this PR updates to register the AbacatePay provider guide.
🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check name Status Explanation Resolution
Description check ⚠️ Warning The pull request description is missing entirely; the author did not provide any description despite the template being available with required checklist items. Add a pull request description following the provided template, including a summary of changes, confirmation of the checklist items (code review, tests, changelog, docs), and any relevant context.
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically describes the main change: adding support for the AbacatePay provider, which is the primary objective of this comprehensive changeset.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/abacatepay

Comment @coderabbitai help to get the list of available commands and usage tips.

@almeidazs almeidazs linked an issue Jun 10, 2026 that may be closed by this pull request
@almeidazs
almeidazs marked this pull request as ready for review June 10, 2026 21:34
@almeidazs
almeidazs merged commit 816bc0b into main Jun 10, 2026
12 of 13 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: add abacatepay provider

1 participant