Super Payments Payment Links API
Manage payment links for one-time payments
Manage payment links for one-time payments
openapi: 3.1.0
info:
title: Super Payments Checkout Sessions Payment Links API
description: Super Payments is empowering businesses with free payments, allowing them to offer customers a % Cash Reward, which is automatically deducted from their next purchase when they pay with Super. By rewarding customers in this way, they shop more often and buy more with a business. In addition, Cash Rewards boost customer loyalty and retention, with better conversion rates at typically higher average order values. Cash Rewards also increase adoption of Super Payments as the checkout method, meaning more free payments for your business.
version: '2026-04-01'
contact:
url: https://docs.superpayments.com
license:
name: Super Payments
identifier: https://www.superpayments.com/terms-and-conditions
servers:
- url: https://api.superpayments.com/2026-04-01
description: Live Environment
- url: https://api.test.superpayments.com/2026-04-01
description: Sandbox Environment
tags:
- name: Payment Links
description: Manage payment links for one-time payments
paths:
/payment-links:
post:
operationId: create-link
summary: Create Payment Link
description: Creates a new payment link
parameters: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/LinkInputDto'
responses:
'200':
description: Returns the created payment link.
content:
application/json:
schema:
$ref: '#/components/schemas/LinkResponseDto'
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 400
const: 400
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/request_validation_error
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Bad Request
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Request validation failed
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'401':
description: Unauthorized
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 401
const: 401
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/unauthorized
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Unauthorized
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Invalid credentials provided
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'402':
description: Payment Required
content:
application/problem+json: {}
'403':
description: Forbidden
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 403
const: 403
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/forbidden
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Forbidden
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Action not allowed
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'404':
description: NotFound
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 404
const: 404
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/not_found
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Not Found
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Resource not found
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'409':
description: Conflict
content:
application/problem+json: {}
'500':
description: Internal Server Error
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 500
const: 500
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/internal_server_error
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Internal Server Error
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- An unexpected error occurred
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
security:
- api_key: []
tags:
- Payment Links
get:
operationId: list-links
summary: List Payment Links
description: Retrieves a list of payment links with optional filters, sorting, and pagination.
parameters:
- name: searchTerm
in: query
required: false
schema:
type:
- string
- 'null'
- name: brandId
in: query
required: false
schema:
type:
- string
- 'null'
format: uuid
- name: sortBy
in: query
required: false
schema:
type: string
default: createdAt
enum:
- createdAt
- expiresAt
- name: sortOrder
in: query
required: false
schema:
type: string
enum:
- asc
- desc
- name: pageNumber
in: query
required: false
schema:
type: integer
default: 1
minimum: 1
- name: pageSize
in: query
required: false
schema:
type: integer
default: 100
maximum: 1000
minimum: 1
responses:
'200':
description: Returns a paginated list of payment links.
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedLinksOutput'
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 400
const: 400
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/request_validation_error
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Bad Request
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Request validation failed
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'401':
description: Unauthorized
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 401
const: 401
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/unauthorized
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Unauthorized
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Invalid credentials provided
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'402':
description: Payment Required
content:
application/problem+json: {}
'403':
description: Forbidden
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 403
const: 403
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/forbidden
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Forbidden
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Action not allowed
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'404':
description: NotFound
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 404
const: 404
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/not_found
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Not Found
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Resource not found
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'409':
description: Conflict
content:
application/problem+json: {}
'500':
description: Internal Server Error
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 500
const: 500
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/internal_server_error
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Internal Server Error
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- An unexpected error occurred
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
security:
- api_key: []
tags:
- Payment Links
/payment-links/{linkId}:
delete:
operationId: delete-link
summary: Delete Payment Link
description: Deletes a payment link by its ID.
parameters:
- name: linkId
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: Link deleted successfully
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 400
const: 400
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/request_validation_error
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Bad Request
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Request validation failed
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'401':
description: Unauthorized
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 401
const: 401
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/unauthorized
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Unauthorized
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Invalid credentials provided
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'402':
description: Payment Required
content:
application/problem+json: {}
'403':
description: Forbidden
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 403
const: 403
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/forbidden
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Forbidden
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Action not allowed
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'404':
description: NotFound
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 404
const: 404
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/not_found
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Not Found
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Resource not found
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'409':
description: Conflict
content:
application/problem+json: {}
'500':
description: Internal Server Error
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 500
const: 500
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/internal_server_error
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Internal Server Error
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- An unexpected error occurred
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
security:
- api_key: []
tags:
- Payment Links
get:
operationId: get-link
summary: Get Payment Link by ID
description: Retrieves a payment link by its ID.
parameters:
- name: linkId
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: Returns the payment link with the specified ID.
content:
application/json:
schema:
$ref: '#/components/schemas/LinkResponseDto'
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 400
const: 400
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/request_validation_error
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Bad Request
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Request validation failed
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'401':
description: Unauthorized
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 401
const: 401
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/unauthorized
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Unauthorized
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Invalid credentials provided
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'402':
description: Payment Required
content:
application/problem+json: {}
'403':
description: Forbidden
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 403
const: 403
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/forbidden
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Forbidden
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Action not allowed
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'404':
description: NotFound
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 404
const: 404
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/not_found
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Not Found
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Resource not found
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'409':
description: Conflict
content:
application/problem+json: {}
'500':
description: Internal Server Error
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 500
const: 500
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/internal_server_error
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Internal Server Error
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- An unexpected error occurred
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
security:
- api_key: []
tags:
- Payment Links
put:
operationId: update-link
summary: Update a link
description: Updates an existing link with the provided data.
parameters:
- name: linkId
in: path
required: true
schema:
type: string
format: uuid
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/LinkInputDto'
responses:
'200':
description: Returns the updated payment link.
content:
application/json:
schema:
$ref: '#/components/schemas/LinkResponseDto'
'400':
description: Bad Request
content:
application/problem+json:
schema:
type: object
properties:
status:
description: The HTTP status code.
type: integer
examples:
- 400
const: 400
type:
description: A URI reference that identifies the problem type
type: string
examples:
- https://api.superpayments.com/errors/request_validation_error
title:
description: A short, human-readable summary of the problem type
type: string
examples:
- Bad Request
detail:
description: A human-readable explanation specific to this occurrence of the problem
type: string
examples:
- Request validation failed
instance:
description: A unique identifier for the error
type: string
examples:
- '4186980260999334757'
'401':
description: Unauthorized
con
# --- truncated at 32 KB (45 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/super-payments/refs/heads/main/openapi/super-payments-payment-links-api-openapi.yml