API Integration Guide

Enterprise-grade REST API built for government systems. Each report has its own API keys and endpoints. Integrate with Tyler Technologies, Incode, and other platforms using your own data format with dot notation and array indexing.

Zero
Middleware Required
100%
Custom Field Mapping
Free
API Access Included

Looking for Real-World Examples?

See complete integration guides for Property Tax, Traffic Tickets, Tyler Technologies, and more with field mappings and code examples.

View Integration Examples →

Key Features

Custom Schema Mapping

Configure field aliases to use your own naming conventions. The API adapts to your systems, not vice versa.

Dot Notation & Array Indexing

Flatten complex nested JSON using dot notation and array indexing (e.g., customer.account[0].balance). No middleware required—map directly from Tyler Technologies, Incode, and other complex APIs.

Smart Data Parsing

Accepts dollars or cents, 4 date formats, currency symbols, and formatted strings. Handles real-world messy data.

Real-Time Sync

Automatic balance updates and payment notifications. Keep your systems in sync with zero manual intervention.

Understanding Report-Based API Architecture

DyerPay uses a flexible, report-centric API architecture that gives you complete control over your data organization.

Unique Keys Per Report

Every report you create has its own unique API keys and authentication credentials. This allows you to segregate access and maintain security boundaries between different data sources.

Dedicated Endpoints

Each report has its own unique API endpoint. Import and export data specific to that report without affecting or mixing data from other reports in your agency.

Multiple Reports & Pay Pages Per Agency

Your agency can create multiple reports to handle different data sources (e.g., Property Tax, Water Bills, Court Fees, Permits). Each report can have multiple pay pages with different configurations.

Example Agency Setup:

  • Report 1: Property Tax (API Key: dp_live_prop_abc123) → Pay Page for Residential, Pay Page for Commercial
  • Report 2: Water Utility (API Key: dp_live_water_def456) → Pay Page for Standard Accounts, Pay Page for Past Due
  • Report 3: Court Fees (API Key: dp_live_court_ghi789) → Pay Page for Traffic Citations, Pay Page for Civil Fees

Why This Architecture Matters

Data Isolation: Keep different systems' data completely separate

Granular Security: Control API access per data source

Custom Field Mapping: Each report has its own field aliases

Flexible Scaling: Add new reports without affecting existing ones

Getting Started

1

Get Your Report-Specific API Key

Each report has its own unique API key. Generate API keys from your DyerPay dashboard under the specific report's Settings → API Access. Remember: each report you create will have different keys and endpoints.

API_KEY=dp_live_propertytax_abcdef123456...
2

Configure Field Mappings for Your Report

Each report has its own custom field aliases that match your source system's naming conventions. All API requests and responses for that specific report will use your configured field names.

{ 
  "account_number": "Acct#",
  "remaining_cents": "Balance Due",
  "due_date": "DueDate"
}
3

Make Your First Request to Your Report's Endpoint

Use HTTP Basic Auth with your report-specific API key. All requests must be made over HTTPS to the endpoint unique to your report.

curl https://api.dyerpay.com/v1/reports/{report_id}/balances \
  -u dp_live_propertytax_abcdef123456789:

Core API Endpoints (Per Report)

All endpoints are scoped to the specific report. Replace {report_id} with your report's unique identifier from the dashboard.

POST /v1/reports/{report_id}/balances/import

Import or update account balances in bulk for this specific report (up to 1,000 records per request).

{ 
  "balances": [
    { 
      "Acct#": "12345",
      "Balance Due": "234.56",
      "DueDate": "2024-03-15"
    }
  ]
}
GET /v1/reports/{report_id}/balances/export

Export all balances for this specific report with optional filtering and pagination (up to 10,000 per page).

GET /v1/reports/{report_id}/balances/export?page=1&limit=100
GET /v1/reports/{report_id}/payments/export

Retrieve payment transactions for this specific report with filtering by date range, status, or account.

Advanced Features

Dot Notation & Array Indexing for Complex JSON Flattening

Flatten deeply nested and complex JSON structures from any third-party system using dot notation and array indexing. This allows you to map complex incoming data to your DyerPay fields without middleware or data transformation.

Complex Incoming JSON:

{ 
  "customer": { 
    "account": { 
      "id": "A-12345",
      "balances": [
        { 
          "type": "primary",
          "amount": 234.56,
          "due": "2024-03-15"
        }
      ]
    },
    "contact": { 
      "addresses": [
        { "street": "123 Main" }
      ]
    }
  }
}

Field Alias Configuration:

{ 
  "account_number": 
    "customer.account.id",
  
  "remaining_cents": 
    "customer.account.balances[0].amount",
  
  "due_date": 
    "customer.account.balances[0].due",
  
  "address": 
    "customer.contact.addresses[0].street"
}

Supported Path Syntax:

property.subproperty Dot notation for nested objects
array[0] Array indexing (0-based)
parent.child[0].value Combined notation
data[1].items[0] Multiple array levels

JSONPath for Advanced Queries

For more complex queries beyond dot notation, use full JSONPath expressions:

{ 
  "jsonpath": { 
    "Acct#": "propertyTax.parcel.number",
    "Balance Due": "assessment.amount"
  }
}

Smart Currency Parsing

All these formats are automatically handled:

"234.56"    → 23456 cents
"$1,234.56" → 123456 cents
23456       → 23456 cents
"-100.50"   → -10050 cents

Enterprise Security & Compliance

DyerPay meets the highest security and compliance standards for government payment processing:

Compliance Certifications

  • PCI DSS Compliant: Payment Card Industry Data Security Standard certified for secure card processing
  • SOC 2 Compliant: Service Organization Control audited for security, availability, and confidentiality

Comprehensive Insurance Coverage

  • Business Liability Insurance: Full coverage for business operations
  • Cyber Security Insurance: Protection against data breaches and cyber incidents
  • E&O Insurance: Errors and Omissions coverage for professional services

All payments are fully protected by industry-leading security standards and comprehensive insurance coverage, giving your agency and citizens complete peace of mind.

Technical Specifications

Rate Limits

  • • 20 imports/minute
  • • 100 exports/minute
  • • Burst capacity available

Request Limits

  • • Max 1,000 records per import
  • • Max 10,000 per export page
  • • 500 char field length

Security

  • • HTTPS required
  • • HTTP Basic Auth
  • • Base64-encoded API keys

Data Formats

  • • JSON request/response
  • • UTF-8 encoding
  • • ISO 8601 dates recommended

Real-World Integration Examples

See complete integration guides with field mappings, code examples, and best practices for common use cases.

Ready to Integrate?

Contact us to get your API credentials and start building your integration today.

DyerPay

Municipal payments made simple.

Agency Portal

About

DyerPay provides simple, transparent payment processing for municipal agencies. No subscriptions, no contracts, no lock-in.

Pricing

  • Card Transactions: $2.00 + processing fees
  • ACH Payments: $1.00
  • No monthly fees

Contact

Get in Touch

© 2026 DyerPay. All rights reserved.