triPOS REST API

<back to all web services

AuthorizationRequest

The following routes are available for this service:
POST/api/v1/authorizationCreates a new card authorization based on the passed in parametersThis creates a transaction used to hold funds when the total amount of the purchase is unknown. The Incremental Authorization HATEAOS link is supported for market codes that are supported by Express. Additionally, this endpoint supports QuickChip/PreRead functionality. See QuickChip/PreRead documentation for more information.
AuthorizationRequest Parameters:
NameParameterData TypeRequiredDescription
ActionquerystringNoThe action to perform with the authorization. This can either be 'store' or 'forward'.
RequestIdToForwardquerystringNoThe request ID of the stored transaction to forward.
AddressbodyAddressNoThe cardholder address information for the transaction.
ConfigurationbodyAuthorizationRequestConfigurationNoAny value included in this section will override the corresponding value set in the triPOS.config
ConvenienceFeeAmountbodydecimalNoThe convenience fee amount of the transaction. This amount is added to the TotalAmount before the cardholder is charged
EstimatedAmountIndicatorbodystringNoThe EstimatedAmountIndicator can be used by merchants/integrators to define the TransactionAmount submitted to Express either as an Estimated Amount (i.e. amount to charge cardholder may change) or a Final Amount (i.e. amount to charge cardholder will not change). It will be a 1-character request field supporting the following request settings:

Allowable Values

  • (0 or empty/missing) = Default/Unknown
  • 1 = Estimated Amount
  • 2 = Final Amount
TipAmountbodydecimalNoThe tip amount of the transaction. This amount is added to the TotalAmount before the cardholder is charged.
TransactionAmountbodystringNoThe total transaction amount. This is the amount of funds to move on the card
SalesTaxAmountbodydecimal?NoThe amount of sales tax for the transaction. This is for Level II, submit amount for tax or 0.00 for tax-exempt.
CommercialCardCustomerCodebodystringNoThe commercial card customer code for the transaction. This is for Level II.
RecurringPaymentTypebodyRecurringPaymentType?NoRecurring PaymentType,Intent of why the credentials are being stored.

Allowable Values

  • NotUsed
  • Recurring
  • Installment
  • CardHolderInitiated
  • CredentialsOnFile
SubmissionTypebodySubmissionType?NoSubmissionType,Initial vs Subsequent Transaction.

Allowable Values

  • NotUsed
  • Initial
  • Subsequent
  • Resubmission
  • ReAuthorization
  • DelayedCharges
  • NoShow
NetworkTransactionIDbodystringNoThe card brand specific transaction ID that should be stored by the integrator.
HealthcarebodyHealthcareNoThe healthcare section that contains all applicable healthcare-qualified amounts. more»
LodgingbodyLodgingAuthorizationNoThe lodging parameters to be passed in for a lodging transaction. more»
AutoRentalbodyAutoRentalBasicNoThe auto rental parameters to be passed in for an auto rental transaction. more»
InvokeManualEntrybodyboolNo Invokes manual card entry.
DisplayTransactionAmountbodyboolNoDisplay the transaction amount during card read.
QuickChipbodyboolNoFlag indicating desire to process authorization as QuickChip (i.e. - Pre-Read has been previously performed) more».
PreReadbodyboolNoFlag indicating desire to process authorization as PreRead (i.e. - do ONLY Pre-Read operations, then expecting next endpoint call to be QuickChip) more».
PreReadIdbodyGuidNoA unique ID for this request. This value should be a GUID.more».
NonFinancialExpectedbodyboolNoNon Financial Card read Expected. Only supported on unattended devices.
GetTokenTypebodystringNoTo retrieve Token in the transaction. more»

Allowable Values

  • OmniToken
IsCscSupportedbodystringNoInvokes prompt for cardholder to enter card security code for manual keyed card entry.
CheckForPreReadIdbodybool?NoFlag to support 'PreReadId feature in quick chip' transaction request. This will take precedence over triPOS.config flag.
CreditSurchargeAmountbodydecimalNoThe credit surcharge amount of the transaction. This amount is added to the TotalAmount before the cardholder is charged. more»
LaneRequest Parameters:
NameParameterData TypeRequiredDescription
CardHolderPresentCodeformCardHolderPresentCode?NoDefines whether the cardholder is present at the transaction. This value is optional, but recommended to be set. If this value is not set in the request, it will be automatically set based on the market code.

