SBA Loan Forgiveness Platform - API HTTP Response Codes
The SBA Loan Forgiveness Platform REST APIs return either 200 (OK) , 201 (Created) or 204 when an API request successfully runs to completion. Status codes in the 400-500 range indicate failures
List of HTTP Error Codes:
Method | API | Error code & Error Message | Error Description |
---|---|---|---|
POST | /ppp_loan_documents | Default REST errors | Default REST errors |
POST | /ppp_loan_documents | 404: ‘Request Not Found’ |
etran_loan slug does not exist |
POST | /ppp_loan_documents | 404: ‘Unsupported file type extension. Please provide a file of type: .pdf,.xls,.xlsx,.csv,.doc,.docx,.jpg,.jpeg,.png’ |
If Document error |
POST | /ppp_loan_documents | 404: ‘Additional documents not allowed at this time’ |
If status is NOT pending_validation OR lender_additional_info_needed |
GET | /ppp_loan_document_types | Default REST errors | Default REST errors |
DELETE | /ppp_loan_forgiveness_requests | 400: ‘Submission can not be withdrawn as it has begun SBA review’ |
If status is not pending validation or it has been more than 24 hrs since submission |
POST | /ppp_loan_forgiveness_requests | Default REST errors | Default REST errors |
POST | /ppp_loan_forgiveness_requests | 400: ‘Our system has detected a Forgiveness decision that has already been submitted for this SBA number, please verify before resubmitting’ |
If forgiveness request already exist |
POST | /ppp_loan_forgiveness_requests | 400: ‘SBA Number is not valid for forgiveness’ |
If the SBA Number used with this decision is not currently valid for forgiveness |
POST | /ppp_loan_forgiveness_requests | 400: ‘The SBA Number used with this decision is not currently valid for forgiveness, please ensure it is fully disbursed’ |
If the SBA Number used with this decision is not currently valid for forgiveness |
POST | /ppp_loan_forgiveness_requests | 400: ‘The forgiven amount included in this decision is greater than the original SBA PPP loan amount’ |
If the forgiven amount included in this decision is greater than the original SBA PPP loan amount |
POST | /ppp_loan_forgiveness_requests | 400: ‘The EIN/SSN does not match the original values supplied with the PPP loan. Please review the values with Etran and resubmit’ |
If the EIN/SSN does not match the original values supplied with the PPP loan |
POST | /ppp_loan_forgiveness_requests | 400: ‘Loan is not valid for your institution’ |
If PPP Loan is not valid for your institution |
POST | /ppp_loan_forgiveness_requests | 400: ‘Our automatic calculation routine discovered that line 10 does not validate against lines 1-9; please validate your request and supporting numbers before resubmission’ |
For 3508 Form, when Line 10 doesnot match (sum of lines 1 to 8 and subtract line 9). Please refer to 3508 form |
POST | /ppp_loan_forgiveness_requests | 400: ‘Our automatic calculation routine discovered that line 15 does not validate against lines 12-14; please validate your request and supporting numbers before resubmission’ |
For 3508 Form, when Forgive amount is not meeting 3508 guidelines (minumum of line 12,13 and 14). |
POST | /ppp_loan_forgiveness_requests | 400: ‘Our automatic calculation routine discovered that line 12 does not validate against lines 9-11; please validate your request and supporting numbers before resubmission’ |
If using ez_form and line 12 does not validate against lines 9-11 |
POST | /ppp_loan_forgiveness_requests | 400: ‘The automated validation calculation detected that your computed forgiven amount is greater than your entered forgiven amount’ |
If computed forgiven amount > entered forgiven amount + 1 |
POST | /ppp_loan_forgiveness_requests | 400: ‘The Calculated Forgiven Amount and Entered Forgiven Amount Vary Significantly: |
If the Calculated Forgiven Amount and Entered Forgiven Amount Vary Significantly |
POST | /ppp_loan_forgiveness_requests | 400: ‘Lender must confirm that this is accurate’ |
If forgive_lender_confirmation is false |
POST | /ppp_loan_forgiveness_requests | 400: ‘Funding Date is Required’ |
If no funding date |
POST | /ppp_loan_forgiveness_requests | 400: ‘Covered period date error’ |
If forgive_covered_period_to <= forgive_covered_period_from |
POST | /ppp_loan_forgiveness_requests | 400: ‘Covered Period can not extend beyond 1/4/2022’ |
If Covered period goes beyond Jan 4th, 2022 |
POST | /ppp_loan_forgiveness_requests | 400: ‘PPP Loan Disbursement Date is prior to the date of funding from Etran’ |
If PPP Loan Disbursement Date > funding_date |
POST | /ppp_loan_forgiveness_requests | 400: ‘We have detected that you have entered a PPP Loan Disbursement Date that is after the beginning of your entered covered period. Disbursement date (or funding date) in many cases will be aligned to the start of your covered period. Please validate your Loan Disbursement entry and resubmit.’ |
If funding_date > forgive_covered_period_from |
POST | /ppp_loan_forgiveness_requests | 400: ‘We have detected that your entered covered period may not be correct. Please check your disbursement date and covered period dates and ensure the covered period follow the SBA PPP guidance.’ |
If covered period start date is not meeting SBA guidelines - “Borrowers who received loans in 2021 and borrowers who received loans in 2020 but have not yet applied for forgiveness are eligible to select the length of their covered period for a time period beginning on the date of disbursement of the loan (system allows buffer of 2 weeks) and ending on a date that is at least 8 weeks but no more than 24 weeks later. Borrowers may apply for forgivenessonce their selected covered period has expired,Requirement for 2020 Loans to have Covered period end on or before 12/31/2020, was removed” |
POST | /ppp_loan_forgiveness_requests | 400: ‘We have detected that your covered period is likely incorrect as it doesn’t align with the 8 week (56 days) to 24 week (168 days) guidance. Please validate the dates you entered and resubmit.’ |
If covered period is not between 8 and 24 weeks |
POST | /ppp_loan_forgiveness_requests | 400: ‘You can not deny this forgiveness request and provide a forgiveness amount’ |
If forgive_lender_decision is 2 (Denied) and the forgive_amount field is not zero. |
POST | /ppp_loan_forgiveness_requests | 400: ‘Ensure that there are no more than 10 digits before the decimal point.’ |
If forgive_line_6_3508_or_line_5_3508ez is more than 10 digits. |
POST | /ppp_loan_forgiveness_requests | 400: ‘Ensure that there are no more than 12 digits in total.’ |
If forgive_payroll_cost_60_percent_requirement, forgive_amount is more than 12 digits in total. |
POST | /ppp_loan_forgiveness_requests | 400: ‘Our automatic calculation detected that your FTE Quotient (Line 13) does not match the values entered on Lines 11 and 12. Please double check your values and resubmit’ |
When FTE Reduction Quotient (forgive_schedule_a_line_13) is not equal to Total average FTE (forgive_schedule_a_line_12)/Average FTE during the Borrower’s chosen reference period (forgive_schedule_a_line_11) |
POST | /ppp_loan_forgiveness_requests | 400: ‘Our automatic calculation detected that you have selected a safe harbor option, but your FTE Quotient entry does not equal 1. Please correct these selections and resubmit’ |
If any of the following - no reduction in employees or average paid hours (no_reduction_in_employees), FTE Reduction Safe Harbor 1 (no_reduction_in_employees_and_covid_impact) or FTE Reduction Safe Harbor 2 (forgive_schedule_a_line_10_checkbox) is true but FTE reduction quotient (forgive_schedule_a_line_13) is not equal 1 |
POST | /ppp_loan_forgiveness_requests | 400: ‘We have detected that your Payroll Cost (Schedule A Line 10) supplied does not match the sum of values provided on Schedule A Lines 1, 4, 6, 7, 8, and 9. Please double check your values and resubmit’ |
When Total Payroll costs (forgive_schedule_a_line_10) <> (forgive_schedule_a_line_1 + forgive_schedule_a_line_4 + forgive_schedule_a_line_6 + forgive_schedule_a_line_7 + forgive_schedule_a_line_8 + forgive_schedule_a_line_9) |
POST | /ppp_loan_forgiveness_requests | 400: ‘Our automatic calculation routine detected that your Total Average FTE value entered on Line 12, does not match the sum of Lines 2 (Average FTE (Box 2)) and Lines 5 (Box 5). Please correct your entries and resubmit’ |
When Total Average FTE (forgive_schedule_a_line_12) <> Average FTE Box 2 (forgive_schedule_a_line_2) + Average FTE Box 5 (forgive_schedule_a_line_5) |
POST | /ppp_loan_forgiveness_requests | 400: ‘Our automatic calculation routine detected that Salary/Hourly Wage Reduction (Box 3) is greater than $0 even though the Alternative Payroll Covered Period 75% checkbox was selected’ |
When Salary/Hourly Wage reduction - Box 3 (forgive_schedule_a_line_3) is not equal 0, even if check box (forgive_schedule_a_line_3_checkbox) is selected |
POST | /ppp_loan_forgiveness_requests | 400: ‘We have detected that your Payroll Cost supplied does not match the values you entered on Schedule A Line 10. Please double check your values and resubmit’ |
When Payroll cost (forgive_payroll) <> Schedule A Line 10 (forgive_schedule_a_line_10) |
POST | /ppp_loan_forgiveness_requests | 400: ‘Please ensure your Employees at Time of Forgiveness Application is accurate. We have detected an extremely large value not indicative of a small business’ |
When Employees at the time of forgiveness application > 10000 |
POST | /ppp_loan_forgiveness_requests | 400: ‘Please ensure your Employees at Time of Loan Application is accurate. We have detected an extremely large value not indicative of a small business’ |
When Employees at the time of Loan application > 10000 |
POST | /ppp_loan_forgiveness_requests | 400: ‘We have detected that your funding date supplied is likely inaccurate as it occurs after the funding date in Etran’ |
When Loan disbursement date is > 120 days from Etran funding date |
POST | /ppp_loan_forgiveness_requests | 400: ‘The PPP draw you have selected appears to be incorrect. Please validate that you have selected the correct PPP draw and resubmit’ |
Loan draw in Forgiveness application not matching with PPP draw for Orignation application |
POST | /ppp_loan_forgiveness_requests | 400: ‘Please provide a valid NAICS code’ |
NAICS code provided doesn’t match with valid list of NAICS codes |
POST | /ppp_loan_forgiveness_requests | 400: ‘‘The First Draw PPP Loan must apply for forgiveness before the Second Draw PPP Loan’ |
For Second Draw PPP Loans in excess of $150,000, the borrower must submit its loan forgiveness application for the First Draw PPP Loan before or simultaneously with the loan forgiveness application for the Second Draw PPP Loan, even if the calculated amount of forgiveness on the First Draw PPP Loan is zero. So when lender is submitting forgiveness for second draw, application throws an error message if application doesn’t see a forgiveness of first draw loan and second draw loan > 150 k. |
POST | /ppp_loan_forgiveness_requests | 400: ‘Payroll costs must be >= 60% of requested loan forgiveness amount’ |
Payroll amount should be >= 60% of requested forgiveness else this error message triggers |
POST | /ppp_loan_forgiveness_requests | 400: ‘We have detected that you have selected a safe harbor option, but you have also supplied a value for Schedule A Line 11 or 12. Please double check your values and resubmit.’ |
For 3508 Form : When safe harbor options are marked true and value provided in Schedule A Line 11 and Line 12. |
POST | /ppp_loan_forgiveness_requests | 400: ‘Ensure this value is less than or equal to 1.0’ |
For 3508 Form : When forgive_schedule_a_line_13 value is more than 1. |
POST | /ppp_loan_forgiveness_requests | 400: ‘Our automatic calculation routine detected that your Modified Total does not match the values entered on lines 10 and 11. Please double check your values and resubmit.’ |
For 3508 Form, when Modified total amount value is not correct as per calculation. |
POST | /ppp_loan_forgiveness_requests | 400: ‘Our automatic calculation routine discovered that line 9 does not validate against lines 1-8; please validate your request and supporting numbers before resubmission’ |
For 3508 Form, when forgive_line_6_3508_or_line_5_3508ez calculation is not correct as per calculation. |
POST | /ppp_loan_forgiveness_requests | 400: ‘Covered period can not begin before funding date in Etran’ |
Covered Period is before funding date in Etran. |
POST | /ppp_loan_forgiveness_requests | 400: ‘Our automatic calculation routine determined that your Payroll Cost 60% requirement does not validate against line 1. Please check your calculation and try again.’ |
For 3508 Form, if payroll cost is not provided as per calculation logic. |
POST | /ppp_loan_forgiveness_requests | 400: ‘A loan increase date cannot be before the loan’s funding date’ |
Loan Increase date provided is before the funding date. |
POST | /ppp_loan_forgiveness_requests | 400: ‘A loan increase date cannot be on or before December 27, 2020’ |
Loan Increase date cannot be on or before December 27, 2020 |
POST | /ppp_loan_forgiveness_requests | 400: ‘The SBA Number used with this decision is not currently valid for forgiveness, please ensure it is fully disbursed’ |
Following status for loans are eligible for forgiveness submission.Delinquent Disbursed, Disbursed Current, Lender Deferred Disbursed, Past Due Disbursed. Following status for loans are not applicable for forgiveness submission.Paid in Full, Active Un-Disbursed, In Liquidation Disbursed, Voluntary Termination, Charge Off, Cancelled |
POST | /ppp_loan_forgiveness_requests | 400: ‘A loan increase requires both an increase value and a loan increase date’ |
loan_increase or loan_increase date provided are co-mandatory. Either both should be provided or both should not. |
POST | /ppp_loan_forgiveness_requests | 400: ‘The SBA Number used with this decision is not currently valid for forgiveness, because it is already associated with a Guaranteed Purchase Request’ |
Forgiveness submitted for a Loan after Guaranteed purchase was already submitted for that Loan |
GET | /ppp_loan_forgiveness_requests | Default REST errors | Default REST errors |
PUT | /ppp_loan_forgiveness_message_reply | 400: ‘Could not save message. Please verify your data and send again.’ |
If invalid parameters in the ppp_loan_forgiveness_message_reply request |
PUT | /ppp_loan_forgiveness_message_reply | 403: ‘Unsupported file type extension. Please provide a file of type: .pdf,.xls,.xlsx,.csv,.doc,.docx,.jpg,.jpeg,.png’ |
If Unsupported file type extension |
PUT | /ppp_loan_forgiveness_message_reply | 403: ‘Additional documents not allowed at this time’ |
If status is not Lender Additional Info Needed |
PUT | /ppp_loan_forgiveness_message_reply | 404: ‘An error occurred. Please confirm that you provided a valid slug’ |
If invalid Slug |