Pay Allocations
Learn about the /pay-allocations
endpoint.
- A payroll account can have one or more pay allocation objects, which represent the bank accounts and/or cards that are connected with the payroll account. Pay allocation objects contain information like bank account details, card details, allocation type, and allocation values.
- Argyle retrieves data a user has access to in their payroll portal. Some employers and payroll providers can fully or partially obfuscate information within a pay allocation (for example, account or routing number). In these cases, Argyle is only able to return the obfuscated values.
Argyle is PCI DSS Level 2 compliant. Learn more about security and compliance at Argyle here.
#The pay allocation object
- #idstring (uuid)
Unique ID of the pay allocation.
- #accountstring (uuid)
ID of the payroll account associated with a Link item that generates the payout to the user.
- #employerstring
The company or entity that employs the user.
- #destination_typestring (enum)
Indicates the destination type of the pay allocation.
The destination details of a pay allocation are returned dynamically in an object within the payload, depending on the value of the
destination_type
field. For example, ifdestination_type
iscard
, the destination details are shown in thecard
object. - #statusstring (enum)
Account status in the employment record source.
- #allocation_typestring (enum)
The returned type of allocation — either
percent
oramount
. - #currencystring
The currency of the pay allocation—for example,
USD
orEUR
. Currencies follow the ISO 4217 format. - #allocation_valuestring
The amount associated with the allocation type. Can be a decimal value (e.g.
147.27
) orremainder
(total salary minus any other allocations). - #methodstring
Describes the way money is transferred to this bank account or debit card.
- #bank_accountobject
Shows details for the bank account used in the pay allocation.
To maintain backward compatibility, the
bank_account
object is always returned with the pay allocation, even ifdestination_type
is notbank_account
. In such cases, all fields within thebank_account
object returnnull
. - #account_numberstring
5 to 17-digit code that identifies the user as the account holder in the bank. In most cases, the account number will be 8-17 digits long. Depending on the payroll provider, the value can be fully or partially obfuscated.
- #bank_namestring
Represents the bank's name on the account.
- #routing_numberstring
9-digit code that is based on the bank location where the user's account was opened. Depending on the payroll provider, the value can be fully or partially obfuscated.
- #account_typestring
The type of the user's bank account.
- #cardobjectoptional
Shows details for the payment card used in the pay allocation.
Argyle is PCI DSS Level 2 compliant. Learn more about security and compliance at Argyle here.
- #card_numberstring
Represents the card number.
- #card_namestring
Represents the card's name on the account.
- #is_platform_cardboolean
Indicates whether the card is a platform card. If
true
, the card was issued by a platform such as Uber or Lyft, together with their banking partner.Platform card numbers are not usually exposed in the payroll account. When a card number is not exposed, a fully-obfuscated card number is returned.
- #acss_debitobjectoptional
Shows details for the bank account used in the pay allocation. This type of bank account uses the Automated Clearing Settlement System, which enables pre-authorized debit payments in Canada.
The Argyle API returns pay allocation details for users with U.S., Canadian, or even a combination of bank accounts, where a user might have pay allocations for a U.S. bank account and a Canadian bank account simultaneously. However, direct deposit switching functionality is currently limited to U.S. employment accounts only. Direct deposit updates are not yet supported for users with Canadian, or a combination of Canadian and American bank accounts.
- #account_numberstring
7 to 12-digit code that identifies the user as the account holder in the bank. Depending on the payroll provider, the value can be fully or partially obfuscated.
- #account_typestring
The type of the user's bank account.
- #institution_numberstring
3-digit code that identifies the user's bank.
- #transit_numberstring
5-digit code that identifies the bank's specific branch where the user holds their account.
- #created_atstring (timestamp)
A timestamp when the pay allocation object was created. This will not always match the time it was updated in the payroll account.
- #updated_atstring (timestamp)
A timestamp when the pay allocation object was last updated. This will not always match the time it was updated in the payroll account.
- #metadataobject
Holds additional available, often unstructured information about this data resource.
1{
2 "id": "017dd717-d775-bb54-6fb8-8947eff46809",
3 "account": "017dd717-d499-ce81-f3ac-ab7b8bb35a80",
4 "employer": "groger",
5 "destination_type": "bank_account",
6 "status": "active",
7 "allocation_type": "percent",
8 "currency": "USD",
9 "allocation_value": "27",
10 "method": "Weekly Direct Deposit",
11 "bank_account": {
12 "account_number": "360815792690",
13 "bank_name": "Freedom Bank",
14 "routing_number": "026019037",
15 "account_type": "savings"
16 },
17 "created_at": "2021-12-20T09:06:43.701837Z",
18 "updated_at": "2021-12-20T09:06:43.701874Z",
19 "metadata": {}
20}
1{
2 "id": "017dd717-d775-bb54-6fb8-8947eff46809",
3 "account": "017dd717-d499-ce81-f3ac-ab7b8bb35a80",
4 "employer": "udre",
5 "destination_type": "card",
6 "status": "active",
7 "allocation_type": null,
8 "currency": null,
9 "allocation_value": null,
10 "method": "Instant Payout",
11 "bank_account": {
12 "account_number": null,
13 "bank_name": null,
14 "routing_number": null,
15 "account_type": null
16 },
17 "card": {
18 "card_number": "************4444",
19 "card_name": "Viza",
20 "is_platform_card": false
21 },
22 "created_at": "2021-12-20T09:06:43.701837Z",
23 "updated_at": "2021-12-20T09:06:43.701874Z",
24 "metadata": {}
25}
1{
2 "id": "017dd717-d775-bb54-6fb8-8947eff46809",
3 "account": "017dd717-d499-ce81-f3ac-ab7b8bb35a80",
4 "employer": "groger",
5 "destination_type": "acss_debit",
6 "status": "active",
7 "allocation_type": "percent",
8 "currency": "CAD",
9 "allocation_value": "27",
10 "method": "Weekly Direct Deposit",
11 "bank_account": {
12 "account_number": null,
13 "bank_name": null,
14 "routing_number": null,
15 "account_type": null
16 },
17 "acss_debit": {
18 "account_number": "************4274",
19 "account_type": "DP3 - DEPOSIT ACCT3",
20 "institution_number": "621",
21 "transit_number": "16001"
22 },
23 "created_at": "2021-12-20T09:06:43.701837Z",
24 "updated_at": "2021-12-20T09:06:43.701874Z",
25 "metadata": {}
26}
#Retrieve a pay allocation
- Retrieve a pay allocation object with the supplied ID.
- This request returns a pay allocation object if you provided a valid identifier.
- See Pay allocations for descriptions of all fields in the object.
- #idstring (uuid)required
The identifier of the pay allocation to be retrieved.
1curl --request GET \
2 --url https://api.argyle.com/v1/pay-allocations/{id} \
3 --header 'accept: application/json' \
4 --header 'content-type: application/json'
1{
2 "id": "017dd717-d775-bb54-6fb8-8947eff46809",
3 "account": "017dd717-d499-ce81-f3ac-ab7b8bb35a80",
4 "destination_type": "bank_account",
5 "bank_account": {
6 "routing_number": "026019037",
7 "account_number": "360815792690",
8 "account_type": "savings"
9 },
10 "status": "active",
11 "allocation_type": "percent",
12 "currency": "USD",
13 "allocation_value": "27",
14 "employer": "groger",
15 "metadata": {},
16 "created_at": "2021-12-20T09:06:43.701837Z",
17 "updated_at": "2021-12-20T09:06:43.701874Z",
18 "method": "Weekly Direct Deposit"
19}
#List pay allocations
- List all pay allocation objects.
- This request returns an object with a
results
property that contains an array of up tolimit
pay allocation objects.
1curl --request GET \
2 --url https://api.argyle.com/v1/pay-allocations?limit=2 \
3 --header 'accept: application/json' \
4 --header 'content-type: application/json'
1[
2 {
3 "id": "0180d690-319b-525e-daec-a8386140ae55",
4 "account": "017dd717-d499-ce81-f3ac-ab7b8bb35a80",
5 "destination_type": "acss_debit",
6 "acss_debit": {
7 "account_number": "200110273312",
8 "account_type": "DP3 - DEPOSIT ACCT3",
9 "institution_number": "260",
10 "transit_number": "11242"
11 },
12 "bank_account": {
13 "routing_number": null,
14 "account_number": null,
15 "account_type": null
16 },
17 "status": "active",
18 "allocation_type": "amount",
19 "currency": "CAD",
20 "allocation_value": "remainder",
21 "employer": "groger",
22 "metadata": {},
23 "created_at": "2022-05-18T09:46:55.772127Z",
24 "updated_at": "2022-05-18T09:46:55.772174Z",
25 "method": null
26 },
27 {
28 "id": "0180d690-3187-8ef6-2d32-8b91bf8e1504",
29 "account": "017dd717-d499-ce81-f3ac-ab7b8bb35a80",
30 "destination_type": "card",
31 "card": {
32 "card_number": "************4444",
33 "card_name": "Viza",
34 "is_platform_card": false
35 },
36 "bank_account": {
37 "routing_number": null,
38 "account_number": null,
39 "account_type": null
40 },
41 "status": "active",
42 "allocation_type": null,
43 "currency": null,
44 "allocation_value": null,
45 "employer": "groger",
46 "metadata": {},
47 "created_at": "2022-05-18T09:46:55.752296Z",
48 "updated_at": "2022-05-18T09:46:55.752346Z",
49 "method": "Instant Payout"
50 }
51]