ADP DataCloud Employment and Income Verification API - Guide Published on Jun 16, 2021 10:11AM

Page created by Ian Morrison
 
CONTINUE READING
ADP DataCloud Employment and Income Verification API - Guide Published on Jun 16, 2021 10:11AM
Guide

ADP DataCloud
Employment and
Income Verification API
Published on
Jun 16, 2021 10:11AM

Last modified
Aug 03, 2021 10:05AM

            1
ADP Copyright Information
ADP, the ADP logo, and Always Designing for People are trademarks of ADP, Inc.

Windows is a registered trademark of the Microsoft Corporation.

All other trademarks are the property of their respective owners.

Copyright © 2021 ADP, Inc. ADP Proprietary and Confidential - All Rights Reserved. These materials
may not be reproduced in any format without the express written permission of ADP, Inc.

These materials may not be reproduced in any format without the express written permission of ADP,
Inc. ADP provides this publication “as is” without warranty of any kind, either expressed or implied,
including, but not limited to, the implied warranties of merchantability or fitness for a particular
purpose. ADP is not responsible for any technical inaccurancies or typographical errors which may be
contained in this publication. Changes are periodically made to the information herein, and such
changes will be incorporated in new editions of this publication. ADP may make improvements and/or
changes in the product and/or the programes described in this publication.

Published on
Jun 16, 2021 10:11AM

Last modified
Aug 03, 2021 10:05AM

                    2
Table of Contents

Chapter 1
API Onboarding Steps

    Summary
    Step 1: Get Access to the ADP Developer Portal
    Step 2: Sandbox Agreement
    Step 3: Development Credentialing
    Step 4: Business Term Sheet
    Step 5: Letter of Intent (LOI)
    Step 6: FCRA Questionnaire
    Step 7: Global Security Organization (GSO), Third-Party Risk Assessment (TPRA), &
    Privacy Reviews
    Step 8: Master Services Agreement (MSA) & Statement of Work (SOW)
    Step 9: Production Credentialing
    Step 10: Billing / Invoicing Set Up

Chapter 2
API Overview

    Summary
    API Overview Table
    Identity Verification
    Employment Verification
    Employment & Income Verification (YTD)
    Employment & Income Verification (Detailed)

Chapter 3
Rate Limits

    Rate Limits

Chapter 4
Identity Verification

    Endpoint
    Summary
    Returns
    Sample Response
    Criterias & Exceptions
    Errors
    Input

                  3
Sample Input

Chapter 5
Employment Verification

    Endpoint
    Summary
    Returns
    Sample Response
    Criterias & Exceptions
    Errors
    Input
    Sample Input

Chapter 6
Employment & Income Verification (YTD)

    Endpoint
    Summary
    Returns
    Sample Response
    Criterias & Exceptions
    Errors
    Input
    Sample Input

Chapter 7
Employment & Income Verification (Detailed Basic)

    Endpoint
    Summary
    Returns
    Sample Response
    Criterias & Exceptions
    Errors
    Input
    Sample Input

Chapter 8
Employment & Income Verification (Detailed Enhanced)

    Endpoint
    Summary
    Returns
    Sample Response
    Criterias & Exceptions
    Errors
    Input
    Sample Input

Chapter 9
FAQs

    Input

                   4
API General Info and Structure
    Data: Earnings
    Data: Refresh Rate
    Data: Other

Chapter 10
API Production Support

    Summary
    Emergency Connectivity Issues
    Data Disputes
    General Questions

                  5
Chapter 1

API Onboarding Steps
Summary

The purpose of this page is to share the necessary steps to onboard the ADP DataCloud Employment and Income Verification APIs from
development to production. It serves as a guide to inform what to expect along the way, and who are the key stakeholders involved in each of
these steps.

Pre-requisite: before any of the below steps can be taken, the following 2 pre-requisites must be completed:

      1. Register your organization via our partner program form, if not done so previously

      2. Sign the mutual non-disclosure agreement (MNDA). The MNDA will be provided by your ADP business development contact.

Step 1: Get Access to the ADP Developer Portal

Roles: Business Development, Product Development

With the MNDA signed, you'll now be able to access this guide and other supporting documentation such as specifications, FAQs, etc. that is
shown in this guide. You are free to view our specification, along with the included sample responses to get a deeper understanding of the
APIs we have available. Also, partners get access to this guide so they can better understand the steps involved to fully onboard with our APIs

Step 2: Sandbox Agreement

Roles: Business Development

Your ADP business development contact will then provide an API Sandbox Agreement to be signed. The ADP API Sandbox Agreement allows
the creation of developer credentials so that your team can play around with the APIs using dummy test data and be able to begin
development.

Step 3: Development Credentialing

Roles: Product Development

Once the Sandbox Agreement is signed, an ADP product lead will reach out to your development and product leads to obtain the name(s) of
development leads and members so that ADP can:

      1. Set up a secure file sharing site to which onboarding documents can be shared, such as postman collections that includes all the endpoints
         and test inputs constructed, additional dummy test inputs that provide different types of data responses to depict various scenarios, and other
         supporting documentation to help your team with development.

      2. Set up a private Slack Channel between development teams to answer any technical questions related to the integration. An ADP Product
         Development member will provide a link to your development team to join Slack.

      3. Set up and securely provide development credentials.

Development credentials are composed of a client ID and client secret, and will be securely sent by an ADP product member. In addition to
client ID and client secret, you must generate a mutual SSL certificate in order to successfully connect to our API endpoints. Instructions for
this step will be provided to you along with the credentials.

                                                                          6
Additional Note: our API endpoints are the same for both development and production. It is the credentials that provide access to either
dummy test data or live production data. Mutual SSL Certificates remain the same and can be reused when you later transition to production.

Step 4: Business Term Sheet

Roles: Business Development

As part of the business development effort, ADP will present a business term sheet. The business term sheet is a nonbinding agreement
setting forth the basic terms and conditions under which a partnership alliance will be made. It serves as a template to develop more detailed
legally binding documents (MSA/SOW). It is helpful to understand the different use cases and market verticals you wish to use ADP data for.

Step 5: Letter of Intent (LOI)

Roles: Business Development, Legal

The LOI is a non-binding agreement that outlines the understanding between ADP and your organization the intent to formalize into a
partnership.

Step 6: FCRA Questionnaire

Roles: Business Development, Legal

As part of the legal review process, potential partners are required to complete the FCRA Questionnaire to determine their ability to meet our
compliance requirements. This questionnaire will be provided by your business development contact. The ADP legal team will also review any
use case, process flow or interactive demonstrations to gain understanding of the potential business relationship. It is helpful if you can
provide any documentation or demos of how ADP data will be used in your product or services.

