Stripe

About Stripe:

We think that building an internet business is a problem rooted in code and design, not finance. Our developer-friendly APIs let our users focus on building great products.

We love the web and care deeply about beautiful code, APIs, and documentation. We really like startups and building products—the people at Stripe have previously helped start Skype, Lala, Act Blue, Kickoff, Interstate, Automatic, Encyclopedia, GazeHawk, and Wesabe.

Stripe’s investors include Sequoia Capital, Andreessen Horowitz, and PayPal co-founders Peter Thiel, Max Levchin, and Elon Musk.

Implemented Parameters:

Feature Level of Support
Auth Implemented
Sale (Auth+Capture) Implemented
Capture Implemented
Void Implemented
Credit Implemented
Gateway Tokenization Implemented
3DS Full Integration Implemented

Authentication and Security Credentials:

  • Secret Key

Supported Parameters:

Key Name Format Mandatory Descriptions
apiVersion Numerical Required “1.0.1”
apiType Alphabetical Required “pxyhpci”
userName Alphanumeric Required API Username
userPassKey Alphanumeric Required API PassKey
pxyCreditCard.creditCardNumber Numerical Required HostedPCI Token Representing Credit Card
pxy.CreditCard.cardCodeVerification Numerical Optional HostedPCI Token Representing CVV Code
pxyCreditCard.expirationMonth Numerical Required Expiration month with 2 digits for example, for December use “12”
pxyCreditCard.expirationYear Numerical Required Expiration year with 4 digits for example, for 2025, use “2025”
pxyTransaction.txnCurISO Alphabetical Required 3 letter ISO Currency Code for example, “USD” or “CAD”
pxyTransaction.txnAmount Numerical Required Amount to Authorize, for example for $10.50 use 10.50
pxyTransaction.merchantRefId Numerical Required Merchant reference number can be order id or invoice id
pxyTransaction.txnPayName Alphanumeric Required HostedPCI payment profile name, for example “DEF”
pxyTransaction.txnComment Alphabetical Optional Short comment
pxyCustomerInfo.email Alphanumeric Optional Customer’s Email Address
pxyCustomerInfo.customerId Alphanumeric Optional Customer ID
pxyCustomerInfo.billingLocation.firstName Alphabetical Optional Customer’s First Name
pxyCustomerInfo.billingLocation.lastName Alphabetical Optional Customer’s Last Name
pxyCustomerInfo.billingLocation.address Alphanumeric Optional Customer’s Billing Address
pxyCustomerInfo.billingLocation.address2 Alphanumeric Optional Secondary Billing Address
pxyCustomerInfo.billingLocation.city Alphabetical Optional Customer’s Billing City
pxyCustomerInfo.billingLocation.state Alphabetical Optional Customer’s Billing State or Province
pxyCustomerInfo.billingLocation.zipCode Numerical Optional Customer’s Billing Zip Code or Postal Code
pxyCustomerInfo.billingLocation.country Alphabetical Optional Customer’s Billing Country
Additional Parameters
KEY NAME FORMAT DESCRIPTIONS
pxyTransaction.merchantProductName Alphabetical Required for Soft Descriptors
pxyTransaction.merchantPhoneNum Alphabetical Required for Soft Descriptors

API Endpoint URL:

https://[HPCI_API_HOSTENAME]/iSynSApp/paymentAuth.action

API Request Body:

apiVersion=1.0.1&apiType=pxyhpci&userName=[APIuserName]&userPassKey=[APIPassKey]&pxyCreditCard.creditCardNumber=[CreditCardToken]&pxyCreditCard.cardCodeVerification=[CVVToken]&pxyCreditCard.expirationMonth=[ExpiryMonth]&pxyCreditCard.expirationYear=[ExpiryYear]&pxyTransaction.txnCurISO=[Currency]&pxyTransaction.txnAmount=[Amount]&pxyTransaction.merchantRefId=[UniqueMerchantRefID]&pxyTransaction.txnPayName=[ProfileName]&pxyTransaction.txnComment=[ShortComment]&pxyCustomerInfo.billingLocation.firstName=[CustomerFirstName]&pxyCustomerInfo.billingLocation.lastName=[CustomerLastName]&pxyCustomerInfo.billingLocation.address=[BillingStreetAddress]&pxyCustomerInfo.billingLocation.city=[BillingCity]&pxyCustomerInfo.billingLocation.state=[State/Province]&pxyCustomerInfo.billingLocation.zipCode=[ZipCode/PostalCode]&pxyCustomerInfo.billingLocation.country=[Country]&pxyCustomerInfo.shippingLocation.firstName=[ShippingFirstName]&pxyCustomerInfo.shippingLocation.lastName=[ShippingLastName]&pxyCustomerInfo.shippingLocation.address=[ShippingStreetAddress]&pxyCustomerInfo.shippingLocation.city=[ShippingCity]&pxyCustomerInfo.shippingLocation.state=[ShippingState/Province]&pxyCustomerInfo.shippingLocation.zipCode=[ShippingZipCode/PostalCode]&pxyCustomerInfo.shippingLocation.country=[ShippingCountry]

3D Secure Implementation with Stripe Pay Intent


Stripes 3DS 2.0
verifyenroll API Call

  • In order to implement 3Dsecure 2.0 with stripe pay intent, the following parameters are required.
  • The table below contains the additional required parameters during the first 3Ds API call (‘verifyenroll’).