Allowable Values

  • Default
  • Unknown
  • Present
  • NotPresent
  • MailOrder
  • PhoneOrder
  • StandingAuth
  • ECommerce
ClerkNumberformstringNoAn optional clerk number for reference.
LaneIdformintNoSpecifies which lane to use.
ReferenceNumberformstringNoA user defined reference number.
ShiftIdformstringNoAn optional shift id for reference.
TicketNumberformstringNoAn optional ticket number.
Address Parameters:
NameParameterData TypeRequiredDescription
BillingAddress1formstringNoThe street address used for billing purposes.
BillingAddress2formstringNoThe street address used for billing purposes.
BillingCityformstringNoThe name of the city used for billing purposes.
BillingEmailformstringNoThe e-mail address used for billing purposes.
BillingNameformstringNoThe name used for billing purposes.
BillingPhoneformstringNoThe phone number used for billing purposes. The recommended format is (800)555-1212.
BillingPostalCodeformstringNoThe postal code used for billing purposes.
BillingStateformstringNoThe name of the state used for billing purposes. This value may be any 2 character state code or the full state name.
ShippingAddress1formstringNoThe street address used for shipping purposes.
ShippingAddress2formstringNoThe street address used for shipping purposes.
ShippingCityformstringNoThe name of the city used for shipping purposes.
ShippingEmailformstringNoThe e-mail address used for shipping purposes.
ShippingNameformstringNoThe name used for shipping purposes.
ShippingPhoneformstringNoThe phone number used for shipping purposes. The recommended format is (800)555-1212
ShippingPostalCodeformstringNoThe postal code used for shipping purposes.
ShippingStateformstringNoThe name of the state used for shipping purposes. This value may be any 2 character state code or the full state name.
AuthorizationRequestConfiguration Parameters:
NameParameterData TypeRequiredDescription
PromptForSignatureformBasicSignaturePromptOptionNoSpecifies how the signature prompt should be handled for the request. If a value is not provided, Never will be used. See Signature Prompt.

Allowable Values

  • Always
  • Never
  • None
IsManualEntryAllowedformstringNoUse this parameter to allow manual entry of card account numbers on the PIN pad.
UserInputTimeoutformstringNoSpecifies the user input timeout.
ProvisionalAmountformstringNoOverride provisional amount used for QC transactions, which is $1.00 by default
CardReadRetriesformint?NoNumber of retries in case of bad card read. The default value is 1.
RequestConfiguration Parameters:
NameParameterData TypeRequiredDescription
AllowPartialApprovalsformbool?NoIf set to false, partial approvals are not allowed
CheckForDuplicateTransactionsformbool?NoIf set to true, enables duplicate checking logic for the transaction at the host.
MarketCodeformMarketCodeNoThe market code of the transaction.

Allowable Values

  • Default
  • AutoRental
  • DirectMarketing
  • ECommerce
  • FoodRestaurant
  • HotelLodging
  • Petroleum
  • Retail
  • Qsr
Healthcare Parameters:
NameParameterData TypeRequiredDescription
Totalformdecimal?NoThe total amount of healthcare-qualified goods. If any healthcare values are included, this value is required to be present.
Clinicformdecimal?NoThe total amount of healthcare-qualified goods that fall into the category of 'clinic'.
Dentalformdecimal?NoThe total amount of healthcare-qualified goods that fall into the category of 'dental'.
Prescriptionformdecimal?NoThe total amount of healthcare-qualified goods that fall into the category of 'prescription'.
Visionformdecimal?NoThe total amount of healthcare-qualified goods that fall into the category of 'vision'.
LodgingAuthorization Parameters:
NameParameterData TypeRequiredDescription
PrestigiousPropertyCodeformLodgingPrestigiousPropertyCodeNoThe lodging prestigious property code. For an empty or invalid value, this parameter defaults to NonParticipant.