Step 7: Global Security Organization (GSO), Third-Party Risk Assessment (TPRA), & Privacy
Reviews

Roles: GSO, Legal, Business Development

All partners of ADP are required to undergo a formal securty and risk assessment, faciliated by our GSO team. Partners will be asked to
complete required security and risk questionnaires. This process can take 4-8 weeks to complete. Your ADP contact will help kick off this
process.

The Privacy Review process includes a (questionnaire) used by the Global Data Privacy and Governance team to identify and evaluate privacy
risks associated with the processing of personally identifiable information/personal data (PI).

Step 8: Master Services Agreement (MSA) & Statement of Work (SOW)

Roles: Business Development, Legal

                                                                       7
At this stage, ADP will provide MSA and SOW documentation for review. Once the MSA/SOW is signed by both parties, production credentials
can be generated

Step 9: Production Credentialing

Roles: Product Development

Once the MSA/SOW is signed, ADP will provide production credentials within 48-72 hours. The production credentials are a new set of client
ID and client secret, and when used will gain access to live production data. The existing mutual SSL certificate can be used with production
credentials, and the same endpoints that were used during development can be used with production credentials.

Step 10: Billing / Invoicing Set Up

Roles: Business Development, Product Development

Finally, as the last step, an ADP Product Development member will ask for the contact info of your lead business development member, to
whom invoices and billing will be addressed to. ADP will make sure to set up an account for that business development member and send an
invitation to login to finish registration.

Chapter 2

API Overview
Summary

The ADP DataCloud Employment and Income Verification APIs are composed of 5 endpoints, returning varying levels of data fit for different
types of use cases. In this chapter, you'll find an overview of the endpoints and data they return, so that it may help you choose the right
endpoint that best serves your use cases.

API Overview Table

                                                                      8
Identity Verification

basic/identity API - Obtains simple signal match (true or false) to indicate whether a person exists in the ADP database

Use Cases

        Account creation (i.e. online banking, cell phone account, etc.) – check if an individual exists in the ADP database, and if the personal
        information submitted by the individual during account creation matches with what is in the ADP database used for payroll

Employment Verification

basic/employment API - Obtains employment history for an individual (e.g. verification of employment)

Use Cases

        Pre-employment screening – check if individual is employed, and obtain history of employment

Employment & Income Verification (YTD)

enhanced/employment API - Obtains employment history + annual pay summary (YTD) for an individual

Use Cases

        Pre-employment screening for certain jobs (check jurisdiction restrictions) – check if individual is employed, obtain history of employment, and
        YTD income

                                                                            9
Credit card – verification of employment and basic income summary to help confirm stated income and employment • Offers – to help target
        offers and pre-qualifications to potential customers
        Offers or Pre-qualification – to help target offers and pre-qualifications to potential customers

Employment & Income Verification (Detailed)

basic/employment-income API - Obtains employment history, annual pay summary (YTD), and income history (pay period details) for the
current year to date plus the last 2 full years, if available. Best used for mortgage, auto loans, personal loans where income history is needed,
but deductions are not necessary.

Use Cases

        Auto loans, tenant screenings, personal loans, mortgage – check employment history and detailed pay period history for up to 3 years

enhanced/employment-income API - Obtains everything in basic/employment-income API, PLUS deductions information

Use Cases

        Mortgage, government services – check employment history and detailed pay period history (with deductions information) for up to 3 years, for a
        more comprehensive data set

Chapter 3

Rate Limits
Rate Limits

As with other APIs at ADP, there are limits to how many calls you're able to make within a given timeframe. They are as follows:

        50 concurrent calls
        300 calls per minute

Chapter 4

Identity Verification
Endpoint

POST https://api.adp.com/core/v1/associate-verifications/basic/identity

Summary

        Checks if a person is a match in the ADP database, and provides a comparison of what inputs matched and didn't match. Also returns
        employment summary for that individual (e.g. whether or not if there is income data available, and whether or not the individual is an active
        employee)

                                                                          10
Returns

    governmentID
            id - ex. xxx-xx-0000
            nameCode
                       code - i.e. SSN
                       name - i.e. Last 4 digits of SSN
    identityMatchDetails
            matchTypeCode - returns complete, partial, or none to indicate if supplied input matches with ADP record
            matchDetails - if one or more supplied inputs (other than government ID) is not a match in ADP records, then matchDetails returns
            the following:
                       birthDateMatch
                                  submittedValue - birthdate specified in the input
                                  matchIndicator - true or false whether or not the birthdate specified in the input matches with person in ADP
                                  record
                       givenNameMatch
                                  submittedValue - first name specified in the input
                                  matchIndicator - true or false whether or not the first name specified in the input matches with person in ADP
                                  record
                                  scoreValue - numerical score for match between first name specified in the input and value ADP record
                       middleNameMatch
                                  submittedValue - middle name specified in the input
                                  matchIndicator - true or false whether or not the middle name specified in the input matches with person in ADP
                                  record
                                  scoreValue - numerical score for match between middle name specified in the input and value ADP record
                       familyNameMatch
                                  submittedValue - last name specified in the input
                                  matchIndicator - true or false whether or not the last name specified in the input matches with person in ADP
                                  record
                                  scoreValue - numerical score for match between last name specified in the input and value ADP record
                       addressMatch
                                  lineOneMatch
                                           submittedValue - address line one specified in the input
                                           matchIndicator - true or false whether or not the line one of the address specified in the input matches
                                           with person in ADP record
                                           scoreValue - numerical score for match between address line one specified in the input and value ADP
                                           record
                                  lineTwoMatch
                                           submittedValue - address line two specified in the input
                                           matchIndicator - true or false whether or not the line two of the address specified in the input matches
                                           with person in ADP record
                                           scoreValue - numerical score for match between address line two specified in the input and value ADP
                                           record
                                  lineThreeMatch
                                           submittedValue - address line three specified in the input
                                           matchIndicator - true or false whether or not the line three of the address specified in the input matches
                                           with person in ADP record
                                           scoreValue - numerical score for match between address line three specified in the input and value ADP
                                           record
                                  cityMatch
                                           submittedValue - city specified in the input
                                           matchIndicator - true or false whether or not the city specified in the input matches with person in ADP
                                           record
                                           scoreValue - numerical score for match between city specified in the input and value ADP record
                                  subdivisionCodeMatch
                                           submittedValue - subdivision code (or state) specified in the input

                                                                     11
