1.0.16 • Published 12 months ago

stubber-stubbucks-client v1.0.16

Weekly downloads
-
License
ISC
Repository
github
Last release
12 months ago

stubber-stubbucks-client

Client to create stubbucks transactions and read account balances

Client

To use the client you need to have valid redis and mongoDB connection params

import stubbucksClient from "stubber-stubbucks-client";

const client = await stubbucksClient({
  redis_host: "localhost",
  redis_port: 6379,
  redis_password: "secret_password",
  redis_db: "1",
  mongo_url: "mongodb://user:password@localhost:27017",
  mongo_db: "database",
});

Functions

The client has multiple functions to standardize affecting the accounts

reserveFunds

Use this to ensure there are enough available funds to do transaction

let transactionuuid = await client.reserveFunds({
    orguuid,
    code,
    quantity,
    ttl
})

Params

  • orguuid
  • code (service cost code)
  • quantity (optional - defaults to 1)
  • ttl (optional - seconds to reserve funds for - defaults to 30)

Result

  • Returns a transactionuuid to be used if postFunds or voidFunds

postFunds

Use this to submit a transaction for previously reserved funds

await client.postFunds({
    orguuid,
    transactionuuid,
    code,
    quantity,
    details
})

Params

  • orguuid
  • transactionuuid (see reserveFunds)
  • code (optional - if not passed then will post full reserved amount)
  • quantity (optional - defaults to 1)
  • details (any object that you want to store in the mongoDB document)

Result

  • Returns true if successful

voidFunds

Use this to remove any pending reserved funds

await client.voidFunds({
    orguuid,
    transactionuuid
})

Params

  • orguuid
  • transactionuuid (see reserveFunds)

Result

  • Returns true if successful

topupAccount

Use this to topup a org account

await client.topupAccount({
    orguuid,
    details,
    amount
})

Params

  • orguuid
  • details (any object that you want to store in the mongoDB document)
  • amount (has to be a float)

Result

  • Returns true if successful

getAccountBalances

Use this to get account balances

await client.getAccountBalances({
    orguuid
})

Params

  • orguuid

Result

{
    current_balance,
    available_balance
}
1.0.16

12 months ago

1.0.15

12 months ago

1.0.14

12 months ago

1.0.13

12 months ago

1.0.12

12 months ago

1.0.11

12 months ago

1.0.10

12 months ago

1.0.9

12 months ago

1.0.8

1 year ago

1.0.7

1 year ago

1.0.6

1 year ago

1.0.5

1 year ago

1.0.4

1 year ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago