VoPay Convenience Fees API

The Convenience Fees API from VoPay — 2 operation(s) for convenience fees.

Operations 6

GET /account/convenience-fees/settings Get convenience fee settings #
POST /account/convenience-fees/settings Create or update a convenience fee setting #
DELETE /account/convenience-fees/settings Delete a convenience fee setting #
GET /account/convenience-fees/rules Get convenience fee rules #
POST /account/convenience-fees/rules Add a convenience fee rule #
DELETE /account/convenience-fees/rules Delete a convenience fee rule #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/vopay-convenience-fees-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

vopay-convenience-fees-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: '2.0'
  title: Convenience Fees API
  description: The Convenience Fee API provides endpoints for managing convenience fee settings and jurisdiction rules for a VoPay account. Fee settings define the transaction and processing fees applied per payment rail, and rules define the jurisdictions where convenience fees are not collected. All endpoints require the account to have ConvenienceFeeEnabled.
  contact:
    name: API Support
    email: help@vopay.com
servers:
- url: https://earthnode-dev.vopay.com/api/v2
tags:
- name: Convenience Fees
paths:
  /account/convenience-fees/settings:
    get:
      description: Returns all convenience fee settings configured for the authenticated account. Each setting defines the transaction fee and processing fee applied for a specific payment rail. Requires the ViewConvenienceFees permission.
      summary: Get convenience fee settings
      tags:
      - Convenience Fees
      operationId: ConvenienceFeeSettingsGET
      deprecated: false
      parameters:
      - name: AccountID
        in: query
        required: true
        description: Your account ID
        schema:
          type: string
      - name: Key
        in: query
        required: true
        description: API key for the account
        schema:
          type: string
      - name: Signature
        in: query
        required: true
        description: Hashed signature for the request
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  Success:
                    type: boolean
                    description: True if the request was successful, false if it failed
                    example: true
                  ErrorMessage:
                    type: string
                    description: Contains a description of the error if the request failed
                    example: ''
                  FeeSettings:
                    type: array
                    description: Array of convenience fee settings for the account
                    items:
                      type: object
                      properties:
                        SettingID:
                          type: integer
                          description: Unique identifier for the fee setting
                          example: 12
                        TransactionTypeID:
                          type: integer
                          description: ID of the transaction type this setting applies to
                          example: 3
                        TransactionType:
                          type: string
                          description: Name of the payment rail this setting applies to
                          example: EFT
                        TransactionFee:
                          type: string
                          description: Flat fee charged per transaction
                          example: '1.50'
                        ProcessingFee:
                          type: string
                          description: Percentage-based processing fee applied to the transaction amount
                          example: '0.25'
    post:
      description: Creates or updates a convenience fee setting for a specific transaction type. If a setting already exists for the given TransactionTypeID it will be updated; otherwise a new setting is created. Requires the ManageConvenienceFees permission.
      summary: Create or update a convenience fee setting
      tags:
      - Convenience Fees
      operationId: ConvenienceFeeSettingsPOST
      deprecated: false
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                AccountID:
                  description: Your account ID
                  type: string
                Key:
                  description: API key for the account
                  type: string
                Signature:
                  description: Hashed signature for the request
                  type: string
                TransactionTypeID:
                  description: The ID of the transaction type to configure a convenience fee for
                  type: integer
                TransactionFee:
                  description: Flat fee charged per transaction
                  type: number
                  format: float
                ProcessingFee:
                  description: Percentage-based processing fee applied to the transaction amount
                  type: number
                  format: float
              required:
              - AccountID
              - Key
              - Signature
              - TransactionTypeID
        required: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  Success:
                    type: boolean
                    description: True if the request was successful, false if it failed
                    example: true
                  ErrorMessage:
                    type: string
                    description: Contains a description of the error if the request failed
                    example: ''
                  SettingID:
                    type: integer
                    description: The ID of the created or updated fee setting
                    example: 12
    delete:
      description: Deletes a convenience fee setting by ID. The setting must belong to the authenticated account. Requires the ManageConvenienceFees permission.
      summary: Delete a convenience fee setting
      tags:
      - Convenience Fees
      operationId: ConvenienceFeeSettingsDELETE
      deprecated: false
      parameters:
      - name: AccountID
        in: query
        required: true
        description: Your account ID
        schema:
          type: string
      - name: Key
        in: query
        required: true
        description: API key for the account
        schema:
          type: string
      - name: Signature
        in: query
        required: true
        description: Hashed signature for the request
        schema:
          type: string
      - name: SettingID
        in: query
        required: true
        description: The ID of the convenience fee setting to delete
        schema:
          type: integer
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  Success:
                    type: boolean
                    description: True if the request was successful, false if it failed
                    example: true
                  ErrorMessage:
                    type: string
                    description: Contains a description of the error if the request failed
                    example: ''
  /account/convenience-fees/rules:
    get:
      description: Returns all jurisdiction rules configured for the authenticated account. Each rule defines a jurisdiction (province/state) where convenience fees will not be collected. Requires the ViewConvenienceFees permission.
      summary: Get convenience fee rules
      tags:
      - Convenience Fees
      operationId: ConvenienceFeeRulesGET
      deprecated: false
      parameters:
      - name: AccountID
        in: query
        required: true
        description: Your account ID
        schema:
          type: string
      - name: Key
        in: query
        required: true
        description: API key for the account
        schema:
          type: string
      - name: Signature
        in: query
        required: true
        description: Hashed signature for the request
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  Success:
                    type: boolean
                    description: True if the request was successful, false if it failed
                    example: true
                  ErrorMessage:
                    type: string
                    description: Contains a description of the error if the request failed
                    example: ''
                  Rules:
                    type: array
                    description: Array of jurisdiction rules where convenience fees are not collected
                    items:
                      type: object
                      properties:
                        RuleID:
                          type: integer
                          description: Unique identifier for the rule
                          example: 5
                        Jurisdiction:
                          type: string
                          description: Province or state abbreviation
                          example: BC
                        Country:
                          type: string
                          description: Country abbreviation
                          example: CA
    post:
      description: Adds a jurisdiction rule for the authenticated account. Convenience fees will not be collected for transactions originating from the specified jurisdiction. Requires the ManageConvenienceFees permission.
      summary: Add a convenience fee rule
      tags:
      - Convenience Fees
      operationId: ConvenienceFeeRulesPOST
      deprecated: false
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                AccountID:
                  description: Your account ID
                  type: string
                Key:
                  description: API key for the account
                  type: string
                Signature:
                  description: Hashed signature for the request
                  type: string
                Jurisdiction:
                  description: The province or state abbreviation to add as a rule (e.g. BC, ON, AB)
                  type: string
              required:
              - AccountID
              - Key
              - Signature
              - Jurisdiction
        required: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  Success:
                    type: boolean
                    description: True if the request was successful, false if it failed
                    example: true
                  ErrorMessage:
                    type: string
                    description: Contains a description of the error if the request failed
                    example: ''
                  RuleID:
                    type: integer
                    description: The ID of the newly created rule
                    example: 5
    delete:
      description: Deletes a jurisdiction rule by ID. The rule must belong to the authenticated account. Requires the ManageConvenienceFees permission.
      summary: Delete a convenience fee rule
      tags:
      - Convenience Fees
      operationId: ConvenienceFeeRulesDELETE
      deprecated: false
      parameters:
      - name: AccountID
        in: query
        required: true
        description: Your account ID
        schema:
          type: string
      - name: Key
        in: query
        required: true
        description: API key for the account
        schema:
          type: string
      - name: Signature
        in: query
        required: true
        description: Hashed signature for the request
        schema:
          type: string
      - name: RuleID
        in: query
        required: true
        description: The ID of the jurisdiction rule to delete
        schema:
          type: integer
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  Success:
                    type: boolean
                    description: True if the request was successful, false if it failed
                    example: true
                  ErrorMessage:
                    type: string
                    description: Contains a description of the error if the request failed
                    example: ''