matchIndicator - true or false whether or not the state specified in the input matches with person in ADP
                                            record
                                            scoreValue - numerical score for match between subdivision code specified in the input and value ADP
                                            record
                                   postalCodeMatch
                                            submittedValue - postal code specified in the input
                                            matchIndicator - true or false whether or not the postal code specified in the input matches with person
                                            in ADP record
                                            scoreValue - numerical score for match between postal code specified in the input and value ADP record
                                   countryCodeMatch
                                            submittedValue - country specified in the input
                                            matchIndicator - true or false whether or not the country code specified in the input matches with
                                            person in ADP record
                                            scoreValue - numerical score for match between country code specified in the input and value ADP record
                           depositAccountNumberMatch
                                   last4Match - returns true if the supplied last 4 direct deposit account number in the input is a match to any last 4
                                   direct deposit account number from the person's employment in the current year to date and the last 2 full years.
                                   Returns null if there are no direct deposit accounts
                                   isMostRecent - returns true or false whether or not the matched direct deposit last 4 is from the most recent
                                   employment in ADP records
                           routingTransitIDLast4Match
                                   last4Match - returns true if the supplied last 4 routing number in the input is a match to any last 4 routing number
                                   from the person's employment in the current year to date and the last 2 full years. Returns null if there are no
                                   routing numbers
                                   isMostRecent - returns true or false whether or not the matched routing number last 4 is from the most recent
                                   employment in ADP records
                     employmentSummary
                           workerStatusIsActive - returns true if the person's worker status is Active from any employer
                           incomeDataAvailable - returns true if income data is available for the person

Sample Response

{
    "governmentID": {
       "id": "xxx-xx-0000",
       "nameCode": {
          "code": "SSN",
            "name": "Last 4 digits of SSN"
        }
    },
    "identityMatchDetails": {
       "matchTypeCode": "Partial",
       "matchDetails": {
          "birthDateMatch": {
             "submittedValue": "1984-01-01",
               "matchIndicator": true,
               "scoreValue": 100
            },
            "givenNameMatch": {
               "submittedValue": "First",
               "matchIndicator": false,
               "scoreValue": 86
            },
            "familyNameMatch": {
               "submittedValue": "Last",
               "matchIndicator": true,
               "scoreValue": 100
            }
        }
    }
}

                                                                           12
Criterias & Exceptions

        If the supplied government ID (ex. SSN) is not found in ADP records, a 404 person not found will be returned
        If the supplied government ID (ex. SSN) matches but the date of birth does not match, then depositAccountNumberLast4Match,
        routingTransitIDLast4Match, and employmentSummary will not be returned

Errors

        404 Person not found
                A person was not found from the supplied government ID
        400 Invalid input
                Invalid market vertical. Please provide a valid market vertical.
                End consumer consent not provided
                Invalid government ID format. Please check and try again.
                Invalid date of birth format. Please provide in the format yyyy-mm-dd

Input

        requestorInfo
                marketSegmentCode (string) - the market vertical in which the request is applicable to. To be provided by development contact
                (Required)
                verifierName (string) - the company name of the verifier (ex. the name of the lender organization) (Required)
        associateVerificationRequest
                governmentID (string) - SSN (9 digit) (Required)
                birthDate (string) - YYYY-MM-DD (Required)
                personName
                        familyName (string)
                        givenName (string)
                        middleName (string)
                address
                        lineOne (string)
                        lineTwo (string)
                        lineThree (string)
                        cityName (string)
                        subdivisionCode (string)
                        countryCode (string)
                        postalCode (string)
                depositAccountNumberLast4 (string)
                routingTransitIDLast4 (string)
        associateConsentReceivedIndicator (Required)

Sample Input

                                                                        13
{
     "requestorInfo": {
       "marketSegmentCode": "string",
       "verifierName": "string"
     },
     "associateVerificationRequest": {
       "governmentID": {
       "id": "string"
      },
      "birthDate": "YYYY-MM-DD",
      "personName": {
       "givenName": "string",
       "middleName": "string",
       "familyName": "string"
      },
      "address": {
       "lineOne": "string",
       "lineTwo": "string",
       "lineThree": "string",
       "cityName": "string",
       "subdivisionCode": {
         "code": "string",
         "name": "string",
         "subdivisionType": "string"
       },
       "countryCode": "string",
       "postalCode": "string"
      },
      "depositAccountNumberLast4": "string",
      "routingTransitIDLast4": "string"
     },
     "associateConsentReceivedIndicator": true
 }

Chapter 5

Employment Verification
Endpoint

POST https://api.adp.com/core/v1/associate-verifications/basic/employment

Summary

           Obtains employment history for a specified person. Best used to help verify whether or not a person is employed, and which employers they
           have worked for.
           Can be used for: pre-employment screening

Returns

           governmentID
                  id - ex. xxx-xx-0000
                  nameCode

                                                                          14
code - i.e. SSN
                     name - i.e. Last 4 digits of SSN
    personalData (most recent)
            personName
                     givenName - first name
                     middleName - middle name
                     familyName - last name
            address - address
            communication
                     telephones - phone number(s), if available
                     emails - email(s), if available
    employmentHistory (for each employer)
            asOfDate - last pay date (YYYY-MM-DD)
            employerName - employer name
            legalEntityID - employer legal ID, i.e. federal employer ID number (FEIN)
            systemRefreshDate - date of latest data refresh (YYYY-MM-DD)
            employerAddress
                     lineOne
                     lineTwo
                     lineThree (if applicable)
                     cityName
                     subdivisionCode1
                                name - i.e. CA
                     countryCode - i.e. US
                     postalCode - i.e. zip code
            employmentDetail (if multiple job positions are available for same employer, they will be included here)
                     effectiveDate - the date which information was updated in ADP records
                     originalHireDate - date which employee was hired
                     workerStatusCode - employee status (A - Active, T - Terminated, L - Leave)
                                code - A, T, L
                                name - Active, Terminated, Leave
                     workLevelCode - employment type (i.e. Full-time, part-time, regular, temp, contractor)
                                code - Full time, Part time. For employers that use ADP Payroll HCM such as WorkForce Now, they can enter a
                                freeform text to denote a worker level code for the employee, of which will be provided
                                name - Full time, Part time. For employers that use ADP Payroll HCM such as WorkForce Now, they can enter a
                                freeform text to denote a worker level name for the employee, of which will be provided
                     payrollGroupCode - payroll group code
                                code - payroll group code
                     positionTitle - job title
                     positionStartDate - most recent hire date
                     positionEndDate - termination date
                     positionTenureDuration - tenure (ISO 8601)
                     standardHours - hours entered in the Payroll system by the employer, most often this number is hours per week. For full time
                     employees, in general, it is usually 40 and for part time it will reflect the hours scheduled to work per week
            remunerationBasisCode - pay description
                     name - Salary, Hourly, Daily
            payCycleCode - pay frequency
                     code (corresponds to the name, respectively, as in M = Monthly, S = Semi-Monthly, etc.) - M, S, B, W, D, BO, BE, Q, SA, A, 2, 4, 5
                     name - Monthly, Semi-Monthly, Bi-Weekly, Weekly, Daily, Bi-Weekly Odd, Bi-Weekly Even, Quarterly, Semi-Annual, Annual,
                     Every 2.6 wks, Every 4 wks, Every 5.2 wks
    historySummary (this section provides some general information about the data returned)
            availableHistorySourceCount - indicates the total number of employers which have information about the person
            includedHistorySourceCount - indicates the number of employers whose data about the person was included in the response

