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 parameters.This creates a transaction used to hold funds when the total amount of the purchase is unknown. The Incremental Authorization HATEAOS link is only supported for AutoRental and HotelLodging.
AuthorizationRequest Parameters:
NameParameterData TypeRequiredDescription
AddressbodyAddressNoThe cardholder address information for the transaction.
ConfigurationbodyRequestConfigurationNoAny 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
TipAmountbodydecimalNoThe tip amount of the transaction. This amount is added to the TotalAmount before the cardholder is charged.
TransactionAmountbodydecimalNoThe total transaction amount. This is the amount of funds to move on the card
HealthcarebodyHealthcareNoThe healthcare section that contains all applicable healthcare-qualified amounts. more»
LodgingbodyLodgingAuthorizationNoThe lodging parameters to be passed in for a lodging transaction. more»
LaneRequest Parameters:
NameParameterData TypeRequiredDescription
CardHolderPresentCodebodyCardHolderPresentCode?NoDefines whether the card holder 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
ClerkNumberbodystringNoAn optional clerk number for reference.
LaneIdbodyintNoSpecifies which lane to use.
ReferenceNumberbodystringNoA user defined reference number. This reference number is returned in the response
ShiftIdbodystringNoAn optional shift id for reference.
TicketNumberbodystringNoAn optional ticket number.
Address Parameters:
NameParameterData TypeRequiredDescription
BillingAddress1bodystringNoThe street address used for billing purposes.
BillingAddress2bodystringNoThe street address used for billing purposes.
BillingCitybodystringNoThe name of the city used for billing purposes.
BillingEmailbodystringNoThe e-mail address used for billing purposes.
BillingNamebodystringNoThe name used for billing purposes.
BillingPhonebodystringNoThe phone number used for billing purposes. The recommended format is (800)555-1212.
BillingPostalCodebodystringNoThe postal code used for billing purposes.
BillingStatebodystringNoThe name of the state used for billing purposes. This value may be any 2 character state code or the full state name.
ShippingAddress1bodystringNoThe street address used for shipping purposes.
ShippingAddress2bodystringNoThe street address used for shipping purposes.
ShippingCitybodystringNoThe name of the city used for shipping purposes.
ShippingEmailbodystringNoThe e-mail address used for shipping purposes.
ShippingNamebodystringNoThe name used for shipping purposes.
ShippingPhonebodystringNoThe phone number used for shipping purposes. The recommended format is (800)555-1212
ShippingPostalCodebodystringNoThe postal code used for shipping purposes.
ShippingStatebodystringNoThe name of the state used for shipping purposes. This value may be any 2 character state code or the full state name.
RequestConfiguration Parameters:
NameParameterData TypeRequiredDescription
AllowPartialApprovalsbodybool?NoIf set to true, partial approvals are allowed
CheckForDuplicateTransactionsbodybool?NoIf set to true, enables duplicate checking logic for the transaction at the host.
CurrencyCodebodyCurrencyCode?NoThe currency code of the transaction.

Allowable Values

  • None
  • Cad
  • Usd
  • Eur
MarketCodebodyMarketCodeNoThe market code of the transaction.

Allowable Values

  • Default
  • AutoRental
  • DirectMarketing
  • ECommerce
  • FoodRestaurant
  • HotelLodging
  • Petroleum
  • Retail
  • Qsr
Healthcare Parameters:
NameParameterData TypeRequiredDescription
Totalbodydecimal?NoThe total amount of healthcare-qualified goods. If any healthcare values are included, this value is required to be present.
Clinicbodydecimal?NoThe total amount of healthcare-qualified goods that fall into the category of 'clinic'.
Dentalbodydecimal?NoThe total amount of healthcare-qualified goods that fall into the category of 'dental'.
Prescriptionbodydecimal?NoThe total amount of healthcare-qualified goods that fall into the category of 'prescription'.
Visionbodydecimal?NoThe total amount of healthcare-qualified goods that fall into the category of 'vision'.
LodgingAuthorization Parameters:
NameParameterData TypeRequiredDescription
DurationbodyintNoThe number of hotel stay days. Set to 1 for no show.
PrestigiousPropertyCodebodyLodgingPrestigiousPropertyCodeNoThe lodging prestigious property code. If not passed in, this value defaults to NonParticipant.