PARAMETER VALUES
pxy.Transaction.txnPayName [NameofStripePayProfile]
pxyThreeDSecAuth.callMode [reportall]
pxyThreeSecAuth.actionName [verifyenroll]
pxyCustomerInfo.browserUserAgentHeader [Browser User Agent Header]
pxyCustomerInfo.browserAcceptHeader [Browser Accept Header]

Stripes 3DS 2.0 Verifyresp API Call

  • If verifyenroll call was successful it will return parameters required to make the second API call (‘verifyresp’).
  • The table below contains parameters required for the ‘veriresp’ call.
PARAMETER VALUES
pxy.Transaction.txnPayName [NameofStripePayProfile]
pcyThreeSecAuth.actionName [verifyresp]
pxyThreeDSecAuth.authTxnId [threeDSTransactionId – returned from the ‘verifyenroll’ call]
pxyThreeDSecAuth.messageId [Response from verifyenroll call – pxyResponse.threeDSMessageId]
pxyThreeDSecAuth.authAcsUrl [Response from verifyenroll call – pxyResponse.threeDSAcsUrl]

Stripe Gateway Tokenization:

Parameters Required for Gateway Tokenization:
PARAMETERS VALUE
pxyCreditCard.creditCardNumber [HostedPCI Token]
pxyCreditCard.cardCodeVerification [HostedPCI CVV place holder]
pxyCreditCard.expirationMonth [Credit Card expire month]
pxyCreditCard.expirationYear [Credit Card expire year]
pxyTransaction.txnPayName [Profile Name provided by HostedPCI]
pxyCustomerInfo.billingLocation.firstName [Client’s first name as it appears on the card]
pxyCustomerInfo.billingLocation.lastName [Client’s last name as it appears on the card]
Stripe Payment Gateway API Call:
Request:
pxyCreditCard.creditCardNumber=4111000018801111&apiVersion=1.0.1&userPassKey=[APIPasskey]&pxyCreditCard.expirationMonth=09&pxyCreditCard.expirationYear=2022&pxyCustomerInfo.billingLocation.lastName=Paul&pxyCustomerInfo.billingLocation.firstName=Test&userName=[APIUsername]&pxyCreditCard.cardCodeVerification=200&pxyTransaction.txnPayName=DEF_LULUS_STRIPE&apiType=pxyhpci
Response:
status=success&operId=&tokenId=583460837&mappedCC=4111000018801111&ccBIN=&pxyResponse.threeDSEnrolled=&pxyResponse.threeDSAcsUrl=&pxyResponse.threeDSErrorDesc=&pxyResponse.processorRefId=cus_INXCWl3QL6Arnb&pxyResponse.processorType=stripeResponse&pxyResponse.threeDSMessageId=&pxyResponse.threeDSSessionId=&pxyResponse.cardOnFileIssuerId=&pxyResponse.mappedParams=txnResponse.ccTypeEst%3DVISA&pxyResponse.threeDSARS=&pxyResponse.threeDSOrderId=&pxyResponse.gatewayToken.status=&pxyResponse.responseStatus.name=&pxyResponse.responseAVS2=N&pxyResponse.responseStatus=approved&pxyResponse.gatewayToken=cus_INXCWl3QL6Arnb&pxyResponse.responseAVS1=N&pxyResponse.responseAVS4=&pxyResponse.threeDSCAVV=&pxyResponse.responseAVS3=&pxyResponse.gatewayToken.fullNativeResp=&pxyResponse.threeDSXid=&pxyResponse.threeDSProtoVersion=&pxyResponse.responseStatus.reasonCode=&pxyResponse.threeDSPARequest=&pxyResponse.responseCVV1=N&pxyResponse.threeDSECI=&pxyResponse.responseCVV2=&pxyResponse.fullNativeResp=country%3DUS%26last4%3D1111%26data.count%3D%26account_balance%3D0%26livemode%3Dfalse%26address_state%3D%26description%3D%26exp_month%3D9%26exp_year%3D2022%26issuer%3D%26iin%3D%26result%3D1%26cvc_check%3D%26address_line2%3D%26dataId%3Dcard_1Hmm7eJSxgSnKvgBat4BnETb%26address_line1%3D%26delinquent%3Dfalse%26customerId%3Dcus_INXCWl3QL6Arnb%26fingerprint%3DuohmNXFENqbodL1I%26currency%3D%26default_for_currency%3D%26dynamic_last4%3D%26brand%3DVisa%26email%3D%26address_zip_check%3D%26funding%3Dcredit%26default_source%3Dcard_1Hmm7eJSxgSnKvgBat4BnETb%26created%3D1605211822%26address_country%3D%26total_count%3D1%26address_city%3D%26tokenization_method%3D%26deleted%3D%26name%3DTest%2BPaul%26recipient%3D%26address_line1_check%3D%26address_zip%3D%26has_more%3Dfalse%26account%3D%26object%3Dcard&pxyResponse.threeDSAcsPageData=&pxyResponse.gatewaySubToken2=&pxyResponse.threeDSTransactionId=&pxyResponse.gatewaySubToken1=&pxyResponse.gatewaySubToken3=&pxyResponse.merchantRefId=&pxyResponse.threeDSErrorId=&pxyResponse.txnPayName=DEF_LULUS_STRIPE&pxyResponse.threeDSSRS=