Sample Response

                                                                       15
{
    "governmentID": {
       "id": "xxx-xx-0000",
       "nameCode": {
          "code": "SSN",
          "name": "Last 4 digits of SSN"
       }
    },
    "personalData": {
       "personName": {
          "givenName": "First",
          "middleName": "Middle",
          "familyName": "Last"
       },
       "communication": {
           "telephones": [
              {
                 "formattedNumber": 3101111111
              }
           ],
           "emails": [
              {
                   "emailUri": "sample.email@test.com"
               }
           ],
           "internetAddresses": []
      },
      "address": {
         "lineOne": "16 lgl",
         "lineTwo": "Ui ",
           "lineThree": null,
           "cityName": "Cieo",
           "subdivisionCode1": {
               "name": "IL"
           },
           "countryCode": "US",
           "postalCode": "99999"
       }
    },
    "employmentHistory": [
       {
         "asOfDate": "2020-07-31",
         "employerName": "Amazing Community Pharmacy LLC",
         "legalEntityID": {
            "legalEntityID": "111111111"
           },
           "systemRefreshDate": "2021-08-01",
           "employerAddress": {
              "lineOne": "13 EMN T 1",
              "lineTwo": null,
              "lineThree": null,
              "cityName": "CIEO",
               "subdivisionCode1": {
                  "name": "IL"
               },
               "countryCode": "US",
               "postalCode": "99999"
           },
           "employmentDetail": [
              {
                   "effectiveDate": "2019-12-23",
                   "originalHireDate": "2015-08-10",
                   "workerStatusCode": {
                      "code": "A",
                      "name": "Active"
                   },
                   "workLevelCode": {
                     "code": "Full time",
                     "name": "Full time"
                   },
                   "positionTitle": null,
                   "positionStartDate": "2015-08-10",
                   "positionEndDate": null,
                   "positionTenureDuration": "P4Y10M12D",
                   "standardHours": 0.0
               }
           ]
      },

                                                             16
{
             "asOfDate": "2020-06-22",
             "employerName": "Soul Cafe Llc",
             "legalEntityID": {
                "legalEntityID": "111111111"
             },
             "employerAddress": {
                "lineOne": "13 EMN T 1",
                "lineTwo": null,
                "lineThree": null,
                 "cityName": "CIEO",
                 "subdivisionCode1": {
                     "name": "IL"
                 },
                 "countryCode": "US",
                 "postalCode": "99999"
             },
             "employmentDetail": [
                 {
                     "effectiveDate": "2015-08-18",
                     "originalHireDate": "2015-08-10",
                     "workerStatusCode": {
                        "code": "A",
                        "name": "Active"
                     },
                     "workLevelCode": {
                        "code": "Part time",
                        "name": "Part time"
                     },
                     "positionTitle": null,
                     "positionStartDate": "2015-08-10",
                     "positionEndDate": null,
                     "positionTenureDuration": "P4Y10M12D",
                     "standardHours": 60.0
                 }
             ]
         }
     ],
     "historySummary": {
        "availableHistorySourceCount": 2,
         "includedHistorySourceCount": 2
     }
 }

Criterias & Exceptions

             If the supplied government ID and DOB do not match to an ADP record, a 404 person not found will be returned

Errors

             404 Person not found
                     A person was not found from the supplied government ID
             400 Invalid input
                     Invalid market vertical. Please provide a valid market vertical.
                     End consumer consent not provided
                     Invalid government ID format. Please check and try again.
                     Invalid date of birth format. Please provide in the format yyyy-mm-dd

                                                                             17
Input

         requestorInfo
                 marketSegmentCode (string) - the market vertical in which the request is applicable to. To be provided by development
                 contact (Required)
                 verifierName (string) - the company name of the verifier (ex. the name of the lender organization) (Required)
         associateVerificationRequest
                 governmentID (string) - SSN (9 digit) (Required)
                 birthDate (string) - YYYY-MM-DD (Required)
         associateConsentReceivedIndicator (Required)

Sample Input

 {
     "requestorInfo": {
        "marketSegmentCode": "Talent",
        "verifierName": "Example Verifier Company"
     },
     "associateVerificationRequest": {
        "governmentID": {
           "id": "000000000"
        },
        "birthDate": "1984-01-01"
     },
     "associateConsentReceivedIndicator": true
 }

Chapter 6

Employment & Income Verification (YTD)
Endpoint

POST https://api.adp.com/core/v1/associate-verifications/enhanced/employment

Summary

         Obtains employment history and annual pay summary (for the current year to date plus the last 2 full years). Best used to help verify whether
         or not a person is employed, which employers they have worked for, and get a summary view of their current and past full 2 years YTD income.
         Can be used for: credit card applications, pre-employment screening for certain types of jobs (jurisdiction restrictions may apply), where
         employment history and income summary (YTD or annual view) is needed

Returns

         governmentID
                id - ex. xxx-xx-0000
                nameCode
                           code - i.e. SSN

                                                                          18
name - i.e. Last 4 digits of SSN
personalData (most recent)
       personName
                givenName - first name
                middleName - middle name
                familyName - last name
       address
                lineOne
                lineTwo
                lineThree (if applicable)
                cityName
                subdivisionCode1
                          name - i.e. CA
                countryCode - i.e. US
                postalCode - i.e. zip code
       communication
                telephones - phone number(s), if available
                emails - email(s), if available
