Skip to main content

PSR Details Schema Reference

Headers and Parameters

FieldLocationRequiredTypeFormat / Constraints
X-API-KEYHeaderYesstringUUID format
X-IDEMPOTENCY-KEYHeader (POST /{mpid})YesstringNon-empty string
mpidPathYesstringSupplier MPID
mpan_idQuery (GET)Yesinteger13-digit MPAN core

Request Schema (PSRDetailsNewRequestSchema)

FieldRequiredTypeFormat / Constraints
mpan_coreYesintegerExactly 13 digits, numeric
primary_psr_contact_nameNostring or nullMax 50 chars
primary_psr_phone_number_1Conditionalstring or nullUK phone regex `^(?:0
primary_psr_phone_number_2Nostring or nullSame phone regex
alternate_psr_contact_nameNostring or nullMax 50 chars
alternate_psr_phone_number_1Nostring or nullSame phone regex
alternate_psr_phone_number_2Nostring or nullSame phone regex
psr_address_line_1 .. psr_address_line_9Conditionalstring or nullMax 40 chars each; at least one address line or primary_psr_phone_number_1 is required
psr_postcodeConditionalstring or nullMax 10 chars; required when any PSR address line is present
lawful_basis_for_sharingYesbooleanBoolean
psr_detailsYesarrayMust be a list
psr_details[].psr_categoryYesstringExactly 2 chars; allowed values include 01,02,03,04,08,09,10,12,14,15,17,18,19,20,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37
psr_details[].psr_expiry_dateConditionalstring or nullRequired for categories 29, 32, 33, 34; format YYYYMMDD; must be a future date
psr_details[].additional_informationConditionalstring or nullRequired for category 17; max 200 chars

Additional validation:

  • Extra/unknown fields are rejected.
  • The request is handled as either a new submission or an amendment, depending on existing active PSR details for the MPAN.

Request Schema (PSRDetailsRemoveRequestSchema)

FieldRequiredTypeFormat / Constraints
mpan_coreYesintegerExactly 13 digits, numeric
lawful_basis_for_sharingYesbooleanBoolean

Response Schema (PSRCustomerResponseSchema)

FieldRequiredTypeFormat / Constraints
mpan_coreYesintegerMPAN core
primary_psr_contact_nameNostring or nullMax 50 chars
primary_psr_phone_number_1Nostring or nullStored phone number
primary_psr_phone_number_2Nostring or nullStored phone number
alternate_psr_contact_nameNostring or nullMax 50 chars
alternate_psr_phone_number_1Nostring or nullStored phone number
alternate_psr_phone_number_2Nostring or nullStored phone number
psr_address_line_1 .. psr_address_line_9Nostring or nullMax 40 chars each
psr_postcodeNostring or nullMax 10 chars
lawful_basis_for_sharingYesbooleanBoolean
psr_detailsNoarrayList of PSR category detail objects
psr_details[].psr_categoryYesstringTwo-character PSR category
psr_details[].psr_expiry_dateNostring or nullYYYYMMDD when present
psr_details[].additional_informationNostring or nullFree text

Process Response Schema (SupplierProcessResponseSchema)

Used by both POST endpoints.

FieldRequiredTypeFormat / Constraints
request_idYesstringUUID
request_typeYesstringProcess type name
request_statusYesstring(enum)Pending, Success, Failed
descriptionNostring or nullProcess type description
created_atYesstring(datetime)ISO 8601 datetime
last_updated_atYesstring(datetime)ISO 8601 datetime
mpan_coreYesintegerMPAN core