Przejdź do treści
Oplac

Klucz testowy w przykładach

Wklej klucz sk_test_ z panelu (zakładka Deweloperzy), a każdy przykład będzie gotowy do uruchomienia. Klucz zostaje w tej karcie przeglądarki, nie wysyłamy go nigdzie.

Przykłady używają Twojego klucza testowego. Produkcyjnego klucza nie przyjmujemy.

Tryb testowy

Obiekt payment_link#

Link do płatności (plink_): stały adres, który można wysłać mailem, wkleić na stronę albo wydrukować jako kod QR. Każde opłacenie tworzy osobną płatność.

Pola

  • id string wymagane

    Identyfikator linku.

  • object string wymagane

    Nazwa typu obiektu, zawsze "payment_link".

  • url string (uri) wymagane

    Adres strony linku.

  • qr_code_url string (uri)

    Kod QR linku jako PNG.

  • qr_svg_url string (uri)

    Kod QR linku jako SVG.

  • amount integer | null

    Kwota w groszach; null, gdy klient sam wpisuje kwotę.

  • customer_chooses_amount boolean
  • currency string wymagane
    PLNEURUSD
  • description string | null
  • reusable boolean

    true: link przyjmuje wiele płatności; false: po pierwszej udanej zapłacie przestaje przyjmować.

  • collect_tax_id boolean

    Strona linku pyta o NIP (faktura dla firmy).

  • connected_account string | null
  • application_fee integer | null
  • active boolean wymagane

    Wyłączony link pokazuje stronę bez możliwości zapłaty.

  • metadata object wymagane

    Własne pary klucz: wartość (do 50 kluczy, klucz do 40 znaków, wartość tekstowa do 500 znaków). Wracają w obiekcie i w zdarzeniach webhooka. Przy zmianie nowe klucze dochodzą do zapisanych, pusta wartość usuwa klucz, pusty tekst zamiast obiektu czyści wszystko.

  • livemode boolean wymagane

    true dla obiektów produkcyjnych (klucz sk_live_), false dla piaskownicy (sk_test_).

  • expires_at integer | null
  • created integer wymagane

    Chwila utworzenia jako znacznik czasu Unix (sekundy, UTC).

JSON
{
  "id": "plink_Ab12Cd34Ef56Gh",
  "object": "payment_link",
  "url": "https://oplac.pl/Kx7Pq2Mn",
  "qr_code_url": "https://oplac.pl/qr/Kx7Pq2Mn.png",
  "qr_svg_url": "https://oplac.pl/Kx7Pq2Mn/qr.svg",
  "amount": 12900,
  "customer_chooses_amount": false,
  "currency": "PLN",
  "description": "Zamówienie 10482",
  "reusable": false,
  "collect_tax_id": false,
  "connected_account": null,
  "application_fee": null,
  "active": true,
  "metadata": [],
  "livemode": false,
  "expires_at": null,
  "created": 1760000000
}

Lista linków#

GET /v1/payment_links

Linki konta w trybie klucza.

Nagłówki opcjonalne: Oplac-Version

Parametry zapytania

  • limit integer

    Liczba obiektów na stronie (1 do 100). Domyślnie 10. Od 1 do 100.

  • starting_after string

    Identyfikator obiektu; zwraca starsze od niego (następna strona).

  • ending_before string

    Identyfikator obiektu; zwraca nowsze od niego (poprzednia strona). Nie łączyć ze starting_after.

  • created object

    Filtr po chwili utworzenia (Unix): created[gte]=1760000000.

    • gt integer
    • gte integer
    • lt integer
    • lte integer
  • active boolean

    Tylko włączone (true) albo wyłączone (false).

Odpowiedź

HTTP 200: lista {object: "list", url, has_more, data} z obiektami payment_link od najnowszego. Stronicowanie kursorem opisuje przewodnik.

Błędy tej operacji: parameter_missing, parameter_invalid, metadata_invalid, expand_invalid, api_version_invalid, idempotency_key_reused, idempotency_key_invalid, api_key_invalid, rate_limited, api_error . Każdy błąd to ten sam obiekt error, opisany w przewodniku Błędy.

curl "https://oplac.pl/api/v1/payment_links?limit=3" \
  -H "Authorization: Bearer sk_test_TWOJ_KLUCZ"
$ch = curl_init('https://oplac.pl/api/v1/payment_links?limit=3');
curl_setopt_array($ch, [
    CURLOPT_HTTPHEADER => ['Authorization: Bearer sk_test_TWOJ_KLUCZ'],
    CURLOPT_RETURNTRANSFER => true,
]);
$payment_links = json_decode(curl_exec($ch), true);
const res = await fetch('https://oplac.pl/api/v1/payment_links?limit=3', {
  headers: {Authorization: 'Bearer sk_test_TWOJ_KLUCZ' },
});
const paymentLinks = await res.json();
import requests

res = requests.get(
    "https://oplac.pl/api/v1/payment_links?limit=3",
    headers={"Authorization": "Bearer sk_test_TWOJ_KLUCZ"},
)
payment_links = res.json()
Odpowiedź HTTP 200
{
  "object": "list",
  "url": "/v1/payment_links",
  "has_more": false,
  "data": [
    {
      "id": "plink_Ab12Cd34Ef56Gh",
      "object": "payment_link",
      "url": "https://oplac.pl/Kx7Pq2Mn",
      "qr_code_url": "https://oplac.pl/qr/Kx7Pq2Mn.png",
      "qr_svg_url": "https://oplac.pl/Kx7Pq2Mn/qr.svg",
      "amount": 12900,
      "customer_chooses_amount": false,
      "currency": "PLN",
      "description": "Zamówienie 10482",
      "reusable": false,
      "collect_tax_id": false,
      "connected_account": null,
      "application_fee": null,
      "active": true,
      "metadata": [],
      "livemode": false,
      "expires_at": null,
      "created": 1760000000
    }
  ]
}

Klucz testowy dostajesz od razu po zapisie

Adres e-mail, kod z maila i piaskownica z kodami BLIK. Produkcję włączasz sam w panelu: plan, dostawca płatności, klucz sk_live_. Wolisz, żeby wdrożenie w sklepie zrobił nasz zespół? To też jest za darmo.

Zamów integrację za darmo

BLIK, karty, subskrypcje i KSeF w jednym panelu.