Allowable Values

  • NonParticipant
  • FiveHundredDollarLimit
  • OneThousandDollarLimit
  • OneThousandFiveHundredDollarLimit
Lodging Parameters:
NameParameterData TypeRequiredDescription
DurationformintNoThe number of hotel stay days. Set to 1 for no show.
AutoRentalBasic Parameters:
NameParameterData TypeRequiredDescription
DurationformintNoThe number of rental days. Value should be between 0 and 99. Set to 01 for no show rentals.
AuthorizationResponse Parameters:
NameParameterData TypeRequiredDescription
QuickChipMessageformstringNoThe message unique to QuickChip pre-read functionality only.
ApprovedAmountformdecimalNoThe amount approved by the processor. This is the actual amount that will be charged or credited.
ConvenienceFeeAmountformdecimalNoThe convenience fee added to the transaction
SubTotalAmountformdecimalNoThe original amount sent for the transaction.
TipAmountformdecimalNoThe tip amount added to the transaction.
EmvformEmvNoThe fields used on the receipt for an EMV transaction. Null if the transaction was not EMV.
FsaCardformstringNoIndicates whether the card used was a FSA card.
Note: Maybe = No BIN entry to determine if FSA.

Allowable Values

  • NotApplicable
  • No
  • Yes
  • Maybe
IsCardInsertedformboolNoIndicates whether the EMV card was still inserted into the payment device when the transaction completed.
NetworkTransactionIdformstringNoThe card brand specific transaction ID that should be stored by the integrator.
NonFinancialCardformNonFinancialCardNoNon Financial data.
TokenIdformstringNoThe Token ID.
TokenProviderformstringNoThe Token Provider.
CreditSurchargeAmountformdecimalNoThe surcharge amount that was added to the transaction.
TransactionStoredformboolNoIndicates the transaction was not able to be processed online and was stored instead. This is currently only applicable for Mobile device.
BaseCardResponse Parameters:
NameParameterData TypeRequiredDescription
AccountNumberformstringNoThe card account number.
BinValueformstringNoThe BIN entry that matched the account number.
CardHolderNameformstringNoThe cardholder name.
CardLogoformstringNoThe card logo. Possible values are: Visa, Mastercard, Discover, Amex, Diners Club, JCB, Carte Blanche, Other.
CurrencyCodeformCurrencyCodeNoThe currency code used in the transaction.

Allowable Values

  • None
  • Cad
  • Gbp
  • Usd
CountryCodeformCountryCode?NoThe country code used in the transaction.

Allowable Values

  • Can
  • Gbr
  • Usa
LanguageformLanguageCode?NoThe language used in the transaction.

Allowable Values

  • English
  • French
  • Spanish
DebitAccountTypeformDebitAccountType?NoThe account type selected and used in the transaction.

Allowable Values

  • None
  • Checking
  • Savings
EntryModeformstringNoDescription of how card was entered.

Allowable Values

  • Unknown
  • Swiped
  • Keyed
  • ContactIcc
  • ContactlessIcc
  • ContactlessMsd
ExpirationYearformstringNoThe card's expiration year
ExpirationMonthformstringNoThe card's expiration month
NetworkLabelformstringNoLabel that shows the network where the transaction was routed for authorization
PaymentTypeformPaymentTypeNoDescription of payment type utilized.

Allowable Values

  • None
  • Credit
  • Debit
  • Gift
  • Ebt
