Skip to content

Files

Latest commit

c38cbbe · Jul 31, 2024

History

History
82 lines (58 loc) · 2.96 KB

README.md

File metadata and controls

82 lines (58 loc) · 2.96 KB

Elycart SDK для TypeScript/JavaScript

npm JSR JSR Score

Библиотека для взаимодействия с API Elycart.

import { Elycart } from "@elycart/api";

const elycart = new Elycart(process.env.TOKEN, process.env.SECRET_KEY);

const payment = await elycart.createInvoice({
    title: "Покупка донат-кейса",
    username: "elycart",
    price: 10, // рублей
});

console.log(payment.url);

API Reference

Фичи

  • Отличная документация кода с помощью JSDoc (сгенерировано из OpenAPI)
  • Современная и с умнейшими типами
  • 0 зависимостей

Webhook

Пример использования webhook с фреймворком Hono

import { Hono } from "hono";
import { Elycart, webhookHandler } from "@elycart/api";

const elycart = new Elycart(process.env.TOKEN, process.env.SECRET_KEY);

elycart.on(({ data }) => {});

const app = new Hono();

app.post("/", webhookHandler(elycart, "hono"));

export default app;

Поддерживаемые webhook адаптеры

или любой другой фреймворк

// a non-existing framework for the example
import { App } from "some-http-framework";
import { Elycart } from "@elycart/api";

const elycart = new Elycart(process.env.TOKEN, process.env.SECRET_KEY);

const app = new App().post("/t-kassa", async (req) => {
    // req.body must be json equivalent to Webhook notification body
    await elycart.emit(req.body);
});

app.listen(80);