API template library

Chase Validation Services mock API and live sandbox

A WireMock simulation of Chase JPMorgan's REST API — covering bank-account verification and ownership authentication plus entity identity checks and sanctions screening.

Vendor
Chase JPMorgan
Functionality
Account and entity validation
Spec version
2.1.11
Endpoints
2
Stubs
18
Protocol
REST
Validation
AI-validated Before publication, an AI agent exercised these endpoints against the real Chase JPMorgan API through WireMock's recording proxy, and the recorded traffic was used to verify each stub's request and response shapes.

Live sandbox · no signup, no API key

Chase Validation Services

A running WireMock Cloud instance of this template, callable right now from a terminal, a script, or an AI agent.

Base URL
https://kv850.wiremockapi.cloud

POST Entity Validation - Individual - 200

curl -s -X POST 'https://kv850.wiremockapi.cloud/validations/entities' \
  -H 'x-program-id: COMPANYINDIVIDUAL' \
  -H 'Content-Type: application/json' \
  -d '{}'

POST Entity Validation - Organization - 200

curl -s -X POST 'https://kv850.wiremockapi.cloud/validations/entities' \
  -H 'x-program-id: COMPANYORGANIZATION' \
  -H 'Content-Type: application/json' \
  -d '{}'

POST Entity Validation - Individual Screening - 200

curl -s -X POST 'https://kv850.wiremockapi.cloud/validations/entities' \
  -H 'x-program-id: SCREENITINDIVIDUAL' \
  -H 'Content-Type: application/json' \
  -d '{}'
Method Path Summary
POST /validations/accounts Account validation
POST /validations/entities Entity validation

Unauthenticated WireMock Cloud demo sandbox for Chase JPMorgan — not an official Chase JPMorgan sandbox, and it returns simulated example data only.

What's inside the Validation Services template

Two POST routes carry the whole surface — account validation and entity validation — and the x-program-id request header is the entire routing key, selecting among seventeen fixtures with exact string matching while the request body goes unread. On the account side that yields five products in one endpoint: the US check pairing verification 1002 "Open Valid" with authentication 5002 "Ownership Match" over masked account details and an ABA clearing id, an account-confidence variant scoring 1109 "Information Found", a non-US check answered by provider EWS, a multi-account profile, and a micro-deposit flow resting at 3001 "Pending". Entity validation answers LexisNexis-style Pass verdicts for individuals and organizations, and JPMC screening fixtures where sanctions and PEP searches report potential matches — including the organization case whose sanctions search comes back CLEAR while its PEP search doesn't. Four more program-ids return the gateway's 400, 403, 429, and 500 error envelopes on demand.

  • Account verification — open-and-valid checks with ownership authentication, confidence scoring, and an EWS-backed non-US path
  • Micro-deposits — the initial ACH verification fixture holding at code 3001 Pending
  • Identity checks — individual and organization Pass verdicts in the provider code-and-message grammar
  • Screening — sanctions and PEP search results with per-search record states, split across two hit profiles
  • Error rehearsal — header-selectable 400, 403, 429, and 500 envelopes on both endpoints

Frequently asked questions

Set the x-program-id header — it's the only thing the matcher reads. VERIAUTH, VERIAUTHUS, VERIAUTHNONUS, VERIAUTHMULTI, and the literal string PROGRAMID select the five account fixtures; COMPANYINDIVIDUAL, COMPANYORGANIZATION, SCREENITINDIVIDUAL, and SCREENITORGANIZATION drive the entity side; BADREQUEST, FORBIDDEN, RATELIMITED, and SERVERERROR summon the error envelopes. Matching is exact — a near-miss or a missing header falls through to nothing — and the body you post changes no outcome, so the same client request can walk every fixture just by rotating one header value.

No — the verdict set is deliberately lopsided. Accounts only ever come back open and valid with ownership matched, identity checks only Pass, and the screening fixtures center on the analyst-queue case: potential matches on sanctions and PEP lists, with the organization profile splitting the two (sanctions CLEAR, PEP flagged) so per-search branching gets exercised. Declined accounts, failed identity checks, and fully clear screenings are the stubs to add in a private WireMock Cloud copy, where a new header value per scenario slots into the same routing scheme.

Two different top-level shapes depending on outcome — the detail that catches most consumers. Success is a JSON array of result objects, each nesting provider responses whose codes block pairs an integer with a message; errors are a single object wrapping an errors array. A deserializer bound to one shape chokes on the other. Smaller snags are seeded too: the rate-limit envelope uses a bare numeric errorCode where every other error is GCA-prefixed, and the hardcoded requestIds repeat across calls — so don't key logs on their uniqueness.

Same pre-payment question, different testing affordances. The Account Validation template ships as spec-plus-stubs without a public sandbox, its EWS heritage expressed through three response depths. This one runs live and trades depth variety for scenario routing — one header flips between five account products and four errors — and adds the entity-and-screening dimension U.S. Bank's surface doesn't carry. For a funnel that validates the account, the counterparty, and the watchlists in one flow, this is the template that rehearses all three calls.

Vendor names identify APIs represented by WireMock template sources. This page does not imply vendor endorsement, certification, partnership, or official integration status.