---
updatedAt: 2026-05-27T09:41:56.000Z
agentTools:
  projectIndex: https://docs.truelayer.com/llms.txt
---

# Get user data by payment

Get user data from a completed payment.


# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "version": "1.0.0",
    "title": "Signup+",
    "description": "This is the specification for the signup+ product.\n"
  },
  "servers": [
    {
      "url": "https://api.truelayer-sandbox.com/signup-plus",
      "description": "Sandbox server"
    },
    {
      "url": "https://api.truelayer.com/signup-plus",
      "description": "Production server"
    }
  ],
  "security": [
    {
      "bearer_auth": []
    }
  ],
  "tags": [
    {
      "name": "User Data",
      "description": "Get User Data using Open Banking."
    }
  ],
  "paths": {
    "/payments": {
      "get": {
        "tags": [
          "User Data"
        ],
        "summary": "Get user data by payment",
        "description": "Get user data from a completed payment.\n",
        "operationId": "getUserDataByPayment",
        "parameters": [
          {
            "name": "payment_id",
            "in": "query",
            "description": "ID of the payment",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/User"
                    }
                  ]
                },
                "examples": {
                  "user data UK": {
                    "summary": "User data UK",
                    "value": {
                      "title": "Mr",
                      "first_name": "Sherlock",
                      "last_name": "Holmes",
                      "date_of_birth": "1854-01-06",
                      "address": {
                        "address_line1": "221B Baker St",
                        "address_line2": "Flat 2",
                        "city": "London",
                        "state": "Greater London",
                        "zip": "NW1 6XE",
                        "country": "GB"
                      },
                      "account_details": {
                        "account_number": "41921234",
                        "sort_code": "04-01-02",
                        "iban": "GB71MONZ04435141923452",
                        "provider_id": "ob-monzo"
                      }
                    }
                  },
                  "user data FI": {
                    "summary": "User data FI",
                    "value": {
                      "first_name": "Tero Testi",
                      "last_name": "Äyrämö",
                      "date_of_birth": "1970-01-01",
                      "national_identification_number": "010170-1234",
                      "sex": "M",
                      "address": {
                        "address_line1": "Kauppa Puistikko 6 B 15",
                        "city": "VAASA",
                        "zip": "65100",
                        "country": "FI"
                      },
                      "account_details": {
                        "iban": "FI53CLRB04066200002723",
                        "provider_id": "fi-op"
                      }
                    }
                  }
                }
              }
            },
            "headers": {
              "Tl-Trace-Id": {
                "$ref": "#/components/headers/TlTraceId"
              }
            }
          },
          "400": {
            "description": "Invalid parameters",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                },
                "examples": {
                  "invalid_parameters": {
                    "summary": "Invalid parameters",
                    "value": {
                      "type": "https://docs.truelayer.com/docs/signup-errors#invalid-parameters",
                      "title": "Invalid Parameters",
                      "status": 400,
                      "detail": "The request was invalid",
                      "trace_id": "815dc3f4-e517-470c-94c4-10ccc9416713"
                    }
                  },
                  "invalid_state": {
                    "summary": "Invalid state",
                    "value": {
                      "type": "https://docs.truelayer.com/docs/signup-errors#invalid-state",
                      "title": "Invalid State",
                      "status": 400,
                      "detail": "The related_products.signup_plus property was not set.",
                      "trace_id": "815dc3f4-e517-470c-94c4-10ccc9416713"
                    }
                  },
                  "provider_not_supported": {
                    "summary": "Provider not supported",
                    "value": {
                      "type": "https://docs.truelayer.com/docs/signup-errors#provider-not-supported",
                      "title": "Provider not supported",
                      "status": 400,
                      "detail": "The provider is not supported for this operation.",
                      "trace_id": "815dc3f4-e517-470c-94c4-10ccc9416713"
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                },
                "examples": {
                  "unauthorized": {
                    "summary": "Unauthorized",
                    "value": {
                      "type": "https://docs.truelayer.com/docs/signup-errors#unauthorized",
                      "title": "Unauthorized",
                      "status": 401,
                      "detail": "Access token missing or invalid",
                      "trace_id": "815dc3f4-e517-470c-94c4-10ccc9416713"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                },
                "examples": {
                  "forbidden": {
                    "summary": "AccessDenied",
                    "value": {
                      "type": "https://docs.truelayer.com/docs/signup-errors#forbidden",
                      "title": "Forbidden",
                      "status": 403,
                      "trace_id": "815dc3f4-e517-470c-94c4-10ccc9416713"
                    }
                  }
                }
              }
            }
          },
          "404": {
            "description": "Payment not found, or does not belong to this client.\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                },
                "examples": {
                  "payment_not_found": {
                    "summary": "Payment not found",
                    "value": {
                      "type": "https://docs.truelayer.com/docs/signup-errors#payment-not-found",
                      "title": "Payment Not Found",
                      "status": 404,
                      "detail": "Payment ID must exist",
                      "trace_id": "815dc3f4-e517-470c-94c4-10ccc9416713"
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Payment is in an invalid state/Invalid data\n",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                },
                "examples": {
                  "payment_processing": {
                    "summary": "Payment processing",
                    "value": {
                      "type": "https://docs.truelayer.com/docs/signup-errors#payment-processing",
                      "title": "Payment Processing",
                      "status": 422,
                      "detail": "Payment must be settled",
                      "trace_id": "815dc3f4-e517-470c-94c4-10ccc9416713"
                    }
                  },
                  "closed_loop_payment": {
                    "summary": "Invalid payment",
                    "value": {
                      "type": "https://docs.truelayer.com/docs/signup-errors#invalid-payment",
                      "title": "Invalid Payment",
                      "status": 422,
                      "detail": "Must be a closed loop payment",
                      "trace_id": "815dc3f4-e517-470c-94c4-10ccc9416713"
                    }
                  },
                  "failed_payment": {
                    "summary": "Failed payment",
                    "value": {
                      "type": "https://docs.truelayer.com/docs/signup-errors#failed-payment",
                      "title": "Failed Payment",
                      "status": 422,
                      "detail": "Cannot process failed payments",
                      "trace_id": "815dc3f4-e517-470c-94c4-10ccc9416713"
                    }
                  },
                  "data_not_found": {
                    "summary": "User data not found",
                    "value": {
                      "type": "https://docs.truelayer.com/docs/signup-errors#user-data-not-found",
                      "title": "User Data Not Found",
                      "status": 422,
                      "detail": "User data could not be found",
                      "trace_id": "815dc3f4-e517-470c-94c4-10ccc9416713"
                    }
                  },
                  "joint_accounts": {
                    "summary": "Joint accounts error",
                    "value": {
                      "type": "https://docs.truelayer.com/docs/signup-errors#joint-account",
                      "title": "Joint Accounts Not Supported",
                      "status": 422,
                      "detail": "Joint accounts not supported",
                      "trace_id": "815dc3f4-e517-470c-94c4-10ccc9416713"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Problem"
                },
                "examples": {
                  "internal_server_error": {
                    "summary": "Internal Server Error",
                    "value": {
                      "type": "https://docs.truelayer.com/docs/signup-errors#internal-server-error",
                      "title": "Internal Server Error",
                      "status": 500,
                      "detail": "Something went wrong. Please try again later",
                      "trace_id": "815dc3f4-e517-470c-94c4-10ccc9416713"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "webhooks": {
    "authuri_expired": {
      "post": {
        "tags": [
          "Generate auth URI"
        ],
        "summary": "Auth URI expired webhooks",
        "operationId": "webhook-identity-authorization-expired",
        "description": "Sent to the webhook URI you registered in Console when an auth URI has expired.",
        "parameters": [
          {
            "$ref": "#/components/parameters/WebhookSignatureHeader"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WebhookAuthExpired"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Webhook Handled"
          }
        },
        "security": []
      }
    }
  },
  "components": {
    "securitySchemes": {
      "bearer_auth": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    },
    "headers": {
      "TlTraceId": {
        "description": "Unique TrueLayer reference for the request",
        "schema": {
          "type": "string"
        }
      }
    },
    "schemas": {
      "User": {
        "type": "object",
        "properties": {
          "title": {
            "description": "Title",
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          },
          "first_name": {
            "description": "User first name",
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          },
          "last_name": {
            "description": "User last name",
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          },
          "date_of_birth": {
            "description": "User Date Of Birth, formatted as an ISO 8601 string `YYYY-MM-DD`",
            "type": "string"
          },
          "address": {
            "description": "User address",
            "type": "object",
            "properties": {
              "address_line1": {
                "description": "the full street address including house number and street name\n",
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "address_line2": {
                "description": "further details like building name, suite, apartment number, etc.\n",
                "type": "string",
                "maxLength": 200
              },
              "city": {
                "description": "name of the city / locality\n",
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "state": {
                "description": "name of the county / state\n",
                "type": "string",
                "maxLength": 200
              },
              "zip": {
                "description": "zip code or postal code\n",
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              },
              "country_code": {
                "description": "the country code according to\n[ISO-3166-1-alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)\n",
                "type": "string",
                "minLength": 1,
                "maxLength": 200
              }
            }
          },
          "national_identification_number": {
            "description": "User national identification number (**available in Finland only**)\n",
            "type": "string"
          },
          "sex": {
            "description": "Sex of the user (**available in Finland only**)\n",
            "type": "string",
            "minLength": 1,
            "maxLength": 1
          },
          "account_details": {
            "description": "User account details",
            "type": "object",
            "properties": {
              "account_number": {
                "description": "The account number.\n",
                "type": "string"
              },
              "sort_code": {
                "description": "Sort code of account.\n",
                "type": "string"
              },
              "iban": {
                "description": "Accounts IBAN number.\n",
                "type": "string"
              },
              "provider_id": {
                "description": "The name of the bank.\n",
                "type": "string"
              }
            }
          }
        }
      },
      "Problem": {
        "type": "object",
        "additionalProperties": true,
        "minProperties": 1,
        "description": "The Problem Details JSON Object [[RFC7807](https://tools.ietf.org/html/rfc7807)].",
        "properties": {
          "type": {
            "type": "string",
            "description": "A URI reference [[RFC3986](https://tools.ietf.org/html/rfc3986)] that identifies the problem type. It should provide human-readable documentation for the problem type. When this member is not present, its value is assumed to be \"about:blank\".",
            "format": "uri"
          },
          "title": {
            "type": "string",
            "description": "A short, human-readable summary of the problem type. It SHOULD NOT change from occurrence to occurrence of the problem, except for purposes of localization."
          },
          "status": {
            "type": "integer",
            "description": "The HTTP status code.",
            "minimum": 400,
            "maximum": 599
          },
          "detail": {
            "type": "string",
            "description": "A human-readable explanation specific to this occurrence of the problem."
          },
          "instance": {
            "type": "string",
            "description": "A URI reference that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced."
          },
          "trace_id": {
            "type": "string",
            "description": "The TrueLayer trace identifier for the request"
          }
        }
      },
      "WebhookAuthExpired": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "signup_plus_authorization_expired"
            ]
          },
          "event_version": {
            "description": "The version of the event schema.\n",
            "type": "integer",
            "enum": [
              1
            ]
          },
          "event_id": {
            "description": "Unique ID of the event.\n",
            "type": "string",
            "example": "b8d4dda0-ff2c-4d77-a6da-4615e4bad941"
          },
          "authorization_id": {
            "description": "ID of the authorization.\n",
            "type": "string",
            "example": "37ad679d-2a99-4a54-b755-f194a5c92c26"
          },
          "payment_id": {
            "description": "ID of the payment.\n",
            "type": "string",
            "example": "60c0a60ed8d7-4e5b-ac79-401b1d8a8633"
          },
          "expired_at": {
            "type": "string",
            "description": "Date and time the authorization expired",
            "format": "datetime",
            "example": "2021-12-25T15:00:00.000Z"
          }
        },
        "required": [
          "type",
          "event_version",
          "event_id",
          "authorization_id",
          "payment_id",
          "expired_at"
        ]
      }
    },
    "parameters": {
      "WebhookSignatureHeader": {
        "in": "header",
        "name": "Tl-Signature",
        "description": "A JWS with detached content, verifiable with our public key.\nSee [Webhook Request Signing](https://docs.truelayer.com/docs/configure-webhooks-for-your-integration#validate-webhook-signatures)\n",
        "schema": {
          "type": "string"
        },
        "required": true
      }
    }
  },
  "x-readme": {
    "samples-languages": [
      "shell",
      "java",
      "csharp",
      "php"
    ]
  }
}
```