Skip to content
All connectors
Merge Unified API logo

Merge Unified API

Accounting, billing & payments

Keep Merge Unified API in step with your orders, invoices and payments without re-keying, with the right person approving what changes.

145 ways to read, 38 ways to write, each write switched on by you.

Quality checks

Built and tested with example responses.

  1. Ready to connect: doneEvery listed action is built in.
  2. Built and tested with example responses: doneEach action is built from the provider’s published API and tested against example responses, errors, rate limits and paging.
Merge Unified API with Nexra

Connected, approved, proven.

The things teams do most with Merge Unified API, an example flow with a person in the loop, and what Nexra keeps as proof.

Top actions

  • Create accountaccounts.createApproval by rule
  • Log candidate noteats_activities.createApproval by rule
  • Get time-off balancehris_time_off_balances.getRead

Example flow

  1. Merge Unified API · Get time-off balancehris_time_off_balances.getDone
  2. Merge Unified API · Create accountaccounts.createMaker-checker
  3. Nexra · Record the decision and result in the evidence chainProven

Example workflow. Routine runs go through on their own. Only a change your rules flag, such as one over a limit you set, waits for the right person, who sees the exact change and the rule before it reaches Merge Unified API.

What gets logged

  • Whether it ran on its own or who approved it, and under which rule
  • A fingerprint of the exact request sent to Merge Unified API
  • Merge Unified API's reply: what it created or changed
  • One entry in the evidence chain, linked to the one before

Try this in the sandbox

Run the whole flow with test data in your sandbox, then connect a Merge test account before you go live.

For developers

Technical detail

Read and write accounting, HRIS, ATS, CRM, ticketing and file storage data through Merge's unified common models for one linked account.

Merge API docs
Source actions
145
Destination actions
38
Data types
83

What you can map

Reads are always available. Writes are off until you switch them on for a connection, and governed writes follow your policies.

account details1
  • Get linked account detailsSource

    Integration, status and organization of the linked account behind the token.

