Stop Accepting Fake Insurance Certificates
Real-time COI verification. Cryptographically signed certificates from carriers. Know coverage is active before work begins.
How it works
# Issue a credential to an employee
client = AhoSdk.issuer(api_key: ENV["AHO_API_KEY"])
credential = client.credentials.create(
body: {
schema_id: "CertificateOfInsurance",
subject_identifier: "did:key:z6Mk...",
claims: {
policy_number: "GL-2026-12345",
coverage_type: "General Liability",
coverage_amount: 2000000,
effective_date: "2026-01-01",
expiration_date: "2027-01-01"
}
}
)
# Verify contractor insurance coverage
client = AhoSdk.verifier(api_key: ENV["AHO_API_KEY"])
# Request insurance proof from contractor
request = client.requests.create(
body: {
name: "Insurance Verification",
purpose: "Verify contractor has valid COI"
}
)
# Check coverage details
response = client.responses.get(
request_uuid: "req_abc123",
uuid: "resp_xyz789"
)
gem install aho-sdk · pip install aho-sdk · npm install @aho-sdk/core
Use cases
Property Management
Contractor verification
Logistics
Carrier compliance
Construction
Subcontractor COIs
Real Estate
Vendor management
Frequently Asked Questions
The insurance carrier issues a signed COI credential when the policy is active. When you verify, we check both the cryptographic signature and the real-time revocation status. Coverage cancelled? Credential fails to verify.
ACORD forms are PDFs — easy to forge, impossible to verify programmatically. Our credentials are cryptographically signed by the carrier. You know it's real because only the carrier could have signed it.
Yes. The credential goes to Apple Wallet or Google Wallet. Contractor arrives on-site, you scan the QR code, coverage verified in seconds.
The carrier issues an updated credential with new coverage amounts. Old credential still works until revoked. You can require minimum coverage amounts in your verification request.
Additional insured endorsements are claims in the credential. You verify both the policy and that your company is listed as additional insured — programmatically, not by reading a PDF.
Verify insurance in real-time.
No credit card required. Know coverage is active now.