Configures a card-present payment processor for a location, enabling transactions on physical terminals.
Request Headers
| Header | Required | Description |
|---|---|---|
| Authorization | Yes | Bearer YOUR_ACCESS_TOKEN |
| Content-Type | Yes | application/json |
Request Parameters
Path Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
| location_id | integer | Yes | Location to configure. |
Request Body Fields:
| Field | Type | Required | Description |
|---|---|---|---|
| type | string | Yes | Processing type. Must be CP for card-present. |
| processor | string | Yes | Processor identifier. RC = First Data (Rapid Connect), Cybersource = Cybersource. |
| status | integer | Yes | 1 = active, 0 = inactive. |
| merchant_id | string | Yes | Merchant identifier (long MID) with the processor. |
| environment | string | Yes | Processor environment. Demo = sandbox, Development, or Production = live merchants. |
| api_key | string | Conditional | Cybersource REST API key. Required when the processor requires it (for example, Cybersource). |
| password | string | Conditional | Cybersource secret key. Required when the processor requires it. |
| name | string | No | Name identifying this processor within the location. Defaults to the value sent in type. |
| terminal_id | string | No | Unique ID assigned by Fiserv (First Data) to identify a terminal. |
| TTP_id | string | No | Rapid Connect ID assigned by Fiserv (First Data) for a specific version of vendor/merchant software. |
| group_id | string | No | ID assigned by Fiserv (First Data) to identify the individual merchant or group of merchants. |
| pay_by_card | integer | No | Enables Credit Card as a payment option in SoftPoint apps for CP payments. 1 = active, 0 = inactive. |
| user_id | integer | No | ID of the current (acting) user. |
Request Example
{
"type": "CP",
"processor": "Cybersource",
"status": 1,
"merchant_id": "vpctestingsoftpoint005",
"api_key": "50783f5b-d79a-4279-acc7-ad6693864546111",
"password": "REDACTED_SHARED_SECRET",
"environment": "Demo",
"pay_by_card": 1,
"user_id": 144
}cURL Example
curl --request POST \
--url https://sandbox-api.softpoint.io/interface/v1/locations/279685/processors \
--header "Authorization: Bearer YOUR_ACCESS_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"type": "CP",
"processor": "Cybersource",
"status": 1,
"merchant_id": "vpctestingsoftpoint005",
"api_key": "YOUR_PROCESSOR_API_KEY",
"password": "YOUR_PROCESSOR_SECRET",
"environment": "Demo",
"pay_by_card": 1
}'Success Response
Example for a Cybersource configuration:
{
"id": 11930,
"location_id": 279685,
"processor": "Visa Cybersource",
"environment": "Demo",
"name": "CP",
"status": 1,
"merchant_id": "vpctestingsoftpoint005",
"api_key": "50783f5b-d79a-4279-acc7-ad6693864546111",
"api_secret_key": "REDACTED",
"terminal_id": null,
"TTP_id": null,
"group_id": null,
"pay_by_card": 1
}A First Data (RC) configuration returns the processor as First Data along with terminal_id, TTP_id, and group_id.
Response Fields
| Field | Type | Description |
|---|---|---|
| id | integer | Processor configuration ID. |
| location_id | integer | Location it belongs to. |
| processor | string | Resolved processor name. |
| environment | string | Processor environment. |
| name | string | Configuration name. Defaults to the value sent in type. |
| status | integer | Status. 1 = active, 0 = inactive. |
| merchant_id | string | Merchant identifier. |
| api_key / api_secret_key | string | Credentials (present for processors that use them). |
| terminal_id / TTP_id / group_id | string | Fiserv (First Data) identifiers; null for Cybersource. |
| pay_by_card | integer | Whether card payments are enabled. |
Error Responses
Missing Required Parameters
{
"error": {
"code": 10109,
"message": "The request is missing one or more required parameter(s).",
"details": { "type": ["missing_required_parameters"] }
}
}Status Codes
| Code | Description |
|---|---|
| 200 | Processor configured |
| 400 | Required parameters missing |
| 401 | Token missing or invalid |
Workflow Placement
Boarding step that enables in-person payments:
-
Create A Location
-
Create Terminal
-
Create Card Present Processing
-
Card-present Sale / Auth
Notes
-
Required credential fields vary by processor; First Data uses
terminal_id/TTP_id/group_id, while Cybersource usesapi_key/password. -
Store credentials securely and never expose them client-side.
Common Mistakes
-
Omitting
type(must beCP). -
Sending Cybersource without
api_key/password, or First Data without its identifiers.

