Request a standalone fraud screening.
Use the following snippet to request a standalone fraud screening. Note that all fields are optional.
{
"merchantGroup": "GROUP123",
"merchant": "MERCH123",
"site": "SITE123",
"performRiskScreening": true,
"excludeDeviceData": false,
"channel": "web",
"deviceSessionId": "abc123-def456-ghi789",
"creationDateTime": "2024-01-15T10:30:00Z",
"userIp": "192.168.1.100",
"account": {
"id": "user123456",
"type": "consumer",
"creationDateTime": "2023-06-15T08:00:00Z",
"username": "john.doe@pxp.io",
"accountIsActive": true
},
"items": [
{
"id": "item001",
"price": 29.99,
"description": "Wireless Bluetooth Headphones",
"name": "Premium Headphones",
"quantity": 1,
"category": "Electronics",
"subCategory": "Audio",
"isDigital": false,
"sku": "SKU-WBH-001",
"upc": "123456789012",
"brand": "TechBrand",
"url": "https://example.com/products/wireless-headphones",
"imageUrl": "https://example.com/images/headphones.jpg",
"physicalAttributes": {
"color": "Black",
"size": "Medium",
"weight": "250g",
"height": "20cm",
"width": "15cm",
"depth": "8cm"
},
"descriptors": [
"wireless",
"bluetooth",
"noise-cancelling"
],
"isService": false
}
],
"fulfillments": [
{
"type": "Shipped",
"shipping": {
"shippingAmount": 5.99,
"shippingProvider": "FedEx",
"trackingNumber": "1234567890123456",
"shippingMethod": "Standard"
},
"items": [
{
"id": "item001",
"quantity": 1
}
],
"status": "Pending",
"accessUrl": null,
"store": null,
"recipientPerson": {
"name": {
"first": "John",
"middle": "A",
"family": "Doe",
"prefix": "Mr",
"suffix": null,
"preferred": "John"
},
"emailAddress": "john.doe@example.com",
"phoneNumber": "+1-555-123-4567",
"address": {
"line1": "123 Main Street",
"line2": "Apt 4B",
"city": "New York",
"region": "NY",
"countryCode": "US",
"postalCode": "10001"
},
"dateOfBirth": "1990-05-15"
},
"merchantFulfillmentId": "FULFILL-001"
}
],
"transactions": [
{
"merchantTransactionId": "TXN-20240115-001",
"processor": "stripe",
"processorMerchantId": "acct_1234567890",
"payment": {
"type": "CreditCard",
"paymentToken": "tok_1234567890abcdef",
"bin": "424242",
"last4": "4242"
},
"subtotal": 29.99,
"orderTotal": 35.98,
"currency": "USD",
"tax": {
"isTaxable": true,
"taxableCountryCode": "US",
"taxAmount": 2.40,
"outOfStateTaxAmount": 0.00
},
"billedPerson": {
"name": {
"first": "John",
"middle": "A",
"family": "Doe",
"prefix": "Mr",
"suffix": null,
"preferred": "John"
},
"emailAddress": "john.doe@example.com",
"phoneNumber": "+1-555-123-4567",
"address": {
"line1": "123 Main Street",
"line2": "Apt 4B",
"city": "New York",
"region": "NY",
"countryCode": "US",
"postalCode": "10001"
},
"dateOfBirth": "1990-05-15"
},
"transactionStatus": "Authorized",
"authorizationStatus": {
"authResult": "Approved",
"dateTime": "2024-01-15T10:30:15Z",
"verificationResponse": {
"avsStatus": "Y",
"cvvStatus": "Match"
},
"declineCode": null,
"processorAuthCode": "AUTH123456",
"processorTransactionId": "pi_1234567890abcdef",
"acquirerReferenceNumber": "ACQ789012345"
},
"items": [
{
"id": "item001",
"quantity": 1
}
]
}
],
"promotions": [
{
"id": "PROMO-WINTER2024",
"description": "Winter Sale - 10% off electronics",
"status": "active",
"statusReason": "promotion_applied",
"discount": {
"percentage": 0.1,
"amount": 3.00,
"currency": "USD"
},
"credit": null
}
],
"loyalty": {
"id": "LOYALTY-12345",
"description": "Premium Member Rewards",
"credit": {
"creditType": "points",
"amount": 150,
"currency": "POINTS"
}
},
"customFields": {
"example-custom-field-1": "AFF-001"
}
}
Parameter | Description |
---|---|
merchantGroup string | Your unique merchant group identifier, as assigned by PXP. |
merchant string (≤ 20 characters) | Your unique merchant identifier, as assigned by PXP. |
site string (≤ 20 characters) | Your unique site identifier, as assigned by PXP. |
performRiskScreening boolean | Whether to enable risk screening for this transaction. |
excludeDeviceData boolean | Whether to exclude device fingerprinting data from analysis. |
channel string (≤ 256 characters) | The channel through which the transaction was initiated. For example, ACME_IOS_APP . |
deviceSessionId string (≤ 256 characters) | The unique session identifier for the customer's end-user session on your site or app. This must be the same session ID used in the device data collection from the client-side Kount SDK. Format: ^[[0-9A-Za-z]]*$ . |
creationDateTime string | The date and time when the order was placed, in ISO 8601 format. |
userIp string | The customer's IPv4 address, in dotted decimal notation. For example, 192.168.1.27 . |
account object | Details about the customer's account. |
account.id string | The unique identifier for the account, as chosen by you. |
account.type string | The account type, as chosen by you. |
account.creationDateTime string | The date and time when the account was created, in ISO 8601 format. |
account.username string | The username or email address associated with the account. |
account.accountIsActive boolean | Whether the account is currently active. |
items array | Array of details about each item in the order. |
items.id string | The unique identifier for the item, as chosen by you. |
items.price integer | The price of the single item in the lowest currency factor. For example, the lowest currency in USD is pennies, so $1.00 would have the value of 100 . Must be a natural number including 0 . |
items.description string | The description of the item being purchased. |
items.name string | The name of the item being purchased. Typically, this is the SKU. |
items.quantity integer | The quantity of the item being purchased. This must be at least 1 . |
items.category string | A high-level or generalised description of the item. |
items.subCategory string | A lower-level or more specific description of the item. |
items.isDigital boolean | Whether the item is a digital good or service (true ), or a physical item or service (false ). |
items.sku string | The item's Stock Keeping Unit identifier (SKU), when available. |
items.upc string | The item's Universal Product Code (UPC), when available. |
items.brand string | The item's brand name. |
items.url string | The URL to the item's product page. |
items.imageUrl string | The URL to the product's image. |
items.isService boolean | Whether the item is a service (true), or a digital or physical good (false). |
items.physicalAttributes object | Details about the item's physical attributes, if it's a physical good. |
items.physicalAttributes.color string | The item's colour, when there are different colour options. |
items.physicalAttributes.size string | The item's size, when there are different size options. |
items.physicalAttributes.weight string | The item's weight, with units. |
items.physicalAttributes.height string | The item's height, with units. |
items.physicalAttributes.width string | The item's width, with units. |
items.physicalAttributes.depth string | The item's depth, with units. |
items.descriptors array of strings | Array of descriptive tags or keywords for the item. |
fulfillments array | Array of details about the fulfillment of the order. |
fulfillments.type string (enum) | The type of fulfillment. Possible values:
|
fulfillments.status string (enum) | The current status of the fulfillment. Possible values:
|
fulfillments.accessUrl string or null | The URL that the customer needs to visit to retrieve the digital good. |
fulfillments.store object or null | Details about the store where the order is being fulfilled, for in-store pickups. |
fulfillments.store.id string | A unique identifier for the store, as chosen by you. |
fulfillments.store.name string | A human-readable name for the store, as chosen by you. |
fulfillments.store.address object | Details about the store's address. |
fulfillments.store.address.line1 string | The first line of the store's address. |
fulfillments.store.address.line2 string | The second line of the store's address. |
fulfillments.store.address.city string | The city of the store's address. |
fulfillments.store.address.region string | The state/province/region of the store's address. |
fulfillments.store.address.countryCode string | The country code of the store's address, in ISO 3166 format. |
fulfillments.store.address.postalCode string | The postal/ZIP code of the store's address. |
fulfillments.merchantFulfillmentId string | A unique identifier for this fulfillment, as chosen by you. |
fulfillments.shipping object | Details about the shipping. This should bbe included even for digital goods. |
fulfillments.shipping.shippingAmount integer | The total amount of the shipping cost, in its lowest denomination. For example, the lowest denomination in USD is the penny, so $1.00 has a "total" of 100 . The total must be a natural number, which includes 0 . |
fulfillments.shipping.shippingProvider string | The service used to deliver the order to the recipient. If you are fulfilling the order yourself, set the value to FBM (fulfilled by merchant). For example, if providing digital goods. |
fulfillments.shipping.trackingNumber string | The tracking number from the shipping provider for shipped goods. |
fulfillments.shipping.shippingMethod string (enum) | The shipping method used. Possible values:
|
fulfillments.items array | Details about the item or list of items being fulfilled. |
fulfillments.items.id string | The unique identifier of the item being fulfilled. |
fulfillments.items.quantity integer | The quantity of the item in this fulfillment. This must be at least 1 . |
fulfillments.recipientPerson object | Details about the order's recipient. |
fulfillments.recipientPerson.emailAddress string | The recipient's email address. |
fulfillments.recipientPerson.phoneNumber string | The recipient's phone number. |
fulfillments.recipientPerson.dateOfBirth string | The recipient's date of birth. Format: YYYY-MM-DD . |
fulfillments.recipientPerson.name object | Details about the recipient's name. |
fulfillments.recipientPerson.name.first string | The recipient's first name. |
fulfillments.recipientPerson.name.middle string | The recipient's middle name or initial. |
fulfillments.recipientPerson.name.family string | The recipient's last name/family name. |
fulfillments.recipientPerson.name.prefix string | The prefix of the recipient's name. |
fulfillments.recipientPerson.name.suffix string or null | The suffix of the recipient's name. |
fulfillments.recipientPerson.name.preferred string | The recipient's preferred name. |
fulfillments.recipientPerson.address object | Details about the recipient's address. |
fulfillments.recipientPerson.address.line1 string | The first line of the recipient's address. |
fulfillments.recipientPerson.address.line2 string | The second line of the recipient's address. |
fulfillments.recipientPerson.address.city string | The city of the recipient's address. |
fulfillments.recipientPerson.address.region string | The state, province, or region code of the recipient's address. |
fulfillments.recipientPerson.address.countryCode string | The country of the recipient's address, in ISO 3166-1 alpha-2 format. |
fulfillments.recipientPerson.address.postalCode string | The postal or ZIP code of the recipient's address. |
transactions array | Array of details about the payment transactions made for the order. |
transactions.merchantTransactionId string | The unique identifier for this transaction, as chosen by you. |
transactions.processor string | The name of the payment processor that processed the transaction. |
transactions.processorMerchantId string | Your merchant ID, as assigned by the payment processor. The format is processor specific, but is typically a 16-digit number. |
transactions.subtotal integer | The total amount of the order without shipping and tax included, in its lowest denomination. For example, the lowest denomination in USD is the penny, so $1.00 has a "total" of 100 . The total must be a natural number, which includes 0 . |
transactions.orderTotal integer | The total amount of currency in the transaction, in its lowest denomination. For example, the lowest denomination in USD is the penny, so $1.00 has a "total" of 100 . The total must be a natural number, which includes 0 . |
transactions.currency string | The currency used for the transaction, in ISO 4217 format. Defaults to USD if not provided. |
transactions.transactionStatus string | The current status of the transaction. Possible values:
|
transactions.payment array | Array containing the details of the specific type of payment that was used for this transaction. |
transactions.payment.type string | The type of payment method used. Possible values:
|
transactions.payment.paymentToken string | The payment token submitted for order, in the format of a KHASH (credit card, payer ID, routing/transit, MICR, and account number).The KHASH value is hashed with a salted SHA256. If paymentType is set to NONE , then the paymentToken value should be left empty.For post-auth calls only: if the credit card information isn't available and a tokenised value is returned from the payment processor, set paymentType to TOKEN and send the token returned from the payment processor as a KHASH in the paymentToken field.Format: ^[A-Z0-9]{64}$ . |
transactions.payment.bin string (≤ 8 characters) | The card's Bank Identification Number (BIN). This is made up of the first 6 or 8 digits of a credit or debit card. |
transactions.payment.last4 string | The last 4 digits of card's Primary Account Number (PAN). |
transactions.tax object | Details about the tax associated with the transaction. |
transactions.tax.isTaxable boolean | Whether the transaction is subject to tax. |
transactions.tax.taxableCountryCode string | The country code of the taxable country, in ISO 3166 format. |
transactions.tax.taxAmount integer | The amount that was charged in taxes for this order, in the currency's lowest denomination. For example, the lowest denomination in USD is the penny, so $1.00 has a "total" of 100 . The total must be a natural number, which includes 0 . |
transactions.tax.outOfStateTaxAmount integer | The amount that was charged in out-of-state taxes for this order, in the currency's lowest denomination. This amount should be included in the taxAmount property. For example, the lowest denomination in USD is the penny, so $1.00 has a "total" of 100 . The total must be a natural number, which includes 0 . |
transactions.billedPerson object | Details about the person who placed the order. |
transactions.billedPerson.emailAddress string | The billed person's email address. |
transactions.billedPerson.phoneNumber string | The billed person's phone number. |
transactions.billedPerson.dateOfBirth string | The billed person's date of birth (YYYY-MM-DD ). |
transactions.billedPerson.name object | Details about the billed person's name. |
transactions.billedPerson.name.first string | The first name of the billed person. |
transactions.billedPerson.name.middle string | The middle name or initial of the billed person. |
transactions.billedPerson.name.family string | The last name of the billed person. |
transactions.billedPerson.name.prefix string | The name prefix of the billed person. |
transactions.billedPerson.name.suffix string or null | The name suffix of the billed person. |
transactions.billedPerson.name.preferred string | The preferred name of the billed person. |
transactions.billedPerson.address object | Details about the billed person's address. |
transactions.billedPerson.address.line1 string | The first line of the billed person's address. |
transactions.billedPerson.address.line2 string | The second line of the billed person's address. |
transactions.billedPerson.address.city string | The city of the billed person's address. |
transactions.billedPerson.address.region string | The state/province/region of the billed person's address. |
transactions.billedPerson.address.countryCode string | The country code of the billed person's address, in ISO 3166 format. |
transactions.billedPerson.address.postalCode string | The postal/ZIP code of the billed person's address. |
transactions.authorizationStatus object | Details about the authorisation status. Everything in this object is expected only after payment authorisation has occurred. |
transactions.authorizationStatus.authResult string (enum) | The result of the authorisation attempt, as returned to you by the payment processor. Orders with a value of Approved will aggregate towards the order velocity of the persona, while orders with a value of Declined will decrement the order velocity of the persona. Orders with a value of Error or Unknown won't change the velocity.Possible values:
|
transactions.authorizationStatus.dateTime string | The date and time when the authorisation was processed, in ISO 8601 format. |
transactions.authorizationStatus.declineCode string or null | The decline reason code returned by the payment provider, if the payment was declined. |
transactions.authorizationStatus.processorAuthCode string | The authorisation code returned by the payment processor. |
transactions.authorizationStatus.processorTransactionId string | The unique identifier used by the payment processor or gateway for the order. |
transactions.authorizationStatus.acquirerReferenceNumber string | A unique number for a credit or debit card transaction created during the transfer from your bank through the payment processor. It enables identifying the transaction when errors occur. The format is an 11-digit number. |
transactions.authorizationStatus.verificationResponse object | Details about the verification responses. |
transactions.authorizationStatus.verificationResponse.avsStatus string (enum) | The Address Verification Service (AVS) response returned to the customer/you by the payment processor. Possible values:
|
transactions.authorizationStatus.verificationResponse.cvvStatus string | TThe Card Verification Value (CVV, CVS) response returned to the customer/you by the payment processor. Possible values:
|
transaction.items array | Array incating which of the items present in the items array were paid for in this transaction. |
transactions.items.id string | The unique identifier of the item that was specified in the items property of this order that was paid for in this transaction. |
transactions.items.quantity integer | The quantity of this item that were paid for in this transaction. |
promotions array | Array of promotions applied to this order. |
promotions.id string | A unique identifier for the promotion, as chosen by you. |
promotions.description string | A human-readable description of the promotion, as chosen by you. |
promotions.status string | The current status of the promotion, as chosen by you. |
promotions.statusReason string | The reason for the current promotion status. |
promotions.credit object or null | Details about the promotional credit that was applied to the order. |
promotions.credit.currency string | The currency used for the promotional credit, in ISO 4217 format. If a code is not provided, it defaults to USD . If the credit is in a non-monetary format, such as loyalty points, the value of this property should be XXX . |
promotions.discount string | Details about the promotional discount that was applied to the order. |
promotions.discount.percentage float | The percentage of the total amount that was reduced due to the promotion being applied, represented as a floating point number. For example, 0.1 means 10% discounted. |
promotions.discount.amount integer | The amount that the total was reduced by due to the promotion being applied, in the currency's lowest denomination. This amount should be included in the taxAmount property. For example, the lowest denomination in USD is the penny, so $1.00 has a "total" of 100 . The total must be a natural number, which includes 0 . |
promotions.discount.currency string | The currency used for the promotional discount, in ISO 4217 format. If a code is not provided, it defaults to USD . If the credit is in a non-monetary format, such as loyalty points, the value of this property should be XXX . |
loyalty object | Details about a credit that was applied from a loyalty account. |
loyalty.id string | The unique identifier for the loyalty transaction. |
loyalty.description string | A description of the loyalty programme. |
loyalty.credit object or null | Details about the loyalty credit that was applied to the order. |
loyalty.credit.creditType string | The type of loyalty credit, as chosen by you. For example, PIZZA_POINTS . |
loyalty.credit.amount integer | The amount of the total order that was paid for through a loyalty credit, in the currency's lowest denomination. This amount should be included in the taxAmount property. For example, the lowest denomination in USD is the penny, so $1.00 has a "total" of 100 . The total must be a natural number, which includes 0 . |
loyalty.credit.currency string | The currency used for the loyalty credit, in ISO 4217 format. If a code is not provided, it defaults to USD . If the credit is in a non-monetary format, such as loyalty points, the value of this property should be XXX . |
customFields object | Additional custom fields, in key-value pairs. Each key is the custom field's name as a string (≤ 32 characters). Each value is the custom field's value as a date, boolean, string (≤ 256 characters), or number. Supported date format is RFC 3339 (ex: 2023-03-30T15:41:58Z). No object or array values are allowed. |
If your request is successful, you'll receive a 200
response containing the risk decision, risk score, and raw response from the provider (as a single string).
Depending on the result, you can then:
- In pre-authorisation mode:
- Proceed with authorisation with the Transactions API.
- Abort the transaction. No authorisation request is triggered.
- In post-authorisation mode:
- Proceed with authorisation with the Capture API.
- Reject the transaction with the Cancel or Void API.
{
"riskScreeningId": "e721acfa-f844-4bec-9007-47eb07dcb117",
"providerResults": {
"kount": {
"decision": "APPROVE",
"riskScore": 90,
"rawResponse": "{\"version\": \"v2.42.0\", \"order\": {\"orderId\": \"7DQ5JFWQB5WKPRBT\", \"merchantOrderId\": \"Yqwh50T47EuQB0frB9yxFw\", \"channel\": \"ACME_IOS_APP\", \"deviceSessionId\": \"\", \"creationDateTime\": \"2019-08-24T14:15:22+00:00 \", \"riskInquiry\": {\"decision\": \"APPROVE \", \"omniscore\": 5, \"persona\": {\"uniqueCards\": 2, \"uniqueDevices\": 8, \"uniqueEmails\": 5}, \"device\": null, \"segmentExecuted\": {\"segment\": {\"id\": \"1eda9703-5b34-47ac-a01b-09f509642896\", \"name\": \"Default\", \"priority\": 1}, \"policiesExecuted\": [], \"tags\": []}}, \"transactions\": [{\"transactionId\": \"7DQ5JFWQB5WKPRBT#0\", \"merchantTransactionId\": \"d121ea2210434ffc8a90daff9cc97e76\"}], \"fulfillment\": []}}"
}
}
}