PinVerifiedformboolNoTrue if the PIN was verified, false if not verified or undetermined.
SignatureformSignatureNoThe signature data.
TerminalIdformstringNoThe ID of the terminal used during the transaction
TotalAmountformdecimalNoThe total amount of the transaction.
EBTTypeformEbtTypeSelection?NoThe type of the EBT card
BalanceAmountformdecimal?NoThe balance of the gift card.
BalanceCurrencyCodeformCurrencyCode?NoThe balance currency code.
PreReadIdformGuidNoUnique ID. If checkForPreReadId field is true, then this ID will be required for the Quick Chip portion of the transaction to be successful.
ForeignCurrencyCodeformstringNoCurrency code of the foreign currency.
ForeignTransactionAmountformstringNoTransaction amount shown in the foreign currency.
ConversionRateformstringNoConversion rate for the ForeignCurrencyCode.
OdometerformstringNoFleet Odometer Input On The Device
FleetUserIDformstringNoFleet UserID Input On The Device
FleetJobNumberformstringNoFleet Job Number Input On The Device
PurchaseDeviceSequenceNumberformstringNoFleet Purchase Device Sequence Number from the card
VehicleIDformstringNoFleet Vehicle ID Input On The Device
BinAttributesformDictionary<string, bool>NoAvailable binAttributes of card. more»
DriverIDformstringNoFleet DriverID Input On The Device
IsFleetOdometerPrintformboolNois Fleet Odometer value Print On the Receipt or not
BaseResponse Parameters:
NameParameterData TypeRequiredDescription
ApprovalNumberformstringNoApproval number from the processor. Depending on card type and processor an approval number might not be returned.
IsApprovedformboolNoSet to true if the host approved the transaction.
ProcessorformProcessorNoResponse information from the processor.
StatusCodeformTransactionFlowStatusNoThe status code for the transaction.

Allowable Values

  • None
  • Success
  • Declined
  • Approved
  • Restart
  • Failed
  • HostError
  • Timeout
  • FailedVerification
  • CardError
  • UnknownCard
  • UnsupportedCard
  • DeviceError
  • Cancelled
  • ChipError
  • PinPadError
  • PinPadTimeout
  • InvalidLane
  • SwipedCardIsChipCapable
  • ApprovedByMerchant
  • ChipReaderError
  • UseChipReader
  • UseMagneticStripe
  • CardRemoved
  • CardBlocked
  • CardNotSupported
  • BadCard
  • CandidateListEmpty
  • IssuerAuthenticationFailed
  • CardDataEncryptionNotEnabled
  • ApprovedExceptCashback
  • ApplicationBlocked
  • PreReadSuccessful
  • ContactlessMsdDisabled
  • ContactlessEmvDisabled
  • ContactlessMsdNotSupported
  • ProgrammaticallyCancelled
  • DccRequested
TransactionDateTimeformstringNoTransaction date/time in ISO8601 format
TransactionIdformstringNoThe transaction ID from the processor
MerchantIdformstringNoThe Merchant used to process the transaction.
IsOfflineformboolNoA boolean value indicating whether triPOS is disconnected from the host.
ApiResponse Parameters:
NameParameterData TypeRequiredDescription
ErrorsformList<ApiError>NoA list of errors that occurred.
HasErrorsformboolNoIndicates if there are errors.
LinksformIEnumerable<ApiLink>NoA list of resource links
LogsformList<string>NoA list of log entries detailing what happened during the request. Ideally only used during development or troubleshooting as this can be quite verbose.
TypeformstringNoThe type of object held in the result.
WarningsformList<ApiWarning>NoA list of warnings that occurred.
ApiError Parameters:
NameParameterData TypeRequiredDescription
UserMessageformstringNoAn error message targeted at the end user of the integrated business application.
DeveloperMessageformstringNoAn error message targeted at the developer of the integrated business application.
ErrorTypeformstringNoCode associated with the error if it exists.
ExceptionMessageformstringNoThe body of the exception message.
ExceptionTypeFullNameformstringNoThe full name of the exception.
ExceptionTypeShortNameformstringNoThe short name of the exception.
ApiLink Parameters:
NameParameterData TypeRequiredDescription
HrefformstringNoA target (a URI)
MethodformstringNoThe HTTP method to access the HREF target
RelationformstringNoThe relation aka. 'rel' (the name of the link)
ApiWarning Parameters:
NameParameterData TypeRequiredDescription
DeveloperMessageformstringNoA warning message targeted at the developer of the integrated business application.
UserMessageformstringNoA warning message targeted at the end user of the integrated business application.
Processor Parameters:
NameParameterData TypeRequiredDescription
ProcessorLogsformList<string>No[DEPRECATED] Use logs.
ProcessorRawResponseformstringNo[DEPRECATED] Use rawResponse.
ProcessorReferenceNumberformstringNo[DEPRECATED] Use the same reference number passed in the request.
ProcessorRequestFailedformboolNo[DEPRECATED] Use top level properties (e.g. hasErrors).
ProcessorRequestWasApprovedformboolNo[DEPRECATED] Use top level properties (e.g isApproved).
ProcessorResponseCodeformProcessorResponseCodeNo[DEPRECATED] Use expressResponseCode.

