Skip to content
/ js-sdk Public

SDK для работы с Elycart API для TypeScript/JavaScript

Notifications You must be signed in to change notification settings

Elycart/js-sdk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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);