Simulations

Generate test enrolment states, test alerts, and test scheme notices for TEST mode organisations.

Base URL: https://api.chargebackstop.com/v1/simulate/

Authentication: Bearer token via API key.

Required abilities:

  • simulations:enrollments for PATCH /v1/simulate/enrolments/{enrolment_id}

  • simulations:alerts for POST /v1/simulate/alerts

  • simulations:lookups for POST /v1/simulate/lookups

  • simulations:scheme_notices for POST /v1/simulate/scheme-notices

Access scope model:

  • Organisation-level keys can simulate data for their own organisation only.

  • Admin partner-group keys can simulate data across all organisations for their partner.

  • Non-admin partner-group keys can simulate data only for organisations assigned to their group.

Typical simulation flow:

1

Create an enrolment

Create an enrolment with /v2/enrolments.

2

Enable the enrolment for simulation

Set that enrolment to ENABLED with:

PATCH /v1/simulate/enrolments/{enrolment_id}

3

Generate a simulated alert

Generate a simulated alert with POST /v1/simulate/alerts.

4

Generate a simulated lookup

Generate a simulated lookup with POST /v1/simulate/lookups.

5

Generate a simulated scheme notice

Generate a simulated scheme notice with POST /v1/simulate/scheme-notices.


PATCH /v1/simulate/enrolments/{enrolment_id} - update enrolment simulation status

Updates an enrolment status for simulation use.

API level: Organisation-level and partner-level Authentication: simulations:enrollments

URL parameters

Parameter
Type
Description

enrolment_id

string

Enrolment ID to update

Request body

Field
Type
Required
Description

status

string

Yes

New enrolment status: ENABLED or UNENROLLED

Important behaviour

  • This endpoint is only available for TEST mode organisations.

  • The enrolment must be accessible to the authenticated API key.

  • For ETHOCA_ALERT enrolments, setting status to ENABLED activates configured descriptors for simulation matching.

Example 1 request

Example 1 response


POST /v1/simulate/alerts - create simulated alert

Creates a simulated network alert.

API level: Organisation-level and partner-level Authentication: simulations:alerts

Request body

Field
Type
Required
Description

organisation_id

string

Yes

Organisation ID. Must be in TEST mode and accessible to the key

enrolment_id

string

Yes

Enrolment ID that belongs to organisation_id and is an alert enrolment (ETHOCA_ALERT or VERIFI_RDR)

status

string

No

Alert status: ACTION_REQUIRED, RESOLVED, INVALID. Verifi RDR only supports RESOLVED or INVALID

transaction_refund_outcome

string

No

Refund outcome: REFUNDED or NOT_REFUNDED. Only valid with status=RESOLVED

card_scheme

string

No

Card scheme. Use any supported scheme value, for example VISA, MASTERCARD, AMEX

amount_in_cents

integer

No

Transaction amount in cents. Must be a positive integer

currency_code

string

No

ISO 4217 currency code, for example USD, EUR, GBP

transaction_acquirer_reference_number

string

No

ARN. Must be exactly 23 characters

transaction_authorisation_code

string

No

Authorisation code. Must be exactly 6 characters

Important behaviour

  • This endpoint is only available for TEST mode organisations.

  • The enrolment must be an alert enrolment: ETHOCA_ALERT or VERIFI_RDR.

  • If status is omitted, the simulator chooses a valid status.

  • If transaction_refund_outcome is provided without status, the created alert is set to RESOLVED.

  • Simulated alerts trigger the same alert.created event flow as non-simulated alerts.

Example 2 request

Example 2 response


POST /v1/simulate/lookups - create simulated lookup

Creates a simulated lookup.

API level: Organisation-level and partner-level Authentication: simulations:lookups

Request body

Field
Type
Required
Description

organisation_id

string

Yes

Organisation ID. Must be in TEST mode and accessible to the key

enrollment_id

string

Yes

Enrollment ID that belongs to organisation_id and is a lookup enrolment (ETHOCA_CONSUMER_CLARITY or VERIFI_ORDER_INSIGHT)

type

string

Yes

Lookup type: ETHOCA_CONSUMER_CLARITY, ETHOCA_FIRST_PARTY_TRUST, VERIFI_ORDER_INSIGHT, VERIFI_COMPELLING_EVIDENCE_3

parent_lookup_id

string

No

Existing lookup ID in the same organisation

lookup_status

string

No

Lookup status: PENDING, SUCCEEDED, FAILED, TIMEOUT

deflection_status

string

No

Deflection status: NOT_ATTEMPTED, PENDING, SUCCEEDED, FAILED

card_scheme

string

No

Card scheme. Use any supported scheme value, for example VISA, MASTERCARD, AMEX

amount_in_cents

integer

No

Transaction amount in cents. Must be a positive integer

currency_code

string

No

ISO 4217 currency code, for example USD, EUR, GBP

transaction_acquirer_reference_number

string

No

ARN. Must be exactly 23 characters

transaction_authorisation_code

string

No

Authorisation code. Must be exactly 6 characters

Important behaviour

  • This endpoint is only available for TEST mode organisations.

  • The enrollment must be a lookup enrolment: ETHOCA_CONSUMER_CLARITY or VERIFI_ORDER_INSIGHT.

  • If lookup_status is omitted, the simulator uses SUCCEEDED.

  • If deflection_status is omitted, the simulator uses NOT_ATTEMPTED.

  • The simulator also stores a standard response summary on the lookup record for downstream UI and internal testing use.

  • Simulated lookups trigger the same lookup.created event flow as non-simulated lookups.

  • Simulated lookups do not create billing events or request-response records.

Example 4 request

Example 4 response


POST /v1/simulate/scheme-notices - create simulated scheme notice

Creates a simulated scheme notice.

API level: Organisation-level and partner-level Authentication: simulations:scheme_notices

Request body

Field
Type
Required
Description

organisation_id

string

Yes

Organisation ID. Must be in TEST mode and accessible to the key

scheme_notice_type

string

No

Scheme notice type: TC15, TC40, or SAFE

transaction_amount_in_cents

integer

No

Transaction amount in cents. Must be a positive integer

transaction_currency_code

string

No

ISO 4217 currency code, for example USD, EUR, GBP

reported_at

datetime

No

Reported timestamp in ISO 8601 format

Important behaviour

  • This endpoint is only available for TEST mode organisations.

  • If scheme_notice_type is omitted, the simulator chooses a valid notice type.

  • TC15 simulations use Verifi dispute-notice semantics: notice_type=DISPUTE_NOTICE, scheme=VISA.

  • Simulated scheme notices trigger the same scheme_notice.created event flow as non-simulated scheme notices.

  • The response uses the standard public scheme-notice payload, including fraud_reported_at.

Example 3 request

Example 3 response


Common error responses

Error responses use this shape:

Example 4: 401 Unauthorised

Example 5: 403 Forbidden

Example 6: 404 Not found

Example 7: 422 Unprocessable Entity (simulation not allowed)

Example 8: 422 Unprocessable Entity (simulation validation error)

Example 9: 422 Unprocessable Entity (scheme notice validation error)

Example 10: 422 Unprocessable Entity (invalid enum value)

Additional reference: 500 Server error

Last updated

Was this helpful?