Skip to main content

Employer Payroll Identification

The Employer Payroll Identification API helps you identify where your users keep their direct deposits and who their payroll provider is.

The API serves two workflows:

  • Workflow 1: Those who do not have a relationship with a switch partner. The API response will identify the paycheck transactions of your customers as well as their employer and payroll provider (where applicable).

  • Workflow 2: Those who have a relationship with a switch partner (Atomic or Truv). Switch partners can use the API response to facilitate direct deposit switches to your bank.

The following depicts the differences between the workflows: example experiences

Requirements

The API will implement a 90-day look-back period for data retrieval and will operate on a rolling basis, determined by the requests sent to the API.

Responses from the API will be sorted based on the last_posted_date field, with the most recent entries appearing first and then descending in order of recency.

In cases where multiple paychecks have identical posted dates, their order in the response is not significant as long as they both appear as the most recent entries.

Access/Authentication

Accessing and authenticating is through the Platform API.

warning

Instead of using the accept header described in the “versioning” section, you will use application/vnd.mx.api.v2+json as the Accept header.

Once authenticated with the Platform API, you will be allowed to make successful calls to the Employer Payroll Identification API

URLs

Use the Production environment for testing.

EnvironmentHostname
Productionapi.mx.com

API Request Parameters

You will be required to provide a user_guid to initiate the request to the API. A switch_partner_id is optional (but recommended if you have a prior integration to a switch partner).

  • user_guid: The unique identifier for the user. Required Field

  • switch_partner_id: A unique identifier for the switch partner you’re integrated with. This request parameter will be defaulted to ‘null’. Optional Field Valid IDs are as follows: 

    1. SWP-3846 → atomic
    2. SWP-1337 → truv

cURL Request (without switch_partner_id)

Request
Response
Language:shell

_10
$ curl -L -X GET 'https://api.mx.com/users/:user_guid/identify_payrolls \
_10
-H 'Accept: application/vnd.mx.api.v2+json' \
_10
-H 'Authorization: Basic BASE_64_ENCODING_OF{client_external_guid:accessor_api_key}'

cURL Request (with switch_partner_id)

Request
Response
Language:shell

_10
$ curl -L -X GET 'https://api.mx.com/users/:user_guid/identify_payrolls?switch_partner_id=SWP-#### \
_10
-H 'Accept: application/vnd.mx.api.v2+json' \
_10
-H 'Authorization: Basic BASE_64_ENCODING_OF{client_external_guid:accessor_api_key}'

Appendix

Glossary

  1. Switch Partner: A financial company that offers access to payroll, HRIS systems, and merchants and facilitates a range of financial services including direct deposit switching, income and employment verification, and payment method updating (i.e. Atomic, Truv).
  2. Payroll Provider: Companies like ADP, Workday, Paylocity, etc. Payroll providers can also be employers.
  3. Employer: Who a user works for. For example, a user may work for McDonald's and the employer may be McDonald’s OR the franchise owner. Employers can also be merchants.

Data Dictionary

FieldValueDefinitionData Type
accountobjectThe object that will provide account level information related to the paycheck transactions of the userdictionary
account_guidparameterThe unique identifier for the account belonging to the user. Defined by MX. This will begin with ‘ACT’string
nameparameterThe name of the account relating to the paycheckstring
nicknameparameterThe nickname of the account relating to the paycheckstring
typeparameterThe account type associated to the paycheckstring
paycheck_depositsobjectThe object that will contain the transactions of the paycheck associated with the accountdictionary
guidparameterA unique id associated to the paycheck deposit. Defined by MX. This will begin with ‘PYT’string
amountparameterThe paycheck amount associated with the transactioninteger
descriptionparameterThe feed description of the paycheck transactionstring
switch_partner_nameparameterThe name of the switch partner you are integrated with. This field will be null if a switch_partner_id is not provided in the request bodystring
employer_nameparameterThe identified employer associated with the paycheck transactionstring
paycheck_countparameterThe paycheck count represents the number of times the paycheck was posted to the account in the last 90 daysinteger
partner_employer_idparameterThe employer ID, associated to the switch partner’s employer ID. This field will be null if a switch_partner_id is not provided in the request bodystring
partner_payroll_idparameterThe partner ID, associated to the switch partner’s payroll ID. This field will be null if a switch_partner_id is not provided in the request bodystring
payroll_nameparameterThe identified payroll name associated to the paycheck transactionstring
transaction_guidparameterThe unique MX generated ID for the transactionstring
last_posted_dateparameterThe last date of the paycheck. UTC Timecode Stampdate (ISO 8601)
statusparameterThe status of the paycheck transaction. Possible values are pending, postedstring