GET /employers/{employerId}/employees/{employeeId}/transfers

List all pension transfers for a specified employee.

Path parameters

  • employerId string(uuid) Required

    Penfold employer UUID

  • employeeId string Required

    Unique identifier for the employee

Responses

  • 200 application/json

    List of pension transfers for the employee.

    Hide response attribute Show response attribute object
    • transfers array[object] Required
      Hide transfers attributes Show transfers attributes object
      • id string Required

        Unique identifier for the transfer.

      • reference string Required

        Penfold transfer reference (e.g. PEN76432-1).

      • providerName string Required

        Name of the previous pension provider.

      • policyNumber string Required

        Policy or plan number at the previous provider.

      • estimatedAmountPence integer Required

        Estimated value of the pension pot in pence.

      • finalAmountPence integer | null

        Actual amount received in pence. Null until funds arrive.

      • status string Required

        Simplified status of the transfer. Internally Penfold tracks ~25 granular statuses; these are collapsed here assuming most transfers follow the happy path. Rejected transfers will typically need to be resolved on the Penfold platform directly.

        • Requested: Transfer has been submitted
        • InProgress: Transfer is being processed with the previous provider
        • FundsReceived: Funds have arrived at Penfold
        • Complete: Funds invested in the employee's pension pot
        • Rejected: Previous provider rejected the transfer — resolve via Penfold platform
        • Cancelled: Transfer was cancelled

        Values are Requested, InProgress, FundsReceived, Complete, Rejected, or Cancelled.

      • rejectionReason string | null

        Reason the transfer was rejected (if applicable).

      • createdAt string(date-time) Required

        When the transfer was initiated (ISO 8601).

  • 401 application/json

    Missing or invalid authentication token

    Hide response attribute Show response attribute object
    • error string Required
  • 404 application/json

    Resource not found

    Hide response attribute Show response attribute object
    • error string Required
  • 500 application/json

    Internal server error

    Hide response attribute Show response attribute object
    • error string Required
GET /employers/{employerId}/employees/{employeeId}/transfers
curl \
 --request GET 'https://partner-api.getpenfold.com/v1/employers/{employerId}/employees/{employeeId}/transfers' \
 --header "Authorization: Bearer $ACCESS_TOKEN"
Response examples (200)
{
  "transfers": [
    {
      "id": "t1a2b3c4-d5e6-7890-abcd-ef1234567890",
      "reference": "PEN76432-1",
      "providerName": "Scottish Widows",
      "policyNumber": "SW12345678",
      "estimatedAmountPence": 2500000,
      "finalAmountPence": 42,
      "status": "Requested",
      "rejectionReason": "string",
      "createdAt": "2025-03-15T14:30:00Z"
    }
  ]
}
Response examples (401)
{
  "error": "unauthorized"
}
Response examples (404)
{
  "error": "not found"
}
Response examples (500)
{
  "error": "internal server error"
}