employmentHistory (for each employer)
       asOfDate - last pay date (YYYY-MM-DD)
       employerName - employer name
       legalEntityID - employer legal ID, i.e. federal employer ID number (FEIN)
       systemRefreshDate - date of latest data refresh (YYYY-MM-DD)
       employerAddress
                lineOne
                lineTwo
                lineThree (if applicable)
                cityName
                subdivisionCode1
                          name - i.e. CA
                countryCode - i.e. US
                postalCode - i.e. zip code
       employmentDetail (if multiple job positions are available for same employer, they will be included here)
                effectiveDate - the date which information was updated in ADP records
                originalHireDate - date which employee was hired
                workerStatusCode - employee status (A - Active, T - Terminated, L - Leave)
                          code - A, T, L
                          name - Active, Terminated, Leave
                workLevelCode - employment type (i.e. Full-time, part-time, regular, temp, contractor)
                          code - Full time, Part time. For employers that use ADP Payroll HCM such as WorkForce Now, they can enter a
                          freeform text to denote a worker level code for the employee, of which will be provided
                          name - Full time, Part time. For employers that use ADP Payroll HCM such as WorkForce Now, they can enter a
                          freeform text to denote a worker level name for the employee, of which will be provided
                payrollGroupCode - payroll group code
                          code - payroll group code
                positionTitle - job title
                positionStartDate - most recent hire date
                positionEndDate - termination date
                positionTenureDuration - tenure (ISO 8601)
                standardHours - hours entered in the Payroll system by the employer, most often this number is hours per week. For full time
                employees, in general, it is usually 40 and for part time it will reflect the hours scheduled to work per week
       remunerationBasisCode - pay description
                name - Salary, Hourly, Daily
       payCycleCode - pay frequency
                code (corresponds to the name, respectively, as in M = Monthly, S = Semi-Monthly, etc.) - M, S, B, W, D, BO, BE, Q, SA, A, 2, 4, 5
                name - Monthly, Semi-Monthly, Bi-Weekly, Weekly, Daily, Bi-Weekly Odd, Bi-Weekly Even, Quarterly, Semi-Annual, Annual,
                Every 2.6 wks, Every 4 wks, Every 5.2 wks
       basePayRate - base/regular pay rate
                amount

                                                                  19
currencyCode - i.e. USD
            remunerationSummary - YTD pay for the current year to date, plus last 2 full years. For the case when data is quarterly in nature (i.e.
            data source only comes from tax data), then only the gross YTD will be available
                     payrollYear - year
                     baseRemunerationAmount - YTD Base
                              amount
                              currencyCode - i.e. USD
                     additionalRemunerations
                              remunerationTypeCode - YTD Bonus
                                        amount
                                        currencyCode - i.e. USD
                              remunerationTypeCode - YTD Overtime
                                        amount
                                        currencyCode - i.e. USD
                              remunerationTypeCode - YTD Others
                                        amount
                                        currencyCode - i.e. USD
                     totalAnnualRenumerationAmount - YTD Gross
                              amount
                              currencyCode - i.e. USD
                     netPayYTDAmount - YTD Net
                              amount
                              currencyCode - i.e. USD
    historySummary (this section provides some general information about the data returned)
            availableHistorySourceCount - indicates the total number of employers which have information about the person
            includedHistorySourceCount - indicates the number of employers whose data about the person was included in the response

Sample Response

                                                                     20
{
    "governmentID": {
       "id": "xxx-xx-0000",
       "nameCode": {
          "code": "SSN",
          "name": "Last 4 digits of SSN"
       }
    },
    "personalData": {
       "personName": {
          "givenName": "First",
          "middleName": "Middle",
          "familyName": "Last"
       },
       "communication": {
          "telephones": [
             {
                "formattedNumber": 3101111111
             }
          ],
          "emails": [
             {
                "emailUri": "sample.email@test.com"
             }
          ],
          "internetAddresses": []
      },
      "address": {
         "lineOne": "16 lgl",
         "lineTwo": "Ui ",
          "lineThree": null,
          "cityName": "Cieo",
          "subdivisionCode1": {
              "name": "IL"
          },
          "countryCode": "US",
          "postalCode": "99999"
      }
    },
    "employmentHistory": [
       {
         "asOfDate": "2020-07-31",
         "employerName": "Amazing Community Pharmacy LLC",
         "legalEntityID": {
            "legalEntityID": "111111111"
          },
          "systemRefreshDate": "2021-08-01",
          "employerAddress": {
             "lineOne": "13 EMN T 1",
             "lineTwo": null,
             "lineThree": null,
             "cityName": "CIEO",
             "subdivisionCode1": {
                "name": "IL"
             },
             "countryCode": "US",
             "postalCode": "99999"
          },
          "employmentDetail": [
             {
                "effectiveDate": "2019-12-23",
                "originalHireDate": "2015-08-10",
                "workerStatusCode": {
                   "code": "A",
                   "name": "Active"
                },
                "workLevelCode": {
                   "code": "Full time",
                   "name": "Full time"
                },
                "positionTitle": null,
                "positionStartDate": "2015-08-10",
                "positionEndDate": null,
                "positionTenureDuration": "P4Y10M12D",
                "standardHours": 0.0
             }
          ],
          "remunerationSummary": [

                                                             21
{
             "payrollYear": 2020,
             "baseRemunerationAmount": {
               "amount": 30769.2,
               "currencyCode": "USD"
             },
             "additionalRemunerations": [
                {
                   "remunerationTypeCode": "YTD Bonus",
                   "remunerationAmount": {
                      "amount": 0.0,
                        "currencyCode": "USD"
                    }
               },
               {
                    "remunerationTypeCode": "YTD Overtime",
                    "remunerationAmount": {
                       "amount": 0.0,
                        "currencyCode": "USD"
                    }
               },
               {
                    "remunerationTypeCode": "YTD Others",
                    "remunerationAmount": {
                       "amount": 15206.85,
                       "currencyCode": "USD"
                    }
               }
             ],
             "totalAnnualRemunerationAmount": {
                "amount": 45976.05,
                "currencyCode": "USD"
             },
             "netPayYTDAmount": {
                "amount": null,
                "currencyCode": "USD"
             }
         }
     ]
},
{
     "asOfDate": "2020-06-22",
     "employerName": "Soul Cafe Llc",
     "legalEntityID": {
        "legalEntityID": "111111111"
     },
     "employerAddress": {
        "lineOne": "13 EMN T 1",
         "lineTwo": null,
         "lineThree": null,
         "cityName": "CIEO",
         "subdivisionCode1": {
             "name": "IL"
         },
         "countryCode": "US",
         "postalCode": "99999"
     },
     "employmentDetail": [
        {
          "effectiveDate": "2015-08-18",
          "originalHireDate": "2015-08-10",
          "workerStatusCode": {
             "code": "A",
                "name": "Active"
             },
             "workLevelCode": {
                "code": "Part time",
                "name": "Part time"
             },
             "positionTitle": null,
             "positionStartDate": "2015-08-10",
             "positionEndDate": null,
             "positionTenureDuration": "P4Y10M12D",
             "standardHours": 60.0
        }
     ],
     "remunerationSummary": [
        {
          "payrollYear": 2019,

                                                              22
"baseRemunerationAmount": {
                  "amount": 99999.9,
                  "currencyCode": "USD"
               },
               "additionalRemunerations": [
                  {
                     "remunerationTypeCode": "YTD Bonus",
                     "remunerationAmount": {
                        "amount": 39895.44,
                        "currencyCode": "USD"
                     }
                   },
                   {
                        "remunerationTypeCode": "YTD Overtime",
                        "remunerationAmount": {
                           "amount": 0.0,
                           "currencyCode": "USD"
                        }
                   },
                   {
                        "remunerationTypeCode": "YTD Others",
                        "remunerationAmount": {
                           "amount": 0.0,
                           "currencyCode": "USD"
                        }
                   }
               ],
               "totalAnnualRemunerationAmount": {
                  "amount": 139895.34,
                  "currencyCode": "USD"
               },
               "netPayYTDAmount": {
                  "amount": null,
                   "currencyCode": "USD"
               }
          },
          {
               "payrollYear": 2018,
               "baseRemunerationAmount": {
                  "amount": 118692.28,
                  "currencyCode": "USD"
               },
               "additionalRemunerations": [
                  {
                     "remunerationTypeCode": "YTD Bonus",
                     "remunerationAmount": {
                        "amount": 26465.39,
                        "currencyCode": "USD"
                     }
                   },
                   {
                        "remunerationTypeCode": "YTD Overtime",
                        "remunerationAmount": {
                           "amount": 0.0,
                           "currencyCode": "USD"
                        }
                   },
                   {
                        "remunerationTypeCode": "YTD Others",
                        "remunerationAmount": {
                           "amount": 1000.00,
                           "currencyCode": "USD"
                        }
                   }
               ],
               "totalAnnualRemunerationAmount": {
                  "amount": 146157.67,
                  "currencyCode": "USD"
               },
               "netPayYTDAmount": {
                  "amount": null,
                   "currencyCode": "USD"
               }
          }
      ]
  }
],
"historySummary": {
  "availableHistorySourceCount": 2,

                                                                  23
"includedHistorySourceCount": 2
     }
 }

