API trust. Payment integrity. Evidence.Atlant Security
Fintech/PentestBY ATLANT SECURITY

Delivery

Payment webhook testing: authenticity is only one control

Examine replay, ordering and state transitions with agreed synthetic events.

Discuss your requirements
Illustrative fintech architecture and operating environment

For the engagement owner. A valid webhook signature establishes only part of the decision. Test event identity, ordering and business effects with synthetic transactions and bounded delivery.

Start with the integration contract

Record how the sender authenticates an event, how timestamps are handled and how the receiver identifies duplicates. Confirm which environment and signing material the test uses. Provider-specific behaviour must come from that provider’s documentation and agreed sandbox arrangements.

A webhook has several decisions. Authenticity: Is the event from the expected source?; Event context: Is it recognised, timely and ordered?; Business effect: Is this state change appropriate?
Working model 01A webhook has several decisionsIllustrative planning diagram. Adapt the decisions to your authorised scope.
Read diagram text
Authenticity
Is the event from the expected source?
Event context
Is it recognised, timely and ordered?
Business effect
Is this state change appropriate?

Test repeated and out-of-order events

An authentic event may arrive twice or after a later state change. Use a small agreed event set to observe idempotency and state-transition handling. Record whether the application repeats a side effect, ignores a valid update or applies an operation to the wrong transaction version.

An illustrative payments engineering workspace with test devices
Operational perspectiveTesting starts with the operating context behind the technology.Generated illustrative setting; not a client location.

Separate security from delivery assumptions

A delivery retry is not necessarily an attack, and network order is not a reliable business rule. The receiver should validate event authenticity and decide whether the requested transition is permitted in the current state. Capture the resulting state and audit entry, not only the HTTP acknowledgement.

A bounded event sequence. First valid event: Apply the documented state transition; Repeated delivery: Avoid unintended duplicate effects; Late or reordered event: Follow the agreed event contract
Working model 02A bounded event sequenceIllustrative planning diagram. Adapt the decisions to your authorised scope.
Read diagram text
First valid event
Apply the documented state transition
Repeated delivery
Avoid unintended duplicate effects
Late or reordered event
Follow the agreed event contract

Keep tests bounded

Use synthetic transactions, disabled settlement and explicit concurrency limits. Do not send test events to a provider’s live merchant infrastructure without permission. Turn each confirmed defect into a regression case that covers both malicious reuse and legitimate provider retry behaviour.

Observe the whole processing path. Delivery: Synthetic event and acknowledgement; Processing: Worker decision and correlation; State: Final synthetic transaction outcome
Working model 03Observe the whole processing pathIllustrative planning diagram. Adapt the decisions to your authorised scope.
Read diagram text
Delivery
Synthetic event and acknowledgement
Processing
Worker decision and correlation
State
Final synthetic transaction outcome

Write the event contract down

Define what the receiver should do with a new event, a repeated delivery, a late event and an event that contradicts the current transaction state. Use the provider's actual event identifiers and retry semantics. Some systems intentionally deliver more than once, so rejecting every repeat is not necessarily the correct behaviour. The key question is whether a repeat creates an unintended additional business effect or prevents a legitimate recovery path.

Agree the contract with the product and integration owners before testing. Record how authenticity, freshness, event identity and transaction state contribute to the decision. These controls address different problems and should not be treated as interchangeable.

Observe effects with a controlled event set

Prepare a small sequence around a synthetic transaction. Establish normal processing, resend the agreed event and introduce a permitted ordering variation. Record the acknowledgement, queue or worker outcome and final business state. Do not generate payment traffic against an external provider without its permission, and do not use real settlement as the proof. Where the receiver has a sandbox, confirm which production properties that sandbox represents and which it does not.

The bank payment authorisation guide explains why a transaction's persisted state matters more than a success message. Include any reconciliation or ledger observation only when it is explicitly within the authorised test scope.

Recommend a specific processing invariant

A useful recommendation describes the intended business invariant: for example, processing the same recognised synthetic event again must not create a second credit for the same transaction. The implementation may involve event records, atomic state transitions or other product-specific controls. Avoid prescribing a simplistic duplicate cache without understanding expiry, retries and legitimate event versions. A fix must preserve the service's ability to recover from interrupted delivery.

Retest the normal, repeated and out-of-order cases against the changed release. Clinical integrations have different semantics, but the hospital integration testing guide illustrates the same evidence discipline: acknowledgement, routing and final workflow state should be described separately. Preserve the limits of the comparison rather than treating all message-driven systems as identical.

Retest the processing invariant. State the invariant: Define the unacceptable duplicate effect; Preserve recovery: Allow legitimate provider retries; Replay the agreed set: Compare normal and exceptional sequences
Working model 04Retest the processing invariantIllustrative planning diagram. Adapt the decisions to your authorised scope.
Read diagram text
State the invariant
Define the unacceptable duplicate effect
Preserve recovery
Allow legitimate provider retries
Replay the agreed set
Compare normal and exceptional sequences

Put the guidance to work

Use the readiness checklist to document assumptions, or inspect the fictional Fintech AG report for evidence and treatment-plan examples. Contact Atlant Security with a non-sensitive description of your scope.

Primary sources

General information, not a compliance opinion. Confirm legal applicability and testing requirements for your entity and jurisdiction.

This guide and the related sector publications linked above are published by Atlant Security. Technical examples are planning examples, not claims about completed client tests.

LET’S START A CONVERSATION

Define the scope.
Take the next step.

Your systems, operating constraints and security objectives. A clear starting point for the test.

Discuss your pentest