Skip to main content

Certify

Certify is a comprehensive expense management platform that provides effortless and intuitive travel and expense management solutions, helping businesses streamline expense reporting, travel booking, and financial compliance processes.

Certify icon

Power end-to-end data operations for your Certify API with Nexla. Our bi-directional Certify connector is purpose-built for Certify, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Certify or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Certify workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

Before creating a Certify credential, you need to obtain an API key and API secret from your Certify account. The API key and API secret are required to authenticate with the Certify API v1.

To obtain your API credentials, you need to have a Certify account with API access enabled. Once you have access to your account, you can generate an API key and API secret from your account settings. The API key is sent in the x-api-key header and the API secret is sent in the x-api-secret header to authenticate all API requests to the Certify API v1. For detailed information about API key setup and authentication, refer to the Certify API documentation.

Authenticate

Credentials required

FieldRequiredSecretDescription
API Key ValueYesYes
Api Secret ValueYesNo

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

New Credential Overlay – Certify

CertifyCred.png
  1. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  2. Enter your Certify API key in the API Key Value field. This is the API key you obtained from your Certify account settings. The API key is sent in the x-api-key header to authenticate all API requests to the Certify API v1.

  3. Enter your Certify API secret in the Api Secret Value field. This is the API secret you obtained from your Certify account settings. The API secret is sent in the x-api-secret header to authenticate all API requests to the Certify API v1.

    Keep your API key and API secret secure and do not share them publicly. The credentials provide access to your Certify account and should be treated as sensitive information. Both the API key and API secret are required for authentication and are sent in separate headers for all API requests.

  4. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Certify connector tile, then select the credential that will be used to connect to the Certify instance, and click Next; or, create a new Certify credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Certify endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

cpdlists

This endpoint returns a list of one or more custom per-diem lists for the current company. Use this endpoint when you need to access per-diem list information for expense management, travel policy configuration, or reporting purposes.

  • This endpoint automatically retrieves all custom per-diem lists from your Certify account. No additional configuration is required beyond selecting this endpoint template.
  • The endpoint uses GET requests to https://api.certify.com/v1/cpdlists. The endpoint URL is automatically constructed based on the Certify API base URL.
  • The endpoint uses incrementing page-based pagination, automatically fetching additional pages as needed using the page and Records query parameters. The endpoint starts from page 1 and continues fetching pages until all available per-diem lists have been retrieved. By default, the endpoint retrieves up to 1000 items per page.
  • The endpoint will return all custom per-diem lists in your account. The response data is extracted from the CPDLists array in the API response ($.CPDLists[*]), with each per-diem list record processed individually.

This endpoint supports pagination through page and Records query parameters. Nexla automatically handles pagination to retrieve all available records by incrementing the page number until no more data is returned. The endpoint uses incrementing page-based pagination (iteration.type: paging.incrementing), starting from page 1. By default, the endpoint retrieves up to 1000 items per page (page.expected.rows: 1000). The response data path is $.CPDLists[*], which extracts all items from the CPDLists array in the API response. For detailed information about retrieving per-diem lists, see the Certify API documentation.

Departments

This endpoint returns a list of one or more departments for the current company. Use this endpoint when you need to access department information for organizational structure, expense categorization, or reporting purposes.

  • This endpoint automatically retrieves all departments from your Certify account. No additional configuration is required beyond selecting this endpoint template.
  • The endpoint uses GET requests to https://api.certify.com/v1/departments. The endpoint URL is automatically constructed based on the Certify API base URL.
  • The endpoint uses incrementing page-based pagination, automatically fetching additional pages as needed using the page and Records query parameters. The endpoint starts from page 1 and continues fetching pages until all available departments have been retrieved. By default, the endpoint retrieves up to 1000 items per page.
  • The endpoint will return all departments in your account. The response data is extracted from the Departments array in the API response ($.Departments[*]), with each department record processed individually.

This endpoint supports pagination through page and Records query parameters. Nexla automatically handles pagination to retrieve all available records by incrementing the page number until no more data is returned. The endpoint uses incrementing page-based pagination (iteration.type: paging.incrementing), starting from page 1. By default, the endpoint retrieves up to 1000 items per page (page.expected.rows: 1000). The response data path is $.Departments[*], which extracts all items from the Departments array in the API response. For detailed information about retrieving departments, see the Certify API documentation.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

