Elytrium Billing: Module-based billing platform made with Go

Elytrium

In development

Elling - Elytrium Billing

Join our Discord

Module-based billing platform made with Go
The main idea of this product - make a stable billing platform for high-loads
This is only the back-end side of the API! Check out elling-app for the front-end.

Module system

Elling - module-based billing. You can create your own module, just export your module to the variable Module in your Go plugin

type Module interface {
    OnInit()
    GetName() string
    OnRegisterMethods() map[string]routing.Method
    OnDBMigration() []interface{}
    OnSmallTick()
    OnBigTick()
}

See more

  • elling-npd: Payments module for self-employed people

Basic modules

Basic modules - really simple modules, you can configure them editing their .yml files

  • basic/oauth: Module for OAuth authorization support
    • Create the folder with name "oauth"
    • Create the .yml file there
    • Fill it (example):
    • display-name: Discord
      name: discord
      oauth-gen-request: https://discord.com/api/oauth2/authorize?client_id=793481663077548032&redirect_uri=https%3A%2F%2Fapp.elytrium.net%2Finternal%2Foauth&response_type=code&scope=email%20identify
      verify-request:
        url: https://discord.com/api/users/@me
        method: GET
        headers: 
          Authorization: Bearer {token}
        response-type: JSON
        response-value-path:
        - username
        - id
  • basic/topup: Simple top-up module
    • Create the folder with name "topup"
    • Create the .yml file there
    • Fill it (example):
    • name: hevav-pay
      display-name: hevav.pay 
      account-limit: 10
      ttl: 3600000
      pay-string: https://hevav.dev/pay/{topUpId}
      create-request:
        url: https://hevav.dev/pay
        method: PUT
        headers: 
          Authorization: Bearer 1234567890
        data: id={topUpID}&amount={amount}&user[name]={user_name}&user[id]={balance_id}&expiryDate={date}
        response-type: NONE
      check-request:
        url: https://hevav.dev/payverify
        method: POST
        headers: 
          Authorization: Bearer 1234567890
        data: id={topUpID}&amount={amount}&user[name]={user_name}&user[id]={balance_id}&expiryDate={date}
        response-type: PLAIN
      check-request-success-string: OK
      reject-request:
        url: https://hevav.dev/pay/{topUpId}
        method: DELETE
        headers: 
          Authorization: Bearer 1234567890
        data: id={topUpID}
        response-type: NONE

Donation

Your donations are really appreciated. Donations wallets/links/cards:

Owner
Elytrium
Экосистема игровых сервисов.
Elytrium
Similar Resources

ProtonMail module for waybar/polybar/yabar/i3blocks

protoncheck  lightweight, fast waybar/polybar/yabar/i3blocks module to check the amount of unread emails in a ProtonMail inbox. Installation You may

Sep 27, 2022

Golang-module-references - A reference for how to setup a Golang project with modules - Task Management + Math Examples

Golang Module Project The purpose of this project is to act as a reference for setting up future Golang projects using modules. This project has a mat

Jan 2, 2022

Go-poolsuite - Poolsuite FM player as Go module

go-poolsuite Poolsuite FM (formerly Poolside FM) player as a Go module. Example

May 4, 2022

Gosfdc module - a collection of packages containing the data structures from the various Salesforce APIs and Tools

Gosfdc module - a collection of packages containing the data structures from the various Salesforce APIs and Tools

Jan 21, 2022

Sa818 - Sa818 UHF/VHF walkie talkie module control library for golang

Sa818 - Sa818 UHF/VHF walkie talkie module control library for golang

SA818 golang library for serial control This library written in Go programming l

Jan 23, 2022

An interactive menu for Magisk's module installer with tools to alter Android

JD's Toolbox I'll update this with some details later, just getting the source code out for now... LICENSE The source code for JD's Toolbox is release

Jan 24, 2022

gonewire: one wire library that uses the w1 kernel module

gonewire one wire library that uses the w1 kernel module. current support: DS18(S)20

Jan 25, 2022

Unik is a Go module for running Go programs as unikernels, without an underlying operating system

Unik is a Go module for running Go programs as unikernels, without an underlying operating system. The included demo is a functional Gio GUI prog

Oct 21, 2022

modver - a Go package and command that helps you obey semantic versioning rules in your Go module.

Modver This is modver, a Go package and command that helps you obey semantic versioning rules in your Go module. It can read and compare two different

Dec 12, 2022
Related tags
Flesch-go - Go-based implementation of the Flesch reading ease readability formula module.

flesch-go Go-based implementation of the Flesch reading ease readability formula module. Thanks for the flesch-index project. Installation Run the fol

Nov 9, 2022
The Bhojpur BSS is a software-as-a-service product used as an Business Support System based on Bhojpur.NET Platform for application delivery.

Bhojpur BSS - Business Support System The Bhojpur BSS is a software-as-a-service product used as an Business Support System based on Bhojpur.NET Platf

Sep 26, 2022
Polarite is a Pastebin alternative made for simplicity written in Go.
 Polarite is a Pastebin alternative made for simplicity written in Go.

Polarite is a Pastebin alternative made for simplicity written in Go. Usage Web Interface Visit https://polarite.teknologiumum.com API Send a POST req

Dec 1, 2022
HackerNews client made with Kyoto
HackerNews client made with Kyoto

HackerNews demo HackerNews demo client, made with kyoto Install Clone repo: git clone https://github.com/yuriizinets/kyoto-hn Go to the cloned directo

Jul 2, 2022
Collect stars by solving puzzles. Two puzzles will be made available on each day in the Advent calendar

Collect stars by solving puzzles. Two puzzles will be made available on each day in the Advent calendar; the second puzzle is unlocked when you complete the first. Each puzzle grants one star.

Dec 6, 2021
General releases made easy for golang

release General releases made easy What it is Release is inspired to GoReleaser for automates general releases that, in most cases, does not require a

Jan 7, 2022
Sensirion SCD30 CO2 sensor i2c driver module for Golang

Sensirion SCD30 CO2 sensor i2c driver module for Golang Overview With this module Sensirion SCD30 CO2 sensor can be accessed throug i2c bus. Implement

Oct 9, 2022
A simple project/module generated tool written in go

A module generator written in go This is a project/module generator written in go. It is intended to generate standard project/module layouts in the t

Oct 17, 2022
Module to ease interaction with Pact's development server & ScalableBFT

go-pact Module to ease interaction with Pact's development server & ScalableBFT Install go install github.com/jfamousket/go-pact@latest Functions H

Dec 9, 2021
A go module for "friendly" IDs

go-eyed A go module for "friendly" IDs. THIS MODULE IS INCOMPLETE AND NOT CURRENTLY BEING MAINTAINED. THEREFORE, IT SHOULD NOT BE USED Contribution If

Dec 17, 2021