---
title: "Create a pay-link"
method: POST
path: "/pay-links"
tags: ["pay-links"]
---

# Create a pay-link

`POST /pay-links`

## Request

- Base URL: `https://identity.moneyhub.co.uk`
- URL: `https://identity.moneyhub.co.uk/pay-links`
- Auth: API key in header `Authorization`

Requires **pay_link:create** scope.

## Request body

- PayLinkPost
  - `widgetId` string, uuid, required: The id of the widget used to render the pay-link
  - `payeeId` string, uuid: The id of the payee
  - `payee` object
    - `sortCode` string, required: The sort code of the payee
    - `accountNumber` string, required: The account number of the payee
    - `name` string, required: The name of the payee
    - `displayName` string: The name of the payee to display the end user
  - `reference` string, required: Reference to display on payer's statement
  - `amount` integer, required: Payment amount in minor units of the currency, eg. pennies for GBP.
  - `endToEndId` string, nullable: Unique identifier relevant to the transaction - Allowed characters (a-zA-Z0-9 :-).
  - `useOnce` boolean: Boolean to indicate if the pay-link can only be consumed once. Defaults to false.
  - `expiresAt` string, date-time, nullable: The date the pay-link will expire

## Response `200`

Successful PayLink Response

- object
  - `data` PayLink
    - `id` string, uuid, required: The id of the pay-link
    - `clientId` string, uuid, required: The id of the client
    - `widgetId` string, uuid, required: The id of the widget used to render the pay-link
    - `payeeId` string, uuid, required: The id of the payee
    - `reference` string, required: Reference to display on payer's statement
    - `amount` integer, required: Payment amount in minor units of the currency, eg. pennies for GBP.
    - `endToEndId` string, nullable, required: Unique identifier relevant to the transaction - Allowed characters (a-zA-Z0-9 :-).
    - `useOnce` boolean: Boolean to indicate if the pay-link can only be consumed once.
    - `usedAt` string, date-time, nullable: The date the pay-link was last used
    - `archivedAt` string, date-time, nullable, required: The date the pay-link was archived
    - `expiresAt` string, date-time, nullable: The date the pay-link will expire
    - `createdAt` string, date-time, required: The date that the pay-link was created.
    - `updatedAt` string, date-time, required: The date that the pay-link was modified.
  - `meta` object

## Other responses

- `400`: Unsuccessful Response - Bad request - Missing query parameters - Missing body properties
- `401`: Unsuccessful Response - Not authorised - Missing authorization header - Invalid access Token
- `403`: Unsuccessful Response - Forbidden - Invalid scopes

## Changes

- **2026-11-03** `e004d9ee1fdb`: 6 warning
  - removed the optional property `id` from the response with the `400` status
  - removed the optional property `id` from the response with the `401` status
  - removed the optional property `id` from the response with the `403` status
  - removed the optional property `userId` from the response with the `400` status
  - …2 more

[Operation history](https://skmtc.dev/moneyhubenterprise/apis/moneyhub-identity-service/changes/pay-links/post.md)

---

[API](https://skmtc.dev/moneyhubenterprise/apis/moneyhub-identity-service.md) - [All operations](https://skmtc.dev/moneyhubenterprise/apis/moneyhub-identity-service/llms.txt) - [OpenAPI document](https://skmtc.dev/moneyhubenterprise/apis/moneyhub-identity-service/revisions/e004d9ee1fdb?raw)
