# Paystack — Pipedream Connect

> Paystack is a Nigerian financial technology company that offers payment processing services to businesses.

- API slug: `paystack` (use in MCP headers and tool keys)
- Auth: API key (Pipedream-managed)
- Categories: Commerce
- Website: https://paystack.com/
- This page (HTML): https://pipedream.com/apps/paystack
- Tools: 31 actions · 0 triggers

## Connect via MCP (recommended)

- Endpoint: `https://remote.mcp.pipedream.net/v3`
- Headers: `Authorization: Bearer <token>` · `x-pd-project-id` · `x-pd-environment` · `x-pd-external-user-id` · `x-pd-app-slug: paystack`

```ts
import { Client } from "@modelcontextprotocol/sdk/client/index.js"
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const accessToken = await pd.rawAccessToken

const transport = new StreamableHTTPClientTransport(
  new URL("https://remote.mcp.pipedream.net/v3"),
  {
    requestInit: {
      headers: {
        Authorization: `Bearer ${accessToken}`,
        "x-pd-project-id": process.env.PIPEDREAM_PROJECT_ID!,
        "x-pd-environment": "production",
        "x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
        "x-pd-app-slug": "paystack",
      },
    },
  },
)

const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)

const { tools } = await mcp.listTools()

// e.g. run Add Split Code to Virtual Terminal:
const result = await mcp.callTool({
  name: "paystack-add-split-code-to-virtual-terminal",
  arguments: {
    code: "Virtual Terminal Code",
    splitCode: "Split Code",
  },
})
```

