{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"object": "terminal.payment_simulation",
"merchant_id": "<string>",
"terminal_id": "<string>",
"payment_intent_id": "<string>",
"livemode": false,
"outcome": "succeeded",
"consumed": true,
"created_at": 123,
"failure_code": "do_not_honor",
"resolution_outcome": "succeeded",
"resolution_available_at": 123,
"consumed_at": 123
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}Override a Terminal payment scenario
Overrides the built-in profile with exactly one durable outcome for
this simulated Terminal and the specified PaymentIntent. The next new
process_payment_intent command matching both IDs consumes the
override. Retries of that already consumed command remain idempotent,
but a different payment attempt cannot reuse it.
Only one unconsumed override can exist for the same Terminal and
PaymentIntent. Without one, the Terminal uses its test_profile.
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"object": "terminal.payment_simulation",
"merchant_id": "<string>",
"terminal_id": "<string>",
"payment_intent_id": "<string>",
"livemode": false,
"outcome": "succeeded",
"consumed": true,
"created_at": 123,
"failure_code": "do_not_honor",
"resolution_outcome": "succeeded",
"resolution_available_at": 123,
"consumed_at": 123
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}{
"error": {
"code": "<string>",
"message": "<string>"
}
}Authorizations
A test-mode Merchant secret key, or an authorized Platform test key with delegation.
Headers
Merchant ID when an authorized Platform acts for a connected Merchant. Omit when authenticating directly as that Merchant.
^mer_[0-9A-Za-z]{14}$Reuse only when retrying the same route and request body.
1 - 255Path Parameters
Merchant-owned simulated Terminal ID.
^tmr_[0-9A-Za-z]{14}$Body
Test-mode PaymentIntent owned by the same Merchant.
^pi_[0-9A-Za-z]{24}$The result the simulated payment reports. unknown can remain
unresolved or resolve later. dispatch_not_started simulates a
failure that occurs before payment processing begins.
succeeded, voided, declined, failed, canceled, unknown, dispatch_not_started Required for declined and failed final outcomes. Declines accept
do_not_honor, insufficient_funds, incorrect_pin,
pin_attempts_exceeded, or transaction_not_permitted. Failures
accept processor_error, invalid_routing, or
pin_processing_error. Omit it for every other final outcome.
do_not_honor, insufficient_funds, incorrect_pin, pin_attempts_exceeded, transaction_not_permitted, processor_error, invalid_routing, pin_processing_error Final result for an unknown scenario. Omit for every other initial outcome.
succeeded, voided, declined, failed, canceled Required and greater than zero when resolution_outcome is set; otherwise omit it.
0 <= x <= 86400Response
The armed one-shot override.
Unique identifier for the payment scenario.
terminal.payment_simulation ID of the account that owns the scenario (mer_…).
^mer_[0-9A-Za-z]{14}$ID of the simulated terminal the scenario applies to (tmr_…).
^tmr_[0-9A-Za-z]{14}$ID of the test-mode PaymentIntent the scenario applies to (pi_…).
^pi_[0-9A-Za-z]{24}$false The result the simulated payment reports. unknown can remain
unresolved or resolve later. dispatch_not_started simulates a
failure that occurs before payment processing begins.
succeeded, voided, declined, failed, canceled, unknown, dispatch_not_started Whether a payment attempt has already used this scenario. A scenario applies to one attempt only.
Unix epoch seconds when the scenario was created.
Required for declined and failed final outcomes. Declines accept
do_not_honor, insufficient_funds, incorrect_pin,
pin_attempts_exceeded, or transaction_not_permitted. Failures
accept processor_error, invalid_routing, or
pin_processing_error. Omit it for every other final outcome.
do_not_honor, insufficient_funds, incorrect_pin, pin_attempts_exceeded, transaction_not_permitted, processor_error, invalid_routing, pin_processing_error Final result an unknown scenario resolves to. Present only for unknown scenarios that resolve later.
succeeded, voided, declined, failed, canceled Unix epoch seconds when a delayed unknown result can resolve.
Unix epoch seconds when a process command first consumed the scenario.

