Skip to main content

Integrity Digest

The Integrity Digest works in conjunction with Prepared Payments, Idempotency Tokens, and Webhooks to provide a secure and predictable transaction flow for online payments.

When creating a payment request using either Prepared Payments or directly with Transact the merchant may include an IntegritySecret. In subsequent responses and webhooks this secret will be used to create a cryptographic hash of key response fields named IntegrityDigest.

tip

If you use a static secret you should rotate it regularly, or you can use a unique secret per call.

warning

IntegritySecret must only be sent over direct channels. Never include the IntegritySecret on public web pages as this will compromise the security of the resulting IntegrityDigest.

Request Fields

Field NameDescriptionReq'dSizeType
IntegritySecretProvides a secret only known to the merchantO50 max.A

Response Fields

Field NameDescriptionSizeType
IntegrityDigestContains a hash of key response fields to confirm the authenticity of the raw data20 max.A

Validating the Integrity Digest

TransactDirect provides a simple enpoint to validate the IntegrityDigest.

https://elite.monek.com/secure/IntegrityCheck.ashx
Field NameDescriptionSourceReq'dSizeType
IntegritySecretThe secret used to create the transactionReqM50 max.A
IdempotencyTokenThe idempotency token from the requestReqO50 max.A
PaymentReferenceThe merchants payment referenceReqO50 max.A
AmountThe transaction amountReq/ResM10 max.A
CurrencyCodeThe transaction currency codeReq/ResM3A
IntegrityDigestThe digest received in the transaction responseResM50 max.A
RequestTimeThe request time as confirm in the transaction responseResM25 max.ISO 8601
CrossReferenceThe transaction Cross ReferenceResM50 max.A
ResponseCodeThe 2 digit transaction response codeResM1A
ResponseMessageThe response message textResM80 max.A

If the Integrity hash is correct then IntegrityCheck.ashx will return a 200 OK response code.

In all other scenarios, including missing or bad data, the response code will be 400 BAD REQUEST