https://github.com/godaddy/poynt-node
https://github.com/godaddy/poynt-node
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/godaddy/poynt-node
- Owner: godaddy
- License: mit
- Created: 2026-02-18T21:50:51.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2026-03-03T13:18:20.000Z (3 months ago)
- Last Synced: 2026-03-03T17:38:09.892Z (3 months ago)
- Language: JavaScript
- Size: 58.6 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# Poynt Node.js SDK
This SDK helps you connect to the Poynt API from your Node.js apps. You can easily get/create business information, subscribe to webhooks, and send cloud messages to your terminal app.
## Documentation
After you've [signed up for a Poynt developer account](https://poynt.net/auth/signup/developer), check out our [API reference](https://poynt.com/docs/api/) or our [developer guides](https://poynt.com/tag/guides/)!
## Installation
Install this package:
```
npm install poynt --save
```
## Usage
You can connect to the Poynt API by passing either a filename or a string containing your PEM-encoded private key you downloaded from Poynt.net. If `region` param is not set, the SDK uses `services.poynt.net` endpoint. If you need to hit `services-eu.poynt.net`, you need to pass `region: 'eu'`.
```javascript
var poynt = require("poynt")({
// region: 'eu',
applicationId: "urn:aid:your-application-id",
filename: __dirname + "/key.pem",
});
```
or
```javascript
var poynt = require("poynt")({
applicationId: "urn:aid:your-application-id",
key: "-----BEGIN RSA PRIVATE KEY-----\n.....\n-----END RSA PRIVATE KEY-----",
});
```
Then, make a request signed with your app private key:
```javascript
poynt.getBusiness(
{
businessId: "00000000-0000-0000-0000-000000000000",
},
function (err, business) {
if (err) {
// deal with your error
} else {
// do something with business
}
}
);
```
We'll handle all the request signing, token refresh, etc. for you!
## Namespaces and methods
### [Poynt Collect](https://docs.poynt.com/app-integration/poynt-collect/)
- `tokenizeCard`
- `charge`
### [CloudMessages](https://poynt.com/docs/api/#cloudmessages-index)
- `sendCloudMessage`
- `sendRawCloudMessage`
- `sendPaymentBridgeMessage`
### [Hooks](https://poynt.com/docs/api/#hooks-index)
- `getHooks`
- `createHook`
- `getHook`
- `deleteHook`
### [Businesses](https://poynt.com/docs/api/#businesses-index)
- `getBusiness`
- `getBusinessByDeviceId`
- `getMerchantPaymentAccount`
### [Stores](https://poynt.com/docs/api/#stores-index)
- `getStore`
### [Orders](https://poynt.com/docs/api/#orders-index)
- `getOrders`
- `getOrder`
- `createOrder`
- `completeOrder`
### [Transactions](https://poynt.com/docs/api/#transactions-index)
- `getTransactions`
- `getTransaction`
- `voidTransaction`
- `refundTransaction`
- `createTransaction`
### [Customers](https://poynt.com/docs/api/#customers-index)
- `getCustomers`
- `getCustomer`
### [Catalogs](https://poynt.com/docs/api/#catalogs-index)
- `getCatalogs`
- `getCatalog`
- `getFullCatalog`
- `createCatalog`
- `createFullCatalog`
- `updateCatalog`
- `deleteCatalog`
- `getCategory`
- `createCategory`
- `lookupCategories`
- `deleteCategory`
- `updateCategory`
### Invoices
- `getInvoices`
- `getInvoice`
- `createInvoice`
- `sendInvoiceReminder`
- `cancelInvoice`
### [Products](https://poynt.com/docs/api/#products-index)
- `getProducts`
- `getProductsSummary`
- `lookupProducts`
- `getProduct`
- `createProduct`
- `deleteProduct`
- `updateProduct`
### Reports
- `getReports`
- `createReport`
### [Taxes](https://poynt.com/docs/api/#taxes-index)
- `getTaxes`
- `getTax`
- `createTax`
- `deleteTax`
- `updateTax`
### [Business Users](https://poynt.com/docs/api/#business-users-index)
- `getBusinessUsers`
- `getBusinessUser`
### Business Applications
- `getBusinessApplication`
- `getBusinessApplicationStatus`
- `getBusinessApplicationAccount`
- `getBusinessApplicationOrders`
- `getBusinessApplicationProfile`
## Examples
### Charging a token from [Poynt Collect V2](https://sellbot.co/collect)
The most basic use case is just entering an amount and charging:
```
poynt.charge(
{
action: "SALE",
amounts: {
currency: "USD",
transactionAmount: 500,
orderAmount: 500,
},
businessId: "84fa5bf5-bd51-4653-80de-ce46348f7659",
token: "...token...",
},
function (err, transaction) {
if (err) {
// deal with your error
console.log(err);
} else {
// do something with transaction
console.log(transaction);
}
}
);
```
Many other fields are accepted – including address, phone, and references. The following code makes a charge, fetches the full transaction, and then voids it.
```
poynt.charge(
{
action: "SALE",
address: {
line1: "858 University Ave",
line2: "",
city: "Palo Alto",
territory: "CA",
countryCode: "US",
postalCode: "94301",
},
amounts: {
currency: "USD",
transactionAmount: 500,
orderAmount: 500,
},
businessId: "84fa5bf5-bd51-4653-80de-ce46348f7659",
emailReceipt: true,
phone: {
ituCountryCode: "1",
areaCode: "234",
localPhoneNumber: "5678901",
},
receiptEmailAddress: "charles@example.com",
references: [
{
customType: "WEBSITE_ID",
id: "123456",
type: "CUSTOM",
},
{
customType: "CHANNEL_ORDER_ID",
id: "abcdef",
type: "CUSTOM",
},
],
sourceApp: "Online Store",
token: "...token...",
},
function (err, transaction) {
if (err) {
// deal with your error
return console.log(err);
}
console.log("Transaction processed", JSON.stringify(transaction, null, 2));
// get the transaction
poynt.getTransaction(
{
businessId: "84fa5bf5-bd51-4653-80de-ce46348f7659",
transactionId: transaction.id,
},
function (err, transaction) {
if (err) {
// deal with your error
return console.log(err);
}
console.log(
"Transaction fetched",
JSON.stringify(transaction, null, 2)
);
// void the transaction
poynt.voidTransaction(
{
businessId: "84fa5bf5-bd51-4653-80de-ce46348f7659",
transactionId: transaction.id,
},
function (err, voidedTransaction) {
if (err) {
// deal with your error
return console.log(err);
}
console.log(
"Transaction voided",
JSON.stringify(voidedTransaction, null, 2)
);
}
);
}
);
}
);
```
### Apple Pay Registration
- `registerApplePayMerchant`
- `unregisterApplePayMerchant`
- `getApplePayMerchant`
- `getApplePayDomainAssociationFile`