We are integrating CyberSource payments via the REST API (v2) for our Salesforce-based payment application. We are using the sandbox environment (apitest.cybersource.com) and processing tokenized card payments using TMS (Token Management Service) — specifically with Customer IDs and Payment Instrument IDs created via /tms/v2/customers and /tms/v2/customers/{id}/payment-instruments.
The Issue:
All payment requests to POST /pts/v2/payments are failing with Reason Code 150 and the following reply message:
"The following property is either invalid or missing: usd_outlet_id, usd_terminal_id"
The full error details from the CyberSource Transaction Search dashboard:
Reason Code: 150
Reply: Processing Error
Reply Code: -1
Processor: fdiglobal
Commerce Indicator: internet
Our Request Payload:
{
"clientReferenceInformation": { "code": "006O200000YBIe6IAH_1776419561768" },
"processingInformation": { "capture": true, "commerceIndicator": "internet" },
"paymentInformation": {
"customer": { "id": "<CUSTOMER_TOKEN_ID>" },
"paymentInstrument": { "id": "<PAYMENT_INSTRUMENT_TOKEN_ID>" }
},
"orderInformation": {
"amountDetails": { "totalAmount": "89.00", "currency": "USD" }
}
}
04-22-2026 06:36 AM