Payment Link Generator API

This API provides endpoints for generating payment links and processing payments through the Raiffeisen payment gateway.

Endpoints

1. Generate Payment Link

POST /generate-link

Creates a time-limited, signed payment link that can be sent to customers.

Headers

Name Description Required
x-api-key API key for authentication Yes

Request Body

Parameter Type Description Required
amount String Payment amount as a string (e.g., "1250.50"). Must be a positive number with at most 2 decimal places. Maximum value is 1,000,000. Yes
currency String Currency code. Must be one of: USD, EUR, CZK Yes
email String Customer email address in valid format Yes
description String Payment description (1-255 characters) Yes
varsymbol String Variable symbol (invoice number). Must contain only numbers and be 1-16 characters long. Yes
validitySeconds Number Link validity period in seconds. Must be a positive integer. Cannot exceed 90 days (7,776,000 seconds). Default: 604800 (7 days) No

Example Request

POST /generate-link
Content-Type: application/json
x-api-key: your-api-key

{
  "amount": "1250.50",
  "currency": "CZK",
  "email": "customer@example.com",
  "description": "Invoice #12345",
  "varsymbol": "12345",
  "validitySeconds": 604800
}
  

Example Response

{
  "paymentLink": "https://pay-button.cee-systems.com/p/Xy9kL2mN"
}
  

Curl Example

curl -X POST https://pay-button.cee-systems.com/generate-link \
  -H "Content-Type: application/json" \
  -H "x-api-key: your-api-key" \
  -d '{
    "amount": "1250.50",
    "currency": "CZK",
    "email": "customer@example.com",
    "description": "Invoice #12345",
    "varsymbol": "12345",
    "validitySeconds": 604800
  }'
  

Payment Flow

The payment process follows these steps:

  1. Generate Payment Link: Your application calls the /generate-link endpoint with payment details and receives a short, secure payment URL (e.g., /p/Xy9kL2mN).
  2. Send to Customer: You send this short payment link to your customer via email or other communication channels.
  3. Customer Clicks Link: When the customer clicks the short link, the system retrieves the payment details from secure storage and validates the link expiration.
  4. Payment Processing: If the link is valid, the customer is automatically redirected to the Raiffeisen payment gateway where they can complete their payment using a credit card.
  5. Payment Result: After payment completion, the customer is redirected to a result page showing the payment status.

Note: The short payment link format makes it easier to share via email, SMS, or other channels. All payment details are securely stored and the link is time-limited for security. You only need to use the /generate-link endpoint - the rest of the process is handled automatically.

Security

The API uses the following security mechanisms: