Nigerian financial technology company that offers payment processing services to businesses in Africa.
Nigerian financial technology company that offers payment processing services to businesses in Africa. On Nagent, Paystack is exposed as a fully-configurable payment processing integration that any agent can call — 112 actions, and API key authentication. No code is required to wire Paystack into your workflow — connect it once via the External Integrations panel and reuse it across every agent you build.
Agent builders use Paystack to automate the kinds of tasks payment processing teams previously handled manually. Concrete examples — each one is a single agent step in Nagent — include:
Every action and trigger is paired with a structured input/output schema (visible in the sections below), so when you wire Paystack into Helix — our agentic agent builder — the editor knows exactly what each step expects and produces. Configure once, deploy anywhere across your Nagent agents.
Every operation an agent can call against Paystack, with input parameters and output schema. Drop these into any step of an agent built in Helix.
PAYSTACK_ADD_PRODUCTS_TO_PAGETool to add products to a Paystack payment page. Use when you need to add products to an existing page that was created with 'product' type. This action adds the specified products to the page, allowing customers to select from multiple products when making a payment.
Input parameters
The ID or slug of the payment page. Only pages created with 'product' type can have products added.
List of product IDs to add to the payment page. Each product must already exist in your Paystack account.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_ADD_PRODUCTS_TO_STOREFRONTTool to add previously created products to a Storefront. Use when you need to associate existing products with a specific storefront.
Input parameters
The unique identifier of the Storefront
An array of product IDs to add to the storefront
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_ADD_SPLIT_CODE_TO_VIRTUAL_TERMINALTool to add a split code to a virtual terminal. Use when you need to assign payment splitting configuration to a virtual terminal.
Input parameters
Code of the Virtual Terminal to update
The split code to assign to the virtual terminal
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_ADD_SUBACCOUNT_TO_SPLITTool to add a subaccount to a split configuration, or update the share of an existing subaccount. Use this when you need to modify the payment distribution by adding new partners/customers to a split or adjusting their allocation. The split must already exist before adding subaccounts to it.
Input parameters
The ID of the split configuration to update
The percentage or flat quota allocated to this subaccount. The value depends on the split type (percentage vs flat amount).
Subaccount code of the customer or partner to add to the split. This code starts with 'ACCT_'.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_ARCHIVE_PAYMENT_REQUESTTool to archive a payment request to clean up records. Use when you need to remove a payment request from active listings. An archived payment request cannot be verified and will not appear when listing payment requests.
Input parameters
The unique identifier of a previously created payment request. Once archived, the payment request cannot be verified and will not be returned when listing payment requests.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_ASSIGN_DESTINATION_TO_VIRTUAL_TERMINALTool to assign WhatsApp destinations to a Virtual Terminal for payment notifications. Use when you need to add recipients who will receive notifications for payments made through a specific Virtual Terminal.
Input parameters
Code of the Virtual Terminal to assign destinations to
Array of destination objects containing recipients for payment notifications. Each destination must have a name and WhatsApp number (target)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_CHECK_PENDING_CHARGETool to check the status of a pending charge transaction. Use when you receive a 'pending' status from a charge endpoint or need to verify if a charge status has changed. Wait at least 10 seconds after initiating a charge before calling this endpoint.
Input parameters
The reference of the ongoing transaction to check
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_CHECK_SLUG_AVAILABILITYTool to check if a custom slug is available for use when creating a payment page. Use when you need to verify a slug is not already taken before creating a new payment page.
Input parameters
The custom slug to check for availability. Used when creating a payment page.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_CREATE_BULK_TRANSFER_RECIPIENTCreate multiple transfer recipients in batches. Use when you need to add multiple recipients at once for transfers. Duplicate account numbers automatically return existing recipient records instead of creating duplicates.
Input parameters
Array of recipient objects to create in bulk. Each object must contain type, name, account_number, and bank_code. Duplicate account numbers will return the existing recipient record instead of creating a new one.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_CREATE_CHARGETool to initiate a payment by integrating the payment channel of your choice. Use when you need to charge a customer using authorization code, bank account, mobile money, or USSD.
Input parameters
Customer's 4-digit PIN (required for local cards in some countries)
Bank account details for bank charge.
USSD details for USSD charge.
Customer's email address (required)
Amount in subunit of the currency (e.g., kobo for NGN, pesewas for GHS, cents for ZAR). For example, 10000 kobo = 100 NGN
Customer's birthday in YYYY-MM-DD format (required for some payment channels)
Custom metadata object for storing additional transaction information
Device ID for fraud detection
Unique transaction reference. If not provided, Paystack will generate one
Mobile money details for mobile money charge.
Authorization code for recurring charges. Use this to charge a customer using a previously saved authorization
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_CREATE_CUSTOMERTool to create a customer on your Paystack integration. Use when you need to add a new customer with their email address and optional details like name and phone number.
Input parameters
Customer's email address (required)
Customer's phone number
Custom metadata object for storing additional customer information
Customer's last name
Customer's first name
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_CREATE_PAYMENT_PAGETool to create a payment page on your Paystack integration. Use when you need to create a payment page that customers can visit to make payments.
Input parameters
Name of the payment page
The ID of the plan to subscribe customers on this payment page to when type is set to subscription
URL slug you would like to be associated with this page. Page will be accessible at https://paystack.com/pay/\[slug\]
Type options for payment pages.
Amount for the page in subunit (kobo if currency is NGN, pesewas if currency is GHS, and cents if currency is ZAR). If omitted, customer can enter the amount.
Currency options for payment pages.
JSON object of custom data
The split code of the transaction split. e.g. SPL_98WF13Eb3w
Description of the payment page
Specifies whether to collect a fixed amount on the payment page. If true, amount must be passed.
If you would like Paystack to redirect to a URL upon successful payment, specify the URL here
Specify whether to collect phone numbers on the payment page
If you would like to accept custom fields, specify them here
A success message to display to the customer after a successful transaction
An email address that will receive transaction notifications for this payment page
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_CREATE_PAYMENT_REQUESTCreate a new payment request by issuing an invoice to a customer. Use this when you need to request payment from a customer for goods or services.
Input parameters
Array of taxes to apply to the payment request
Indicate if request should be saved as draft. Defaults to false and overrides send_notification
Payment request amount in subunit (e.g., kobo for NGN, cents for USD). Only useful if line_items and tax values are ignored. The endpoint will throw a friendly warning if neither is available.
Currency options for payment requests.
Customer ID or customer code to issue the payment request to
ISO 8601 representation of request due date
Array of line items for the payment request
The split code of the transaction split. This allows you to split the payment with one or more accounts
A short description of the payment request
Set to true to create a draft invoice (adds an auto incrementing invoice number if none is provided) even if there are no line_items or tax passed
Numeric value of invoice. Invoice will start from 1 and auto increment from there. This field is to help override whatever value Paystack decides. Auto increment for subsequent invoices continue from this point.
Indicates whether Paystack sends an email notification to customer. Defaults to true
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_CREATE_PLANTool to create a plan for recurring payments on Paystack. Use when you need to set up subscription billing or recurring payment schedules. The plan defines the amount, interval, and other settings for recurring charges to customers.
Input parameters
Name of the plan
Amount to charge in subunit (kobo if NGN, pesewas if GHS, cents if ZAR or USD)
Currency in which amount is set. Allowed values are NGN, GHS, ZAR or USD
Payment interval for recurring charges
Set to false if you don't want text messages to be sent to your customers
A description for this plan
Number of invoices to raise during subscription to this plan. Can be overridden by specifying an invoice_limit while subscribing
Set to false if you don't want invoices to be sent to your customers
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_CREATE_REFUNDTool to initiate a refund for a previously completed transaction on Paystack. Use when a customer requests a refund or when you need to reverse a payment. The refund can be for the full transaction amount or a partial amount.
Input parameters
Amount to refund in subunit (kobo for NGN, pesewas for GHS, cents for USD/ZAR/KES). If not specified, the full transaction amount will be refunded. Cannot exceed the original transaction amount.
Supported currencies for Paystack refunds.
Transaction reference or ID of the previously completed transaction to refund.
Note to send to the customer explaining the reason for the refund.
Internal note for the merchant's record. Not visible to the customer.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_CREATE_SPLITTool to create a split configuration for transaction revenue sharing. Use when you need to configure how transaction revenue should be split between multiple subaccounts (e.g., for marketplace platforms, revenue sharing, or commission distribution).
Input parameters
Name for the transaction split configuration
The type of transaction split - 'percentage' for percentage-based splits or 'flat' for fixed amount splits
The transaction currency for this split configuration
Specifies who bears the Paystack transaction charges. 'subaccount' means a specific subaccount bears it, 'account' means the main account bears it, 'all-proportional' distributes charges proportionally, 'all' means all parties share charges
List of subaccounts with their respective share allocations. Each subaccount specifies the subaccount code and the share amount
Subaccount code that will bear the transaction charges. Required only when bearer_type is 'subaccount'. This subaccount will be charged for the Paystack fees
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_CREATE_STOREFRONTCreate a digital storefront on Paystack to manage and display products. Use this when you need to set up a new online shop for selling digital or physical products.
Input parameters
Name of the storefront
A unique identifier to access your store. Once the storefront is created, it can be accessed from https://paystack.shop/your-slug
Currency for prices of products in your storefront. Must be one of: GHS, KES, NGN, USD, ZAR
The description of the storefront
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_CREATE_SUBACCOUNTTool to create a subaccount on your Paystack integration. Use when you need to set up a new subaccount with bank details and settlement information.
Input parameters
Stringified JSON object of custom data
A description for this subaccount
Name of business for subaccount
Bank account number
Bank code for the bank. You can get the list of Bank Codes by calling the List Banks endpoint.
Percentage of transaction amount charged by the subaccount
The name of the contact person for this subaccount
A contact email for the subaccount
A phone number to call for this subaccount
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_CREATE_TRANSFER_RECIPIENTTool to create a new recipient for transfers. Use when you need to set up a recipient before initiating a transfer. Note: A duplicate account number will lead to retrieval of the existing record rather than creating a new one.
Input parameters
The recipient's name according to their account registration. This is the name that will appear on transfer receipts.
Recipient type. Options: 'nuban' (Nigerian bank account), 'ghipss' (Ghanaian bank account), 'mobile_money' (mobile money account), 'basa' (South African bank account), 'authorization' (Paystack authorization code from previous transaction).
Email address of the recipient. Optional but recommended for better record-keeping and communication.
Currency for the account receiving the transfer. If not provided, defaults to NGN (Nigerian Naira). Common values: 'NGN', 'GHS' (Ghanaian Cedi), 'ZAR' (South African Rand), 'USD'.
JSON object of custom data. You can store additional information about the recipient here. Maximum of 10 key-value pairs allowed.
Recipient's bank code. Required for bank account types. You can get the list of bank codes by calling the List Banks endpoint. For Nigerian banks, this is typically a 3-digit code (e.g., '044' for Access Bank).
A description for this recipient. Helpful for identifying the purpose or context of this recipient in your records.
Recipient's bank account number. Required for bank account types (nuban, ghipss, basa). Must be a valid account number for the specified bank.
An authorization code from a previous transaction. Required when type is 'authorization'. This allows creating a recipient from a previously authorized payment method.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_CREATE_VIRTUAL_TERMINALCreate a Virtual Terminal on your Paystack integration to accept payments. Use this when you need to set up a new payment terminal for in-person or remote transactions with custom notification settings.
Input parameters
The name of the virtual terminal
Additional custom data as key-value pairs to store with the virtual terminal
Split code to associate with the virtual terminal for automatic payment splitting
Array of recipients who will receive payment notifications for transactions on this Virtual Terminal. Each destination must have a name and target (phone number or email)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_DEACTIVATE_AUTHORIZATIONTool to deactivate an authorization when a card or payment method needs to be forgotten. Use when customers want to remove saved payment methods from their account.
Input parameters
Authorization code for the card or payment method to deactivate (e.g., 'AUTH_56wcbzw51e'). This removes the saved payment method.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_DEACTIVATE_VIRTUAL_TERMINALTool to deactivate a Virtual Terminal on your integration. Use when you need to disable a terminal and prevent it from accepting further payments.
Input parameters
Code of the Virtual Terminal to deactivate (e.g., 'VT_MCK5292Z'). This will disable the terminal and prevent it from accepting payments.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_DELETE_PRODUCTDelete a previously created product from Paystack by its ID. Use this when you need to remove a product from your catalog. The deletion is permanent and cannot be undone.
Input parameters
The unique identifier of the product to delete. You can obtain product IDs from PAYSTACK_CREATE_PRODUCT, PAYSTACK_UPDATE_PRODUCT, or by listing products.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_DELETE_STOREFRONTDelete a previously created storefront from Paystack by its ID. Use this when you need to remove a storefront. The deletion is permanent and cannot be undone.
Input parameters
The unique identifier of the storefront to delete. You can obtain storefront IDs from PAYSTACK_CREATE_STOREFRONT or by listing storefronts.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_DELETE_TRANSFER_RECIPIENTTool to delete a transfer recipient by setting it to inactive status. Use when you need to remove a recipient from the active transfer list.
Input parameters
Transfer recipient code to delete (e.g., 'RCP_5ap8rcimmcj8lbi'). This sets the recipient to inactive status.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_DISABLE_OTP_FOR_TRANSFERSTool to disable OTP requirement for programmatic transfers. Use when you want to complete transfers without OTP verification. Returns an OTP needed to finalize the request.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_DISABLE_SUBSCRIPTIONTool to disable a subscription on your Paystack integration. Use when you need to stop recurring charges for a customer subscription. Requires the subscription code and email verification token sent to the customer.
Input parameters
Subscription code to disable
Email token sent to the customer for verification
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_DUPLICATE_STOREFRONTTool to duplicate a previously created Storefront. Use when you need to create a copy of an existing storefront with the same configuration.
Input parameters
The unique identifier of the Storefront to duplicate.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_ENABLE_OTP_REQUIREMENT_FOR_TRANSFERSTool to enable OTP requirement for transfers. Use when a customer wants to stop being able to complete transfers programmatically and require OTP verification instead.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_EXPORT_TRANSACTIONSTool to export transactions from Paystack for a specific timeframe. Use when you need to download transaction data for reporting, analysis, or record-keeping purposes. The API returns a download link that expires after a certain time.
Input parameters
The end date for the export range in ISO 8601 format (e.g., 2024-06-30T13:36:54Z). If not provided, exports up to the latest transaction.
The start date for the export range in ISO 8601 format (e.g., 2024-06-01T00:00:01Z). If not provided, exports from the earliest transaction.
Transaction status filter values.
Filter transactions by customer ID (numeric identifier for the customer).
Filter transactions by settlement ID (numeric identifier for the settlement).
Filter transactions by subaccount code (e.g., ACCT_dskvlw3y3dMukmt).
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_BALANCETool to fetch the available balance on your Paystack integration. Use when you need to check account balance across different currencies.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_BALANCE_LEDGERTool to fetch all pay-ins and pay-outs that went into your Paystack balance. Use when you need to view transaction history and balance changes over time.
Input parameters
The end date for filtering ledger entries. Format: YYYY-MM-DD or ISO 8601 timestamp.
The start date for filtering ledger entries. Format: YYYY-MM-DD or ISO 8601 timestamp.
The section to retrieve. Use this to navigate through paginated results (e.g., page 1, 2, 3, etc.).
Number of records to fetch per page. Allows you to control pagination size for the ledger results.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_BULK_CHARGE_BATCHTool to retrieve a specific bulk charge batch by code. Use when you need to check the progress of a bulk charge batch via its total_charges and pending_charges attributes.
Input parameters
The code for the charge whose batches you want to retrieve
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_CUSTOMERTool to get details of a customer on your integration. Use when you need to retrieve customer information using their customer code.
Input parameters
The code for the customer gotten from the response of the customer creation
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_MANDATE_AUTHORIZATIONSTool to fetch the list of direct debit mandate authorizations associated with a customer. Use when you need to retrieve all mandate authorizations for a specific customer ID.
Input parameters
The customer ID for the authorizations to fetch
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_PAYMENT_PAGETool to fetch details of a payment page on your Paystack integration. Use when you need to retrieve information about a specific payment page by its ID.
Input parameters
The unique identifier of a payment page
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_PAYMENT_REQUESTTool to fetch details of a payment request from Paystack. Use when you need to retrieve comprehensive information about a previously created payment request, including customer details, payment status, line items, and associated metadata.
Input parameters
The unique identifier of a previously created payment request
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_PAYMENT_SESSION_TIMEOUTTool to fetch the payment session timeout configured on your Paystack integration. Use when you need to check the current timeout duration for payment sessions.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_PLANTool to get details of a plan on your integration. Use when you need to retrieve plan information using the plan code or ID.
Input parameters
The plan ID or code you want to fetch
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_PRODUCTTool to get details of a product on your integration. Use when you need to retrieve product information by its ID.
Input parameters
The unique identifier of the product
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_PRODUCT_ORDERSTool to fetch all orders for a particular product on your Paystack integration. Use when you need to retrieve order history and details for a specific product by its ID.
Input parameters
The unique identifier of the product
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_REFUNDTool to get details of a refund on your integration. Use when you need to retrieve comprehensive information about a specific refund, including status, amount, customer details, and timestamps.
Input parameters
The identifier of the refund to fetch.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_SPLITTool to get details of a split configuration for a transaction. Use when you need to retrieve split payment configuration information by its ID.
Input parameters
The ID of the split configuration to fetch
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_STOREFRONTTool to get the details of a previously created Storefront. Use when you need to retrieve information about a specific storefront including its products, contacts, and configuration.
Input parameters
The unique identifier of the Storefront to fetch
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_STOREFRONT_ORDERSTool to fetch all orders in a Paystack storefront. Use when you need to retrieve order information for a specific storefront using its ID.
Input parameters
The unique identifier of the Storefront
The page number to retrieve (for pagination)
The number of records to return per page
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_SUBACCOUNTTool to get details of a subaccount on your integration. Use when you need to retrieve subaccount information using the subaccount code.
Input parameters
The subaccount code you want to fetch
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_SUBSCRIPTIONTool to get details of a subscription on your integration. Use when you need to retrieve subscription information using the subscription code.
Input parameters
The subscription code for the subscription you want to fetch
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_TRANSACTIONTool to get details of a transaction carried out on your integration. Use when you need to retrieve comprehensive information about a specific transaction, including payment status, customer details, authorization info, and timestamps.
Input parameters
The ID of the transaction to fetch
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_TRANSACTION_TIMELINETool to fetch the timeline of a transaction showing the steps taken from initiation to completion. Use when you need to debug payment flows or understand where customers encountered issues during the payment process.
Input parameters
The ID of the transaction to fetch the timeline for
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_TRANSFER_RECIPIENTTool to fetch details of a transfer recipient. Use when you need to retrieve information about an existing recipient using their recipient code.
Input parameters
The transfer recipient code obtained when the recipient was created. This unique code identifies the recipient in your integration.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FETCH_VIRTUAL_TERMINALTool to fetch a Virtual Terminal on your Paystack integration. Use when you need to retrieve details about an existing virtual terminal, including its configuration, payment methods, and active status.
Input parameters
Code of the Virtual Terminal
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_FINALIZE_PAYMENT_REQUESTTool to finalize the creation of a draft payment request for a customer. Use when you need to convert a draft payment request into an active one that can be paid by the customer.
Input parameters
The unique identifier of a draft payment request to finalize
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_GENERATE_UPDATE_SUBSCRIPTION_LINKTool to generate a link for updating the card on a subscription. Use when you need to allow a customer to update their payment card for an active subscription.
Input parameters
Subscription code for which to generate the update link
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_GET_PAYMENT_REQUEST_TOTALSTool to retrieve metrics for all pending and successful payment requests. Use when you need an overview of payment request amounts grouped by currency and status.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_GET_TRANSACTION_TOTALSTool to get the total amount received on your Paystack account. Use when you need to retrieve transaction totals and pending transfers, optionally filtered by date range.
Input parameters
The end date for the totals calculation in ISO 8601 format (e.g., 2024-06-30T13:36:54Z). If not provided, calculates up to the latest transaction.
The start date for the totals calculation in ISO 8601 format (e.g., 2024-06-01T00:00:01Z). If not provided, calculates from the earliest transaction.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_INITIALIZE_AUTHORIZATIONTool to initialize a reusable authorization for recurring transactions. Use when you need to create a direct debit mandate that allows charging a customer's account repeatedly without requiring them to provide payment details each time.
Input parameters
Customer's email address for the authorization
Customer's bank account details for direct debit authorization.
Customer's address information for authorization.
Authorization channel. Currently only direct_debit is supported for creating reusable authorizations
Fully qualified URL (e.g. https://example.com/) to redirect the customer to after authorization
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_INITIALIZE_TRANSACTIONTool to initialize a transaction from your backend. Returns an authorization URL to redirect the customer to for payment. Use when you need to start a payment flow and get a checkout URL for the customer.
Input parameters
If transaction is to create a subscription to a predefined plan, provide plan code here. This would invalidate the value provided in amount
Customer's email address (required)
Used to replace the email address shown on the Checkout form
Split configuration for transactions.
Amount should be in the smallest denomination of the currency (subunit). For example, 10000 kobo = 100 NGN, 10000 pesewas = 100 GHS
Who bears the transaction charge.
An array of payment channels to control what channels you want to make available to the user to make a payment with
Supported currencies for Paystack transactions.
JSON object of custom data to include with the transaction
Unique transaction reference. Only alphanumeric characters, hyphens, periods, and equals signs allowed. If not provided, Paystack will generate one
The split code of the transaction split. Use this to split payment between multiple accounts
The code for the subaccount that owns the payment. This overrides the split configuration if provided
Fully qualified URL to redirect the customer to after a successful payment. Use this to override the callback URL provided on the dashboard for this transaction
Number of times to charge customer during subscription to plan
A flat fee to charge the subaccount for this transaction in subunit. This overrides the split percentage set when the subaccount was created
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_INITIATE_BULK_CHARGETool to initiate a bulk charge on your integration. Use when you need to charge multiple customers at once using their authorization codes.
Input parameters
Array of charge objects with authorization, amount, and optional reference. Each object represents a charge to be processed
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_BANKSTool to get a list of all supported banks and their properties on Paystack. Use when you need to retrieve available banks for payments, transfers, or account verification.
Input parameters
An alphanumeric value returned for every cursor based retrieval, used to retrieve the next set of data
The offset to retrieve data from (page number)
Types of financial channels.
Supported countries for bank listings.
Gateway types for Nigerian banks.
The number of records to fetch per request
Supported currencies for bank listings.
An alphanumeric value returned for every cursor based retrieval, used to retrieve the previous set of data
A flag to indicate if cursor based pagination should be used
A flag to filter for banks a customer can pay directly from
A flag that returns Nigerian banks with their NIP institution code. The returned value can be used in identifying institutions on NIP.
A flag to filter for available banks a customer can make a transfer to complete a payment
A flag to filter the banks that are supported for account verification in South Africa. You need to combine this with either the currency or country filter.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_BULK_CHARGE_BATCHESTool to list bulk charge batches created on your integration. Use when you need to view all bulk charge batches, optionally filtering by status (active, paused, or complete) and paginating through results.
Input parameters
The page number to retrieve. Use this to navigate through paginated results.
Status filter options for bulk charge batches.
Number of records to fetch per page. Controls pagination size for the batch results.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_CHARGES_IN_BATCHTool to retrieve the charges associated with a specified bulk charge batch. Use when you need to inspect individual charge details within a batch to monitor charge statuses or retrieve charge-level information.
Input parameters
The batch code for the bulk charge whose charges you want to retrieve
The offset to retrieve data from (page number)
Status values for filtering charges.
Number of records to fetch per page
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_COUNTRIESTool to retrieve a list of countries that Paystack currently supports. Use when you need to know which countries are available for Paystack operations.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_CUSTOMERSTool to list customers available on your integration. Use when you need to retrieve all customers with optional filtering by date range and pagination support.
Input parameters
An alphanumeric value returned for every cursor based retrieval, used to retrieve the next set of data
The offset to retrieve data from (page number)
The number of records to fetch per request
The end date for filtering customers
An alphanumeric value returned for every cursor based retrieval, used to retrieve the previous set of data
The start date for filtering customers
A flag to indicate if cursor based pagination should be used
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_DISPUTESTool to list transaction disputes filed by customers on your Paystack integration. Use when you need to retrieve disputes with optional filtering by status, transaction, or date range.
Input parameters
The end date for filtering disputes (ISO 8601 format or YYYY-MM-DD)
The start date for filtering disputes (ISO 8601 format or YYYY-MM-DD)
The section to retrieve (page number)
Status values for dispute filtering.
Number of records to fetch per page
Transaction ID to filter disputes
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_DOMAINSTool to list all registered Apple Pay domains on your integration. Use when you need to retrieve domains configured for Apple Pay payments.
Input parameters
An alphanumeric value returned for every cursor based retrieval, used to retrieve the next set of data
An alphanumeric value returned for every cursor based retrieval, used to retrieve the previous set of data
A flag to indicate if cursor based pagination should be used
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_MANDATE_AUTHORIZATIONSTool to get a list of all direct debit mandates on your integration. Use when you need to retrieve mandate authorizations with optional filtering by status and pagination support.
Input parameters
The cursor value of the next set of authorizations to fetch. You can get this from the meta object of the response
Status values for mandate authorizations.
The number of authorizations to fetch per request
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_ORDERSTool to list orders available on your integration. Use when you need to retrieve all orders with optional filtering by date range and pagination support.
Input parameters
The section to retrieve
The end date for filtering orders
Number of records to fetch per page
The start date for filtering orders
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_PAYMENT_PAGESTool to list payment pages available on your Paystack integration. Use when you need to retrieve all payment pages with optional filtering by date range and pagination.
Input parameters
The end date in ISO 8601 format (YYYY-MM-DD)
The start date in ISO 8601 format (YYYY-MM-DD)
The section to retrieve
Number of records to fetch per page
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_PAYMENT_REQUESTSTool to list all previously created payment requests to your customers. Use when you need to retrieve a list of payment requests with optional filters for customer, status, currency, or date range.
Input parameters
The end date for filtering payment requests (ISO 8601 format)
The start date for filtering payment requests (ISO 8601 format)
The section to retrieve (page number)
Status options for filtering payment requests.
Number of records to fetch per page
If your integration supports more than one currency, choose the one to filter by (e.g., NGN, GHS, ZAR, USD)
Customer ID to filter payment requests for a specific customer
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_PLANSTool to list all subscription plans available on your integration. Use when you need to retrieve plans, optionally filtering by interval, amount, or date range.
Input parameters
Filter plans created up to this date (ISO 8601 format or YYYY-MM-DD).
Filter plans created from this date (ISO 8601 format or YYYY-MM-DD).
The page number to retrieve. Use this to navigate through paginated results.
Filter plans by amount in subunit (kobo if NGN, pesewas if GHS, cents if ZAR or USD).
Number of records to fetch per page. Controls pagination size for the plan results.
Plan billing interval options.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_PRODUCTSTool to list products available on your integration. Use when you need to retrieve all products with optional filtering by date range, active status, and pagination support.
Input parameters
The section to retrieve (page number)
The state of the product - filter by active status
Number of records to fetch per page
The end date for filtering products
The start date for filtering products
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_REFUNDSTool to list refunds available on your integration. Use when you need to retrieve a list of refunds with optional filters for date range and pagination.
Input parameters
The end date for filtering refunds (ISO 8601 format)
The start date for filtering refunds (ISO 8601 format)
The section to retrieve (page number)
Number of records to fetch per page
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_SETTLEMENTSTool to list settlements made to your settlement accounts. Use when you need to retrieve settlement information with optional pagination support.
Input parameters
The offset to retrieve data from (page number for pagination).
The number of records to fetch per request. Controls pagination size.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_SPLITSTool to list the transaction splits available on your integration. Use when you need to retrieve all split configurations with optional filtering by name, status, subaccount, or date range.
Input parameters
The name of the split to filter by
The offset to retrieve data from (page number)
The status of the split - true for active splits, false for inactive splits
The end date for filtering splits
The number of records to fetch per request
The start date for filtering splits
Filter by subaccount code
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_STATES_AVSTool to retrieve a list of states for a country for address verification. Use when you need to get available states/provinces for a specific country code.
Input parameters
The country code of the states to list. It is gotten after the charge request.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_STOREFRONT_PRODUCTSTool to list all products in a Paystack storefront. Use when you need to retrieve product information for a specific storefront using its ID.
Input parameters
The unique identifier of the Storefront
The page number to retrieve (for pagination)
The number of records to return per page
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_STOREFRONTSTool to list storefronts available on your integration. Use when you need to retrieve all storefronts with optional filtering by status and pagination support.
Input parameters
The offset to retrieve data from. Use this to navigate through paginated results.
Storefront status options.
Number of records to fetch per request. Controls pagination size for the storefront results.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_SUBACCOUNTSTool to list subaccounts available on your integration. Use when you need to retrieve all subaccounts with optional filtering by active status and pagination support.
Input parameters
The offset to retrieve data from
Filter by the state of the subaccounts
Number of records to fetch per request
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_SUBSCRIPTIONSTool to list all subscriptions available on your integration. Use when you need to retrieve subscriptions, optionally filtering by plan, customer, or date range.
Input parameters
Filter subscriptions created up to this date (ISO 8601 format or YYYY-MM-DD).
Filter subscriptions created from this date (ISO 8601 format or YYYY-MM-DD).
The page number to retrieve. Use this to navigate through paginated results.
Filter subscriptions by plan ID. Use this to retrieve subscriptions for a specific plan.
Number of records to fetch per page. Controls pagination size for the subscription results.
Filter subscriptions by customer ID. Use this to retrieve subscriptions for a specific customer.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_TRANSACTIONSTool to list transactions that have occurred on your integration. Use when you need to retrieve all transactions with optional filtering by date range, status, source, channel, customer, and other criteria. Supports both cursor-based and page-based pagination.
Input parameters
An alphanumeric value returned for every cursor based retrieval, used to retrieve the next set of data
The offset to retrieve data from
Filter transactions by a specific amount
Transaction source values.
Transaction status values.
Payment channel values.
The end date for filtering transactions
The number of records to fetch per request
An alphanumeric value returned for every cursor based retrieval, used to retrieve the previous set of data
The start date for filtering transactions
The settlement ID to filter for settled transactions
Filter transaction by split code
A flag to indicate if cursor based pagination should be used
Filter transactions by a terminal ID
Filter transactions by a customer code
Filter transaction by subaccount code
Filter transactions by a virtual account number
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_TRANSFER_RECIPIENTSTool to list transfer recipients available on your integration. Use when you need to retrieve all recipients with optional pagination support.
Input parameters
An alphanumeric value returned for every cursor based retrieval, used to retrieve the next set of data
The offset to retrieve data from
The number of records to fetch per request
An alphanumeric value returned for every cursor based retrieval, used to retrieve the previous set of data
A flag to indicate if cursor based pagination should be used
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_TRANSFERSTool to list all transfers carried out on your integration. Use when you need to retrieve transfer history with optional filtering by status, recipient, or date range.
Input parameters
An alphanumeric value returned for every cursor based retrieval, used to retrieve the next set of data
The offset to retrieve data from (page number)
Transfer status filter options.
The end date for filtering transfers (YYYY-MM-DD format)
The number of records to fetch per request
An alphanumeric value returned for every cursor based retrieval, used to retrieve the previous set of data
The start date for filtering transfers (YYYY-MM-DD format)
Filter transfer by the recipient code
A flag to indicate if cursor based pagination should be used
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_LIST_VIRTUAL_TERMINALSTool to list virtual terminals available on your integration. Use when you need to retrieve all virtual terminals with pagination support.
Input parameters
The offset to retrieve data from. Use this to navigate through paginated results.
The number of records to fetch per request. Controls pagination size for the results.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_PAUSE_BULK_CHARGETool to pause processing of a bulk charge batch. Use when you need to temporarily stop a bulk charge batch from processing further charges.
Input parameters
The batch code for the bulk charge you want to pause
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_PUBLISH_STOREFRONTTool to make a Storefront publicly available on Paystack. Use this when you need to publish a previously created storefront so that customers can access and purchase from it.
Input parameters
The unique identifier of the Storefront to publish. You can obtain storefront IDs from PAYSTACK_CREATE_STOREFRONT or by listing storefronts.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_REMOVE_SUBACCOUNT_FROM_SPLITTool to remove a subaccount from a split configuration. Use this when you need to stop payment distribution to a specific partner or customer in an existing split. The share parameter must match the subaccount's current allocation.
Input parameters
The ID of the split configuration to update
The share amount currently allocated to this subaccount in the split. This value must match the subaccount's current share allocation.
Subaccount code of the customer or partner to remove from the split. This code starts with 'ACCT_'.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_RESEND_OTP_FOR_TRANSFERTool to resend OTP for a transfer. Use when a customer is having trouble receiving their OTP and needs a new one sent to complete their transfer.
Input parameters
Specify the flag to indicate the purpose of the OTP. Valid values are 'disable_otp' or 'transfer'
The transfer code that requires an OTP validation
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_RESOLVE_CARD_BINTool to get basic information about a card BIN (Bank Identification Number). Use when you need to retrieve card details such as brand, issuing bank, country, and card type from the first 6 digits of a card.
Input parameters
The card bank identification number (first 6 digits of the card)
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_RESUME_BULK_CHARGE_BATCHTool to resume processing of a previously paused bulk charge batch. Use when you need to restart a paused bulk charge batch using its batch code.
Input parameters
The batch code for the bulk charge you want to resume
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_SEND_PAYMENT_REQUEST_NOTIFICATIONTool to send an email notification to a customer for a previously created payment request. Use when you need to remind a customer about an unpaid invoice or payment request.
Input parameters
The unique identifier of a previously created payment request. This action will trigger an email reminder to the customer.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_SEND_SUBSCRIPTION_UPDATE_LINKTool to send an email to the customer with a link to update the card on their subscription. Use when a customer needs to update their payment card for an active subscription and you want to notify them via email.
Input parameters
Subscription code for which to send the update link email. This code identifies the subscription whose payment card details need updating.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_SET_RISK_ACTIONTool to set a customer's risk action by whitelisting or blacklisting them. Use when you need to apply fraud prevention rules to a specific customer by setting their risk action to 'allow' (whitelist), 'deny' (blacklist), or 'default' (no special action).
Input parameters
Customer code or email address to set risk action for
Risk action types that can be applied to a customer.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_SUBMIT_PHONETool to submit phone number when requested during a charge transaction. Use this when a charge requires phone number submission for verification or authentication purposes.
Input parameters
Customer's mobile phone number
The reference of the ongoing transaction
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_TRIGGER_DIRECT_DEBIT_ACTIVATION_CHARGETool to trigger an activation charge on an inactive direct debit mandate for a customer. Use when a mandate needs to be reactivated or retried.
Input parameters
The customer ID attached to the authorization. This identifies the customer whose direct debit mandate needs activation.
The authorization ID obtained from the direct debit initiation response. This identifies the specific mandate to activate.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_UNASSIGN_DESTINATION_FROM_VIRTUAL_TERMINALTool to unassign WhatsApp destinations from a Virtual Terminal. Use when you need to remove recipients who should no longer receive payment notifications for a specific Virtual Terminal.
Input parameters
Code of the Virtual Terminal to unassign destinations from
Array of WhatsApp numbers in international format (E.164) to unassign from the Virtual Terminal, e.g., +2548012345678
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_UNREGISTER_APPLE_PAY_DOMAINTool to unregister a top-level domain or subdomain previously used for Apple Pay integration. Use when you need to remove a domain from your Apple Pay configuration.
Input parameters
The domain name or subdomain to unregister from Apple Pay integration. Must be a previously registered domain.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_UPDATE_CUSTOMERTool to update a customer's details on your Paystack integration. Use when you need to modify existing customer information such as name, phone number, or metadata.
Input parameters
The code for the customer gotten from the response of the customer creation
Customer's phone number
Stringified JSON object of custom data
Customer's last name
Customer's first name
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_UPDATE_PAYMENT_PAGETool to update a payment page on your Paystack integration. Use when you need to modify details of an existing payment page such as name, description, amount, or active status.
Input parameters
The unique identifier of the payment page to update
Name of the payment page
Set to false to deactivate page url
Amount should be in the subunit of the currency (kobo if currency is NGN, pesewas if currency is GHS, and cents if currency is ZAR)
The description of the page
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_UPDATE_PAYMENT_REQUESTTool to update a payment request on your Paystack integration. Use when you need to modify details of an existing payment request such as amount, description, due date, or other attributes.
Input parameters
The unique identifier of a previously created payment request
Array of taxes to apply to the payment request
Indicate if request should be saved as draft. Defaults to false and overrides send_notification
Payment request amount in subunit (e.g., kobo for NGN, cents for USD). Only useful if line_items and tax values are ignored. The endpoint will throw a friendly warning if neither is available.
Currency options for payment requests.
Customer id or code
ISO 8601 representation of request due date
Array of line items for the payment request
The split code of the transaction split. This allows you to split the payment with one or more accounts
A short description of the payment request
Set to true to create a draft invoice (adds an auto incrementing invoice number if none is provided) even if there are no line_items or tax passed
Numeric value of invoice. Invoice will start from 1 and auto increment from there. This field is to help override whatever value Paystack decides. Auto increment for subsequent invoices continue from this point.
Indicates whether Paystack sends an email notification to customer. Defaults to true
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_UPDATE_PAYMENT_SESSION_TIMEOUTTool to update the payment session timeout on your Paystack integration. Use when you need to change the duration before a payment session expires.
Input parameters
Timeout before canceling session in seconds. Valid range is 60-3600 seconds (1 minute to 1 hour). Set to 0 to disable session timeouts entirely.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_UPDATE_PLANTool to update a plan's details on your Paystack integration. Use when you need to modify an existing plan's name, amount, interval, or other settings. Only the fields you provide will be updated; other fields remain unchanged.
Input parameters
The plan code you want to update
Name of the plan
Amount to charge in subunit (kobo if currency is NGN, pesewas if currency is GHS, cents if currency is ZAR or USD)
Supported currencies for plans
Interval for recurring payments
Set to false if you don't want text messages to be sent to your customers
A description for this plan
Number of invoices to raise during subscription to this plan. Can be overridden by specifying an invoice_limit while subscribing
Set to false if you don't want invoices to be sent to your customers
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_UPDATE_PRODUCTTool to update a product on your integration. Use when you need to modify product details like name, description, price, or currency.
Input parameters
The unique identifier of the product to update
Name of product
Price should be in kobo if currency is NGN, pesewas if currency is GHS, and cents if currency is ZAR
Supported currency codes for Paystack products.
JSON object of custom data
Number of products in stock. Use if unlimited is false
Set to true if the product has unlimited stock. Leave as false if the product has limited stock
The split code if sharing the transaction with partners
The description of the product
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_UPDATE_SPLITTool to update a split configuration for transactions. Use when you need to modify split settings such as name, active status, or bearer type.
Input parameters
The ID or code of the split configuration to update
Name of the transaction split
Toggle status of split. When true, the split is active, else it's inactive
Who bears the Paystack transaction charges.
Subaccount code that will bear the transaction charges. This is the subaccount code of the customer or partner that would bear the transaction charge if you specified subaccount as the bearer type
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_UPDATE_STOREFRONTTool to update the details of a previously created Storefront. Use when you need to modify storefront information such as name, description, or slug.
Input parameters
The unique identifier of the Storefront to update
Name of the storefront
A unique identifier to access your store. Once the storefront is created, it can be accessed from https://paystack.shop/your-slug
The description of the storefront
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_UPDATE_SUBACCOUNTTool to update a subaccount's details on your Paystack integration. Use when you need to modify existing subaccount information such as business name, bank details, contact information, or activation status.
Input parameters
The subaccount code you want to update
Activate or deactivate a subaccount
Stringified JSON object of custom data
A description for this subaccount
Name of business for subaccount
Bank account number
Bank code for the bank. You can get the list of Bank Codes by calling the List Banks endpoint.
Percentage of transaction amount charged by the subaccount
The name of the contact person for this subaccount
A contact email for the subaccount
A phone number to call for this subaccount
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_UPDATE_TRANSFER_RECIPIENTTool to update the details of a transfer recipient. Use when you need to modify an existing recipient's name or email address.
Input parameters
The transfer recipient code obtained when the recipient was created. This unique code identifies the recipient to be updated.
The recipient's name according to their account registration. This is the name that will appear on transfer receipts.
Email address of the recipient. Optional but recommended for better record-keeping and communication.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_VALIDATE_BANK_ACCOUNTTool to validate the authenticity of a customer's bank account before sending money. Use when you need to confirm account details are correct and the account is active and can receive funds.
Input parameters
The bank code of the customer's bank (required). You can fetch the bank codes by using the List Banks endpoint.
Customer's first and last name registered with their bank (required)
The type of the customer's account number (required)
The two digit ISO code of the customer's bank (required)
Customer's mode of identity (required)
Customer's account number (required)
Customer's mode of identity number
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_VALIDATE_CUSTOMERTool to validate a customer's identity on your Paystack integration. Use when you need to verify customer identification details such as BVN and bank account information. The verification happens asynchronously, and Paystack sends a webhook event when verification is complete.
Input parameters
Customer's Bank Verification Number
The code for the customer gotten from the response of the customer creation
Predefined types of identification. Typically 'bank_account'
Customer's identification number
Two-letter country code of identification issuer
Bank code. You can get the list of bank codes by calling the List Banks endpoint (https://api.paystack.co/bank)
Customer's last name
Customer's first name
Customer's middle name
Customer's bank account number
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_VALIDATE_ORDERTool to validate a pay for me order on Paystack. Use when you need to verify the details and status of a previously created order using its unique order code.
Input parameters
The unique code of a previously created order
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_VERIFY_PAYMENT_REQUESTTool to verify the status of a previously created payment request on Paystack. Use when you need to check if a payment request has been paid or to retrieve details about a specific payment request using its request code.
Input parameters
The payment request code (e.g., PRQ_xxxxx) of a previously created payment request. Note: Despite the parameter name 'id', this endpoint requires the request_code string, not the numeric ID.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_VERIFY_STOREFRONT_SLUGTool to verify the availability of a slug before using it for a Storefront. Use when you need to check if a slug is available before creating a new storefront.
Input parameters
The custom slug to verify for storefront availability. Used when creating a storefront.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
PAYSTACK_VERIFY_TRANSACTIONTool to confirm the status of a transaction using its reference. Use when you need to verify a payment was successful or check the current state of a transaction after customer completes checkout.
Input parameters
The transaction reference to verify
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
No publicly available marketplace agent is found using this tool yet. There are 66 agents privately built on Nagent that already use Paystack.
Build on Nagent
Connect Paystack to any Nagent agent in minutes — no API key management, no boilerplate. Just configure and deploy.
The five questions agent builders ask before adopting a new integration.
Open the External Integrations panel inside Nagent (app.nagent.ai/externalIntegration), find Paystack, and click "Connect Now." You'll authenticate with an API key — Nagent handles credential storage and refresh automatically. Once connected, Paystack is available to any agent in your workspace.
No. Nagent provides no-code integration for every tool. Once Paystack is connected, you configure its 112 actions directly in the agent builder UI — no API calls, no boilerplate, no schema management.
Helix — Nagent's agentic agent builder — lets you drop Paystack steps into any workflow visually. Pick an action (e.g., one of those listed above), fill in the inputs (Helix knows the required vs. optional schema for each parameter), and connect it to upstream/downstream steps. Triggers run as the entry point of an agent, so when a Paystack event fires, the agent kicks off automatically.
Every Paystack action and trigger ships with a fully-typed schema — input parameters with name, type, required flag, and description, plus the output payload shape. The schemas are documented in the sections above. Helix uses these schemas to validate your configuration at build time and to type-check the data flowing between steps.
Yes. While Paystack ships with 112 pre-built payment processing actions, you can layer custom logic around them inside Helix — pre/post-processing steps, conditional branches, retries, or stitching Paystack together with other connected tools. For deeper customization, talk to our team about Nagent's Agentic AI Lab — forward-deployed engineers who build Paystack-based workflows tailored to your business.