accounting account details1
  • Get Accounting linked account detailsSource

    Integration, status and organization of the accounting system linked account (this category's account token).

accounting periods2
  • Get accounting periodSource

    One accounting period by Merge ID.

  • List accounting periodsSource

    Accounting periods from the linked accounting system.

accounts3
  • Create accountDestinationNot retried automaticallyApproval before production

    Creates a ledger account in the linked accounting system.

  • Get accountSource

    One account by Merge ID.

  • List chart of accountsSourceIncremental

    Chart of accounts from the linked accounting system, incrementally by modified_after.

ats account details1
  • Get ATS linked account detailsSource

    Integration, status and organization of the applicant tracking system linked account (this category's account token).

ats activities3
  • Log candidate noteDestinationNot retried automaticallyApproval before production

    Adds a note or other activity to a candidate's record.

  • Get activitySource

    One activity by Merge ID.

  • List candidate activitiesSourceIncremental

    Candidate activities from the linked applicant tracking system, incrementally by modified_after.

ats applications4
  • Create applicationDestinationNot retried automaticallyApproval before production

    Applies an existing candidate to a job.

  • Get applicationSource

    One application by Merge ID.

  • List applicationsSourceIncremental

    Applications from the linked applicant tracking system, incrementally by modified_after.

  • Move application to stageDestinationProvider duplicate protectionApproval before production

    Moves an application to another interview stage (Merge change-stage).

ats attachments3
  • Attach file to candidateDestinationNot retried automaticallyApproval before production

    Attaches a document (for example a resume) to a candidate from an HTTPS URL.

  • Get attachmentSource

    One attachment by Merge ID.

  • List candidate attachment metadataSourceIncremental

    Candidate attachment metadata from the linked applicant tracking system, incrementally by modified_after.

ats candidates4
  • Create candidateDestinationNot retried automaticallyApproval before production

    Creates a candidate profile in the linked ATS.

  • Get candidateSource

    One candidate by Merge ID.

  • List candidatesSourceIncremental

    Candidates from the linked applicant tracking system, incrementally by modified_after.

  • Update candidateDestinationProvider duplicate protectionApproval before production

    Updates a candidate (PATCH) where the integration supports candidate updates.

ats departments2
  • Get departmentSource

    One department by Merge ID.

  • List departmentsSourceIncremental

    Departments from the linked applicant tracking system, incrementally by modified_after.

ats interviews2
  • Get interviewSource

    One interview by Merge ID.

  • List interviewsSourceIncremental

    Interviews from the linked applicant tracking system, incrementally by modified_after.

ats job interview stages2
  • Get interview stageSource

    One interview stage by Merge ID.

  • List interview stagesSourceIncremental

    Interview stages from the linked applicant tracking system, incrementally by modified_after.

ats job postings2
  • Get job postingSource

    One job posting by Merge ID.

  • List job postingsSourceIncremental

    Job postings from the linked applicant tracking system, incrementally by modified_after.

ats jobs2
  • Get jobSource

    One job by Merge ID.

  • List jobsSourceIncremental

    Jobs from the linked applicant tracking system, incrementally by modified_after.

ats offers2
  • Get offerSource

    One offer by Merge ID.

  • List offers (status only)SourceIncremental

    Offers (status only) from the linked applicant tracking system, incrementally by modified_after.

ats offices2
  • Get officeSource

    One office by Merge ID.

  • List officesSourceIncremental

    Offices from the linked applicant tracking system, incrementally by modified_after.

ats reject reasons2
  • Get reject reasonSource

    One reject reason by Merge ID.

  • List reject reasonsSourceIncremental

    Reject reasons from the linked applicant tracking system, incrementally by modified_after.

ats scorecards2
  • Get scorecardSource

    One scorecard by Merge ID.

  • List scorecardsSourceIncremental

    Scorecards from the linked applicant tracking system, incrementally by modified_after.

ats tags1
  • List candidate tagsSourceIncremental

    Candidate tags from the linked applicant tracking system, incrementally by modified_after.

ats users2
  • Get ATS userSource

    One ATS user by Merge ID.

  • List ATS users (recruiters and interviewers)SourceIncremental

    ATS users (recruiters and interviewers) from the linked applicant tracking system, incrementally by modified_after.

attachments1
  • List attachment metadataSourceIncremental

    Attachment metadata from the linked accounting system, incrementally by modified_after.

bank transactions2
  • Get bank transactionSource

    One bank transaction by Merge ID.

  • List bank transactions (bank feed transactions, read only)SourceIncremental

    Bank transactions (bank feed transactions, read only) from the linked accounting system, incrementally by modified_after.

bills2
  • Create billDestinationNot retried automaticallyApproval before production

    Creates an accounts payable invoice (bill) with line items.

  • List billsSourceIncremental

    Payable invoices (type ACCOUNTS_PAYABLE), incrementally by modified_after.

company info2
  • Get companySource

    One company by Merge ID.

  • List company informationSourceIncremental

    Company information from the linked accounting system, incrementally by modified_after.

contacts4
  • Create contactDestinationNot retried automaticallyApproval before production

    Creates a customer or supplier contact in the linked accounting system.

  • Get contactSource

    One contact by Merge ID.

  • List contacts (customers and suppliers)SourceIncremental

    Contacts (customers and suppliers) from the linked accounting system, incrementally by modified_after.

  • Update contactDestinationProvider duplicate protectionApproval before production

    Updates a contact (PATCH) where the integration supports contact updates.

credit notes2
  • Get credit noteSource

    One credit note by Merge ID.

  • List credit notes (read only)SourceIncremental

    Credit notes (read only) from the linked accounting system, incrementally by modified_after.

crm account details1
  • Get CRM linked account detailsSource

    Integration, status and organization of the CRM linked account (this category's account token).

crm accounts4
  • Create CRM accountDestinationNot retried automaticallyApproval before production

    Creates a company account in the linked CRM.

  • Get CRM accountSource

    One CRM account by Merge ID.

  • List CRM accounts (companies)SourceIncremental

    CRM accounts (companies) from the linked CRM, incrementally by modified_after.

  • Update CRM accountDestinationProvider duplicate protectionApproval before production

    Updates a CRM account (PATCH); only mapped fields are sent.

crm contacts4
  • Create CRM contactDestinationNot retried automaticallyApproval before production

    Creates a person in the linked CRM, optionally under an account.

  • Get CRM contactSource

    One CRM contact by Merge ID.

  • List CRM contactsSourceIncremental

    CRM contacts from the linked CRM, incrementally by modified_after.

  • Update CRM contactDestinationProvider duplicate protectionApproval before production

    Updates a CRM contact (PATCH); only mapped fields are sent.

crm engagement types2
  • Get engagement typeSource

    One engagement type by Merge ID.

  • List engagement typesSourceIncremental

    Engagement types from the linked CRM, incrementally by modified_after.

crm engagements4
  • Log engagementDestinationNot retried automaticallyApproval before production

    Logs a call, meeting or email that already happened against an account.

  • Get engagementSource

    One engagement by Merge ID.

  • List engagements (calls, meetings and emails logged)SourceIncremental

    Engagements (calls, meetings and emails logged) from the linked CRM, incrementally by modified_after.

  • Update engagementDestinationProvider duplicate protectionApproval before production

    Updates a logged engagement (PATCH).

crm leads3
  • Create leadDestinationNot retried automaticallyApproval before production

    Creates a lead in the linked CRM.

  • Get leadSource

    One lead by Merge ID.

  • List leadsSourceIncremental

    Leads from the linked CRM, incrementally by modified_after.

crm notes3
  • Create CRM noteDestinationNot retried automaticallyApproval before production

    Adds a note to an account, contact or opportunity.

  • Get CRM noteSource

    One CRM note by Merge ID.

  • List CRM notesSourceIncremental

    CRM notes from the linked CRM, incrementally by modified_after.

crm opportunities4
  • Create opportunityDestinationNot retried automaticallyApproval before production

    Creates an opportunity (deal) in the linked CRM.

  • Get opportunitySource

    One opportunity by Merge ID.

  • List opportunities (deals)SourceIncremental

    Opportunities (deals) from the linked CRM, incrementally by modified_after.

  • Update opportunityDestinationProvider duplicate protectionApproval before production

    Updates an opportunity (PATCH), for example its stage or amount.

crm stages2
  • Get stageSource

    One stage by Merge ID.

  • List opportunity stagesSourceIncremental

    Opportunity stages from the linked CRM, incrementally by modified_after.

crm tasks4
  • Create CRM taskDestinationNot retried automaticallyApproval before production

    Creates a follow-up task in the linked CRM.

  • Get CRM taskSource

    One CRM task by Merge ID.

  • List CRM tasksSourceIncremental

    CRM tasks from the linked CRM, incrementally by modified_after.

  • Update CRM taskDestinationProvider duplicate protectionApproval before production

    Updates a CRM task (PATCH), for example to close it.

crm users2
  • Get CRM userSource

    One CRM user by Merge ID.

  • List CRM usersSourceIncremental

    CRM users from the linked CRM, incrementally by modified_after.

draft bills1
  • Create draft billDestinationNot retried automaticallyApproval before production

    Creates an accounts payable invoice (bill) as a DRAFT with line items.

draft invoices1
  • Create draft invoiceDestinationNot retried automaticallyApproval before production

    Creates an accounts receivable invoice as a DRAFT with line items.

draft journal entries1
  • Create unposted journal entryDestinationNot retried automaticallyApproval before production

    Creates a manual journal entry with posting_status UNPOSTED; lines must balance.

employees1
  • List employeesSourceIncremental

    Employees from the linked accounting system, incrementally by modified_after.

expenses2
  • Get expenseSource

    One expense by Merge ID.

  • List expenses (read only)SourceIncremental

    Expenses (read only) from the linked accounting system, incrementally by modified_after.

filestorage account details1
  • Get File Storage linked account detailsSource

    Integration, status and organization of the file storage system linked account (this category's account token).

filestorage drives2
  • Get driveSource

    One drive by Merge ID.

  • List drivesSourceIncremental

    Drives from the linked file storage system, incrementally by modified_after.

filestorage files2
  • Get fileSource

    One file by Merge ID.

  • List file metadataSourceIncremental

    File metadata from the linked file storage system, incrementally by modified_after.

filestorage folders3
  • Create folderDestinationNot retried automaticallyApproval before production

    Creates a folder in a drive or under a parent folder.

  • Get folderSource

    One folder by Merge ID.

  • List foldersSourceIncremental

    Folders from the linked file storage system, incrementally by modified_after.

filestorage groups2
  • Get file storage groupSource

    One file storage group by Merge ID.

  • List file storage groupsSourceIncremental

    File storage groups from the linked file storage system, incrementally by modified_after.

filestorage users2
  • Get file storage userSource

    One file storage user by Merge ID.

  • List file storage usersSourceIncremental

    File storage users from the linked file storage system, incrementally by modified_after.

general ledger transactions2
  • Get general ledger transactionSource

    One general ledger transaction by Merge ID.

  • List general ledger transactionsSourceIncremental

    General ledger transactions from the linked accounting system, incrementally by modified_after.

hris account details1
  • Get HRIS linked account detailsSource

    Integration, status and organization of the HR system linked account (this category's account token).

hris companies2
  • Get companySource

    One company by Merge ID.

  • List employer companiesSourceIncremental

    Employer companies from the linked HR system, incrementally by modified_after.

hris employees2
  • Get employeeSource

    One employee by Merge ID.

  • List employeesSourceIncremental

    Employees from the linked HR system, incrementally by modified_after.

hris employments2
  • Get employmentSource

    One employment by Merge ID.

  • List employments (job title and type)SourceIncremental

    Employments (job title and type) from the linked HR system, incrementally by modified_after.

hris groups2
  • Get groupSource

    One group by Merge ID.

  • List groups (departments, cost centers, business units)SourceIncremental

    Groups (departments, cost centers, business units) from the linked HR system, incrementally by modified_after.

hris locations1
  • List work locationsSourceIncremental

    Work locations from the linked HR system, incrementally by modified_after.

hris teams2
  • Get teamSource

    One team by Merge ID.

  • List teamsSourceIncremental

    Teams from the linked HR system, incrementally by modified_after.

hris time off balances2
  • Get time-off balanceSource

    One time-off balance by Merge ID.

  • List time-off balancesSourceIncremental

    Time-off balances from the linked HR system, incrementally by modified_after.

hris time off3
  • Request time offDestinationNot retried automaticallyApproval before production

    Submits a time-off request (status REQUESTED) for an employee.

  • Get time-off requestSource

    One time-off request by Merge ID.

  • List time-off requestsSourceIncremental

    Time-off requests from the linked HR system, incrementally by modified_after.

hris timesheet entries3
  • Create timesheet entryDestinationNot retried automaticallyApproval before production

    Records hours worked by an employee for a time window.

  • Get timesheet entrySource

    One timesheet entry by Merge ID.

  • List timesheet entriesSourceIncremental

    Timesheet entries from the linked HR system, incrementally by modified_after.

invoices4
  • Create invoiceDestinationNot retried automaticallyApproval before production

    Creates an accounts receivable invoice with line items.

  • Get invoiceSource

    One invoice by Merge ID.

  • List invoices (receivable and payable)SourceIncremental

    Invoices (receivable and payable) from the linked accounting system, incrementally by modified_after.

  • Update invoiceDestinationProvider duplicate protectionApproval before production

    Updates an invoice or bill (PATCH) where the integration supports updates.

items4
  • Create itemDestinationNot retried automaticallyApproval before production

    Creates a product or service item.

  • Get itemSource

    One item by Merge ID.

  • List itemsSourceIncremental

    Items from the linked accounting system, incrementally by modified_after.

  • Update itemDestinationProvider duplicate protectionApproval before production

    Updates an item (PATCH) where the integration supports item updates.

journal entries3
  • Create journal entryDestinationNot retried automaticallyApproval before production

    Creates a manual journal entry; line net amounts must balance to zero.

  • Get journal entrySource

    One journal entry by Merge ID.

  • List journal entriesSourceIncremental

    Journal entries from the linked accounting system, incrementally by modified_after.

payment methods1
  • List payment methodsSource

    Payment methods from the linked accounting system.

payment terms2
  • Get payment termSource

    One payment term by Merge ID.

  • List payment termsSource

    Payment terms from the linked accounting system.

payments2
  • Get paymentSource

    One payment by Merge ID.

  • List payments (read only)SourceIncremental

    Payments (read only) from the linked accounting system, incrementally by modified_after.

projects1
  • List projectsSourceIncremental

    Projects from the linked accounting system, incrementally by modified_after.

purchase orders3
  • Create purchase orderDestinationNot retried automaticallyApproval before production

    Creates a purchase order for a vendor with line items.

  • Get purchase orderSource

    One purchase order by Merge ID.

  • List purchase ordersSourceIncremental

    Purchase orders from the linked accounting system, incrementally by modified_after.

sales orders2
  • Get sales orderSource

    One sales order by Merge ID.

  • List sales orders (read only)SourceIncremental

    Sales orders (read only) from the linked accounting system, incrementally by modified_after.

sync status1
  • List sync statusSource

    Sync status for each common model of the linked account.

tax rates2
  • Get tax rateSource

    One tax rate by Merge ID.

  • List tax ratesSourceIncremental

    Tax rates from the linked accounting system, incrementally by modified_after.

ticketing account details1
  • Get Ticketing linked account detailsSource

    Integration, status and organization of the ticketing system linked account (this category's account token).

ticketing accounts2
  • Get ticketing accountSource

    One ticketing account by Merge ID.

  • List ticketing accounts (organizations)SourceIncremental

    Ticketing accounts (organizations) from the linked ticketing system, incrementally by modified_after.

ticketing attachments2
  • Get ticket attachmentSource

    One ticket attachment by Merge ID.

  • List ticket attachment metadataSourceIncremental

    Ticket attachment metadata from the linked ticketing system, incrementally by modified_after.

ticketing collections2
  • Get collectionSource

    One collection by Merge ID.

  • List collections (projects and lists)SourceIncremental

    Collections (projects and lists) from the linked ticketing system, incrementally by modified_after.

ticketing comments3
  • Add internal ticket commentDestinationNot retried automaticallyApproval before production

    Adds an internal (private) comment to a ticket.

  • Get ticket commentSource

    One ticket comment by Merge ID.

  • List ticket commentsSourceIncremental

    Ticket comments from the linked ticketing system, incrementally by modified_after.

ticketing contacts3
  • Create ticketing contactDestinationNot retried automaticallyApproval before production

    Creates a requester contact in the linked ticketing system.

  • Get ticketing contactSource

    One ticketing contact by Merge ID.

  • List ticketing contacts (requesters)SourceIncremental

    Ticketing contacts (requesters) from the linked ticketing system, incrementally by modified_after.

ticketing projects2
  • Get ticketing projectSource

    One ticketing project by Merge ID.

  • List ticketing projectsSourceIncremental

    Ticketing projects from the linked ticketing system, incrementally by modified_after.

ticketing tags2
  • Get ticket tagSource

    One ticket tag by Merge ID.

  • List ticket tagsSourceIncremental

    Ticket tags from the linked ticketing system, incrementally by modified_after.

ticketing teams2
  • Get ticketing teamSource

    One ticketing team by Merge ID.

  • List ticketing teamsSourceIncremental

    Ticketing teams from the linked ticketing system, incrementally by modified_after.

ticketing tickets4
  • Create ticketDestinationNot retried automaticallyApproval before production

    Creates a ticket or issue in the linked ticketing system.

  • Get ticketSource

    One ticket by Merge ID.

  • List ticketsSourceIncremental

    Tickets from the linked ticketing system, incrementally by modified_after.

  • Update ticketDestinationProvider duplicate protectionApproval before production

    Updates a ticket (PATCH), for example its status, priority or assignees.

ticketing users2
  • Get ticketing userSource

    One ticketing user by Merge ID.

  • List ticketing users (agents)SourceIncremental

    Ticketing users (agents) from the linked ticketing system, incrementally by modified_after.

tracking categories2
  • Get tracking categorySource

    One tracking category by Merge ID.

  • List tracking categories (classes and departments)SourceIncremental

    Tracking categories (classes and departments) from the linked accounting system, incrementally by modified_after.

vendor credits2
  • Get vendor creditSource

    One vendor credit by Merge ID.

  • List vendor credits (read only)SourceIncremental

    Vendor credits (read only) from the linked accounting system, incrementally by modified_after.

Access and limits

Authentication
Merge production or test access key plus the linked account token
Plans and access
A Merge account with the relevant category (Accounting, HRIS, ATS, CRM, Ticketing or File Storage) enabled. Production access keys need a paid plan; test linked accounts are free. Each Merge linked account belongs to one category. A connection's account token serves the category in its settings; add a token per further category (for example HRIS, ATS and CRM) to use those operations on the same connection. Operations for a category without a token are reported as unavailable. Writes and fields depend on the integration and the linked account's scopes.
Test environment
Merge provides a test access key and test linked accounts (for example the Merge sandbox ledger) at no charge.
Rate limits
Per linked account: 100 requests per minute on Launch, 400 on Professional and 600 on Enterprise plans.
Pagination
Cursor pagination with page_size up to 100; the next cursor is returned in `next`.
Provider events
Merge webhooks for common model changes (for example Invoice.added, Invoice.changed) and sync notifications. Flows run on demand, on a schedule, or when a scheduled check finds new or changed records.

Before you build a flow

  • Reads come from Merge's synced copy; data freshness follows the linked account's sync frequency (see sync_status.list).
  • Bills are Merge invoices with type ACCOUNTS_PAYABLE; bills.list and bills.create set that type.
  • Payments, credit notes, vendor credits, expenses and general ledger transactions are read only; Nexra never records or applies payments or credits.
  • Customer and vendor payments: Merge's payments endpoint has no filter by payment type, so payments.list returns both; each payment's type field says ACCOUNTS_RECEIVABLE (customer payment) or ACCOUNTS_PAYABLE (vendor payment).
  • Bank transactions: Merge exposes bank feed transactions (bank_transactions.list), which cover the bank feed accounts the linked integration supports, not every bank statement line in the ledger. Their currency is not reported.
  • Writes are synchronous (run_async is not used); bulk endpoints, attachments upload, file upload and download and field mappings are not automated.
  • Passthrough and async passthrough requests (raw calls to the downstream API) are intentionally excluded: they bypass Nexra's operation-level schemas, write gating and safety rules.
  • Deletes, linked-account deletion, account token regeneration, resyncs, scope changes and webhook receiver management are excluded.
  • HRIS: SSN, date of birth, gender, ethnicity, marital status, personal email and phone, home locations, pay groups, employment pay data, employer EINs, bank info, benefits, dependents and payroll runs are never read; include_sensitive_fields is never sent. Employee create is not offered.
  • ATS: EEOC (demographic) data, offer compensation and screening answers are not mapped; offers and interviews are never created (they can send invites or offers). Candidate notes are NOTE or OTHER only, never EMAIL.
  • ATS writes need the acting ATS user in remoteUserId (remote_user_id).
  • Ticketing comments are always internal (is_private true); public replies are excluded because they email customers.
  • CRM custom objects, associations and remote-field classes are not automated.
  • Name, email and phone filters are not offered for people records, so personal data never appears in request URLs.
  • sync_status.list reads the accounting category only.
  • Remote fields, remote data and integration_params are not mapped; use Merge field mappings for custom fields.
  • Merge has no idempotency key; uncertain creates are not repeated automatically.

Developer reference

  1. Create the Merge credentials described above with the narrowest permissions your flows need.
  2. In Nexra, open Connect, then Connections, then New connection, choose Merge Unified API, enter its settings and credentials, and tick only the write actions you need. Connection guide
  3. Test the connection, then use its actions as flow sources and destinations. Flow guide

Machine-readable detail: GET /api/public/connect/connectors/merge and the Connections API.