Allowable Values

  • Unknown
  • Approved
  • PartialApproval
  • Decline
  • ExpiredCard
  • Duplicate
  • PickUpCard
  • ReferralCallIssuer
  • InvalidData
  • ApprovedExceptCashback
  • NotAllowed
ProcessorResponseMessageformstringNo[DEPRECATED] Use expressResponseMessage.
ExpressResponseCodeformstringNoThe response code received from Express.
ExpressResponseMessageformstringNoThe response message received from Express.
HostResponseCodeformstringNoThe response code received from the host via Express. NOTE: This value is only populated if Express send the request to the host.
HostResponseMessageformstringNoThe response message received from the host via Express. NOTE: This value is only populated if Express send the request to the host.
LogsformList<string>NoA list of messages pertaining processing the transaction.
RawResponseformstringNoThe raw processor response. In the case of Express, this is the raw XML returned by the Express platform.
RawRequestformstringNo
ProcessorNameformProcessorNameNo
Signature Parameters:
NameParameterData TypeRequiredDescription
SignatureDataformbyte[]NoThe byte array of the signature in the format specified by Format.
SignatureFormatformstringNoThe format of the signature.

Allowable Values

  • PointsLittleEndian
  • PointsBigEndian
  • Ascii3Byte
SignatureStatusCodeformSignatureStatusCodeNoIndicates why a signature is or is not present.

Allowable Values

  • Unknown
  • SignatureRequired
  • SignaturePresent
  • SignatureRequiredCancelledByCardholder
  • SignatureRequiredNotSupportedByPinPad
  • SignatureRequiredPinPadError
  • SignatureNotRequiredByThresholdAmount
  • SignatureNotRequiredByPaymentType
  • SignatureNotRequiredByTransactionType
  • SignatureRequiredButPromptSuppressedByMerchant
  • SignatureNotRequiredByUnattendedPinPad
Emv Parameters:
NameParameterData TypeRequiredDescription
ApplicationIdentifierformstringNoThe Application Identifier also known as the AID. Identifies the application as described in ISO/IEC 7816-5. Printed receipts are required to contain the AID as hexadecimal characters.
ApplicationLabelformstringNoMnemonic associated with the AID according to ISO/IEC 7816-5. If the Application Preferred Name is not available or the Issuer code table index is not supported, then the Application Label should be used on the receipt instead of the Application Preferred Name.
ApplicationPreferredNameformstringNoPreferred mnemonic associated with the AID. When the Application Preferred Name is present and the Issuer code table index is supported, then this data element is mandatory on the receipt.
ApplicationTransactionCounterformstringNoThe application transaction counter.
CryptogramformstringNoThe EMV cryptogram type and value. It is a preferred best practice to include this data element on the receipt, but is not mandatory. This field contains cryptogram type followed by the cryptogram value.
TagsformList<Tag>NoA name value collection of additional EMV tags that are required to appear on the receipt.
IssuerCodeTableIndexformstringNoIndicates the code table according to ISO/IEC 8859 for displaying the Application Preferred Name.
PinBypassedformboolNo
Tag Parameters:
NameParameterData TypeRequiredDescription
KeyformstringNo
ValueformstringNo
NonFinancialCard Parameters:
NameParameterData TypeRequiredDescription
Track1formstringNoTrack 1 of the non-financial card
Track2formstringNoTrack 2 of the non-financial card
Track3formstringNoTrack 3 of the non-financial card
CardEntryModeformTransactionDataEntryModeDto?NoCard entry mode

To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /json/reply/AuthorizationRequest HTTP/1.1 
Host: triposqa.vantiv.com 
Content-Type: application/json
Content-Length: length

