Create Payment Link - Flex Documentation

Create Payment Link

cURL

    curl --request POST \
      --url https://api.withflex.com/v1/payment_links \
      --header 'Authorization: Bearer <token>' \
      --header 'Content-Type: application/json' \
      --data '
    {
      "payment_link": {
        "label": "Example",
        "shipping_address_collection": false,
        "shipping_options": {},
        "metadata": {
          "order_id": "8842",
          "channel": "shopify"
        },
        "payment_intent_data": {},
        "after_completion": {},
        "allow_promotion_codes": false,
        "origin": "shopify",
        "tax_rate": {},
        "mode": "payment",
        "setup_future_use": "on_session"
      }
    }
    '
    ```

### Python
import requests

url = "https://api.withflex.com/v1/payment_links"

payload = { "payment_link": { "label": "Example", "shipping_address_collection": False, "shipping_options": {}, "metadata": { "order_id": "8842", "channel": "shopify" }, "payment_intent_data": {}, "after_completion": {}, "allow_promotion_codes": False, "origin": "shopify", "tax_rate": {}, "mode": "payment", "setup_future_use": "on_session" } } headers = { "Authorization": "Bearer ", "Content-Type": "application/json" }

response = requests.post(url, json=payload, headers=headers)

print(response.text) ```

JavaScript (Fetch)

    const options = {
      method: 'POST',
      headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
      body: JSON.stringify({
        payment_link: {
          label: 'Example',
          shipping_address_collection: false,
          shipping_options: {},
          metadata: {order_id: '8842', channel: 'shopify'},
          payment_intent_data: {},
          after_completion: {},
          allow_promotion_codes: false,
          origin: 'shopify',
          tax_rate: {},
          mode: 'payment',
          setup_future_use: 'on_session'
        }
      })
    };

fetch('https://api.withflex.com/v1/payment_links', options)
      .then(res => res.json())
      .then(res => console.log(res))
      .catch(err => console.error(err));
    ```

### PHP
<?php

$curl = curl_init();

curl_setopt_array($curl, [ CURLOPT_URL => "https://api.withflex.com/v1/payment_links", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS => json_encode([ 'payment_link' => [ 'label' => 'Example', 'shipping_address_collection' => false, 'shipping_options' => [], 'metadata' => [ 'order_id' => '8842', 'channel' => 'shopify' ], 'payment_intent_data' => [], 'after_completion' => [], 'allow_promotion_codes' => false, 'origin' => 'shopify', 'tax_rate' => [], 'mode' => 'payment', 'setup_future_use' => 'on_session' ] ]), CURLOPT_HTTPHEADER => [ "Authorization: Bearer ", "Content-Type: application/json" ], ]);

$response = curl_exec($curl); $err = curl_error($curl);

curl_close($curl);

if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } ```

Go

    package main

import (
    "fmt"
    "strings"
    "net/http"
    "io"
    )

func main() {

url := "https://api.withflex.com/v1/payment_links"

payload := strings.NewReader("{\n  \"payment_link\": {\n    \"label\": \"Example\",\n    \"shipping_address_collection\": false,\n    \"shipping_options\": {},\n    \"metadata\": {\n      \"order_id\": \"8842\",\n      \"channel\": \"shopify\"\n    },\n    \"payment_intent_data\": {},\n    \"after_completion\": {},\n    \"allow_promotion_codes\": false,\n    \"origin\": \"shopify\",\n    \"tax_rate\": {},\n    \"mode\": \"payment\",\n    \"setup_future_use\": \"on_session\"\n  }\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("Authorization", "Bearer <token>")
    req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
    body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))
    }
    ```

### Error Responses
{
  "code": "string",
  "detail": "string"
}
```

Successful Response Example

    {
      "payment_link": {
        "payment_link_id": "fplink_01J9XR8M3K7VZ8N2YB4WJ6T0RA",
        "label": "Example",
        "active": false,
        "allow_promotion_codes": false,
        "shipping_address_collection": false,
        "shipping_options": {},
        "metadata": {
          "order_id": "8842",
          "channel": "shopify"
        },
        "url": "https://example.com",
        "created_at": "2026-06-15T14:30:00Z",
        "payment_intent_data": {},
        "after_completion": {},
        "origin": "shopify",
        "tax_rate": {},
        "setup_future_use": "on_session",
        "test_mode": false
      }
    }
    ```