OpenGov Transactions API

A Transaction represents an individual payment or refund transaction on a Record.

Operations 2

GET /v2/{community}/transactions List transactions #
GET /v2/{community}/transactions/{transactionID} Get transaction #

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/opengov-transactions-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

opengov-transactions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: v2
  title: Permitting & Licensing Transactions API
  contact:
    name: OpenGov Permitting & Licensing API
    url: https://opengov.com
    email: developers@opengov.com
  description: The OpenGov Permitting & Licensing API provides programmatic access to Permitting & Licensing data and workflows.
  license:
    name: OpenGov Permitting & Licensing API
    url: https://opengov.com
servers:
- url: https://api.plce.opengov.com/plce
  description: Production
  x-og-envs:
  - production
  - staging
  - development
  - local
security:
- bearerAuth: []
- basicHttpAuthentication: []
- auth0Prod: []
- auth0Dev: []
tags:
- name: Transactions
  description: A Transaction represents an individual payment or refund transaction on a Record.
paths:
  /v2/{community}/transactions:
    parameters:
    - $ref: '#/paths/~1v2~1{community}~1approval-steps/parameters/0'
    get:
      summary: List transactions
      description: 'Retrieve a list of payment transactions that match the specified filters.

        ### Permissions Required

        `Payment Read`'
      operationId: getPaymentTransactions
      x-og-claims-required:
      - PLC_PAYMENT_READ
      tags:
      - Transactions
      parameters:
      - $ref: '#/paths/~1v2~1{community}~1approval-steps/get/parameters/0'
      - $ref: '#/paths/~1v2~1{community}~1approval-steps/get/parameters/1'
      - name: filter[transactionType]
        in: query
        description: Filter by transaction type
        required: false
        schema:
          type: string
          enum:
          - Payment
          - Refund
          - Adjustment
      - name: filter[originalPaymentID]
        in: query
        description: Filter by original payment ID
        required: false
        schema:
          type: string
      - name: filter[processedByUserID]
        in: query
        description: Filter by processed by user ID
        required: false
        schema:
          type: string
      - name: filter[payerName]
        in: query
        description: Filter by payer name
        required: false
        schema:
          type: string
      - name: filter[transactionDate]
        in: query
        description: 'Filter by transaction date, either an exact date/date-time or a range.


          A bare value (e.g. filter[transactionDate]=2026-06-19) matches that whole day when a date-only

          value is given, or that exact instant when a full ISO-8601 date-time is given.


          Supports filter[transactionDate][gte] and/or filter[transactionDate][lte] (ISO-8601 dates or date-times)

          for a range. Range is inclusive of both bounds. If only one bound is provided, filter on that bound only.


          If gte > lte, return 400 invalid_parameter.

          '
        required: false
        style: deepObject
        explode: true
        schema:
          oneOf:
          - type: string
            format: date-time
            description: Exact date or date-time to match
          - type: object
            properties:
              gte:
                type: string
                format: date-time
                description: Greater than or equal to this date-time (inclusive)
              lte:
                type: string
                format: date-time
                description: Less than or equal to this date-time (inclusive)
      - name: filter[paymentMethod]
        in: query
        description: Filter by payment method
        required: false
        schema:
          type: string
          enum:
          - Credit Card
          - Cash
          - Check
          - E-Check
          - Custom
      responses:
        '200':
          description: Payment Transactions
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      x-tags:
                      - Transactions
                      title: Transaction
                      required:
                      - type
                      - id
                      - attributes
                      properties:
                        id:
                          type: string
                          description: Unique internal ID of a transaction
                          example: txn-123456789
                        type:
                          type: string
                          enum:
                          - transaction
                          example: transaction
                        attributes:
                          type: object
                          properties:
                            amount:
                              type: number
                              format: decimal
                              description: Payment amount
                              example: 150.75
                            transactionID:
                              type: string
                              nullable: true
                              description: Unique identifier for the transaction in payment provider
                              example: stripe_1234567890
                            transactionDate:
                              type: string
                              format: date-time
                              description: Date and time when the transaction occurred
                            transactionType:
                              type: string
                              enum:
                              - Payment
                              - Refund
                              - Adjustment
                              description: Transaction type
                              example: Payment
                            transactionStatus:
                              type: string
                              enum:
                              - Succeeded
                              - Pending
                              - Failed
                              - Disputed
                              - Lost
                              description: Transaction status
                              example: Succeeded
                            paymentMethod:
                              type: string
                              enum:
                              - Credit Card
                              - Cash
                              - Check
                              - E-Check
                              - Custom
                              description: Payment method
                              example: Credit Card
                            note:
                              type: string
                              nullable: true
                              description: Additional notes related to the payment
                              example: Payment for permit application fee
                            processingFee:
                              type: number
                              format: decimal
                              nullable: true
                              description: Processing fee associated with the payment
                              example: 5.25
                            void:
                              type: boolean
                              description: Indicates whether the payment has been voided
                              default: false
                              example: false
                            originalPaymentID:
                              type: integer
                              nullable: true
                              description: Reference to the original payment if this is a refund or adjustment
                              example: 987654321
                            processedByUserID:
                              type: string
                              nullable: true
                              description: Identifier of the user who processed the payment
                              example: user-456789
                            last4:
                              type: string
                              description: Last 4 digits of the card
                              example: '1234'
                            userID:
                              type: string
                              nullable: true
                              description: Identifier of the user making the payment
                              example: user-789012
                            destinationPaymentID:
                              type: string
                              nullable: true
                              description: Identifier for the destination payment in case of fund transfers
                              example: dest-pay-345678
                            payerName:
                              type: string
                              nullable: true
                              description: Name of the payer
                              example: John Smith
                            checkNumber:
                              type: string
                              nullable: true
                              description: Check number if the payment was made by check
                              example: CHK-001234
                            communityPaidTransactionFee:
                              type: boolean
                              description: Indicates whether the community paid the transaction fee
                              default: false
                              example: true
                            updatedAt:
                              type: string
                              format: date-time
                              description: Timestamp when the payment was last updated
                              readOnly: true
                            payoutID:
                              type: string
                              nullable: true
                              description: ID of the payout
                              example: payout-567890
                            payoutDate:
                              type: string
                              format: date-time
                              nullable: true
                              description: Date and time when the payout occurred
                        relationships:
                          type: object
                          required:
                          - ledgerEntries
                          properties:
                            paymentSteps:
                              type: object
                              properties:
                                links:
                                  type: object
                                  readOnly: true
                                  properties:
                                    related:
                                      type: string
                                      format: uri-reference
                                      description: URL of the related resource
                            ledgerEntries:
                              type: object
                              properties:
                                $ref: '#/paths/~1v2~1{community}~1departments/get/responses/200/content/application~1vnd.api+json/schema/properties/data/items/properties/relationships/properties/recordTypes/properties'
                              description: The related `Ledger Entries`.
                              readOnly: true
                  links:
                    $ref: '#/paths/~1v2~1{community}~1approval-steps/get/responses/200/content/application~1vnd.api+json/schema/properties/links'
                  meta:
                    $ref: '#/paths/~1v2~1{community}~1approval-steps/get/responses/200/content/application~1vnd.api+json/schema/properties/meta'
                required:
                - data
                - links
                - meta
        '400':
          $ref: '#/paths/~1v2~1{community}~1approval-steps/get/responses/400'
        '401':
          $ref: '#/paths/~1v2~1{community}~1approval-steps/get/responses/401'
        '403':
          $ref: '#/paths/~1v2~1{community}~1approval-steps/get/responses/403'
        '404':
          $ref: '#/paths/~1v2~1{community}~1approval-steps/get/responses/404'
        '406':
          $ref: '#/paths/~1v2~1{community}~1approval-steps/get/responses/406'
        '500':
          $ref: '#/paths/~1v2~1{community}~1approval-steps/get/responses/500'
  /v2/{community}/transactions/{transactionID}:
    parameters:
    - $ref: '#/paths/~1v2~1{community}~1approval-steps/parameters/0'
    - name: transactionID
      in: path
      description: ID of a transaction
      required: true
      schema:
        type: string
    get:
      summary: Get transaction
      description: 'Retrieve a payment transaction by ID.

        ### Permissions Required

        `Payment Read`'
      operationId: getTransaction
      x-og-claims-required:
      - PLC_PAYMENT_READ
      tags:
      - Transactions
      responses:
        '200':
          description: Transaction
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    x-tags:
                    - Transactions
                    title: Transaction
                    required:
                    - type
                    - id
                    - attributes
                    properties:
                      id:
                        type: string
                        description: Unique internal ID of a transaction
                        example: txn-123456789
                      type:
                        type: string
                        enum:
                        - transaction
                        example: transaction
                      attributes:
                        type: object
                        properties:
                          amount:
                            type: number
                            format: decimal
                            description: Payment amount
                            example: 150.75
                          transactionID:
                            type: string
                            nullable: true
                            description: Unique identifier for the transaction in payment provider
                            example: stripe_1234567890
                          transactionDate:
                            type: string
                            format: date-time
                            description: Date and time when the transaction occurred
                          transactionType:
                            type: string
                            enum:
                            - Payment
                            - Refund
                            - Adjustment
                            description: Transaction type
                            example: Payment
                          transactionStatus:
                            type: string
                            enum:
                            - Succeeded
                            - Pending
                            - Failed
                            - Disputed
                            - Lost
                            description: Transaction status
                            example: Succeeded
                          paymentMethod:
                            type: string
                            enum:
                            - Credit Card
                            - Cash
                            - Check
                            - E-Check
                            - Custom
                            description: Payment method
                            example: Credit Card
                          note:
                            type: string
                            nullable: true
                            description: Additional notes related to the payment
                            example: Payment for permit application fee
                          processingFee:
                            type: number
                            format: decimal
                            nullable: true
                            description: Processing fee associated with the payment
                            example: 5.25
                          void:
                            type: boolean
                            description: Indicates whether the payment has been voided
                            default: false
                            example: false
                          originalPaymentID:
                            type: integer
                            nullable: true
                            description: Reference to the original payment if this is a refund or adjustment
                            example: 987654321
                          processedByUserID:
                            type: string
                            nullable: true
                            description: Identifier of the user who processed the payment
                            example: user-456789
                          last4:
                            type: string
                            description: Last 4 digits of the card
                            example: '1234'
                          userID:
                            type: string
                            nullable: true
                            description: Identifier of the user making the payment
                            example: user-789012
                          destinationPaymentID:
                            type: string
                            nullable: true
                            description: Identifier for the destination payment in case of fund transfers
                            example: dest-pay-345678
                          payerName:
                            type: string
                            nullable: true
                            description: Name of the payer
                            example: John Smith
                          checkNumber:
                            type: string
                            nullable: true
                            description: Check number if the payment was made by check
                            example: CHK-001234
                          communityPaidTransactionFee:
                            type: boolean
                            description: Indicates whether the community paid the transaction fee
                            default: false
                            example: true
                          updatedAt:
                            type: string
                            format: date-time
                            description: Timestamp when the payment was last updated
                            readOnly: true
                          payoutID:
                            type: string
                            nullable: true
                            description: ID of the payout
                            example: payout-567890
                          payoutDate:
                            type: string
                            format: date-time
                            nullable: true
                            description: Date and time when the payout occurred
                      relationships:
                        type: object
                        required:
                        - ledgerEntries
                        properties:
                          paymentSteps:
                            type: object
                            properties:
                              links:
                                type: object
                                readOnly: true
                                properties:
                                  related:
                                    type: string
                                    format: uri-reference
                                    description: URL of the related resource
                          ledgerEntries:
                            $ref: '#/paths/~1v2~1{community}~1transactions/get/responses/200/content/application~1vnd.api+json/schema/properties/data/items/properties/relationships/properties/ledgerEntries'
                required:
                - data
        '400':
          $ref: '#/paths/~1v2~1{community}~1approval-steps/get/responses/400'
        '401':
          $ref: '#/paths/~1v2~1{community}~1approval-steps/get/responses/401'
        '403':
          $ref: '#/paths/~1v2~1{community}~1approval-steps/get/responses/403'
        '404':
          $ref: '#/paths/~1v2~1{community}~1approval-steps/get/responses/404'
        '406':
          $ref: '#/paths/~1v2~1{community}~1approval-steps/get/responses/406'
        '500':
          $ref: '#/paths/~1v2~1{community}~1approval-steps/get/responses/500'
