Company Cars

Specific employee benefits such as company cars can be processed through payroll with prior agreement from HMRC. The service is known as Payrolling Benefits in Kind (PBIK) and is entirely voluntary, instead employers can report in the traditional way via a P11D. Employers electing to payroll company car benefits no longer need to submit a P46(Car) when providing an employee with a new car as this is reported via the FPS.

The taxation of company cars is calculated very specifically based on numerious variables, notably the CO2 emissions, the value of the car and whether or not the employer is also providing fuel.

Adding a Company Car Benefit to an Employee

As is a common pattern within the API to add a company car benefit to an employee you must create a CarBenefitPayInstruction, the populated instruction provides all the necessary context to the calculator to apply the correct taxation.

Updating a CarBenefitPayInstruction

If you need to ammend a CarBenefitPayInstruction or add a CarBenefitYtdPayInstruction then the registration property is what is used to link related instructions.

curl -X PATCH \
  'https://api.test.payrun.io/Employer/ER001/Employee/EE001/PayInstructions' \
  -H 'Accept: application/xml' \
  -H 'Api-Version: default' \
  -H 'Authorization: {OAuthHeader}' \
  -H 'Cache-Control: no-cache' \
  -H 'Content-type: application/xml' \
  -d '<?xml version="1.0"?>
<CarBenefitPayInstruction xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <StartDate>2016-04-15</StartDate>
  <EndDate xsi:nil="true" />
  <BenefitEndDate xsi:nil="true" />
  <Description xsi:nil="true" />
  <Code>CAR</Code>
  <TotalCost>35000</TotalCost>
  <EmployeeContribution>0.00</EmployeeContribution>
  <AccountingMethod>PAYE</AccountingMethod>
  <MakeModel>Mercedes C-Class</MakeModel>
  <Co2>170</Co2>
  <FuelType>DieselNonRde2</FuelType>
  <Registration>OV04 POF</Registration>
  <DateRegistered xsi:nil="true" />
  <EmployeeContributionPrivateUse>0</EmployeeContributionPrivateUse>
  <FuelProvidedFrom>2016-04-15</FuelProvidedFrom>
</CarBenefitPayInstruction>'
curl -X PATCH \
  'https://api.test.payrun.io/Employer/ER001/Employee/EE001/PayInstructions' \
  -H 'Accept: application/json' \
  -H 'Api-Version: default' \
  -H 'Authorization: {OAuthHeader}' \
  -H 'Cache-Control: no-cache' \
  -H 'Content-type: application/json' \
  -d '{
  "CarBenefitPayInstruction": {
    "StartDate": "2016-04-15",
    "EndDate": null,
    "BenefitEndDate": null,
    "Description": null,
    "Code": "CAR",
    "TotalCost": "35000",
    "EmployeeContribution": "0",
    "AccountingMethod": "PAYE",
    "MakeModel": "Mercedes C-Class",
    "Co2": "170",
    "FuelType": "DieselNonRde2",
    "Registration": "OV04 POF",
    "DateRegistered": null,
    "EmployeeContributionPrivateUse": "0",
    "FuelProvidedFrom": "2016-04-15"
  }
}'

Resulting Calculation

The instruction setup above will result in the following calculation and explanation output in the calculation commentary report.

