This is the source repository for Finix's public API documentation, hosted at docs.finix.com. The documentation is built and served using Redocly.
Finix publishes an MCP server that provides AI-assistants access to the published documentation:
To add the Finix Redocly MCP server to Claude Code:
claude mcp add finix-redocly-mcp https://docs.finix.com/mcp --transport httpThis MCP server provides semantic search over:
- All published guides at docs.finix.com
- API reference documentation
- Integration guides and best practices
When to use the Redocly MCP server:
- Answering questions about Finix APIs, features, or integration patterns
- Looking up current published documentation
- Verifying how documentation appears to customers
When NOT to use it (use this source repo instead):
- Editing or updating documentation content
- Reviewing unpublished changes
- Working with the OpenAPI specification directly
This repository contains the source files for Finix documentation:
- Guides: Markdown files explaining Finix concepts and integration patterns
- API Reference: OpenAPI specification (YAML) for the Finix API
- Assets: Images, diagrams, and static files
Changes merged to main are automatically deployed to docs.finix.com.
| Directory | Purpose |
|---|---|
guides/ | Documentation guides organized by topic (online payments, payouts, etc.) |
api/ | OpenAPI specification and API reference content |
additional-resources/ | Supplementary guides (developers, plugins) |
@theme/ | Custom React components, markdoc tags, and CSS styling |
images/ | Diagrams, screenshots, icons, and hero images |
_partials/ | Reusable content snippets |
static/ | Static assets (PDFs, etc.) |
| File | Purpose |
|---|---|
redocly.yaml | Redocly configuration (navbar, footer, SEO, llmstxt) |
sidebars.yaml | Sidebar navigation structure |
redirects.yaml | URL redirects for moved/renamed pages |
package.json | npm dependencies and scripts |
Located in guides/:
getting-started/- Initial setup and quickstart guidesonline-payments/- Online payment integrationin-person-payments/- Terminal and card-present paymentssubscriptions/- Recurring billing and subscriptionspayouts/- Sending money to recipientsafter-the-payment/- Refunds, disputes, settlementsplatform-payments/- Marketplace/platform integrationmanaging-operations/- Dashboard, reporting, operationsindustry-considerations/- Industry-specific guidanceregional-considerations/- Region-specific requirements
Located in api/:
index.yaml- Main OpenAPI specification (modular, with $ref)index.md- API overview markdowncomponents/- Reusable OpenAPI componentsschemas/- Data models (resources, requests, properties)examples/- Request/response examples (YAML and JSON)requestBodies/- Reusable request body definitionsresponses/- Reusable response definitions
requests/- Sample API request files
- Redocly Reunite - Documentation platform (migrated from Legacy Portal)
- Markdown + Markdoc - Content authoring with custom tags
- OpenAPI 3.x - API specification format
- React/TypeScript - Custom components in
@theme/ - npm - Package management
- Node.js and npm
# Clone the repository
git clone https://github.com/finix-payments/finix-docs-redocly.git
cd finix-docs-redocly
# Install dependencies
npm install
# Start development server
npm start# Bundle OpenAPI spec into single file
redocly bundle api/index.yaml -o api/bundled.yaml
# Validate the bundled spec
npm run validate
# Check for schema duplication
npm run yq:dupes:mac # or yq:dupes:win
# Generate JSON examples from YAML
node ./scripts/convertYamlExamplesToJson.js payment_instruments- Use Markdoc tags (
{% tabs %},{% admonition %},{% table %}, etc.) - Add horizontal rules (
---) before H2 sections - Use sequential header levels (H1 → H2 → H3)
- Reference API fields with inline code (
`field_name`)
- Set language and title:
```json {% title="Sample Response" %} - Use 4-space indentation
- Highlight important lines with
// [!code highlight]
- Use
index.mdfor folder root pages - Use absolute paths for images and links
- Organize images into appropriate subfolders (
diagrams/,screenshots/, etc.) - Sort sidebar items by type and alphabetically
- Set
seo.titleandseo.descriptionin frontmatter for each page
The redocly.yaml includes an llmstxt configuration that defines which content sections are exposed to the Redocly MCP server at https://docs.finix.com/mcp:
seo:
llmstxt:
hide: false
sections:
- title: Getting Started
includeFiles:
- guides/getting-started/**/*.md
# ... more sectionsThis is how the published documentation becomes queryable via the MCP server.
- Create or edit
.mdfiles in the appropriateguides/subdirectory - Update
sidebars.yamlto include new pages - Follow the styling guidelines
- Preview locally with
npm start
- Edit files in
api/components/schemas/,api/requests/, etc. - The modular spec uses
$refreferences resolved at build time - Run
npm run validateto check for errors
- Place in appropriate
images/subfolder - Reference with absolute paths:
/images/screenshots/my-image.png
- Create a feature branch
- Make changes and preview locally
- Open PR against
main - Docs deploy automatically on merge
- This is a documentation source repo - changes here affect the published docs at docs.finix.com
- Use the Redocly MCP server for querying published documentation programmatically
- Follow existing patterns - check similar pages before creating new content
- Validate OpenAPI changes - run
npm run validatebefore committing API spec changes - Avoid custom styling - use Redocly's built-in CSS variables when possible
- Published Docs: https://docs.finix.com
- Redocly MCP Server:
claude mcp add finix-redocly-mcp https://docs.finix.com/mcp --transport http - Redocly Documentation: https://redocly.com/docs/realm
- Markdoc Tag Library: https://redocly.com/learn/markdoc/tags/tag-library