Skip to main content

Response

After submitting your request, the request body will be verified and either a success or an error response will be returned.

Webhook endpoint

When using the webhook endpoint, you will receive a success response if the request body passes validation. The success response can be seen below:

{
 "message": "Transaction submitted"
}

This indicates that your transaction has been submitted for Sigma to process. Once processing is complete, a webhook will be sent to your pre-defined webhook URL.

Instant endpoint

Using the instant endpoint means you want to receive the final processed response at the end of your api request to submit a transaction. This endpoint will NOT send a webhook response to you. Instead of the success response you receive when using the webhook endpoint, you will receive the final processed response for the transaction.

Blocking & Approving Transactions

Below is an example of the response you receive from a processed transaction:

{
    "transactionId": "fL3fPIvnIAr4RzOGfbm0",
    "riskScore": "0.09",
    "action": {
        "result": "approved",
        "code": 1
    },
    "ruleResult": "looks safe",
    "reason": {
        "code": "100",
        "severity": "low",
        "rule": {
            "id": "652d78e04017034bc03cc91a",
            "name": "Fraud analyst"
        }
    }
}

The action field is the deciding factor if you should allow a transaction to go through or not. The action field contains the following values:

FieldDescription
resultThis is either "approved" or "rejected". When the result is approved, you can allow the transaction to go through, but when the result is rejected you should block the transaction entirely.
codeThis is either "0" or "1". The code is "0" when the result is rejected and "1" when the result is approved.
  • In cases where the action field is not sent, that means the transaction is flagged for a manual review and an email alert is sent to the necessary team members to review the transaction.

Example Webhook Responses:

1) When a transaction is approved and looks safe:

{
    "transactionId": "fL3fPIvnIAr4RzOGfbm0",
    "riskScore": "0.09",
    "action": {
        "result": "approved",
        "code": 1
    },
    "ruleResult": "looks safe",
    "reason": {
        "code": "100",
        "severity": "low",
        "rule": {
            "id": "652d78e04017034bc03cc91a",
            "name": "Fraud analyst"
        }
    }
}

2) When a transaction is approved by a rule:

{   
    "transactionId": "fL3fPIvnIAr4RzOGfbm0",
    "riskScore": "0.09",
    "action": {
        "result": "approved",
        "code": 1
    },
    "ruleResult": "looks safe",
    "reason": {
        "code": "100",
        "severity": "low",
        "rule": {
            "id": "652d78e04017034bc03cc91a",
            "name": "Fraud analyst"
        }
    }
}

3) When a transaction if flag for manual review by a rule:

{   
    "transactionId": "fL3fPIvnIAr4RzOGfbm0",
    "riskScore": "0.59",
    "ruleResult": "needs review",
    "reason": {
        "code": "101",
        "severity": "medium",
        "rule": {
            "id": "652d78e04017034bc03cc91a",
            "name": "Fraud analyst"
        }
    }
}

4) When a transaction if rejected by a rule:

{   
     "transactionId": "fL3fPIvnIAr4RzOGfbm0",
    "riskScore": "0.89",
    "action": {
        "result": "rejected",
        "code": 0
    },
    "ruleResult": "fraudulent",
    "reason": {
        "code": "102",
        "severity": "high",
        "message" : "high risk",
        "rule": {
            "id": "652d78e04017034bc03cc91a",
            "name": "Fraud analyst"
        }
    }
}

5) When a transaction is flagged for review because it was done by a blacklisted user:

{    
    "transactionId": "fL3fPIvnIAr4RzOGfbm0",
    "riskScore": "0.41",
    "ruleResult": "needs review",
        "reason": {
        "code": "104",
        "severity": "high",
        "message" : "transaction originated from a blacklisted user",
    }
}

6) When a transaction is flagged for review because it was done using a blacklisted device:

{    
     "transactionId": "fL3fPIvnIAr4RzOGfbm0",
        "riskScore": "0.39",
        "ruleResult": "needs review",
        "reason": {
        "code": "105",
            "severity": "high",
            "message" : "transaction originated from a blacklisted device",
    }
}
ParameterTypeDescription
transaction_idStringThe ID of the transaction that was checked for fraud.
risk_scoreStringA score indicating the level of risk associated with the transaction.
actionObjectAn object that provides info about the final decision taken on the transaction. This object is only returned when the final decision is taken.
action.resultStringThis is the final result of the transaction check. It is either "approved" or "rejected".
action.codeNumberThis is the numerical code representation of the result. 1 = Approved. 0 = Rejected.
ruleResultStringThis is the result after the rules set have been executed.
reasonObjectAn object that provides more detailed information about why the transaction is considered fraudulent.
reasons.codeStringA unique code that identifies the reason for the transaction being considered fraudulent.
reasons.messageStringA human-readable description of the reason for the transaction being considered fraudulent.
reasons.severityStringIndicates the severity of the reason for the transaction being considered fraudulent (e.g., high, medium, or low).
reasons.ruleObjectIf the transaction was flagged, rejected or approved by a rule, the rule object will be present to notify you of the rule that took effect on the transaction.