| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
Update Service Acceptance
Updates the service acceptance (product setup) configuration for an existing merchant application. This controls which card brands and payment networks the merchant is enrolled to accept, and provides the existing Amex ESA or FCS account numbers if applicable.
Endpoint
POST /api/v1/merchant/productSetup
Authentication
Basic HTTP Authentication required.
Encode username:password in Base64 and pass in the Authorization header:
Authorization: Basic {base64(username:password)}
When to use
Call this endpoint when a merchant wants to add or remove acceptance of specific card types or payment networks after the initial application has been submitted. For example, enabling Amex Opt Blue or EBT acceptance mid-application without requiring a full re-submission. This data directly affects which card brands will be activated on the merchant's account at approval.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| id | integer (int32) | Yes | Merchant profile ID to update (1–999999). |
| productSetup | object | No | Service acceptance configuration. |
| productSetup.amexESA | boolean | No | Whether the merchant has an existing Amex ESA (standalone Amex) account. |
| productSetup.amexOptBlue | boolean | No | Whether the merchant participates in the Amex Opt Blue program. |
| productSetup.discover | boolean | No | Whether the merchant accepts Discover. |
| productSetup.payPal | boolean | No | Whether the merchant accepts PayPal. |
| productSetup.jcb | boolean | No | Whether the merchant accepts JCB. |
| productSetup.ebt | boolean | No | Whether the merchant accepts EBT (Electronic Benefits Transfer). |
| productSetup.debitCard | boolean | No | Whether the merchant accepts PIN debit cards. |
| productSetup.amexNumber | string | No | Existing Amex ESA account number — exactly 10 digits. Required if amexESA is true. |
| productSetup.fcsNumber | string | No | FCS (Fuel Card Services) number — exactly 7 digits. Required if applicable. |
{
"id": 10482,
"productSetup": {
"amexESA": false,
"amexOptBlue": true,
"discover": true,
"payPal": false,
"jcb": false,
"ebt": true,
"debitCard": true
}
}Response
200 OK
| Field | Type | Description |
|---|---|---|
| data | object | Empty object on success. |
| status | string | HTTP status name (e.g., "OK"). |
| error | string | Error message if the update failed; otherwise null. |
| warning | string | Non-fatal warning, if any. |
| validationResults | array | Field-level validation errors, if any. |
| requestId | integer | Internal request tracking ID. |
{
"data": {},
"status": "OK",
"error": null,
"warning": null,
"validationResults": [],
"requestId": 58024
}Error Codes
| Code | When it happens |
|---|---|
| 400 | id is missing or out of range; or amexNumber / fcsNumber are provided but do not match the required digit pattern. |
| 401 | Invalid or missing Basic Auth credentials. |
| 403 | User does not have permission to update this merchant application. |
| 404 | No merchant application found with the given ID. |
| 500 | Internal server error. |
Common Mistakes
- Setting
amexESA: truewithout providing a valid 10-digitamexNumberwill fail at underwriting even if the API returns 200. - Setting both
amexESA: trueandamexOptBlue: truesimultaneously is typically invalid — choose one Amex program. amexNumbermust be exactly 10 digits (^\d{10}$); leading zeros are significant.fcsNumbermust be exactly 7 digits (^\d{7}$).- Enabling
ebtrequires additional configuration at the network level — coordinate with the ISO before enabling.
Related Endpoints
POST /api/v1/merchant/account— Update sales and business profile, including card acceptance percentages.POST /api/v1/merchant/fees— Update fee rates for each accepted card network.POST /api/v1/merchant/submit— Initial submission that includes service acceptance configuration.
Example
curl -X POST https://hq.staging.netevia.dev/api/v1/merchant/productSetup \
-H "Authorization: Basic $(echo -n 'username:password' | base64)" \
-H "Content-Type: application/json" \
-d '{
"id": 10482,
"productSetup": {
"amexESA": false,
"amexOptBlue": true,
"discover": true,
"payPal": false,
"jcb": false,
"ebt": true,
"debitCard": true
}
}'