Begin Car Benefit Calculator
  Start Date: 2018-04-06
  Benefit End Date: 2019-04-05
  Creating Car Benefit Pay Line
    Values:
      Car Make and Model        -  Mercedes C-Class
      Registration              -  OV04 POF
      List Price                -  35,000.00
      Fuel Type                 -  DieselNonRde2
      Co2 Emissions             -  170g/km
        Co2 Table Rate          -  35.00%
        Apply non-RDE2 surcharge  -  4.00%
        Co2 Table Rate + Diesel Surcharge = 39.00%
        Co2 Percentage capped at 37.00% = MIN(37.00, 39.00)
      Co2 Percentage: 37.00%
    Employee Contributions
      Capital                 -  0.00
      Private Use             -  0.00
  Cash Equivalent for Car:
    Calculated Price: List Price - Employee Capital Cont.   -  35,000.00 = (35,000.00 - 0.00)
    Annualised Benefit: Calculated Price * Co2 Percentage   -  12,950.00 = (35,000.00 * 0.37)
    Less Employee Cont. for Private Use    -   12,950.00 = (12,950.00 - 0.00)
  Total Car Benefit:  12,950.00
  Cash Equivalent for Fuel:
    Fixed Sum Fuel Benefit  -  23,400.00
    Annualised Benefit: Fixed Sum Fuel Benefit * Co2 Percentage -  8,658.00 = (23,400.00 * 0.37)
  Total Fuel Benefit:  8,658.00
  Total Taxable Benefit: 21,608.00
  Tax Treatment:
    Pay Code                  -  CAR
    Description               -  Company Car (BiK)
    Subject To Tax            -  True
    Subject To NI             -  False
    Accounting Method         -  PAYE
  Period Value:
    (Taxable Amount) = (Total Taxable Benefit - Total Paid YTD) / (Pay Days Remaining)
    Taxable Amount: 1,800.66 = ((21,608.00 - 0.00) / 12)
  Benefit Line Created [CAR]
End Car Benefit Calculator

Ending a Car Benefit Pay Instruction

The instruction EndDate and BenefitEndDate control different behaviours. The BenefitEndDate should also be set to the date the benefit was actually withdrawn from the employee. Setting the instruction EndDate to match BenefitEndDate will result in the remaining taxable benefit all being applied in the current (ending period), conversely you may set the instruction EndDate into the future (or not at all) and the remaining taxable benefit will be spread over the remainder of the tax year or up until the specified EndDate is reached, whichever comes sooner.

Migrating an Employee with Car Benefit

To migrate an employee mid-year onto the system you would use a the equivalent CarBenefitYtdPayInstruction.

curl -X PATCH \
  'https://api.test.payrun.io/Employer/ER001/Employee/EE001/PayInstructions' \
  -H 'Accept: application/xml' \
  -H 'Api-Version: default' \
  -H 'Authorization: {OAuthHeader}' \
  -H 'Cache-Control: no-cache' \
  -H 'Content-type: application/xml' \
  -d '<?xml version="1.0"?>
<CarBenefitYtdPayInstruction xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <StartDate>2018-06-10</StartDate>
  <EndDate xsi:nil="true" />
  <Description xsi:nil="true" />
  <PayLineTag xsi:nil="true" />
  <Code>CAR</Code>
  <Value>0.00</Value>
  <TaxableAmount>822.50</TaxableAmount>
  <AccountingMethod>PAYE</AccountingMethod>
  <IsAdjustment>false</IsAdjustment>
  <TaxableVehicle>822.50</TaxableVehicle>
  <TaxableFuel>0.00</TaxableFuel>
  <VehicleRegistration>OV04 POF</VehicleRegistration>
</CarBenefitYtdPayInstruction>
'
curl -X PATCH \
  'https://api.test.payrun.io/Employer/ER001/Employee/EE001/PayInstructions' \
  -H 'Accept: application/json' \
  -H 'Api-Version: default' \
  -H 'Authorization: {OAuthHeader}' \
  -H 'Cache-Control: no-cache' \
  -H 'Content-type: application/json' \
  -d '{
  "CarBenefitYtdPayInstruction": {
    "StartDate": "2018-06-10",
    "EndDate": null,
    "Description": null,
    "Code": "CAR",
    "Value": "0.00",
    "TaxableAmount": "822.50",
    "AccountingMethod": "PAYE",
    "IsAdjustment": "false",
    "TaxableVehicle": "822.50",
    "TaxableFuel": "0.00",
    "VehicleRegistration": "OV04 POF"
  }
}'