Partner API uses the standard Problem Details for HTTP APIs(RFC-7807) for returning erros.
{
"type": "https://zalando.github.io/problem/constraint-violation",
"status": 400,
"violations": [
{
"field": "partnerAccountManager.email",
"message": "value must not be empty or null."
}
],
"title": "Constraint Violation"
}
or
{
"title": "Unprocessable Entity",
"status": 422,
"detail": "currency [USD] is not supported yet, please contact the system admin."
}
HTTP Status Code | Title | Detail | Description |
---|---|---|---|
400 | Constraint Violation | violations:[””, “”] | Client error |
401 | Missing subscription key | see Security Page | Client error |
401 | Invalid subscription key | see Security Page | Client error |
401 | Partner not matched | Unable to find a partner with the provided key/id, please contact the system admin | Client error |
401 | Invalid client certificate | Invalid certificate provided, please try again with a valid certificate | Client error |
401 | Unauthorized | In case invalid or missing authorization header. See Security Page | Client error |
401 | Unauthorized | Unauthorized access to the resource, please contact the system admin. | Client error |
401 | Signature could not be successfully verified | In case signature is invalid, e.g message signed with different no or different certificate from the one provided, or message build using different structure. See Security Page | Client error |
403 | Forbidden | see Security Page | Client error |
404 | Not Found | Client error | |
429 | Limit of request by crefo Id exceeded. | Limit of request, in a given amount of time, by crefo Id exceeded, try again later. | Client error |
429 | Rate limit is exceeded. | see Security Page | Client error |
500 | Internal Server Error | The internal exception | Server error |
503 | Service Unavailable | Server error |
When an application is submitted we perform synchronized pre-validation, in case the company data is compliant with those basics checks the application move forward in our approval flow. In case the prospect does not fulfil the basic validation criteria it will be automatically rejected with one or more rejection reasons.
{
"version": 1,
"rejection_reasons": [
"BAD_INDUSTRY_CODE"
],
"application_id": "de.ing.business.application.d2ab8ff8-c8bd-43fd-8f64-0150dc822099",
"last_updated_at": "2021-12-20T16:54:23.359Z",
"last_updated_by": "PARTNER",
"status": "REJECTED"
}
or
{
"version": 1,
"rejection_reasons": [
"BAD_INDUSTRY_CODE",
"COMPANY_REVENUE_TOO_LOW"
],
"application_id": "de.ing.business.application.d2ab8ff8-c8bd-43fd-8f64-0150dc822099",
"last_updated_at": "2021-12-20T16:54:23.359Z",
"last_updated_by": "PARTNER",
"status": "REJECTED"
}
Note that the difference between a rejected application response and a non-rejected one is the status
(REJECTED
) and the addition of the rejection_reasons
data point to the response DTO.
Rejection reason | Description |
---|---|
COMPANY_REVENUE_TOO_LOW | The company must have at least 50k € revenue. |
COMPANY_TOO_YOUNG | The company must be at least two years old. |
POOR_COMPANY_CREDIT_SCORE | The company has a poor credit score. |
BAD_LEGAL_FORM | The company’s legal form is not accepted. |
BAD_INDUSTRY_CODE | At least one of the company’s industry codes are not acceptable. |
COMPANY_LOCATION | The company must be located in Germany. |
COMPANY_CREFO_ID_NOT_FOUND | The company was not found in crefo. |
INTERNAL_REASON | The company was rejected in one of the screening phases due a internal reason(e.g risk check) |
ALREADY_BEING_PROCESSED | The company is already in the funnel, mostly likely it will be rejected due duplication(it will be double checked in the backoffice) |
RECENTLY_REJECTED | The company was recently rejected, mostly likely it will be rejected since it has already been rejected recently(it will be double checked in the backoffice) |