Criterias & Exceptions

          If the supplied government ID and DOB do not match to an ADP record, a 404 person not found will be returned

Errors

          404 Person not found
                  A person was not found from the supplied government ID
          400 Invalid input
                  Invalid market vertical. Please provide a valid market vertical.
                  End consumer consent not provided
                  Invalid government ID format. Please check and try again.
                  Invalid date of birth format. Please provide in the format yyyy-mm-dd

Input

          requestorInfo
                  marketSegmentCode (string) - the market vertical in which the request is applicable to. To be provided by development
                  contact (Required)
                  verifierName (string) - the company name of the verifier (ex. the name of the lender organization) (Required)
          associateVerificationRequest
                  governmentID (string) - SSN (9 digit) (Required)
                  birthDate (string) - YYYY-MM-DD (Required)
          associateConsentReceivedIndicator (Required)
          responseFilters (Optional)
                  inactiveDays (string) - optional filter that returns only employees whose latest employment status is active (or leave) OR an
                  employment status of terminated but has a last pay date within 1) 90 days or 2) 30 days based on filter selection. To use filter, input
                  string value of either '90' or '30'. (Optional)

Sample Input

                                                                           24
{
     "requestorInfo": {
        "marketSegmentCode": "Prequal",
         "verifierName": "Example Verifier Company"
     },
     "associateVerificationRequest": {
         "governmentID": {
            "id": "000000000"
         },
         "birthDate": "1984-01-01"
     },
     "associateConsentReceivedIndicator": true,
     "responseFilters": {
         "inactiveDays": "90"
     }
 }

Chapter 7

Employment & Income Verification (Detailed Basic)
Endpoint

POST https://api.adp.com/core/v1/associate-verifications/basic/employment-income

Summary

          Obtains employment history, annual pay summary, and income history for the current year to date plus the last 2 full years. Includes payment
          history at the pay period level, which can help assist in situations where a deeper look into income history is required.
          Can be used for: mortgage, auto, tenant screening, personal loans, where income history is needed but deductions info is not necessary

Returns

          asOfDate - last pay date (YYYY-MM-DD)
          governmentID
                 id - ex. xxx-xx-0000
                 nameCode
                            code - i.e. SSN
                            name - i.e. Last 4 digits of SSN
          personalData (most recent)
                 personName
                            givenName - first name
                            middleName - middle name
                            familyName - last name
                 address
                            lineOne
                            lineTwo
                            lineThree (if applicable)
                            cityName
                            subdivisionCode1

                                                                          25
name - i.e. CA
               countryCode - i.e. US
               postalCode - i.e. zip code
      communication
               telephones - phone number(s), if available
               emails - email(s), if available
employmentHistory (for each employer)
      employerName - employer name
      legalEntityID - employer legal ID, i.e. federal employer ID number (FEIN)
      systemRefreshDate - date of latest data refresh (YYYY-MM-DD)
      employerAddress
               lineOne
               lineTwo
               lineThree (if applicable)
               cityName
               subdivisionCode1
                          name - i.e. CA
               countryCode - i.e. US
               postalCode - i.e. zip code
      originalHireDate - date which employee was hired
      workerStatusCode - employee status (A - Active, T - Terminated, L - Leave)
               code - A, T, L
               name - Active, Terminated, Leave
      workLevelCode - employment type (i.e. Full-time, part-time, regular, temp, contractor)
               code - Full time, Part time. For employers that use ADP Payroll HCM such as WorkForce Now, they can enter a freeform text
               to denote a worker level code for the employee, of which will be provided
               name - Full time, Part time. For employers that use ADP Payroll HCM such as WorkForce Now, they can enter a freeform text
               to denote a worker level name for the employee, of which will be provided
      payrollGroupCode - payroll group code
               code - payroll group code
      positionTitle - job title
      positionStartDate - most recent hire date
      positionEndDate - termination date
      positionTenureDuration - tenure (ISO 8601)
      standardHours - hours entered in the Payroll system by the employer, most often this number is hours per week. For full time
      employees, in general, it is usually 40 and for part time it will reflect the hours scheduled to work per week
      remunerationSummary - YTD pay for the current year to date, plus last 2 full years. For the case when data is quarterly in nature (i.e.
      data source only comes from tax data), then only the gross YTD will be available
               payrollYear - year
               baseRemunerationAmount - YTD Base
                          amount
                          currencyCode - i.e. USD
               additionalRemunerations
                          remunerationTypeCode - YTD Bonus
                                    amount
                                    currencyCode - i.e. USD
                          remunerationTypeCode - YTD Overtime
                                    amount
                                    currencyCode - i.e. USD
                          remunerationTypeCode - YTD Others
                                    amount
                                    currencyCode - i.e. USD
               totalAnnualRenumerationAmount - YTD Gross
                          amount
                          currencyCode - i.e. USD
               netPayYTDAmount - YTD Net
                          amount
                          currencyCode - i.e. USD
      paymentHistory (for each pay period)

                                                                26