components:
  securitySchemes:
    basicHttpAuthentication:
      type: http
      scheme: basic
      description: 'Basic HTTP Authentication

        '
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: 'The OpenGov Permitting & Licensing API is authenticated using the OAuth2 Client Credentials flow. Access tokens are provided as a bearer token Authorization header in all API requests.

        To obtain an access token, you must have an OpenGov-provided Client ID and Client Secret.

        Access tokens are obtained by making a POST request to `https://accounts.viewpointcloud.com/oauth/token`

        '
    auth0Prod:
      type: openIdConnect
      openIdConnectUrl: https://accounts.viewpointcloud.com/.well-known/openid-configuration
      description: 'The OpenGov Permitting & Licensing API is authenticated using the OAuth2 Client Credentials flow. Access tokens are provided as a bearer token Authorization header in all API requests.

        To obtain an access token, you must have an OpenGov-provided Client ID and Client Secret.

        '
    auth0Dev:
      type: openIdConnect
      openIdConnectUrl: https://login.vpctest.com/.well-known/openid-configuration
      description: 'The OpenGov Permitting & Licensing API is authenticated using the OAuth2 Client Credentials flow. Access tokens are provided as a bearer token Authorization header in all API requests.

        To obtain an access token, you must have an OpenGov-provided Client ID and Client Secret.

        '