Certify data sources can also be manually configured to ingest data from any valid Certify API v1 endpoint, including endpoints not covered by the pre-built templates, chained API calls, or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.

Certify API endpoints typically follow the pattern https://api.certify.com/v1/{endpoint_path}. JSON paths are case-sensitive and must match the exact structure of your API response — Certify API responses typically use arrays like CPDLists or Departments to contain the actual data. For detailed information about Certify API endpoints, see the Certify API documentation.

Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Certify data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.

Use as a destination

Click the + icon on the Nexset that will be sent to the Certify destination, and select the Send to Destination option from the menu. Select the Certify connector from the list of available destination connectors, then select the credential that will be used to connect to the Certify organization, and click Next; or, create a new Certify credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Certify endpoints. Select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.

Create Department

This endpoint creates or updates department records for the user's company. For each department element in the POST body, this method will update department records corresponding to the IDs supplied. Any elements where new values were not provided will retain their current value. Use this endpoint when you need to create or update departments from your data sources.

  • The endpoint uses POST requests to https://api.certify.com/v1/departments. The endpoint URL is automatically constructed based on the Certify API base URL.
  • The endpoint sends data from your Nexset as the request body in JSON format. Each record in your Nexset will be sent as a JSON object containing the department data to create or update. The request body should follow the Certify API v1 specification for creating or updating departments, including required fields and field names.
  • Batch mode is disabled by default for this endpoint. Each record in your Nexset will be sent as a separate API request to create or update a department. If you need to create or update multiple departments, you can send multiple records, but each will be processed as a separate request.

The request body must be properly formatted JSON that matches the Certify API v1 specification for creating or updating departments. The endpoint requires API key authentication in the x-api-key and x-api-secret headers, which is handled automatically by your credential configuration. The Content-Type: application/json header is automatically included in requests. Batch mode is disabled by default (batch.mode: false), so each record will be sent as a separate request. For department elements where IDs are supplied, the endpoint will update existing records. Any elements where new values were not provided will retain their current value. For detailed information about creating or updating departments, including required fields, field names, and request formats, see the Certify API documentation.

expensecategories

This endpoint creates or updates expense category records for the user's company. For each expense category element in the POST body, this method will update expense category records corresponding to the IDs supplied. Any elements where new values were not provided will retain their current value. Use this endpoint when you need to create or update expense categories from your data sources.

  • The endpoint uses POST requests to https://api.certify.com/v1/expensecategories. The endpoint URL is automatically constructed based on the Certify API base URL.
  • The endpoint sends data from your Nexset as the request body in JSON format. Each record in your Nexset will be sent as a JSON object containing the expense category data to create or update. The request body should follow the Certify API v1 specification for creating or updating expense categories, including required fields and field names.
  • Batch mode is disabled by default for this endpoint. Each record in your Nexset will be sent as a separate API request to create or update an expense category. If you need to create or update multiple expense categories, you can send multiple records, but each will be processed as a separate request.

The request body must be properly formatted JSON that matches the Certify API v1 specification for creating or updating expense categories. The endpoint requires API key authentication in the x-api-key and x-api-secret headers, which is handled automatically by your credential configuration. The Content-Type: application/json header is automatically included in requests. Batch mode is disabled by default (batch.mode: false), so each record will be sent as a separate request. For expense category elements where IDs are supplied, the endpoint will update existing records. Any elements where new values were not provided will retain their current value. For detailed information about creating or updating expense categories, including required fields, field names, and request formats, see the Certify API documentation.

Manual configuration

Certify destinations can also be manually configured to send data to any valid Certify API v1 endpoint. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, data format, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.

The Certify API v1 primarily uses POST requests for data writing operations and typically expects JSON format for request bodies. Endpoints follow the pattern https://api.certify.com/v1/{endpoint_path}. API key authentication (x-api-key and x-api-secret headers) is handled automatically by your credential configuration.

Save & activate

Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To send the data to the configured Certify endpoint, open the destination resource menu, and select Activate.

The Nexset data will not be sent to the Certify endpoint until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.