lastPayPeriodIndicator - true if this pay period is the last pay period of the year
                     quarterlyDataIndicator - indicates if this payment history detail comes from quarterly tax data, instead of payroll. When
                     quarterly data is provided, then the pay period will indicate the date ranges of the quarter (i.e. 1/1/20 - 3/31/20)
                     payDate - pay date
                     payPeriod
                               startDate - pay period begin date
                               endDate - pay period end date
                     payAmount
                               grossPayAmount - gross pay for this pay period
                                          amount
                                          currencyCode - i.e. USD
                               netPayAmount - net pay for this pay period
                                          amount
                                          currencyCode - i.e. USD
                               basePayAmount - base pay for this pay period
                                          amount
                                          currencyCode - i.e. USD
                               overtimePayAmount - overtime pay for this pay period
                                          amount
                                          currencyCode - i.e. USD
                               bonusPayAmount - bonus pay for this pay period
                                          amount
                                          currencyCode - i.e. USD
                               otherPayAmount - other pay (pay that is not categorized above, such as commission, car allowances, etc.) for this pay
                               period
                                          amount
                                          currencyCode - i.e. USD
                     payPeriodHours - total duration in hours for this pay period
                     remunerationBasisCode - pay description
                               name - Salary, Hourly, Daily
                     payCycleCode - pay frequency
                               code (corresponds to the name, respectively, as in M = Monthly, S = Semi-Monthly, etc.) - M, S, B, W, D, BO, BE, Q, SA,
                               A, 2, 4, 5
                               name - Monthly, Semi-Monthly, Bi-Weekly, Weekly, Daily, Bi-Weekly Odd, Bi-Weekly Even, Quarterly, Semi-Annual,
                               Annual, Every 2.6 wks, Every 4 wks, Every 5.2 wks
                     basePayRate - base/regular pay rate
                               amount
                               currencyCode - i.e. USD
                     payDistributions (for each distribution)
                               depositAmount - ex. the direct deposit amount
                                          amount
                                          currencyCode - i.e. USD
                               depositAccount
                                          routingTransitID - routing number
                                          accountNumber - direct deposit account number last 4, i.e. xxxxx-x0000
                                          accountTypeCode - bank account type (Checking, Savings, Loan)
    historySummary (this section provides some general information about the data returned)
            availableHistorySourceCount - indicates the total number of employers which have information about the person
            includedHistorySourceCount - indicates the number of employers whose data about the person was included in the response
            availablePaymentHistoryMonths - denotes the number of months of paymentHistory for this person, categorized by the following:
                     payrollDataMonths - the number of months of paymentHistory data coming from payroll data (payroll data contains detailed
                     pay information by pay period)
                     quarterlyDataMonths - the number of months of payment data coming from quarterly tax data (although not as detailed as
                     payroll data, gross pay information is provided in quarters)

