Griffin Confirmation of payee API
The Confirmation of payee API from Griffin — 2 operation(s) for confirmation of payee.
The Confirmation of payee API from Griffin — 2 operation(s) for confirmation of payee.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/griffin-confirmation-of-payee-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: Griffin Confirmation of payee API
version: ''
description: '## Introduction
The Griffin API is based on REST.'
servers:
- url: https://api.griffin.com/
security:
- api-key-auth: []
tags:
- name: Confirmation of Payee
paths:
/v0/organizations/{organization-id}/cop-request:
post:
tags:
- Confirmation of Payee
description: Create a Confirmation of Payee (CoP) request.
parameters:
- required: true
name: organization-id
in: path
schema:
type: string
responses:
'201':
description: ''
content:
application/json:
schema:
type: object
properties:
cop-request-url:
type: string
x-allOf:
- type: string
- {}
- type: object
properties:
cop-request-id:
type: string
format: ''
title: cop-request-id
required: true
name: cop-request-id
required:
- cop-request-id
x-anyOf:
- type: string
x-allOf:
- type: string
- {}
- type: object
properties:
cop-request-id:
type: string
format: ''
title: cop-request-id
required: true
name: cop-request-id
required:
- cop-request-id
- type: string
x-allOf:
- type: string
- {}
- type: object
properties:
cop-request-id:
type: string
format: ''
title: cop-request-id
required: true
name: cop-request-id
required:
- cop-request-id
title: cop-request-url
example: /v0/cop-request/cp.ICBjb3AtcmVxdWVzdC1pZA
description: Link to a [CoP request](#tag/Confirmation-of-payee).
account:
type: object
properties:
account-number:
type: string
x-allOf:
- type: string
- {}
title: account-number
pattern: ^[0-9]{8}$
description: A UK account number.
maxLength: 8
example: '12345678'
minLength: 8
bank-id:
title: bank-id
pattern: ^[0-9]{6}$
type: string
description: A UK sort code.
maxLength: 6
example: '123456'
minLength: 6
account-classification:
title: account-classification
type: string
enum:
- personal
- business
name:
title: name
description: The name of the payee.
example: John Smith
requester-legal-person-url:
type: string
x-allOf:
- type: string
- {}
- type: object
properties:
legal-person-id:
type: string
format: ''
title: legal-person-id
required: true
name: legal-person-id
required:
- legal-person-id
x-anyOf:
- type: string
x-allOf:
- type: string
- {}
- type: object
properties:
legal-person-id:
type: string
format: ''
title: legal-person-id
required: true
name: legal-person-id
required:
- legal-person-id
- type: string
x-allOf:
- type: string
- {}
- type: object
properties:
legal-person-id:
type: string
format: ''
title: legal-person-id
required: true
name: legal-person-id
required:
- legal-person-id
title: requester-legal-person-url
example: /v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA
description: A contextual link to the [legal person](#tag/Legal-persons).
secondary-reference-data:
title: secondary-reference-data
description: Secondary reference data, such as a building society roll number or a credit card number.
example: '1234567890'
required:
- account-number
- bank-id
- account-classification
- name
- requester-legal-person-url
title: account
description: The payee's account details.
cop-response:
type: object
properties:
status:
title: status
type: string
enum:
- verified
- unverified
result:
title: result
type: string
enum:
- match
- close-match
- no-match
reason:
title: reason
type: string
enum:
- no-match-name
- account-not-supported
- match-name-business-personal
- match-name-personal-business
- close-match-name-business-personal
- no-match-secondary-ref
- close-match-name
- account-switched
- close-match-name-personal-business
suggested-name:
type: string
title: suggested-name
description: The suggested name of the payee. Only present on a close match.
suggested-account-classification:
title: suggested-account-classification
enum:
- personal
- business
type: string
description: The suggested account classification. Only present on a close match.
example: business
required:
- status
- result
title: cop-response
description: The outcome of the CoP request
required:
- cop-request-url
- account
- cop-response
title: cop-request
'400':
description: ''
'401':
description: Requires an API key to continue
headers:
www-authenticate:
description: Returns `GriffinSession` if no valid authentication is found.
schema:
type: string
'404':
description: ''
'409':
description: ''
'422':
description: ''
summary: Create a CoP request
requestBody:
content:
application/json:
schema:
type: object
properties:
account-number:
type: string
x-allOf:
- type: string
- {}
title: account-number
pattern: ^[0-9]{8}$
description: A UK account number.
maxLength: 8
example: '12345678'
minLength: 8
bank-id:
title: bank-id
pattern: ^[0-9]{6}$
type: string
description: A UK sort code.
maxLength: 6
example: '123456'
minLength: 6
account-classification:
title: account-classification
type: string
enum:
- personal
- business
name:
title: name
description: The name of the payee.
example: John Smith
requester-legal-person-url:
type: string
x-allOf:
- type: string
- {}
- type: object
properties:
legal-person-id:
type: string
format: ''
title: legal-person-id
required: true
name: legal-person-id
required:
- legal-person-id
x-anyOf:
- type: string
x-allOf:
- type: string
- {}
- type: object
properties:
legal-person-id:
type: string
format: ''
title: legal-person-id
required: true
name: legal-person-id
required:
- legal-person-id
- type: string
x-allOf:
- type: string
- {}
- type: object
properties:
legal-person-id:
type: string
format: ''
title: legal-person-id
required: true
name: legal-person-id
required:
- legal-person-id
title: requester-legal-person-url
example: /v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA
description: A contextual link to the [legal person](#tag/Legal-persons).
secondary-reference-data:
title: secondary-reference-data
description: Secondary reference data, such as a building society roll number or a credit card number.
example: '1234567890'
required:
- account-number
- bank-id
- account-classification
- name
- requester-legal-person-url
title: create-cop-request
required: true
operationId: postV0OrganizationsByOrganizationIdCopRequest
x-operation-id-source: derived
/v0/simulation/organizations/{organization-id}/cop-request/simulate/{cop-simulation-type}:
post:
tags:
- Confirmation of Payee
description: 'Simulate the creation of a CoP Request. Note: This is an alpha API and may change anytime.'
parameters:
- required: true
name: organization-id
in: path
schema:
type: string
- description: The type of simulation to run.
in: path
name: cop-simulation-type
required: true
schema:
type: string
enum:
- match-name-business-personal
- account-not-found
- full-match
- no-match-name
- no-match-secondary-ref
- close-match-name-business-personal
- close-match-name-personal-business
- account-switched
- close-match-name
- account-not-supported
- match-name-personal-business
responses:
'201':
description: ''
content:
application/json:
schema:
type: object
properties:
cop-request-url:
type: string
x-allOf:
- type: string
- {}
- type: object
properties:
cop-request-id:
type: string
format: ''
title: cop-request-id
required: true
name: cop-request-id
required:
- cop-request-id
x-anyOf:
- type: string
x-allOf:
- type: string
- {}
- type: object
properties:
cop-request-id:
type: string
format: ''
title: cop-request-id
required: true
name: cop-request-id
required:
- cop-request-id
- type: string
x-allOf:
- type: string
- {}
- type: object
properties:
cop-request-id:
type: string
format: ''
title: cop-request-id
required: true
name: cop-request-id
required:
- cop-request-id
title: cop-request-url
example: /v0/cop-request/cp.ICBjb3AtcmVxdWVzdC1pZA
description: Link to a [CoP request](#tag/Confirmation-of-payee).
account:
type: object
properties:
account-number:
type: string
x-allOf:
- type: string
- {}
title: account-number
pattern: ^[0-9]{8}$
description: A UK account number.
maxLength: 8
example: '12345678'
minLength: 8
bank-id:
title: bank-id
pattern: ^[0-9]{6}$
type: string
description: A UK sort code.
maxLength: 6
example: '123456'
minLength: 6
account-classification:
title: account-classification
type: string
enum:
- personal
- business
name:
title: name
description: The name of the payee.
example: John Smith
requester-legal-person-url:
type: string
x-allOf:
- type: string
- {}
- type: object
properties:
legal-person-id:
type: string
format: ''
title: legal-person-id
required: true
name: legal-person-id
required:
- legal-person-id
x-anyOf:
- type: string
x-allOf:
- type: string
- {}
- type: object
properties:
legal-person-id:
type: string
format: ''
title: legal-person-id
required: true
name: legal-person-id
required:
- legal-person-id
- type: string
x-allOf:
- type: string
- {}
- type: object
properties:
legal-person-id:
type: string
format: ''
title: legal-person-id
required: true
name: legal-person-id
required:
- legal-person-id
title: requester-legal-person-url
example: /v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA
description: A contextual link to the [legal person](#tag/Legal-persons).
secondary-reference-data:
title: secondary-reference-data
description: Secondary reference data, such as a building society roll number or a credit card number.
example: '1234567890'
required:
- account-number
- bank-id
- account-classification
- name
- requester-legal-person-url
title: account
description: The payee's account details.
cop-response:
type: object
properties:
status:
title: status
type: string
enum:
- verified
- unverified
result:
title: result
type: string
enum:
- match
- close-match
- no-match
reason:
title: reason
type: string
enum:
- no-match-name
- account-not-supported
- match-name-business-personal
- match-name-personal-business
- close-match-name-business-personal
- no-match-secondary-ref
- close-match-name
- account-switched
- close-match-name-personal-business
suggested-name:
type: string
title: suggested-name
description: The suggested name of the payee. Only present on a close match.
suggested-account-classification:
title: suggested-account-classification
enum:
- personal
- business
type: string
description: The suggested account classification. Only present on a close match.
example: business
required:
- status
- result
title: cop-response
description: The outcome of the CoP request
required:
- cop-request-url
- account
- cop-response
title: cop-request
'400':
description: ''
'401':
description: Requires an API key to continue
headers:
www-authenticate:
description: Returns `GriffinSession` if no valid authentication is found.
schema:
type: string
'404':
description: ''
'409':
description: ''
'422':
description: ''
summary: '[Alpha] Simulate a CoP request'
requestBody:
content:
application/json:
schema:
type: object
properties:
account-number:
type: string
x-allOf:
- type: string
- {}
title: account-number
pattern: ^[0-9]{8}$
description: A UK account number.
maxLength: 8
example: '12345678'
minLength: 8
bank-id:
title: bank-id
pattern: ^[0-9]{6}$
type: string
description: A UK sort code.
maxLength: 6
example: '123456'
minLength: 6
account-classification:
title: account-classification
type: string
enum:
- personal
- business
name:
title: name
description: The name of the payee.
example: John Smith
requester-legal-person-url:
type: string
x-allOf:
- type: string
- {}
- type: object
properties:
legal-person-id:
type: string
format: ''
title: legal-person-id
required: true
name: legal-person-id
required:
- legal-person-id
x-anyOf:
- type: string
x-allOf:
- type: string
- {}
- type: object
properties:
legal-person-id:
type: string
format: ''
title: legal-person-id
required: true
name: legal-person-id
required:
- legal-person-id
- type: string
x-allOf:
- type: string
- {}
- type: object
properties:
legal-person-id:
type: string
format: ''
title: legal-person-id
required: true
name: legal-person-id
required:
- legal-person-id
title: requester-legal-person-url
example: /v0/legal-persons/lp.IGxlZ2FsLXBlcnNvbi1pZA
description: A contextual link to the [legal person](#tag/Legal-persons).
secondary-reference-data:
title: secondary-reference-data
description: Secondary reference data, such as a building society roll number or a credit card number.
example: '1234567890'
required:
- account-number
- bank-id
- account-classification
- name
- requester-legal-person-url
title: create-cop-request
required: true
operationId: postV0SimulationOrganizationsByOrganizationIdCopRequestSimulateByCopSimulationType
x-operation-id-source: derived
components:
securitySchemes:
api-key-auth:
type: apiKey
in: header
name: Authorization
description: 'API token authentication.
It should follow the format: `GriffinAPIKey g-test-MyKey-XXXXXXX`'
x-tagGroups:
- name: Getting started
tags:
- API keys
- Connectivity
- Navigation
- Events
- Webhooks
- Message Signatures
- name: Customer verifications
tags:
- Legal persons
- Legal person history
- Claims
- Workflows
- Verifications
- Decisions
- Companies House
- Reliance onboarding
- name: Banking
tags:
- Bank accounts
- Bank account events
- Bank account restrictions
- Bank account holds
- Pooled account membership
- Payments
- Transactions
- Payees
- Confirmation of payee
- Open banking
- name: Team management
tags:
- Organizations
- Users
- Roles
- Memberships
- Invitations
x-id:
- default