Skip to main content

API reference

The Nickel API is organized around REST. Our API has predictable resource-oriented URLs, accepts JSON-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.

Start building

Quickstart

Make your first API call and create an invoice in about five minutes.

Send an invoice and get paid

Create an invoice, email it, and track the payment end to end.

Pay a vendor bill

Pay vendor bills by ACH, check, or international wire through the API.

Receive webhooks

Get notified when something happens in your Nickel account.

Authorization and testing

The Nickel API uses Bearer Authentication. Organizations on the Nickel Pro plan create and manage API tokens in the dashboard under Settings → API. Each token is shown once at creation — store it securely. If you don’t have a Pro plan yet, get in touch about API access.
The interactive API playground on this site uses the staging environment. Make sure to use your sandbox API key when testing requests in the playground.
Include your API key in the Authorization header of every request:

Requests and responses

For POST requests, set the Content-Type header to application/json and pass parameters in the JSON request body. For GET requests, pass parameters as query string parameters in the URL. All API responses return application/json.

Errors

The Nickel API uses standard HTTP response codes to indicate the success or failure of a request.
  • 2xx — Success
  • 4xx — Client error (invalid request, authentication failure, etc.)
  • 5xx — Server error
When an error occurs, the API returns a JSON object with an error field containing a human-readable description of the problem: