This library provides you with all you need to make proper calls to the Privacy.com API from a node environment. It is written in TypeScript and only has a dependency on Axios, so its usage is simple and straightforward.
using npm:
npm i --save privacy.com
or, using yarn:
yarn add privacy.com
With typescript:
import { PrivacyApi } from "privacy.com";
// Importing the request's Params type can help you with intellisense, but is optional
import { CreateCardParams } from "privacy.com";
// If you want your caught errors to be typed, import AxiosError
import { AxiosError } from "axios";
const privacyApi = new PrivacyApi("API_KEY", true /* sandbox (default) */);
const params: CreateCardParams = {
type: "UNLOCKED",
memo: "friendly identifier",
spend_limit: 1000,
spend_limit_duration: "MONTHLY",
};
// Using async/await
try {
const createCardResponse = await privacyApi.createCard(params);
console.log(createCardResponse.data);
} catch (e) {
const code = e.response.status;
const message = e.response.data;
console.log(code, message);
}
// Using then/catch
privacyApi
.createCard(params)
.then((createCardResponse) => {
console.log(createCardResponse.data);
})
.catch((e) => {
const code = e.response.status;
const message = e.response.data;
console.log(code, message);
});
With JavaScript:
import { PrivacyApi } from "privacy.com";
const privacyApi = new PrivacyApi("API_KEY", true /* sandbox (default) */);
const params = {
type: "UNLOCKED",
memo: "friendly identifier",
spend_limit: 1000,
spend_limit_duration: "MONTHLY",
};
// Using async/await
try {
const createCardResponse = await privacyApi.createCard(params);
console.log(createCardResponse.data);
} catch (e) {
const code = e.response.status;
const message = e.response.data;
console.log(code, message);
}
// Using then/catch
privacyApi
.createCard(params)
.then((createCardResponse) => {
console.log(createCardResponse.data);
})
.catch((e) => {
const code = e.response.status;
const message = e.response.data;
console.log(code, message);
});
All of the API endpoints from the Privacy.com API are supported.
createCard(params: CreateCardParams)
: Create a new card for the privacy accountaddBank(params: AddBankParams)
: Adds a bank account as a funding source using routing and account numberslistCards(params?: ListCardsParams)
: List cards associated with the privacy accountlistFundingAccounts(params?: ListFundingAccountsParams)
: List all the funding accounts associated with the privacy accountlistTransactions(params?: ListTransactionsParams)
: List transactions associated with the privacy account or a specific cardhostedCardUi(params: HostedCardUiParams)
: Get iframe data to display card detailsupdateCard(params: UpdateCardParams)
: Update a card by its token for the privacy accountsimulateAuthorization(params: SimulateAuthorizationParams)
: Simulates an authorization request from the payment network as if it came from a merchant acquirersimulateVoid(params: SimulateVoidParams)
: Voids an existing, uncleared (aka pending) authorizationsimulateClearing(params: SimulateClearingParams)
: Clears an existing authorization. After this event, the transaction is no longer pendingsimulateReturn(params: SimulateReturnParams)
: Returns (aka refunds) an amount back to a card. Returns are cleared immediately and do not spend time in a "pending" state