x-og-spec-id: plc-api-v2
x-og-claims:
  PLC_RECORD_READ: Record Read
  PLC_RECORD_WRITE: Record Write
  PLC_RECORD_ARCHIVE: Record Archive
  PLC_RECORD_STEP_READ: Workflow Read
  PLC_RECORD_STEP_CREATE: Workflow Write
  PLC_RECORD_STEP_UPDATE: Workflow Write
  PLC_RECORD_STEP_COMMENT_READ: Comment Read
  PLC_RECORD_STEP_COMMENT_WRITE: Comment Write
  PLC_USER_READ: User Read
  PLC_USER_WRITE: User Write
  PLC_RECORD_TYPE_READ: Record Type Read
  PLC_SYSTEM_CONFIG_READ: System Config Read
  PLC_LOCATION_READ: Location Read
  PLC_LOCATION_WRITE: Location Write
  PLC_PAYMENT_READ: Payment Read
  PLC_PAYMENT_WRITE: Payment Write
  PLC_FILE_READ: File Read
  PLC_FILE_WRITE: File Write
  PLC_ACTIVITY_LOG_READ: Activity Log Read
x-tagGroups:
- name: Records
  tags:
  - Record
  - Record Applicant
  - Record Guests
  - Record Primary Location
  - Record Additional Locations
  - Record Forms
  - Record Change Requests
  - Record Attachments
  - Record Workflow Steps
  - Record Workflow Step Comments
- name: Locations
  tags:
  - Locations
  - Location Flags
- name: Users
  tags:
  - Users
  - User Flags
- name: Approvals
  tags:
  - Approval Steps
- name: Documents
  tags:
  - Document Steps
  - Issued Documents
- name: Inspections
  tags:
  - Inspection Steps
  - Inspection Types
  - Inspection Events
  - Inspection Results
  - Checklist Results
- name: Payments
  tags:
  - Payment Steps
  - Fees
  - Transactions
  - Ledger Entries
- name: Projects
  tags:
  - Projects
- name: Files
  tags:
  - Files
- name: Configuration
  tags:
  - Organization
  - Departments
  - Record Types
  - Record Type Form
  - Record Type Attachments
  - Record Type Document Templates
  - Record Type Fees
  - Record Type Workflow
  - Inspection Type Templates
  - Checklist Templates
- name: Activity Logs
  tags:
  - Activity Logs