Přejít na hlavní obsah

GoPay SDK

Balíček: gopay-sdk na npm — TypeScript klient pro oficiální GoPay REST API, určený pro serverové služby Node.js.
Začínáte? Jděte na InstalaciRychlý start → první sandbox platbu, pak Platby a Zpracování chyb.
SDK řeší OAuth2 tokeny, typované požadavky a odpovědi a celý životní cyklus plateb — vy se soustředíte na logiku produktu.

Přehled

AutentizaceOAuth2 client_credentials, automatické obnovení, vyměnitelná cache tokenů
TypySilné modely, enumy a signatury metod napříč API
NasazeníESM + CJS, Node 18+, funguje s vaším HTTP stackem

Co můžete stavět

  • Platby — vytváření, dotazování a dokončení checkoutu
  • Refundace — plné nebo částečné refundace a historie
  • Recurrence a autorizace — opakované platby, capture, void
  • Instrumenty a výpisy — platební metody podle měny, exporty účtu
  • Observabilita — vlastní HttpTransport / TokenCache pro tracing a sdílenou cache

Instalace

Přidejte gopay-sdk a nasměrujte sandbox nebo produkční URL brány.

Rychlý start

Sandbox přihlašovací údaje, klient a první createPayment v několika krocích.

Konfigurace

Timeouty, OAuth scope, jazyk, vlastní User-Agent, transport a cache.

Platby

Vytváření plateb, stav, karty a embed helpery.

Chyby

GoPayApiError vs GoPayConfigError, opakování a bezpečné logování.

Doporučení

Produkční vzory: tajemství, částky, idempotence a odolnost.

Požadavky

  • Node.js >=18
  • TypeScript >=5 (doporučeno)

Instalace

npm install gopay-sdk

Minimální příklad

import { Currency, createGoPayClient } from 'gopay-sdk';

const client = createGoPayClient({
  goid: 8123456789,
  clientId: process.env.GOPAY_CLIENT_ID!,
  clientSecret: process.env.GOPAY_CLIENT_SECRET!,
  gatewayUrl: 'https://gw.sandbox.gopay.com/api',
});

const payment = await client.createPayment({
  amount: 10000,
  currency: Currency.CZK,
  order_number: 'ORDER-123',
  payer: {
    contact: {
      email: 'john.doe@example.com',
    },
  },
  callback: {
    return_url: 'https://example.com/return',
    notification_url: 'https://example.com/notify',
  },
});

console.log(payment.id, payment.gw_url);