> For the complete documentation index, see [llms.txt](https://docs.zellify.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.zellify.app/platform-introduction/integrations/solidgate.md).

# Solidgate

Accept payments and subscriptions directly in your funnels using Solidgate.

The Solidgate integration allows you to accept one-time payments and recurring subscriptions directly inside your funnels. Checkout is embedded in the funnel experience, so users never leave your flow.

With Solidgate connected, Zellify automatically:

* Supports one-time payments and recurring subscriptions
* Handles free trials
* Creates products and prices on your Solidgate account
* Attaches structured metadata for attribution and traceability
* Registers webhooks automatically
* Syncs payment data across other integrations

If Solidgate is your payment processor, this integration keeps payments, attribution, and subscription data aligned.

***

#### Enabling the Integration

To connect Solidgate:

Dashboard → Settings → Payments\
<https://dash.zellify.app/settings?tab=payments>

1. Click **Connect** next to Solidgate (Live or Sandbox)
2. Enter your **Public Key** and **Secret Key** (API credentials)
3. Enter your **Webhook Public Key** and **Webhook Secret Key**
4. Click **Connect**

Your Solidgate account is now connected.

When connected, Zellify automatically registers a webhook endpoint on your Solidgate account. No manual webhook configuration is required.

You can connect Live and Sandbox accounts independently.

To disconnect, click **Disconnect** next to the connected account.

***

#### Generating Your Solidgate API Credentials

Solidgate uses two separate key pairs — one for API calls and one for webhook verification. You will need all four values to connect.

To generate them:

1. Go to your **Solidgate HUB**
2. Navigate to **Developers → API keys** and generate a **Public Key** and **Secret Key**
3. Navigate to **Developers → Webhooks** and generate a **Webhook Public Key** (starts with `wh_pk_`) and **Webhook Secret Key**
4. Paste all four keys into Zellify

***

### How Checkout Works

Zellify uses Solidgate's embedded payment form.

When a user selects a plan and proceeds to payment:

* A payment intent is created on your Solidgate account with attribution metadata
* The Solidgate payment form is displayed directly inside the funnel
* The customer is identified on Solidgate using their email and a stable account ID
* After successful payment, the user advances to the next funnel step

**Checkout Display Modes**

You can choose between:

* **Popup** — The payment form appears in a modal dialog
* **Inline** — The payment form is rendered directly within the funnel page

***

### Customer Identity

Zellify identifies customers on Solidgate using two fields attached to every payment intent:

* **customer\_email** — The user's email address
* **customer\_account\_id** — A stable identifier used to link the Solidgate customer to a Zellify customer record

This allows Solidgate to associate repeat payments and subscriptions with the same user across your funnels, and lets Zellify reconcile Solidgate records with its own customer data.

***

### Metadata

Zellify attaches structured metadata to Solidgate orders and subscriptions so every payment can be traced back to the originating user, funnel, and campaign.

The following metadata fields are attached:

* **app\_user\_id** — Identifier used to associate the Solidgate customer with a Zellify customer record
* **organization\_id** — ID of the Zellify organization
* **funnel\_id** — ID of the funnel where the purchase occurred
* **campaign\_id** — ID of the campaign that drove the user
* **experiment\_id** — ID of the experiment (only included if the campaign targets an experiment)
* **fbp** — Facebook browser identifier
* **fbc** — Facebook click identifier (only included if the user comes from a Meta ad)

**Where Metadata Is Set**

These metadata fields are attached to:

* **Solidgate order metadata**
* **Solidgate subscription metadata**

This allows your team to:

* Attribute revenue to specific funnels and campaigns
* Analyze experiment performance
* Reconcile Meta ad conversions with Solidgate revenue
* Match Solidgate records with Zellify data

***

### Payment Types

Zellify supports two payment types.

#### One-Time Payments

* A single order is created via the Solidgate payment form
* The charge is processed immediately

#### Recurring Subscriptions

* A subscription is created via the Solidgate payment form
* The subscription is linked to the customer account ID
* Metadata is attached to the subscription

***

### Free Trials

If a product includes a trial period:

* The subscription is created in trialing status
* No charge is made until the trial ends
* The payment method is collected upfront via a zero-amount authorization

Trial lengths can be configured in days, weeks, months, or years.

***

### Webhook Syncing

When you connect Solidgate, Zellify automatically registers a webhook endpoint on your Solidgate account. No manual configuration is required.

Zellify listens to the following events:

* card\_gate.order.updated
* subscription.updated.v2

These events are used to:

* Track revenue across funnels and campaigns
* Monitor subscription lifecycle events
* Sync payment data across integrations

This ensures all systems remain aligned with real payment activity.

***

### Products & Pricing

Products and prices are created directly on your Solidgate account through the Zellify dashboard.

Each product includes:

* Name
* Currency
* Price
* Payment type (one-time or recurring)
* Billing interval (for subscriptions)
* Optional trial configuration

Products created in Zellify are standard Solidgate Products and Prices and are fully visible and manageable inside your Solidgate HUB.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.zellify.app/platform-introduction/integrations/solidgate.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