Sample Response

                                                                      27
{
    "asOfDate": "2020-04-08",
    "governmentID": {
       "id": "xxx-xx-0000",
         "nameCode": {
              "code": "SSN",
              "name": "Last 4 digits of SSN"
         }
    },
    "personalData": {
       "personName": {
              "givenName": "First",
              "middleName": "Middle",
              "familyName": "Last"
         },
         "communication": {
              "telephones": [
                 {
                        "formattedNumber": 3101111111
                   }
              ],
              "emails": [
                {
                        "emailUri": "sample.email@test.com"
                   }
              ],
              "internetAddresses": []
         },
         "address": {
            "lineOne": "16 lgl",
              "lineTwo": "Ui ",
              "lineThree": null,
              "cityName": "Cieo",
              "subdivisionCode1": {
                   "name": "IL"
              },
              "countryCode": "US",
              "postalCode": "99999"
         }
    },
    "employmentHistory": [
         {
              "employerName": "Amazing Community Pharmacy LLC",
              "legalEntityID": {
                   "legalEntityID": "222222222"
              },
              "systemRefreshDate": "2020-04-09",
              "employerAddress": {
                   "lineOne": "13 EMN T 1",
                   "lineTwo": null,
                   "lineThree": null,
                   "cityName": "CIEO",
                   "subdivisionCode1": {
                        "name": "IL"
                   },
                   "countryCode": "US",
                   "postalCode": "99999"
              },
              "originalHireDate": "2015-08-10",
              "workerStatusCode": {
                   "code": "A",
                   "name": "Active"
              },
              "workLevelCode": {
                   "code": "Full time",
                   "name": "Full time"
              },
              "positionTitle": null,
              "positionStartDate": "2015-08-10",
              "positionEndDate": null,
              "positionTenureDuration": "P4Y10M12D",
              "standardHours": 0.0,
              "remunerationSummary": [
                 {
                        "payrollYear": 2020,
                        "baseRemunerationAmount": {
                          "amount": 30769.2,
                          "currencyCode": "USD"

                                                                  28
},
         "additionalRemunerations": [
              {
                   "remunerationTypeCode": "YTD Bonus",
                   "remunerationAmount": {
                      "amount": 0.0,
                        "currencyCode": "USD"
                   }
              },
              {
                   "remunerationTypeCode": "YTD Overtime",
                   "remunerationAmount": {
                      "amount": 0.0,
                        "currencyCode": "USD"
                   }
              },
              {
                   "remunerationTypeCode": "YTD Others",
                   "remunerationAmount": {
                      "amount": 15206.85,
                        "currencyCode": "USD"
                   }
              }
         ],
         "totalAnnualRemunerationAmount": {
              "amount": 45976.05,
              "currencyCode": "USD"
         },
         "netPayYTDAmount": {
              "amount": null,
              "currencyCode": "USD"
         }
     }
],
"paymentHistory": [
   {
         "lastPayPeriodIndicator": true,
         "quarterlyDataIndicator": false,
         "payDate": "2020-04-08",
         "payPeriod": {
            "startDate": "2020-03-23",
              "endDate": "2020-04-05"
         },
         "payAmount": {
            "grossPayAmount": {
                   "amount": 3846.15,
                   "currencyCode": "USD"
              },
              "netPayAmount": {
                 "amount": 2371.5,
                   "currencyCode": "USD"
              },
              "basePayAmount": {
                   "amount": 3846.15,
                   "currencyCode": "USD"
              },
              "overtimePayAmount": {
                   "amount": 0.0,
                   "currencyCode": "USD"
              },
              "bonusPayAmount": {
                 "amount": 0.0,
                   "currencyCode": "USD"
              },
              "otherPayAmount": {
                 "amount": 0.0,
                   "currencyCode": "USD"
              }
         },
         "payPeriodHours": 60.0,
         "payDistributions": [
              {
                   "depositAmount": {
                        "amount": 2371.5,
                        "currencyCode": "USD"
                   },
                   "depositAccount": {
                      "routingTransitID": "11111111",
                        "accountNumber": "xxx-xx-0000",

                                                             29
"accountTypeCode": "Checking"
              }
         }
     ]
},
{
     "lastPayPeriodIndicator": false,
     "quarterlyDataIndicator": false,
     "payDate": "2020-03-25",
     "payPeriod": {
         "startDate": "2020-03-09",
         "endDate": "2020-03-22"
     },
     "payAmount": {
         "grossPayAmount": {
              "amount": 3846.15,
              "currencyCode": "USD"
         },
         "netPayAmount": {
              "amount": 2371.51,
              "currencyCode": "USD"
         },
         "basePayAmount": {
              "amount": 3846.15,
              "currencyCode": "USD"
         },
         "overtimePayAmount": {
            "amount": 0.0,
              "currencyCode": "USD"
         },
         "bonusPayAmount": {
              "amount": 0.0,
              "currencyCode": "USD"
         },
         "otherPayAmount": {
              "amount": 0.0,
              "currencyCode": "USD"
         }
     },
     "payPeriodHours": 30.0,
     "payDistributions": [
        {
              "depositAmount": {
                 "amount": 2371.51,
                  "currencyCode": "USD"
              },
              "depositAccount": {
                  "routingTransitID": "11111111",
                  "accountNumber": "xxx-xx-0000",
                  "accountTypeCode": "Checking"
              }
         }
     ]
},
{
     "lastPayPeriodIndicator": false,
     "quarterlyDataIndicator": false,
     "payDate": "2020-03-11",
     "payPeriod": {
        "startDate": "2020-02-24",
         "endDate": "2020-03-08"
     },
     "payAmount": {
         "grossPayAmount": {
            "amount": 3846.15,
              "currencyCode": "USD"
         },
         "netPayAmount": {
              "amount": 2371.52,
              "currencyCode": "USD"
         },
         "basePayAmount": {
              "amount": 3846.15,
              "currencyCode": "USD"
         },
         "overtimePayAmount": {
              "amount": 0.0,
              "currencyCode": "USD"
         },

                                                    30
"bonusPayAmount": {
             "amount": 0.0,
               "currencyCode": "USD"
          },
          "otherPayAmount": {
             "amount": 0.0,
               "currencyCode": "USD"
          }
     },
     "payPeriodHours": 60.0,
     "payDistributions": [
          {
               "depositAmount": {
                    "amount": 2371.52,
                    "currencyCode": "USD"
               },
               "depositAccount": {
                  "routingTransitID": "11111111",
                    "accountNumber": "xxx-xx-0000",
                    "accountTypeCode": "Checking"
               }
          }
     ]
},
{
     "lastPayPeriodIndicator": false,
     "quarterlyDataIndicator": false,
     "payDate": "2020-02-26",
     "payPeriod": {
          "startDate": "2020-02-10",
          "endDate": "2020-02-23"
     },
     "payAmount": {
        "grossPayAmount": {
               "amount": 3846.15,
               "currencyCode": "USD"
          },
          "netPayAmount": {
               "amount": 2371.51,
               "currencyCode": "USD"
          },
          "basePayAmount": {
             "amount": 3846.15,
               "currencyCode": "USD"
          },
          "overtimePayAmount": {
               "amount": 0.0,
               "currencyCode": "USD"
          },
          "bonusPayAmount": {
               "amount": 0.0,
               "currencyCode": "USD"
          },
          "otherPayAmount": {
             "amount": 0.0,
               "currencyCode": "USD"
          }
     },
     "payPeriodHours": 60.0,
     "payDistributions": [
        {
               "depositAmount": {
                    "amount": 2371.51,
                    "currencyCode": "USD"
               },
               "depositAccount": {
                    "routingTransitID": "11111111",
                    "accountNumber": "xxx-xx-0000",
                    "accountTypeCode": "Checking"
               }
          }
     ]
},
{
     "lastPayPeriodIndicator": false,
     "quarterlyDataIndicator": false,
     "payDate": "2020-02-12",
     "payPeriod": {
          "startDate": "2020-01-27",

                                                      31
"endDate": "2020-02-09"
                      },
                      "payAmount": {
                           "grossPayAmount": {
                              "amount": 19183.98,
                                "currencyCode": "USD"
                           },
                           "netPayAmount": {
                                "amount": 11825.72,
                                "currencyCode": "USD"
                           },
                           "basePayAmount": {
                                "amount": 3846.15,
                                "currencyCode": "USD"
                           },
                           "overtimePayAmount": {
                                "amount": 0.0,
                                "currencyCode": "USD"
                           },
                           "bonusPayAmount": {
                              "amount": 15206.85,
                                "currencyCode": "USD"
                           },
                           "otherPayAmount": {
                                "amount": 130.98,
                                "currencyCode": "USD"
                           }
                      },
                      "payPeriodHours": 60.0,
                      "payDistributions": [
                           {
                                "depositAmount": {
                                   "amount": 11825.72,
                                     "currencyCode": "USD"
                                },
                                "depositAccount": {
                                   "routingTransitID": "11111111",
                                     "accountNumber": "xxx-xx-0000",
                                     "accountTypeCode": "Checking"
                                }
                           }
                      ]
                  }
              ]
          }
     ],
     "historySummary": {
          "availableHistorySourceCount": 2,
          "includedHistorySourceCount": 2,
          "availablePaymentHistoryMonths": {
             "payrollDataMonthCount": 5,
              "quarterlyDataMonthCount": 0
          }
     }
 }

Criterias & Exceptions

              If the supplied government ID and DOB do not match to an ADP record, a 404 person not found will be returned

Errors

              404 Person not found
                      A person was not found from the supplied government ID
              400 Invalid input

                                                                             32
You can also read