Docs: [MCP guide](https://pipedream.com/docs/connect/mcp/developers.md)

## API proxy

For a Paystack endpoint with no pre-built tool, the proxy forwards your request with the connected user's credentials attached.

```bash
# The path segment is the target URL, URL-safe base64 encoded:
# https://api.paystack.co/customer

curl "https://api.pipedream.com/v1/connect/{project_id}/proxy/aHR0cHM6Ly9hcGkucGF5c3RhY2suY28vY3VzdG9tZXI?external_user_id={external_user_id}&account_id=apn_xxxxxxx" \
  -H "Authorization: Bearer {access_token}" \
  -H "x-pd-environment: production"
```

Docs: [API proxy guide](https://pipedream.com/docs/connect/api-proxy.md)

## SDK

```ts
import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "paystack-add-split-code-to-virtual-terminal",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    paystack: { authProvisionId: "apn_xxxxxxx" },
    code: "Virtual Terminal Code",
    splitCode: "Split Code",
  },
})
```

Docs: [Managed auth guide](https://pipedream.com/docs/connect/managed-auth/quickstart.md) · [Tools guide](https://pipedream.com/docs/connect/components.md)

## Actions (31)

### `paystack-add-split-code-to-virtual-terminal` — Add Split Code to Virtual Terminal (Write)

Add Split Code to Virtual Terminal. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/add-split-code-to-virtual-terminal.md

### `paystack-assign-destination-to-virtual-terminal` — Assign Destination to Virtual Terminal (Write)

Add a destination (WhatsApp number) to a Virtual Terminal on your integration. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/assign-destination-to-virtual-terminal.md

### `paystack-charge-authorization` — Charge Authorization (Write)

Charge a reusable authorization. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/charge-authorization.md

### `paystack-create-customer` — Create Customer (Write)

Create a customer on your integration. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/create-customer.md

### `paystack-create-virtual-terminal` — Create Virtual Terminal (Write)

Create a Virtual Terminal on your integration. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/create-virtual-terminal.md

### `paystack-deactivate-authorization` — Deactivate Authorization (Write)

Deactivate an authorization when the card needs to be forgotten. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/deactivate-authorization.md

### `paystack-deactivate-virtual-terminal` — Deactivate Virtual Terminal (Write)

Deactivate a Virtual Terminal on your integration. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/deactivate-virtual-terminal.md

### `paystack-direct-debit-activation-charge` — Direct Debit Activation Charge (Write)

Trigger an activation charge on an inactive mandate on behalf of your customer. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/direct-debit-activation-charge.md

### `paystack-export-transactions` — Export Transactions (Write)

Export transactions from Paystack. See the documentation (https://paystack.com/docs/api/transaction/#export)

Full schema: https://pipedream.com/apps/paystack/actions/export-transactions.md

### `paystack-fetch-customer` — Fetch Customer (Read-only)

Get details of a customer on your integration. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/fetch-customer.md

### `paystack-fetch-mandate-authorizations` — Fetch Mandate Authorizations (Read-only)

Get the list of direct debit mandates associated with a customer. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/fetch-mandate-authorizations.md

### `paystack-fetch-transaction` — Fetch Transaction (Read-only)

Fetch a single transaction. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/fetch-transaction.md

### `paystack-fetch-virtual-terminal` — Fetch Virtual Terminal (Read-only)

Fetch a Virtual Terminal on your integration. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/fetch-virtual-terminal.md

### `paystack-initialize-direct-debit` — Initialize Direct Debit (Write)

Initialize the process of linking an account to a customer for Direct Debit transactions. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/initialize-direct-debit.md

### `paystack-initialize-transaction` — Initialize Transaction (Write)

Initializes a new transaction on Paystack. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/initialize-transaction.md

### `paystack-list-customer-code-options` — List Customer Code Options (Read-only)

Retrieves available options for the Customer Code field.

Full schema: https://pipedream.com/apps/paystack/actions/list-customer-code-options.md

### `paystack-list-customer-id-options` — List Customer ID Options (Read-only)

Retrieves available options for the Customer ID field.

Full schema: https://pipedream.com/apps/paystack/actions/list-customer-id-options.md

### `paystack-list-customers` — List Customers (Read-only)

List customers on your integration. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/list-customers.md

### `paystack-list-reference-options` — List Reference Options (Read-only)

Retrieves available options for the Reference field.

Full schema: https://pipedream.com/apps/paystack/actions/list-reference-options.md

### `paystack-list-split-code-options` — List Split Code Options (Read-only)

Retrieves available options for the Split Code field.

Full schema: https://pipedream.com/apps/paystack/actions/list-split-code-options.md

### `paystack-list-transaction-id-options` — List Transaction ID Options (Read-only)

Retrieves available options for the Transaction ID field.

Full schema: https://pipedream.com/apps/paystack/actions/list-transaction-id-options.md

### `paystack-list-transactions` — List Transactions (Read-only)

List transactions carried out on your integration. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/list-transactions.md

### `paystack-list-virtual-terminal-code-options` — List Virtual Terminal Code Options (Read-only)

Retrieves available options for the Virtual Terminal Code field.

Full schema: https://pipedream.com/apps/paystack/actions/list-virtual-terminal-code-options.md

### `paystack-list-virtual-terminals` — List Virtual Terminals (Read-only)

List Virtual Terminals on your integration. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/list-virtual-terminals.md

### `paystack-remove-split-code-from-virtual-terminal` — Remove Split Code from Virtual Terminal (Write)

Remove Split Code from Virtual Terminal. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/remove-split-code-from-virtual-terminal.md

### `paystack-set-customer-risk-action` — Set Customer Risk Action (Write)

Whitelist or blacklist a customer on your integration. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/set-customer-risk-action.md

### `paystack-unassign-destination-from-virtual-terminal` — Unassign Destination from Virtual Terminal (Write)

Unassign a destination (WhatsApp Number) from a Virtual Terminal on your integration. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/unassign-destination-from-virtual-terminal.md

### `paystack-update-customer` — Update Customer (Write)

Update a customer's details on your integration. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/update-customer.md

### `paystack-update-virtual-terminal` — Update Virtual Terminal (Write)

Update a Virtual Terminal on your integration. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/update-virtual-terminal.md

### `paystack-validate-customer` — Validate Customer (Write)

Validate a customer's identity. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/validate-customer.md

### `paystack-verify-transaction` — Verify Transaction (Read-only)

Confirm the status of a transaction. See the documentation

Full schema: https://pipedream.com/apps/paystack/actions/verify-transaction.md

---

- All apps: https://pipedream.com/apps — index: https://pipedream.com/llms.txt
- Pipedream docs for agents: https://pipedream.com/docs/llms.txt