{"action":"String","requestIdToForward":"00000000000000000000000000000000","address":{"billingAddress1":"String","billingAddress2":"String","billingCity":"String","billingEmail":"String","billingName":"String","billingPhone":"String","billingPostalCode":"String","billingState":"String","shippingAddress1":"String","shippingAddress2":"String","shippingCity":"String","shippingEmail":"String","shippingName":"String","shippingPhone":"String","shippingPostalCode":"String","shippingState":"String"},"configuration":{"promptForSignature":"Always","userInputTimeout":"String","provisionalAmount":"String","cardReadRetries":0,"allowPartialApprovals":false,"checkForDuplicateTransactions":false,"marketCode":"Default"},"convenienceFeeAmount":0,"estimatedAmountIndicator":"String","tipAmount":0,"transactionAmount":"String","salesTaxAmount":0,"commercialCardCustomerCode":"String","recurringPaymentType":"NotUsed","submissionType":"NotUsed","networkTransactionID":"String","healthcare":{"total":0,"clinic":0,"dental":0,"prescription":0,"vision":0},"lodging":{"prestigiousPropertyCode":"NonParticipant","duration":0},"autoRental":{"Duration":0},"invokeManualEntry":false,"displayTransactionAmount":false,"quickChip":false,"preRead":false,"preReadId":"00000000000000000000000000000000","nonFinancialExpected":false,"getToken":"String","isCscSupported":"String","checkForPreReadId":false,"creditSurchargeAmount":0,"cardHolderPresentCode":"Default","clerkNumber":"String","laneId":0,"referenceNumber":"String","shiftId":"String","ticketNumber":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"quickChipMessage":"String","approvedAmount":0,"convenienceFeeAmount":0,"subTotalAmount":0,"tipAmount":0,"emv":{"applicationIdentifier":"String","applicationLabel":"String","applicationPreferredName":"String","applicationTransactionCounter":"String","cryptogram":"String","tags":[{"key":"String","value":"String"}],"issuerCodeTableIndex":"String","pinBypassed":false},"fsaCard":"String","isCardInserted":false,"networkTransactionId":"String","nonFinancialData":{"track1":"String","track2":"String","track3":"String","cardEntryMode":"Unknown"},"tokenId":"String","tokenProvider":"String","creditSurchargeAmount":0,"transactionStored":false,"accountNumber":"String","binValue":"String","cardHolderName":"String","cardLogo":"String","currencyCode":"None","countryCode":"0","language":"English","accountType":"None","entryMode":"String","expirationYear":"String","expirationMonth":"String","networkLabel":"String","paymentType":"None","pinVerified":false,"signature":{"data":"AA==","format":"String","statusCode":"Unknown"},"terminalId":"String","totalAmount":0,"ebtType":"None","balanceAmount":0,"balanceCurrencyCode":"None","foreignCurrencyCode":"String","foreignTransactionAmount":"String","conversionRate":"String","odometer":"String","fleetUserID":"String","fleetJobNumber":"String","purchaseDeviceSequenceNumber":"String","vehicleID":"String","binAttributes":{"String":false},"driverID":"String","approvalNumber":"String","isApproved":false,"_processor":{"processorLogs":["String"],"processorRawResponse":"String","processorReferenceNumber":"String","processorRequestFailed":false,"processorRequestWasApproved":false,"processorResponseCode":"Unknown","processorResponseMessage":"String","expressResponseCode":"String","expressResponseMessage":"String","hostResponseCode":"String","hostResponseMessage":"String","logs":["String"],"rawResponse":"String","rawRequest":"String","processorName":"Unknown"},"statusCode":"None","transactionDateTime":"String","transactionId":"String","merchantId":"String","isOffline":false,"_errors":[{"userMessage":"String","developerMessage":"String","errorType":"String","exceptionMessage":"String","exceptionTypeFullName":"String","exceptionTypeShortName":"String"}],"_hasErrors":true,"_links":[],"_logs":["String"],"_type":"String","_warnings":[{"developerMessage":"String","userMessage":"String"}]}