Introduction

Welcome to the Payroll Group handbook! You should be able to find answers to most of your questions here. If you’t find what you are looking for then please do the following:

  • Emailyour question(s) to one of the following group email addresses:
    • US team members: uspayroll@gitlab.com
    • Non-US team members: nonuspayroll@gitlab.com
    • Expenses: expenses@gitlab.com
  • Chat channel: #payroll_expenses slack channel for questions that is not confidential.

    Legal Entity Payroll providers

  • GitLab BV (Netherlands) - HR Savvy

  • GitLab BV (Belgium) - B&F Consult Firm
  • GitLab IT BV - iiPay payment service
  • GitLab Federal (US) - ADP
  • GitLab Inc (US) - ADP
  • GitLab GmbH (Germany) - RPI
  • Gitlab LTD (UK) - Vistra
  • GitLab PTY (Australia) - iiPay
  • GitLab Canada Corp (Canada) - TBD

    Pay Date

  1. Employees of GitLab Inc and GitLab Federal will get pay on the 15th and the last day of the month. The payroll schedule, pay slips, and W-2(s) are available on ADP portal
  2. Employees of GitLab BV (Netherlands) will get their salary wired on the 25th of every month, and can see their pay slip in their personal portal on HR Savvy’s system towards the end of the month.
  3. Employees of GitLab BV (Belgium) will get their salary wired the last day of each month and will receive their pay slip in their personal portal on Boekfisk’s system
  4. Employees of GitLab Ltd will get their salary wired on the last day of every month, and can see their pay slip via their personal portal on Vistra’s system towards the end of the month.
  5. Employees of GitLab GmbH will get their salary wired on the last day of every month, and can see their pay slip via their person portal on RPI International Payroll’s system towards the end of the month.
  6. Employees of GitLab PTY will get their salary on the 27th of each month, and their pay slip through iiPay portal
  7. Employees of GitLab BV that are employed through GitLab’s co-employer PE0:
    • Lyra (India) will get their salary wired around the last day of the month. Lyra will send pay slips electronically through their HR portal.
    • CXC (Canada) are paid bi-weekly and can see their pay slip via CXC.
    • Safeguard are paid monthly and on the last day of the month (depending on the country) with exception to Brazil, 15th of each month and last day of the month. Payslips are provided electronically by Safeguard.
  8. Contractors from Nigeria, South Africa, and the US will get pay within 15 days after they submitted their monthly invoices for services to nonuspayroll@gitlab.com.
  9. Contractors from Poland and Ukraine will get pay around 27th or 28th of each month from CXC Global.
  10. All other contractors will get pay on the 22nd of the month by iiPay and remittance advice will send to their gitlab email address.

    US

    Adding New Hire into ADP

  11. People Operations Analysts will notify Payroll when I-9 verification is completed

  12. Login to ADP as Administrator
  13. Select Process, HR, and Hire/Rehire
  14. Select Payroll Only (System) template
  15. Enter the legal name from Passport or SSN in BambooHR
  16. Select SSN for the Tax ID Type
  17. Enter Hire Date
  18. Select Gender
  19. Reason for Hire – New Position
  20. Enter Birth Date
  21. Company Code – 26X for GitLab Inc or JW9 for GitLab Federal
  22. Select USA under the drop down under Countries
  23. Enter address
  24. Select Works from Home from the More Fields section on the right side
  25. Select Yes for Works from Home and Use Primary Address as the Work Address
  26. Select Ethnicity/Race ID Method under More Field
  27. Look up the Ethnicity under Job section in BambooHR
  28. Enter Job Tile and Report to Manager
  29. Select FT – Full Time under Worker Category
  30. Select team member’s lived in state for Location
  31. Select NAICS worker comp code – be sure to use 5302 for WA residents
  32. Enter work email address and check “Use For Notification”
  33. Select Salary or hourly under Regular Pay Rate
  34. Enter 86.67 hours for salary team members under Standard Hours and leave it blank for hourly members
  35. Enter the Worked in State, Lived in State, and SUI/SDI tax code
  36. Select Done
  37. Email the ADP Registration email to the team member(s)
  38. If the team member is hourly then be sure to copy the hourly template and share it with the team member via Google Sheet

    Processing Payroll

    One time payment

  39. Create a batch and name it accordingly

  40. Selecte the Bonus paydata grid
  41. Add employee
  42. Enter the earning type and amount
  43. Enter B pay frequency
  44. Enter 2, or 3 under pay #
  45. Enter W under Special Action

    Updating Benefits

    Lumity will send a “Diff” payroll file to Payroll 5 days before pay date for all new enrollments along with changes. Payroll Specialist will covert the information into an import file to update all changes in ADP.

  46. Download the Diff file from Lumity secured portal

  47. Make a copy of the original Diff tab and name it as “Payroll”
  48. Insert 4 tabs into the workbook: ER Ded, EE Ded, ER Catchup, and EE Catchup
  49. Insert a column into the “Payroll” tab for ADP PositionID. Use the SSN column to pull in the information via VLOOKUP formula
  50. Copy the “Payroll” tab and paste onto those 4 new tabs
  51. For the ER Ded tab - delete all deductions columns except for Employer deduction column
  52. Sort the ER Ded tab by Benefits Plan Name and add ADP deduction code
  53. For the EE Ded tab - delete all deductions columns except for Employee deduction column
  54. Sort the EE Ded tab by Benfits Plan Name and add ADP deduction code
  55. Add the deduction code and deduction amount onto an import template “EMP(company code)EPI”. Example - EMP26XEPI.csv or EMPJW9EPI.csv
  56. A copy of this template is saved in each payroll folder on Google shared drive
  57. For the ER catchup tab - delete all deduction columns and only keep ER catchup column and add ADP memo code
  58. For the EE catchup tab - delete alld deduction columns and ony keep EE catchup column and add ADP memo code
  59. Add those memo codes and amounts only the Benefits adjustment template (a copy is available in the payroll folder). Template -26XBCEPI.csv or JW9BCEPI.csv
  60. Import employee data for deductions: Process - Utilities - EMP Data import
  61. Import benefits adjustment: Payroll - Paydata Batch - Import batch (see one time adjustment instruction)

    Other payroll adjustment tasks:

  62. Update payroll changes

  63. reconcile salary for each team member from ADP vs BambooHR
  64. Review payroll department between ADP and BambooHR
  65. Generate payroll reports for review:
    • Employee changes
    • Active hourly without hours
    • Inactive employees with paydata
    • Autopay cancellation
    • Payroll Summary
  66. Preview payroll and accept payroll after thorough review

    Reports after Accept payroll

    Generate the following reports and saved them on Google Shared drive for Federal and Inc:

  67. GL report

  68. Payroll Reports (Payroll Summary, Statistical Summary, and Payroll Register Total)
  69. Commission and Bonus per check date
  70. Benefits deduction for Lumity
  71. MISC deductions

    Benefits Funding Process

  • H.S.A
    • Employer contributions will be funded each payroll ($50 per pay)
    • Missed ER contribution will not have a catch up (Employee enrolls late…Lumity will only fund ER contribution on the upcoming pay period. Any missed employer contributions will be disregarded)
    • Discovery will debit GitLab Bank account on each funding date
    • Max out is allowed
  • FSA
    • Funds will debit from the Discovery reserve account once the employee submits a claim
    • Discovery will contact GitLab if the reserve is low on funds
  • Dependent Care FSA
    • Funds will debit from the Discovery reserve account once the employee submits a claim
    • Discovery will contact GitLab if the reserve is low on funds
  • Limited FSA
    • Funds will debit from the Discovery reserve account once the employee submits a claim
    • Discovery will contact GitLab if the reserve is low on funds
  • Commuter
    • Employee payroll deduction will occur on the last payroll of the month and funded on the 1st of the following month
    • Funds will debit from the Discovery reserve account once the employee submits a claim
    • Discovery will contact GitLab if the reserve is low on fundsNon-US

      Australia, UK, Belgium, Netherlands, and Germany Monthly Payroll Process

  1. Payroll changes due date to the payroll providers is 15th with exception of Australia (12th). If the 15th fall on weekend or holidays, then the due date is move to the last business day before the 15th.
  2. Compensation Team will add bonus, promotion, title changes, etc.. to the Payroll Changes template
  3. Payroll changes are entered into a spreadsheet for commission, bonus, new salary, expense (only for UK) and password protected the file
  4. Payroll sends the payroll changes file to the local payroll providers.
  5. Local payroll providers will send the payroll report to nonuspayroll@gitlab.com for review and approval
  6. Senior Payroll Specialist will review and notify Payroll Manager for final review and approval. Once that is completed then SPS will sends the approval email to the payroll provider before the 21st.
  7. Payroll save and upload the payroll report to the GoogleDrive by month and under the right entity
  8. Payroll notify Financial Controller after approved payroll for Germany and Netherlands so he can queue up the ACH payments for net pay.

    Contractors

    iiPay:

  9. Team member must submit their salary invoices through BambooHR and expense through Expensify by the 8th of each month

  10. To enter salary invoice in BambooHR:
    • Visit “My Info” page
    • Select “Request a Change”, locate at the upper right corner in that section
    • Click “Contractor Invoice…”
    • Enter “Date Submitted” - current date
    • Enter “Invoice Number” - it should be incremental from the last invoice
      • If new team member, then it will be 1
    • Enter “Invoice Date” - it should be same as invoice date
    • Enter “Monthly Salary”
      • For new hires starting after the 1st of each month, the pro-rated calculation is: (monthly salary / # of business days for that month) * actual work days from the hire date
    • Change the currency to match with the currency on the employment contract
    • Enter bonus or commission according to the position. For referral or discretionary bonus, please convert it into your assigned currency by using the corresponding exchange rate.
    • Change the currency
    • Submit - there will be a message at the top of the page - “Your request was submitted successful”
    • The submitted invoice can be seen in “Sent Requests” page, locate the inbox icon at the upper right corner of the page
  11. The invoice will submit to hdelvin@gitlab.com in Payroll for approval
  12. BambooHR will send an email after the invoice was approve or reject with the reason
  13. The invoice will be visiable in BambooHR at that time
  14. Note - Once Payroll approved the invoice, any corrections to that invoice must be edit by Payroll through correction request(s) email to nonuspayroll@gitlab.com
  15. All invoices will be approve by Payroll by the 9th of each month
  16. For expense reimbursement, team member will need to submit through Expensify and report(s) must be approved by managers by the 8th of each month
  17. Payroll will approve all expense reports by the 9th of each month
  18. If the 8th fall on the holidays or weekend, then the due date will move to the last business day before the 8th.
  19. For all new hires starting after the 8th of each month, then the current month payment will be pay with the following invoice as separate payment
  20. Note - all new team members will receive a testing payment from iiPay to validate their bank details prior to th 1st live payment. Please enter the bank details on the 1st day of employment.
  21. The required fields for bank details in BambooHR under Bank Information tab:
    • Bank Name
    • Beneficiary Name
    • Account Number (as needed due to each country’s banking requirements)
    • Routing number (as needed due to each country’s banking requirements)
    • IBAN - this is international Bank Account number. Each region will have different name for this number. Be sure to check with your bank
    • SWIFT (as needed or available due to each country’s banking requirements)
    • Account type

      CXC Global

      Team members in Poland, Ukraine, existing contractors in Hungury after to July 2019 will get pay through CXC Global. Team members will need to submit their monthly invoice (Salary, bonus,commission, etc…) to CXC Global. Payroll will submit commission along with bonus to CXC by the 10th of each month.

      PEO

      SafeGuard

  • Brazil
  • France
  • Hungary
  • Ireland
  • Italy
  • Japan
  • Spain
  • South Africa
  • South Korea
  • Switzerland

Payroll changes due by the 9th of each month. Payroll will submit commission, bonus, salary adjust, expense reimbursement to SafeGuard via a password encrypted template. SafeGuard will issue an invoice for each country no later than the 16th of each month. Payroll Specialist will review and submit the invoice for payment with AP.

CXC Global

  • Canada - Payroll Specialist will send payroll changes and expense reimbursement reports to Canada payroll on weekly basis. CXC will send over an invoice for each payroll for review and submit for payment via AP.

    Lyra

    Payroll changes are due by the 14th of each month. Lyra will send an invoice by the 15th of each month. For any additional adjustment, payroll have until the 24th to notify Lyra. They will invoice the adjustment on the following month invoice.

    Expenses

    All team members will have access to Expensify within 2 days from their hire date. If you didn’t receive an email from Expensify for your access, then please contact expenses@gitlab.com. Expense reports are to be submitted once a month, at least. Additional information on getting started with Expensify and creating/submitting expense reports can be found here.
    The procedure by which reimbursable expenses are processed varies and is dependent on contributor legal status (e.g. independent contractor, employee) and subsidiary assignment (Inc, LTD, BV, GmbH, PTY). Check with Payroll if you are unsure about either of these.
    For information regarding the company expense policy, check out the section of our team handbook on Spending Company Money. Managers and Payroll team will review the expenses for compliance with the company travel policy. The CEO will review selected escalations at least annually. Team members should also consider the terms and conditions of their respective contractor agreements, when submitting invoices to the company.
    Team members in a US policy will be automatically reimbursed through Expensify after their report is “final approved” within 7 business days by Payroll team. For all other team members, please see the reimbursement process below based on your location or employment status.

    SafeGuard

    Team members who are employed through SafeGuard must submit their expense for reimbursement through Expensify. All expense reports must be submitted and approved by manager by the 8th of each month to include in the current month payment.
    Team members in France, Italy, and Spain must submit their expenses through:

  • Expensify

  • Safeguard in-house expense reimbursement
  • GitLab payroll send the expense approval to Safeguard after the team member’s manager approved the report
  • Team members send the original receipts to Safeguard

    CXC
  • Canada:

    • Payroll will submit your approved expense report to CXC payroll for payment. The typical processing time is about 3-4 weeks due to invoice timeline.
  • Poland and Ukraine:

    • Expense reports will be reimbursed by GitLab AP team with the normal weekly Friday AP payment if the report was “final approved” by EOD Tuesday of the same week. For all other reports, it will be reimbursed the following week.
      Lyra
  • Team members must submit their expenses through Expensify, and Payroll will approve for reimbursement within 5 business days after the approval from the manager. The reimbursement is through GitLab AP.

    iiPay
  • All indidvidual contractors or C2C, with exception of Hungary, Nigeria, South Africa, and Switzerland, will be reimbursed by iiPay by the 22nd of each month. All expense reports must be approved by manager by the 8th of each month to be include in the current month payment. For contractor with C2C status, be sure to contact Payroll team via email at expenses@gitlab.com if you need to set up a separate bank for your expense reimbursement.

    Legal entities
  • Expense reports for GitLab Ltd (UK) must be approved by the manager on or before the 14th of each month enable for it to include in the current month payroll.

  • Expense reports for GitLab BV (Belgium and Netherlands), GmbH (Germany), PTY Ltd (Australia) are reimbursed via GitLab AP within 10 business days from the approval date by their manager.
  • Expense reports for GitLab Inc, Gitlab Inc Billable, and GitLab Federal reimbursed via Expensify, and Payroll will final approved the report within 5 business days after the approval from their manager.

    Hungary, Nigeria, South Africa, Switzerland
  • Please include your expenses along with receipts on your monthly salary invoice.

    Non-Reimbursable Expenses

    Examples of things we have not reimbursed:

  1. Costume for end of summit party.
  2. Boarding expense for dog while traveling.
  3. Headphones costing $800 which were found to be in excess of our standard equipment guidelines.
  4. Batteries for smoke detector.
  5. Meals during the summit when team members opt out of the company provided meal option.
  6. Cellphones and accessories.
  7. Travel related expenses for family members of GitLab employees
  8. Fitness equipments (treadmill, etc..) and gym membership

In accordance with Reimbursable Expense guidelines, independent contractors should note which expenses are Contribute related on their invoices, prior to submitting to the company.
Billable Expenses If you have an expense report that can be billed back to a customer please make sure to check the “billable” flag in Expensify along with tagging the customer name under the “customer” field in Expensify.

Performance Indicators

Payroll accuracy for each check date = 100%

Payroll is paid on time and accurately for each check date.

Payroll journal entry reports submitted to Accounting <= Payroll date + 2 business days

Payroll journal entry reports are to be submitted to Accounting no later than two business days after the payroll date. The payroll journal entry reports submitted dates are tracked in the Monthly Closing Checklist on a monthly basis.