1.3.0 • Published 22 days ago

stubber-stubbucks-functions-pkg v1.3.0

Weekly downloads
-
License
ISC
Repository
github
Last release
22 days ago

stubber-stubbucks-functions-pkg

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-functions-pkg";

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.2.0

3 months ago

1.3.0

22 days ago

1.0.10

3 months ago

1.1.0

3 months ago

1.0.9

3 months ago

1.0.8

6 months ago

1.0.7

6 months ago

1.0.6

6 months ago

1.0.4

7 months ago

1.0.3

9 months ago

1.0.2

9 months ago

1.0.1

9 months ago

1.0.0

9 months ago