Skip to main content

Discover ProtectBuy


ProtectBuy is the authentication service in the Discover/Diner card network that uses the 3-D Secure protocol to authenticate customers at checkout. When you request an authorization using a supported card type and a supported processor, you can include payer authentication data in the request. The payer authentication services enable you to add payer authentication support to your website without running additional software on your server.

Before implementing payer authentication for ProtectBuy, contact customer support to have your account configured for this feature.

Supported Processors

  • American Express Direct
  • Barclays
  • Chase Paymentech Solutions
  • Chase Tandem
  • Elavon Americas
  • FDC Compass
  • FDC Nashville Global
  • JCN Gateway
  • Worldpay VAP
  • Chase Paymentech Solutions
  • Elavon Americas
  • FDC Nashville Global
  • Worldpay VAP
  • Barclays

Fields Specific to the American Express SafeKey Use Case

  • consumerAuthenticationInformation.cavv: required when payer authentication is successful.
  • processingInformation.commerceIndicator: set this field to one of these values:
    • aesk: Successful authentication (3-D Secure value of 05).
    • aesk_attempted: Authentication was attempted (3-D Secure value of 06).
    • internet: Authentication failed or was not attempted (3-D Secure value of 07).

Endpoints

POST /pts/v2/payments

POST /pts/v2/payments

POST /pts/v2/payments

Example

{  "clientReferenceInformation": {    "code": "TC50171_3"  },  "processingInformation": {    "commerceIndicator": "dipb"  },  "paymentInformation": {    "card": {      "number": "60110000XXXXXXX2",      "expirationMonth": "01",      "expirationYear": "2026"    }  },  "orderInformation": {    "amountDetails": {      "totalAmount": "100",      "currency": "USD"    },    "billTo": {      "firstName": "John",      "lastName": "Smith",      "address1": "201 S. Division St._1",      "address2": "",      "locality": "Foster City",      "administrativeArea": "CA",      "postalCode": "94404",      "country": "US",      "email": "[email protected]",      "phoneNumber": "6504327113"    }  },  "consumerAuthenticationInformation": {    "cavv": "1234567890987654321ABCDEFabcdefABCDEF123",    "xid": "1234567890987654321ABCDEFabcdefABCDEF123"  }}
{  "_links": {    "authReversal": {      "method": "POST",      "href": "/pts/v2/payments/6764027854656733303954/reversals"    },    "self": {      "method": "GET",      "href": "/pts/v2/payments/6764027854656733303954"    },    "capture": {      "method": "POST",      "href": "/pts/v2/payments/6764027854656733303954/captures"    }  },  "clientReferenceInformation": {    "code": "TC50171_3"  },  "id": "6764027854656733303954",  "orderInformation": {    "amountDetails": {      "authorizedAmount": "100.00",      "currency": "USD"    }  },  "paymentAccountInformation": {    "card": {      "type": "004"    }  },  "paymentInformation": {    "tokenizedCard": {      "type": "004"    },    "card": {      "type": "004"    }  },  "pointOfSaleInformation": {    "terminalId": "111111"  },  "processorInformation": {    "approvalCode": "888888",    "networkTransactionId": "123456789619999",    "transactionId": "123456789619999",    "responseCode": "100",    "avs": {      "code": "X",      "codeRaw": "I1"    }  },  "reconciliationId": "60125005GE39VNT8",  "status": "AUTHORIZED",  "submitTimeUtc": "2023-02-14T19:26:25Z"}

Required Fields

Default Required Fields

These API fields are required to process an authorization using Discover ProtectBuy authentication.

FieldDescription
clientReferenceInformation.code—
consumerAuthenticationInformation.cavvRequired when payer authentication is successful.
consumerAuthenticationInformation.xid—
orderInformation.amountDetails.currency
Vero supports Brazilian real (BRL) currency only.
orderInformation.amountDetails.totalAmount—
orderInformation.billTo.address1—
orderInformation.billTo.administrativeArea—
orderInformation.billTo.buildingNumberRequired for Rede card customer validation.
orderInformation.billTo.country—
orderInformation.billTo.email—
orderInformation.billTo.firstName—
orderInformation.billTo.lastName—
orderInformation.billTo.locality—
orderInformation.billTo.postalCode—
paymentInformation.card.expirationMonth—
paymentInformation.card.expirationYear—
paymentInformation.card.number—
paymentInformation.card.type—
processingInformation.commerceIndicatorSet this field to one of these values: dipb for successful authentication for a Discover card (3-D Secure value of 05), dipb_attempted when authentication was attempted for a Discover card (3-D Secure value of 06), internet when authentication failed or was not attempted for a Discover card (3-D Secure value of 07), pb for successful authentication for a Diner card (3-D Secure value of 05), pb_attempted when authentication was attempted for a Diner card (3-D Secure value of 06), or internet when authentication failed or was not attempted for a Diner card (3-D Secure value of 07).

Processor-Specific Required Fields

RuPay Required Fields

FieldDescription
orderInformation.amountDetails.currencySet the value to INR.

Vero Required Fields

FieldDescription
orderInformation.amountDetails.currencyVero supports the Brazilian real (BRL) only.

Regional Required Fields

FieldDescription
processingInformation.authorizationOptions.transactionRequired only for merchants in Saudi Arabia.

Last published: September 29, 2026