Allowable Values

  • NonParticipant
  • FiveHundredDollarLimit
  • OneThousandDollarLimit
  • OneThousandFiveHundredDollarLimit
AuthorizationResponse Parameters:
NameParameterData TypeRequiredDescription
ApprovedAmountbodydecimalNoThe amount approved by the processor. This is the actual amount that will be charged or credited.
ConvenienceFeeAmountbodydecimalNoThe convenience fee added to the transaction
SubTotalAmountbodydecimalNoThe original amount sent for the transaction.
TipAmountbodydecimalNoThe tip amount added to the transaction.
EmvbodyEmvNoThe fields used on the receipt for an EMV transaction. Null if the transaction was not EMV.
BaseCardResponse Parameters:
NameParameterData TypeRequiredDescription
AccountNumberbodystringNoThe card account number.
BinValuebodystringNoThe BIN entry that matched the account number.
CardHolderNamebodystringNoThe card holder name.
CardLogobodystringNoThe card logo. Possible values are: Visa, Mastercard, Discover, Amex, Diners Club, JCB, Carte Blanche, Other.
CurrencyCodebodyCurrencyCodeNoThe currency code used in the transaction.

Allowable Values

  • None
  • Cad
  • Usd
  • Eur
EntryModebodystringNoDescription of how card was entered.

Allowable Values

  • 
  • 
  • 
  • 
  • 
ExpirationYearbodystringNoThe card's expiration year
ExpirationMonthbodystringNoThe card's expiration month
PaymentTypebodyPaymentTypeNoDescription of payment type utilized.

Allowable Values

  • None
  • Credit
  • Debit
  • Gift
PinVerifiedbodyboolNoTrue if the PIN was verified, false if not verified or undetermined.
SignaturebodySignatureNoThe signature data.
TerminalIdbodystringNoThe ID of the terminal used during the transaction
TotalAmountbodydecimalNoThe total amount of the transaction.
Emv Parameters:
NameParameterData TypeRequiredDescription
ApplicationIdentifierbodystringNoThe 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.
ApplicationLabelbodystringNoMnemonic 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.
ApplicationPreferredNamebodystringNoPreferred 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.
CryptogrambodystringNoThe 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.
TagsbodyList<Tag>NoA name value collection of additional EMV tags that are required to appear on the receipt.
IssuerCodeTableIndexbodystringNoIndicates the code table according to ISO/IEC 8859 for displaying the Application Preferred Name.
Tag Parameters:
NameParameterData TypeRequiredDescription
KeybodystringNo
ValuebodystringNo

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: booking.pufferdayspa.com 
Content-Type: application/json
Content-Length: length

{"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":{"allowPartialApprovals":false,"checkForDuplicateTransactions":false,"currencyCode":"None","marketCode":"Default"},"convenienceFeeAmount":0,"tipAmount":0,"transactionAmount":0,"healthcare":{"total":0,"clinic":0,"dental":0,"prescription":0,"vision":0},"lodging":{"duration":0,"prestigiousPropertyCode":"NonParticipant"},"cardHolderPresentCode":"Default","clerkNumber":"String","laneId":0,"referenceNumber":"String","shiftId":"String","ticketNumber":"String"}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"approvedAmount":0,"convenienceFeeAmount":0,"subTotalAmount":0,"tipAmount":0,"emv":{"applicationIdentifier":"String","applicationLabel":"String","applicationPreferredName":"String","cryptogram":"String","tags":[{"key":"String","value":"String"}],"issuerCodeTableIndex":"String"},"accountNumber":"String","binValue":"String","cardHolderName":"String","cardLogo":"String","currencyCode":"None","entryMode":"String","expirationYear":"String","expirationMonth":"String","paymentType":"None","pinVerified":false,"signature":{"data":"AA==","format":"String","statusCode":"Unknown"},"terminalId":"String","totalAmount":0,"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"},"statusCode":"None","transactionDateTime":"String","transactionId":"String","merchantId":"String","_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"}]}