curl --request GET \
--url https://sandbox.nmbr.co/services/payroll/payments \
--header 'Authorization: Bearer <token>'import requests
url = "https://sandbox.nmbr.co/services/payroll/payments"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://sandbox.nmbr.co/services/payroll/payments', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sandbox.nmbr.co/services/payroll/payments",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://sandbox.nmbr.co/services/payroll/payments"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://sandbox.nmbr.co/services/payroll/payments")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.nmbr.co/services/payroll/payments")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"object": "list",
"data": [
{
"id": "<id>",
"object": "payment",
"data": {
"payroll": {
"id": "<id>",
"object": "payroll",
"links": {
"self": "/payrolls/<id>"
}
},
"remittance_account": null,
"destination": "payroll_float",
"method": "pad",
"amount": 0,
"status": "pending",
"process_at": "2026-01-27",
"expected_at": "2026-01-27",
"is_impacted_by_weekend_or_holiday": false,
"is_held": false,
"held_at": null,
"created_at": "2026-01-01T00:00:00.000000Z",
"updated_at": "2026-01-01T00:00:00.000000Z"
},
"links": {
"self": "/payments/<id>"
}
}
],
"links": {
"first": "/payments?business_entity_id=<id>&page=1",
"last": "/payments?business_entity_id=<id>&page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"last_page": 1,
"per_page": 15,
"total": 1,
"has_more": false
}
}List payments
curl --request GET \
--url https://sandbox.nmbr.co/services/payroll/payments \
--header 'Authorization: Bearer <token>'import requests
url = "https://sandbox.nmbr.co/services/payroll/payments"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://sandbox.nmbr.co/services/payroll/payments', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sandbox.nmbr.co/services/payroll/payments",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://sandbox.nmbr.co/services/payroll/payments"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://sandbox.nmbr.co/services/payroll/payments")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.nmbr.co/services/payroll/payments")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"object": "list",
"data": [
{
"id": "<id>",
"object": "payment",
"data": {
"payroll": {
"id": "<id>",
"object": "payroll",
"links": {
"self": "/payrolls/<id>"
}
},
"remittance_account": null,
"destination": "payroll_float",
"method": "pad",
"amount": 0,
"status": "pending",
"process_at": "2026-01-27",
"expected_at": "2026-01-27",
"is_impacted_by_weekend_or_holiday": false,
"is_held": false,
"held_at": null,
"created_at": "2026-01-01T00:00:00.000000Z",
"updated_at": "2026-01-01T00:00:00.000000Z"
},
"links": {
"self": "/payments/<id>"
}
}
],
"links": {
"first": "/payments?business_entity_id=<id>&page=1",
"last": "/payments?business_entity_id=<id>&page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"last_page": 1,
"per_page": 15,
"total": 1,
"has_more": false
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Filter by payment status. Supports multiple comma-separated values.
canceled, failed, overdue, paid, pending, processing Filter by payment destination. Supports multiple comma-separated values.
bill_pay, cra, employee, internal, no_op, payroll_float, rq Filter by payment method. Supports multiple comma-separated values.
direct_deposit, manual, pad, wire Filter by hold status. true returns only held payments, false returns only non-held payments.
Date filters support two formats:
Exact Date Match: Provide a well-formatted date in YYYY-MM-DD format for an exact match. Example: expected_at=2024-01-01
Use an array-like syntax to specify a range with one or more comparison operators:
gt(greater than)gte(greater than or equal to)lte(less than or equal to)lt(less than) Example:expected_at[gte]=2024-01-01&expected_at[lt]=2024-12-31
Date filters support two formats:
Exact Date Match: Provide a well-formatted date in YYYY-MM-DD format for an exact match. Example: process_at=2024-01-01
Use an array-like syntax to specify a range with one or more comparison operators:
gt(greater than)gte(greater than or equal to)lte(less than or equal to)lt(less than) Example:process_at[gte]=2024-01-01&process_at[lt]=2024-12-31
Sort order is specified using the format
sort=field[:direction][,field[:direction],...] where field is the name of the field to sort by
and direction is the optional sort direction (asc or desc).
amount, destination, expected_at, process_at, status payroll, remittance_account Response
OK
The type of the object in Nmbr ("list").
Hide child attributes
Hide child attributes
The unique identifier of the object in Nmbr.
The type of the object in Nmbr ("payment").
- Default
- With payroll expanded
- With remittance_account expanded
Hide child attributes
Hide child attributes
Where the payment is destined. payroll_float is the funding debit from the employer's bank account. employee is a credit to an employee or contractor. cra and rq are remittances to the Canada Revenue Agency (CRA) and Revenu Québec (RQ), respectively.
Where the payment is destined. For example, employee for payments to employees, cra for remittances to CRA, payroll_float for business funding.
bill_pay, cra, employee, internal, no_op, payroll_float, rq How the payment will be processed. pad (Pre-Authorized Debit) is used for employer funding. direct_deposit is used for employee credits. manual indicates the payment is handled outside of Nmbr.
How the payment will be processed. For example, direct_deposit or pad.
direct_deposit, manual, pad, wire The dollar amount of the payment.
The current processing status of the payment. Payments begin as pending, move to processing when submitted to the banking network, and settle as paid or failed. Held payments that pass their processing date become overdue.
canceled, failed, overdue, paid, pending, processing The date on which Nmbr will submit the payment to the banking network for processing.
The date on which the payment is expected to arrive at its destination.
Whether the payment dates have been adjusted due to a weekend or bank holiday.
Whether the payment dates have been adjusted due to a weekend or bank holiday.
Whether the payment is currently held. A held payment will not be submitted for processing until it is released.
The timestamp when the payment was placed on hold. null if the payment is not held.
The timestamp when the payment was placed on hold. null if the payment is not held.
The date and time the object was created in Nmbr.
The date and time the object was last updated in Nmbr.

