diff --git a/.env.example b/.env.example
new file mode 100644
index 00000000..c4756bae
--- /dev/null
+++ b/.env.example
@@ -0,0 +1,8 @@
+# Grid Docs Environment Variables
+# Copy this file to .env and fill in the values
+# DO NOT commit .env to the repository
+
+# Central Icons React Library License
+# Get your license key from https://www.npmjs.com/package/@central-icons-react/all
+# Required for npm run build:icons
+CENTRAL_LICENSE_KEY=your-license-key-here
diff --git a/.gitignore b/.gitignore
index 777b53b5..23810883 100644
--- a/.gitignore
+++ b/.gitignore
@@ -39,3 +39,12 @@ cli/dist/
# Figma design tokens (local reference only)
mintlify/tokens/
+# Development reference files
+refs/
+figma-*.md
+
+# Cursor IDE rules (personal config)
+.cursor/rules/
+
+# Personal todo files
+TODO-*.md
diff --git a/CLAUDE.md b/CLAUDE.md
index 78285835..50456e43 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -155,6 +155,46 @@ Webhooks use **P-256 ECDSA signatures** in the `X-Grid-Signature` header for ver
- Use relative paths for internal links
- The mintlify subdirectory has its own CLAUDE.md with additional guidance
+### Mintlify CLI Version (Important)
+
+**Use Mintlify CLI version 4.2.284** for local development. Newer versions (e.g., 4.2.312) have a bug where the API reference pages render blank when using the palm theme with OpenAPI auto-generation.
+
+**Requires Node.js LTS (v20 or v22)** - Mintlify does not support Node 25+. If you have a newer Node version installed, use Node 22 LTS:
+
+```bash
+# Install Node 22 via Homebrew (if needed)
+brew install node@22
+
+# Run mint dev with Node 22
+export PATH="/opt/homebrew/opt/node@22/bin:$PATH"
+cd mintlify && mint dev
+
+# Or add to ~/.zshrc to make permanent:
+# export PATH="/opt/homebrew/opt/node@22/bin:$PATH"
+```
+
+```bash
+# Check current version
+mintlify --version
+
+# If needed, install the working version
+npm install -g mintlify@4.2.284 --force
+```
+
+### Troubleshooting: API Reference Not Showing
+
+If the API reference pages appear blank (only showing title and navigation, no endpoint details):
+
+1. **Restart the dev server** - hot reload sometimes fails:
+ ```bash
+ pkill -f "mint.*dev"
+ cd mintlify && mint dev
+ ```
+
+2. **Check CLI version** - ensure you're on 4.2.284 (see above)
+
+3. **Verify OpenAPI spec** - run `mint openapi-check openapi.yaml` in the mintlify folder
+
### Documentation Philosophy
- **Document just enough** for user success - balance between too much and too little
@@ -163,6 +203,30 @@ Webhooks use **P-256 ECDSA signatures** in the `X-Grid-Signature` header for ver
- **Check existing patterns** for consistency before making changes
- **Search before adding** - look for existing information before creating new content
+### CSS Styling Tips (Mintlify Overrides)
+
+When overriding Mintlify's default styles in `mintlify/styles/base.css`:
+
+- **Tailwind utility classes are hard to override directly** - Classes like `mb-3.5` have high specificity. Even with `!important` and complex selectors, they often won't budge.
+
+- **Workaround: Use negative margins on sibling elements** - Instead of reducing `margin-bottom` on an element, add negative `margin-top` to the following sibling. This achieves the same visual effect.
+
+- **Test selectors with visible properties first** - If a style isn't applying, add `border: 2px solid red !important;` to confirm the selector is matching. If the border shows, the selector works but something else is overriding your property.
+
+- **HeadlessUI portal elements** - Mobile nav and modals render inside `#headlessui-portal-root`. Use this in selectors for higher specificity: `#headlessui-portal-root #mobile-nav ...`
+
+- **Mobile nav lives in `#mobile-nav`** - Target mobile-specific styles with `#mobile-nav` or `div#mobile-nav` selectors to avoid affecting desktop sidebar.
+
+- **Negative margins for edge-to-edge layouts** - To break out of parent padding (e.g., make nav items edge-to-edge), use negative margins equal to the parent's padding, then add your own padding inside.
+
+### MDX Component Limitations
+
+- **`React.useEffect` breaks the MDX parser** - Mintlify uses acorn to parse MDX, and it chokes on `useEffect`. Avoid using hooks that require cleanup or side effects.
+
+- **`React.useState` works fine** - Simple state management is supported.
+
+- **Keep components simple** - If you need complex interactivity, consider using CSS-only solutions or restructuring to avoid problematic hooks.
+
## Environments
- **Production**: `https://api.lightspark.com/grid/2025-10-13`
diff --git a/mintlify/api-reference/authentication.mdx b/mintlify/api-reference/authentication.mdx
index 5d016130..1e277470 100644
--- a/mintlify/api-reference/authentication.mdx
+++ b/mintlify/api-reference/authentication.mdx
@@ -1,5 +1,7 @@
---
title: "Authentication"
+icon: "/images/icons/key2.svg"
+"og:image": "/images/og/og-api-reference.png"
---
import { topLevelProductName } from '/snippets/variables.mdx'
diff --git a/mintlify/api-reference/environments.mdx b/mintlify/api-reference/environments.mdx
index c522eaf6..dcf736f6 100644
--- a/mintlify/api-reference/environments.mdx
+++ b/mintlify/api-reference/environments.mdx
@@ -1,5 +1,7 @@
---
title: 'Environments'
+icon: "/images/icons/globe.svg"
+"og:image": "/images/og/og-api-reference.png"
---
import { topLevelProductName } from '/snippets/variables.mdx'
diff --git a/mintlify/api-reference/terminology.mdx b/mintlify/api-reference/terminology.mdx
index d90a2a1d..3899d2cd 100644
--- a/mintlify/api-reference/terminology.mdx
+++ b/mintlify/api-reference/terminology.mdx
@@ -1,6 +1,8 @@
---
title: "Core Concepts"
description: "Core concepts and terminology for the Grid API"
+icon: "/images/icons/file-text.svg"
+"og:image": "/images/og/og-api-reference.png"
---
import Terminology from '/snippets/terminology.mdx';
diff --git a/mintlify/developer-resources/samples.mdx b/mintlify/developer-resources/samples.mdx
index 2ee813ad..ef0ad327 100644
--- a/mintlify/developer-resources/samples.mdx
+++ b/mintlify/developer-resources/samples.mdx
@@ -1,12 +1,13 @@
---
title: "Samples"
+icon: "/images/icons/github.svg"
---
Explore end-to-end sample apps and snippets in our public repository.
-
+
Browse runnable examples for quickstarts and integrations.
diff --git a/mintlify/docs.json b/mintlify/docs.json
index 78476a62..962b0b2f 100644
--- a/mintlify/docs.json
+++ b/mintlify/docs.json
@@ -1,6 +1,6 @@
{
"$schema": "https://mintlify.com/docs.json",
- "theme": "mint",
+ "theme": "palm",
"name": "Grid API Documentation",
"description": "The Grid API enables modern financial institutions to easily send and receive global payments. The following documentation helps developers understand the Grid API and how to integrate with it.",
"colors": {
@@ -17,53 +17,57 @@
"fonts": {
"heading": {
"family": "Suisse Intl",
- "source": "/fonts/suisse-intl/SuisseIntl-Medium.woff2",
- "format": "woff2",
"weight": 500
},
"body": {
"family": "Suisse Intl",
- "source": "/fonts/suisse-intl/SuisseIntl-Regular.woff2",
- "format": "woff2",
"weight": 400
}
},
- "favicon": "/favicon.svg",
+ "favicon": {
+ "light": "/favicon-dark.svg",
+ "dark": "/favicon-light.svg"
+ },
"navigation": {
"tabs": [
{
- "tab": "Home",
- "pages": ["index"]
- },
- {
- "tab": "Platform Overview",
- "pages": [
+ "tab": "Get started",
+ "groups": [
{
- "group": "Introduction",
+ "group": "Overview",
"pages": [
+ "index",
"platform-overview/introduction/what-is-grid",
+ "platform-overview/capabilities",
+ "platform-overview/use-cases",
"platform-overview/introduction/faq"
]
},
{
- "group": "Core Concepts",
+ "group": "Core concepts",
"pages": [
"platform-overview/core-concepts/entities",
"platform-overview/core-concepts/quote-system",
"platform-overview/core-concepts/account-model",
"platform-overview/core-concepts/transaction-lifecycle",
- "platform-overview/core-concepts/currencies-and-rails"
+ "platform-overview/core-concepts/currencies-and-rails",
+ "platform-overview/configuration"
]
}
]
},
{
"tab": "Payouts & B2B",
- "pages": [
- "payouts-and-b2b/index",
- "payouts-and-b2b/terminology",
- "payouts-and-b2b/onboarding/implementation-overview",
- "payouts-and-b2b/quickstart",
+ "groups": [
+ {
+ "group": "Overview",
+ "pages": [
+ "payouts-and-b2b/index",
+ "payouts-and-b2b/terminology",
+ "payouts-and-b2b/onboarding/implementation-overview",
+ "payouts-and-b2b/quickstart"
+ ]
+ },
{
"group": "Onboarding",
"pages": [
@@ -101,11 +105,16 @@
},
{
"tab": "Ramps",
- "pages": [
- "ramps/index",
- "ramps/terminology",
- "ramps/onboarding/implementation-overview",
- "ramps/quickstart",
+ "groups": [
+ {
+ "group": "Overview",
+ "pages": [
+ "ramps/index",
+ "ramps/terminology",
+ "ramps/onboarding/implementation-overview",
+ "ramps/quickstart"
+ ]
+ },
{
"group": "Onboarding",
"pages": [
@@ -141,11 +150,16 @@
},
{
"tab": "Rewards",
- "pages": [
- "rewards/index",
- "rewards/terminology",
- "rewards/developer-guides/implementation-overview",
- "rewards/quickstart",
+ "groups": [
+ {
+ "group": "Overview",
+ "pages": [
+ "rewards/index",
+ "rewards/terminology",
+ "rewards/developer-guides/implementation-overview",
+ "rewards/quickstart"
+ ]
+ },
{
"group": "Onboarding",
"pages": [
@@ -179,11 +193,16 @@
},
{
"tab": "Global P2P",
- "pages": [
- "global-p2p/index",
- "global-p2p/terminology",
- "global-p2p/getting-started/implementation-overview",
- "global-p2p/quickstart",
+ "groups": [
+ {
+ "group": "Overview",
+ "pages": [
+ "global-p2p/index",
+ "global-p2p/terminology",
+ "global-p2p/getting-started/implementation-overview",
+ "global-p2p/quickstart"
+ ]
+ },
{
"group": "Onboarding",
"pages": [
@@ -247,28 +266,33 @@
"navbar": {
"links": [
{
- "label": "Github",
+ "label": "GitHub",
"href": "https://github.com/lightsparkdev/grid-api",
"icon": "github"
+ },
+ {
+ "label": "Contact sales",
+ "href": "https://www.lightspark.com/contact"
}
- ],
- "primary": {
- "type": "button",
- "label": "Contact Sales",
- "href": "https://lightspark.com/grid#signup"
- }
+ ]
+ },
+ "modeToggle": {
+ "default": "light",
+ "isHidden": false
},
"contextual": {
"options": ["copy", "view", "chatgpt", "claude"]
},
- "footer": {
- "socials": {
- "x": "https://x.com/lightspark",
- "github": "https://github.com/lightsparkdev",
- "linkedin": "https://linkedin.com/company/lightspark-group"
+ "seo": {
+ "metatags": {
+ "og:image": "/images/og/og-fallback-bg.png",
+ "og:image:width": "1200",
+ "og:image:height": "630"
}
},
+ "footer": {},
"head": {
+ "raw": "",
"links": [
{
"rel": "preload",
diff --git a/mintlify/favicon-dark.svg b/mintlify/favicon-dark.svg
new file mode 100644
index 00000000..465fd5fd
--- /dev/null
+++ b/mintlify/favicon-dark.svg
@@ -0,0 +1,4 @@
+
diff --git a/mintlify/favicon-light.svg b/mintlify/favicon-light.svg
new file mode 100644
index 00000000..e33e1842
--- /dev/null
+++ b/mintlify/favicon-light.svg
@@ -0,0 +1,4 @@
+
diff --git a/mintlify/favicon.svg b/mintlify/favicon.svg
deleted file mode 100644
index 70b3d0e6..00000000
--- a/mintlify/favicon.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
\ No newline at end of file
diff --git a/mintlify/global-p2p/country-support.mdx b/mintlify/global-p2p/country-support.mdx
index 4fd63540..ab5572d9 100644
--- a/mintlify/global-p2p/country-support.mdx
+++ b/mintlify/global-p2p/country-support.mdx
@@ -1,6 +1,7 @@
---
title: "Supported Countries"
description: "Grid availability and payment support"
+icon: "/images/icons/globe.svg"
---
import CountrySupport from '/snippets/country-support.mdx';
diff --git a/mintlify/global-p2p/getting-started/implementation-overview.mdx b/mintlify/global-p2p/getting-started/implementation-overview.mdx
index 67b507b5..03d05928 100644
--- a/mintlify/global-p2p/getting-started/implementation-overview.mdx
+++ b/mintlify/global-p2p/getting-started/implementation-overview.mdx
@@ -1,6 +1,8 @@
---
title: "Implementation Overview"
description: "High-level implementation plan for configuring, onboarding, funding, and moving money"
+icon: "/images/icons/code.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
This page gives you a 10,000‑ft view of an end‑to‑end implementation. It is intentionally generalized because the flow supports multiple customer types and external account types (e.g., CLABE, IBAN, US accounts, UPI). The detailed guides that follow provide concrete fields, edge cases, and step‑by‑step instructions.
diff --git a/mintlify/global-p2p/getting-started/platform-configuration.mdx b/mintlify/global-p2p/getting-started/platform-configuration.mdx
index 8e44ad25..f79ac55c 100644
--- a/mintlify/global-p2p/getting-started/platform-configuration.mdx
+++ b/mintlify/global-p2p/getting-started/platform-configuration.mdx
@@ -1,6 +1,8 @@
---
title: "Platform Configuration"
description: "Configuring credentials, webhooks and currencies for your platform global P2P payments"
+icon: "/images/icons/settings-gear2.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
import PlatformConfigAPI from '/snippets/platform-config-currency-api-webhooks.mdx';
import { topLevelProductName } from '/snippets/variables.mdx';
diff --git a/mintlify/global-p2p/index.mdx b/mintlify/global-p2p/index.mdx
index 80370153..5afc23c1 100644
--- a/mintlify/global-p2p/index.mdx
+++ b/mintlify/global-p2p/index.mdx
@@ -1,23 +1,33 @@
---
-title: "Introduction"
-description: "Overview of Global P2P: capabilities, flows"
+title: "Global P2P"
+sidebarTitle: "Introduction"
+icon: "/images/icons/at.svg"
+mode: "wide"
+"og:image": "/images/og/og-global-p2p.png"
---
import { remittanceProductName, topLevelProductName } from '/snippets/variables.mdx';
import PaymentFlow from '/snippets/payment-flow.mdx';
+import { FeatureCard, FeatureCardGrid } from '/snippets/feature-card.mdx';
+
+
With {remittanceProductName}, you can send and receive low cost real-time payments to bank accounts and UMA addresses worldwide through a single, simple API. {topLevelProductName} automatically routes each payment across its network of Grid switches, handling FX, blockchain settlement, and instant banking off-ramps for you.
-
-
- {remittanceProductName} interacts with the Money Grid to route your payments globally.
-
-
+
+
+ {remittanceProductName} interacts with the Money Grid to route your payments globally.
+
+
Leverages local instant banking rails and global low latency crypto rails to settle payments in real-time.
-
-
+
+
Leverages local instant banking rails and global low latency crypto rails to settle payments in real-time.
-
-
+
+
For background on the UMA protocol itself, see the UMA Standard documentation: [UMA Standard—Introduction](https://docs.uma.me/uma-standard/introduction).
diff --git a/mintlify/global-p2p/managing-accounts/external-accounts.mdx b/mintlify/global-p2p/managing-accounts/external-accounts.mdx
index 9577affa..5559a27e 100644
--- a/mintlify/global-p2p/managing-accounts/external-accounts.mdx
+++ b/mintlify/global-p2p/managing-accounts/external-accounts.mdx
@@ -1,6 +1,8 @@
---
title: "External Accounts"
description: "Register and manage beneficiary bank accounts"
+icon: "/images/icons/bank.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
import ExternalAccounts from '/snippets/external-accounts.mdx';
diff --git a/mintlify/global-p2p/managing-accounts/internal-accounts.mdx b/mintlify/global-p2p/managing-accounts/internal-accounts.mdx
index b787d2e8..77bdd790 100644
--- a/mintlify/global-p2p/managing-accounts/internal-accounts.mdx
+++ b/mintlify/global-p2p/managing-accounts/internal-accounts.mdx
@@ -1,6 +1,8 @@
---
title: "Internal Accounts"
description: "Create and manage internal accounts"
+icon: "/images/icons/wallet1.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
import InternalAccounts from '/snippets/internal-accounts.mdx';
diff --git a/mintlify/global-p2p/managing-accounts/plaid.mdx b/mintlify/global-p2p/managing-accounts/plaid.mdx
index 29cc23e5..9adb151f 100644
--- a/mintlify/global-p2p/managing-accounts/plaid.mdx
+++ b/mintlify/global-p2p/managing-accounts/plaid.mdx
@@ -1,6 +1,8 @@
---
title: "External Accounts with Plaid"
description: "Simplify bank account linking with Plaid"
+icon: "/images/icons/IconPlaid.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
import PlaidIntegration from '/snippets/plaid-integration.mdx';
diff --git a/mintlify/global-p2p/onboarding-customers/configuring-customers.mdx b/mintlify/global-p2p/onboarding-customers/configuring-customers.mdx
index e6805e3b..23907144 100644
--- a/mintlify/global-p2p/onboarding-customers/configuring-customers.mdx
+++ b/mintlify/global-p2p/onboarding-customers/configuring-customers.mdx
@@ -1,6 +1,8 @@
---
title: "Configuring Customers"
description: "Creating and managing customers for global P2P payments"
+icon: "/images/icons/people.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
import KycWebhooks from '/snippets/kyc/kyc-webhooks.mdx'
import CustomerTypes from '/snippets/creating-customers/customer-types.mdx'
diff --git a/mintlify/global-p2p/onboarding-customers/invitations.mdx b/mintlify/global-p2p/onboarding-customers/invitations.mdx
index afb154ee..56fcae13 100644
--- a/mintlify/global-p2p/onboarding-customers/invitations.mdx
+++ b/mintlify/global-p2p/onboarding-customers/invitations.mdx
@@ -1,5 +1,7 @@
---
title: "Invitations"
+icon: "/images/icons/people-add.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
The Grid API provides an invitation system that allows platform customers to invite others to create accounts and receive payments. This guide explains how to use the invitation system effectively.
diff --git a/mintlify/global-p2p/platform-tools/postman-collection.mdx b/mintlify/global-p2p/platform-tools/postman-collection.mdx
index cfaee6ea..5ec2d975 100644
--- a/mintlify/global-p2p/platform-tools/postman-collection.mdx
+++ b/mintlify/global-p2p/platform-tools/postman-collection.mdx
@@ -1,5 +1,7 @@
---
title: "Postman Collection"
+icon: "/images/icons/IconPostman.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
import PostmanCollection from '/snippets/postman-collection.mdx';
diff --git a/mintlify/global-p2p/platform-tools/sandbox-testing.mdx b/mintlify/global-p2p/platform-tools/sandbox-testing.mdx
index ec4fe573..20c21028 100644
--- a/mintlify/global-p2p/platform-tools/sandbox-testing.mdx
+++ b/mintlify/global-p2p/platform-tools/sandbox-testing.mdx
@@ -1,5 +1,7 @@
---
title: "Sandbox Testing"
+icon: "/images/icons/hammer.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
The Grid sandbox environment allows you to test your integration without making real payments. When you set up your account, you can configure production and sandbox API tokens. The sandbox token is specifically for testing and development purposes.
It corresponds to a separate platform instance in "sandbox" mode, which can only transact with the sandbox UMA addresses for testing.
diff --git a/mintlify/global-p2p/platform-tools/uma-test-wallet.mdx b/mintlify/global-p2p/platform-tools/uma-test-wallet.mdx
index d97b79b6..94b4637a 100644
--- a/mintlify/global-p2p/platform-tools/uma-test-wallet.mdx
+++ b/mintlify/global-p2p/platform-tools/uma-test-wallet.mdx
@@ -1,6 +1,8 @@
---
title: "UMA Test Wallet"
description: "Test UMA payment flows with a real counterparty"
+icon: "/images/icons/wallet1.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
Grid provides a UMA Test Wallet to help you test UMA payment flows with a real counterparty.
diff --git a/mintlify/global-p2p/platform-tools/webhooks.mdx b/mintlify/global-p2p/platform-tools/webhooks.mdx
index 5ed3d984..e1531034 100644
--- a/mintlify/global-p2p/platform-tools/webhooks.mdx
+++ b/mintlify/global-p2p/platform-tools/webhooks.mdx
@@ -1,6 +1,8 @@
---
title: "Webhooks"
description: "Security best practices for webhook verification"
+icon: "/images/icons/bell.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
import Webhooks from '/snippets/webhooks.mdx';
diff --git a/mintlify/global-p2p/quickstart.mdx b/mintlify/global-p2p/quickstart.mdx
index 5c5483dc..e149a271 100644
--- a/mintlify/global-p2p/quickstart.mdx
+++ b/mintlify/global-p2p/quickstart.mdx
@@ -1,9 +1,22 @@
---
title: "Quickstart"
description: "Send your first cross-border payment"
+icon: "/images/icons/rocket.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
import { remittanceProductName } from '/snippets/variables.mdx'
+
+
+
With Global P2P you can send and receive payments in any supported fiat or crypto currency. This quickstart guides you through a regulated FI sending an individual customer payment from the US to a bank account in Mexico using USDC just-in-time funding. For examples funding with real time fiat rails, see the [Sending Payments](/global-p2p/sending-receiving-payments/sending-payments) guide.
## Understanding Entity Mapping for Remittances
diff --git a/mintlify/global-p2p/sending-receiving-payments/depositing-funds.mdx b/mintlify/global-p2p/sending-receiving-payments/depositing-funds.mdx
index 6bc5b142..e76528d1 100644
--- a/mintlify/global-p2p/sending-receiving-payments/depositing-funds.mdx
+++ b/mintlify/global-p2p/sending-receiving-payments/depositing-funds.mdx
@@ -1,6 +1,8 @@
---
title: "Depositing Funds"
description: "Depositing funds into internal accounts"
+icon: "/images/icons/arrow-inbox.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
import DepositingFunds from '/snippets/depositing-funds.mdx';
diff --git a/mintlify/global-p2p/sending-receiving-payments/error-handling.mdx b/mintlify/global-p2p/sending-receiving-payments/error-handling.mdx
index 64b39856..52f153c7 100644
--- a/mintlify/global-p2p/sending-receiving-payments/error-handling.mdx
+++ b/mintlify/global-p2p/sending-receiving-payments/error-handling.mdx
@@ -1,6 +1,8 @@
---
title: "Error Handling"
description: "Handle payment failures, API errors, and transaction issues in Global P2P"
+icon: "/images/icons/shield.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
import ErrorHandling from '/snippets/error-handling.mdx'
diff --git a/mintlify/global-p2p/sending-receiving-payments/receiving-payments.mdx b/mintlify/global-p2p/sending-receiving-payments/receiving-payments.mdx
index 636ed38c..cad485d5 100644
--- a/mintlify/global-p2p/sending-receiving-payments/receiving-payments.mdx
+++ b/mintlify/global-p2p/sending-receiving-payments/receiving-payments.mdx
@@ -1,6 +1,8 @@
---
title: "Receiving Payments"
description: "Receiving payments from UMA addresses"
+icon: "/images/icons/arrow-inbox.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
This guide explains how to enable your customers to receive UMA payments. When an external sender initiates a payment to your customer's UMA address, the Grid API requests the counterparty fields you defined in your platform configuration. You can review the counterparty and transaction details for risk before approving the payment.
diff --git a/mintlify/global-p2p/sending-receiving-payments/reconciliation.mdx b/mintlify/global-p2p/sending-receiving-payments/reconciliation.mdx
index 2ce924bb..c74421c7 100644
--- a/mintlify/global-p2p/sending-receiving-payments/reconciliation.mdx
+++ b/mintlify/global-p2p/sending-receiving-payments/reconciliation.mdx
@@ -1,6 +1,8 @@
---
title: "Reconciliation"
description: "Reconciliation of payments"
+icon: "/images/icons/checkmark1.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
import Reconciliation from '/snippets/reconciliation/reconciliation.mdx'
diff --git a/mintlify/global-p2p/sending-receiving-payments/sending-payments.mdx b/mintlify/global-p2p/sending-receiving-payments/sending-payments.mdx
index 3bde186d..4a47a30c 100644
--- a/mintlify/global-p2p/sending-receiving-payments/sending-payments.mdx
+++ b/mintlify/global-p2p/sending-receiving-payments/sending-payments.mdx
@@ -1,5 +1,7 @@
---
title: "Sending Payments"
+icon: "/images/icons/paper-plane-top-right.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
This guide covers three methods to send payments:
diff --git a/mintlify/global-p2p/terminology.mdx b/mintlify/global-p2p/terminology.mdx
index 8e1a67ab..165ea044 100644
--- a/mintlify/global-p2p/terminology.mdx
+++ b/mintlify/global-p2p/terminology.mdx
@@ -1,6 +1,8 @@
---
title: "Core Concepts"
description: "Core concepts and terminology for the Grid API"
+icon: "/images/icons/file-text.svg"
+"og:image": "/images/og/og-global-p2p.png"
---
import Terminology from '/snippets/terminology.mdx';
diff --git a/mintlify/homepage.js b/mintlify/homepage.js
new file mode 100644
index 00000000..57146a78
--- /dev/null
+++ b/mintlify/homepage.js
@@ -0,0 +1,29 @@
+// Add 'is-homepage' class to body when on the homepage
+// This allows us to target homepage-specific CSS
+
+(function() {
+ function checkHomepage() {
+ const path = window.location.pathname;
+ const isHomepage = path === '/' || path === '/index' || path === '';
+
+ if (isHomepage) {
+ document.body.classList.add('is-homepage');
+ } else {
+ document.body.classList.remove('is-homepage');
+ }
+ }
+
+ // Run on initial load
+ if (document.readyState === 'loading') {
+ document.addEventListener('DOMContentLoaded', checkHomepage);
+ } else {
+ checkHomepage();
+ }
+
+ // Also run on navigation (for SPA-style navigation)
+ window.addEventListener('popstate', checkHomepage);
+
+ // Observe URL changes for client-side routing
+ const observer = new MutationObserver(checkHomepage);
+ observer.observe(document.body, { childList: true, subtree: true });
+})();
diff --git a/mintlify/images/entities-dark.svg b/mintlify/images/entities-dark.svg
new file mode 100644
index 00000000..61922400
--- /dev/null
+++ b/mintlify/images/entities-dark.svg
@@ -0,0 +1,207 @@
+
diff --git a/mintlify/images/entities-light.svg b/mintlify/images/entities-light.svg
new file mode 100644
index 00000000..802bf98d
--- /dev/null
+++ b/mintlify/images/entities-light.svg
@@ -0,0 +1,404 @@
+
diff --git a/mintlify/images/heroes/hero-capabilities-dark.svg b/mintlify/images/heroes/hero-capabilities-dark.svg
new file mode 100644
index 00000000..1ba98d9f
--- /dev/null
+++ b/mintlify/images/heroes/hero-capabilities-dark.svg
@@ -0,0 +1,90 @@
+
diff --git a/mintlify/images/heroes/hero-capabilities-light.svg b/mintlify/images/heroes/hero-capabilities-light.svg
new file mode 100644
index 00000000..fc4605ca
--- /dev/null
+++ b/mintlify/images/heroes/hero-capabilities-light.svg
@@ -0,0 +1,90 @@
+
diff --git a/mintlify/images/heroes/hero-globalp2p.jpg b/mintlify/images/heroes/hero-globalp2p.jpg
new file mode 100644
index 00000000..10932913
Binary files /dev/null and b/mintlify/images/heroes/hero-globalp2p.jpg differ
diff --git a/mintlify/images/heroes/hero-payouts.jpg b/mintlify/images/heroes/hero-payouts.jpg
new file mode 100644
index 00000000..b73e9014
Binary files /dev/null and b/mintlify/images/heroes/hero-payouts.jpg differ
diff --git a/mintlify/images/heroes/hero-quickstart-globalp2p-dark.svg b/mintlify/images/heroes/hero-quickstart-globalp2p-dark.svg
new file mode 100644
index 00000000..4df984de
--- /dev/null
+++ b/mintlify/images/heroes/hero-quickstart-globalp2p-dark.svg
@@ -0,0 +1,123 @@
+