iOS SDK - Transactions Objects
Last updated: Aug 15th, 7:21am
Transaction Domain Objects
PDAcceptancePartner
Identifies the entity registered to process mobile transactions on the Paydiant platform.
Property | Description |
---|---|
logoUrl | String The unique identifier for the image used by the merchant when the merchant is displayed in the mobile wallet, such as on the transaction summary screen or offers. |
modifiedDate | NSDate The last occasion when the acceptance partner profile was updated. |
acceptancePartnerPartnerartnerUri | String The unique identifier for the Paydiant partner under which the merchant is registered. |
acceptancePartnerName | String The name of the merchant as it appears in the mobile wallet. |
acceptancePartnerUri | String The unique identifier for the merchant registered to accept Paydiant-powered mobile payments. |
cardSurfaceDiscountLabel | String If an acceptance partner identifies a particular payment account as preferable and offers a discount for it’s use, this message will be affixed to the payment account’s display when is appears in the payment list. |
PDCashAccessTransaction
Captures the details of a mobile banking transaction.
Property | Description |
---|---|
transDate | NSDate The time and date that the transaction completed. |
cashAccessType | PDCashAccessTransactionType EnumA value from the PDCashAccessTransaction enum that specifies the type of banking transaction performed. At this time, kPDCashAccessTransactionTypeWithdrawal (Withdrawal) is the only supported value. |
accountUri | String The unique identifier for the payment account selected for this transaction. |
paydiantTransactionRefId | String WLW’s unique identifier for the transaction. |
currencyCode | String The code that identifies the monetary unit used for the transaction, as recognized by the ISO 4217 standard, for example, USD = United States Dollar. |
amount | NSNumber The dollar amount distributed to the user by the ATM withdrawal. |
PDCheckoutToken
Identifies the checkout token generated for the transaction.
Property | Description |
---|---|
checkoutTokenValue | String The unique code that identifies the checkout token. |
checkoutTokenType | PDCheckoutTokenType EnumThe transaction type for which the checkout token was generated. |
PDDiscountEntry
Defines a discount that applies to a preferred payment account.
Property | Description |
---|---|
networkType | String The payment processor associated with the preference discount. |
discountedTotalAmount | String The dollar amount of the discount. |
discountedTotal | Decimal A set of PDExternalEventAdditionalData dictionary objects that stores key/value property information that is not otherwise captured. For example:externalEventAdditionalDataKey = cancelReason externalEventAdditionalDataValue = emptyFuelPump |
PDExternalEvent
An action outside the mobile wallet app that triggers a corresponding action within the app.
Property | Description |
---|---|
additionalData | Array A set of PDExternalEventAdditionalData dictionary objects that represents a key/value property that stores information that is not otherwise captured. For example:externalEventAdditionalDataKey = cancelReason externalEventAdditionalDataValue = emptyFuelPump |
externalEventType | PDExternalEventType EnumIdentifies the action performed by the fuel pump that qualifies as an external event. |
PDFlowRuleAdditionalData
A key/value definition for a custom property related to the execution of a certain PDTransactionFlowRuleSpecification
in a transaction, such as an authorization code.
Property | Description |
---|---|
flowRuleAdditionalDataKey | String The name of the metadata property that this object represents. |
flowRuleAdditionalDataValue | String The value set for this property for the flow rule specification in which it is defined. |
PDFuelGrade
Defines the octane rating of the fuel that is selected in the transaction.
Property | Description |
---|---|
available | Boolean Specifies whether the octane rating of fuel specified is currently available for dispensing. |
fuelGradeDescription | String A brief description that distinguishes the selected fuel grade from other grades; for example, Unleaded Premium 91 . |
identifier | String A unique identifier for the fuel grade, as defined by the acceptance location. |
fuelGradePrice | NSNumber The price charged per unit of gasoline of this grade. |
price | Decimal Deprecated as of SDK 5.5 and replaced by fuelGradePrice . |
PDFuelPump
Identifies a specific fuel pump as a terminal within a fuel site acceptance location.
Property | Description |
---|---|
additionalData | Array A set of PDFuelPumpAdditionalData dictionary objects, each of which represents a key/value property that stores information about the fuel pump that is not otherwise captured. For example:additionalDataKey = dieselOnly additionalDataValue = TRUE |
available | Boolean Specifies the fuel pump’s availability to pair with the mobile app's BLE service to initiate a transaction. |
fuelGrades | Array The set of PDFuelGrade objects that identify the fuel grade selections available at this pump. |
fuelType | String An acceptance-partner defined attribute that stores the way that the fuel type dispensed from the pump is identified, such as Unleaded vs. Diesel . |
pumpNumber | String Identifies the pump as it is labeled within its fuel site acceptance location. |
PDFuelReceiptProperties
Captures receipt details that are specific to fuel transactions.
Property | Description |
---|---|
additionalData | Array A set of PDFuelReceiptPropertiesAdditionalData dictionary objects, each of which stores a key/value property about the fuel transaction that is not otherwise captured. For example:additionalDataKey = pumpRate additionalDataValue = 5 gal/minute |
unitsPumped | NSNumber The volume of fuel dispensed for the transaction, in the units specified by the PDFuelUnitType attribute. |
fuelUnitType | PDFuelUnitType EnumSpecifies the unit of volume by which fuel is measured for the transaction. |
PDFuelTicketDetail
Captures purchase ticket details that are specific to fuel transactions.
Property | Description |
---|---|
additionalData | Array A set of PDFuelTicketDetailAdditionalData dictionary key/value objects used to store information about the fuel ticket that is not otherwise captured. For example:additionalDataKey = answeredSurvey additionalDataValue = FALSE |
fixedSpendAmount | NSNumber A monetary amount specified by the user that represents the maximum amount for the purchase, at which point the pump should stop dispensing fuel regardless of whether the tank has been filled. |
printReceipt | Boolean Specifies if the user requested a printed receipt. |
pumpNumber | String Identifies the pump as it is labeled within its fuel site acceptance location. |
PDGeoCoordinate
Uniquely identifies the physical location of an acceptance site based on its global coordinates in order to perform a geo-check-in action.
Property | Description |
---|---|
siteLatitude | NSNumber The number representing the precise latitudinal coordinate of the site location. |
siteLongitude | NSNumber The number representing the precise longitudinal coordinate of the site location. |
PDMetaDataCheckoutToken
Identifies the token that initiated the transaction for which the request is relevant.
Property | Description |
---|---|
checkoutTokenValue | String The unique code that identifies the checkout token. |
checkoutTokenType | PDMetaDataCheckoutTokenType EnumIdentifies the transaction type for which the checkout token was generated. |
PDPaymentCharge
A specific payment instance for a transaction. Some transactions have multiple related payment charges due to split tender payments.
Property | Description |
---|---|
paymentAccount | PDPaymentAccount Deprecated as of SDK 5.5 and replaced by paymentInstrument . |
paymentInstrument | PDPaymentInstrument Identifies the payment account in the wallet associated with this transaction charge. |
currencyCode | String The code that identifies the monetary unit used for the transaction, as recognized by the ISO 4217 standard, for example, USD = United States Dollar. |
paymentChargeAmount | NSNumber The dollar amount that was charged in this payment instance. |
amount | Decimal Deprecated as of SDK 5.5 and replaced by paymentChargeAmount . |
PDPaymentInstrument
A payment account used as tender for a specific transaction.
Property | Description |
---|---|
paymentAccountUri | String The unique identifier for a specific payment account registered in the wallet. |
tenderType | PDPaymentTender Defines the type of card associated with the payment account, such as credit , debit , or gift . |
additionalData | Array A set of key/value dictionary objects that defines information relevant to the payment account used for the transaction that is not otherwise captured. For example, preferredDiscount =5% |
PDPaymentResult
The outcome of a particular payment authorization request. A single transaction can have multiple payment result instances due to, for example, split tender or declines.
Property | Description |
---|---|
paydiantReferenceId | String WLW’s unique identifier for the transaction. |
paymentAccountTypeUri | String The unique identifier representing the type of payment account, such as credit , debit , or gift . |
paymentAccountNetworkTypeUri | String The code identifier for the payment account processor; for example, Visa or Mastercard . |
paymentAccountUri | String The unique identifier created for the current session to represent that payment account in the Paydiant managed service. |
paymentRefId | String The unique identifier for the current payment, which may be only one of multiple payments for a transaction. |
amount | NSNumber The dollar amount paid in this payment, which may be a partial payment in a split tender transaction. |
paidAmount | Decimal Deprecated as of SDK 5.5 and replaced by amount . |
paidDate | NSDate The time and date on which the payment authorization completed in NS timestamp format. |
PDPaymentTender
Identifies a supported tender used in a specific transaction.
Property | Description |
---|---|
paymentAccountType | PDPaymentAccountType The object that defines the type of card associated with the payment account, such as credit , debit , or gift . |
paymentAccountNetworkType | PDPaymentAccountNetworkType The object that defines the network processor associates with the payment account; for example, Visa , Mastercard , PayPal , NYCE , etc. |
splitPaymentEnabled | Boolean Determines whether the transaction is eligible to be paid using multiple payment accounts in the wallet. For example, a partial payment by gift card and the remaining balance by credit card. |
PDPaymentTransaction
Defines a particular payment authorization event in a transaction.
Property | Description |
---|---|
transactionId | String The unique identifier for that transaction in the app, which is the means by which one would look up a particular transaction. |
transactionInformation | PDTransactionInformation Contains the set of information that completely defines a transaction. |
redemptionFailedOffers | Array The list of offers that were applied to this transaction but failed to be successfully redeemed. |
paymentResult | PDPaymentResult Provides information about the success or failure of the payment transaction. |
previousPaymentResults | Array For split tender payments, this property lists the set of PDPaymentResult objects that were completed for the transaction prior to this payment instance. |
paymentAccountUri | String The unique identifier for the payment account used for the transaction, or for a partial payment of the transaction. |
PDPosRequestMobileTender
Defines a POS request that payment authorization be submitted for a specified amount to be charged to a specified payment account. This may or may not represent payment in full for the transaction.
Property | Description |
---|---|
paymentAccountTypeUri | String The unique identifier representing the type of payment account, such as credit , debit , or gift . |
paymentAccountNetworkTypeUri | String The code identifier of the payment account processor; for example, Visa or Mastercard . |
transactionAmount | NSNumber The amount of the payment relevant to the specified tender. |
amount | Decimal Deprecated as of SDK 5.5 and replaced by transactionAmount . |
currencyCode | String The code that identifies the monetary unit used for the payment, as recognized by the ISO 4217 standard, for example, USD = United States Dollar. |
PDSiteCheckInDetail
The information required by the site in order for the app to identify itself and retrieve the site information about pump availability, etc.
Property | Description |
---|---|
additionalData | Array A set of PDSiteCheckInDetailAdditionalData instances, each of which represents a key/value property relevant for site check-in. |
acceptanceLocationExternalId | String The LBS service’s unique identifier for the acceptance location detected by the app. |
geoCoordinate | PDGeoCoordinate Uniquely identifies the physical location of the site based global coordinates. |
PDSiteLocation
Identifies an in-range fuel site to which the app can declare itself in order to retrieve information about available pumps or services.
Property | Description |
---|---|
additionalData | Array A set of PDSiteLocationAdditionalData dictionary objects, each of which represents a key/value property imparting relevant information about a fuel site that is not otherwise captured. |
fuelPumps | Array The set of PDFuelPump objects that defines each fuel pump associated with the fuel site acceptance location. |
siteResources | Array The set of PDSiteResource objects that represents other payment entities within the site location with which the app can interact, such as a car wash or service center. |
siteCheckInDetail | PDSiteCheckInDetail Identifies a fuel site using its location-based BLE check-in parameters. |
PDSiteResource
Identifies a fuel site entity other than a fuel pump with which the mobile payments app can interact to initiate a transaction, such as a car wash or vacuum.
Property | Description |
---|---|
additionalData | Array A set of PDSiteResourceAdditionalData dictionary objects, each of which defines a key/value property imparting relevant information about the resource that is not otherwise captured. For example:additionalDateKey = serviceType additionalDataValue = car_wash |
available | Boolean Specifies whether the app is able to check in with the resource in order to initiate a transaction. |
siteResourceDescription | String A brief description that describes the resource for the purpose of enabling the app to correctly identify it; for example, Car wash bay no 1. |
identifier | String A unique identifier for the resource as defined by the acceptance location. |
name | String The name of the resource as defined by the acceptance location. |
PDSpecialDiscountCategory
Defines a discount that is applied to a transaction for a particular purpose, such as an employee discount, senior discount, or Veteran discount.
Property | Description |
---|---|
discountKey | String The unique identifier for the discount category. |
salePrice | NSNumber The cost of the purchase with the special discount. |
tax | NSNumber The amount of tax added to the purchase amount. |
saleAmount | Decimal Deprecated as of SDK 5.5 and replaced by salePrice . |
taxAmount | Decimal Deprecated as of SDK 5.5 and replaced by tax . |
PDStoreLocation
Identifies the geographical location and enabled settings of the retailer at which the transaction occurred.
Property | Description |
---|---|
name | String The identifier for the individual location; for example, BoxStore_12345 . |
state | String The U.S. state in which the store is located. |
country | String The country in which the store is located. |
addressLine1 | String The first line of the physical location of the store. |
addressLine2 | String The second line of the physical store location. |
city | String The city in which the store is located. |
acceptancePartner | PDAcceptancePartner Defines the merchant tat is registered to accept mobile payments. |
uri | String The unique identifier of the specific retail location. |
zipCode | String The U.S. postal code for the store location. |
storeLocationId | String The unique identifier for the specific store location in which the transaction is conducted. |
currencyCode | String The code that identifies the monetary unit used for the transaction, as recognized by the ISO 4217 standard, for example, USD = United States Dollar. |
tippingEnable | Boolean Specifies whether the specific retail location supports tipping, which allows a tip to be added to the total before processing. |
PDTicket
Defines a transaction processed by the POS, which is then transmitted to WLW’s service for the purpose of updating the details in the mobile wallet.
Property | Description |
---|---|
ticketAmount | NSNumber The total amount due for the transaction. |
ticketSubTotal | NSNumber The calculated total of the purchase, prior to any discounts, tax, or other modifications to the amount due. |
cashierId | String The identifier for the employee who was logged into the POS when the transaction was processed. |
cashierName | String The name of the cashier corresponding to the cashierId . |
terminalId | String The unique identifier for the POS terminal on which the transaction was processed. |
checkNumber | String The identifier associated with the open transaction, usually a pay-at-the-table. |
tableNumber | String For restaurant transactions, the identifier of the location at which the customer dined. |
secondaryIdentifier | String The unique identifier for the transaction, as provided by the POS. |
discount | NSNumber The dollar amount by which the amount due is reduced per the discount. |
discountedSubTotal | NSNumber The updated amount due after the discount has been subtracted. |
merchanttransactionRefId | String The POS’s unique identifier for the transaction. |
specialDiscountCategory | PDSpecialDiscountCategory Defines the merchant-defined discount applied to the total amount due. |
surcharge | NSNumber The dollar amount added to a cash access transaction as an ATM fee. |
tax | NSNumber The dollar amount of sales tax applied to the purchase. |
preTaxSubTotal | NSNumber The updated amount due before sales tax is applied. |
lineItems | PDLineItem The array of objects that define each item included in the receipt. |
totalTicketTipAmount | String The dollar amount added to the total amount due based on a tip allocation. |
checkRevision | String References the revision number of the check associated with this ticket in case there have been multiple iterations in the system. |
amountPoints | NSNumber The number of points earned for the transaction. |
calculateTipAmount | NSNumber The portion of the total check that is relevant for calculating a tip. For example, in a check where a souvenir T-shirt was also purchased, only the food and beverage cost is used in an automatically applied tip calculation. |
includedGratuity | NSNumber The dollar amount added as an automatically applied tip, as with large dining parties. |
ticketType | PDTicketType The type of transaction for which the ticket has been generated, as defined in the PDTicketType enum:kPDTicketTypePurchase kPDTicketTypeRefund kPDTicketTypeCashWithdrawal kPDTicketTypeCashDeposit kPDTicketTypeFuel kPDTicketTypeUnknown (default) |
fuelTicketDetail | PDFuelTicketDetail Relays additional properties of the ticket that are specific to a fuel transaction, such as the amount of fuel dispensed. |
transactionSubType | PDTransactionSubType Enum that further distinguishes a transaction within the primary type. |
transactionSubTypeDescription | String Captures any optional plain text explanation that further describes the transaction. For example, a Refund/exchange may contain an additional note explaining that the exchange item cost less than the returned item, resulting in a credit. |
PDTransactionAmount
The breakdown of the calculated amount due for a transaction.
Property | Description |
---|---|
transactionAmount | NSNumber The calculated price of the purchase. |
discount | NSNumber The total amount deducted for redeemed offers. |
tip | NSNumber The amount of any tip added by the user. |
tax | NSNumber The amount of sales tax added to the amount due. |
discountedSubTotal | NSNumber The updated amount due based on any reductions applied by the point of sale terminal. |
totalDue | NSNumber The final amount submitted for settlement after all deductions and additions are tallied. |
totalPaid | NSNumber The amount, if any, that has already been paid against the total amount due by another payment method, such as a loyalty program reward redemption. |
currencyCode | String The code that identifies the monetary unit used for the transaction, as recognized by the ISO 4217 standard, for example, USD = United States Dollar. |
currencyUri | String The unique identifier for the type of currency used in the transaction. |
specialDiscountCategories | Array The set of PDSpecialDiscountCategory objects that defines each of the POS-applied discounts that are relevant to the transaction. |
amount | Decimal Deprecated as of SDK 5.5 and replaced by transactionAmount . |
taxAmount | Decimal Deprecated as of SDK 5.5 and replaced by tax . |
totalAmountDue | Decimal Deprecated as of SDK 5.5 and replaced by totalDue . |
totalAmountPaid | Decimal Deprecated as of SDK 5.5 and replaced by totalPaid . |
totalOfferDiscountAmount | Decimal Deprecated as of SDK 5.5 and replaced by discount . |
saleAmount | Decimal Deprecated as of SDK 5.5 and replaced by discountedSubTotal . |
totalTipAmount | Decimal Deprecated as of SDK 5.5 and replaced by tip . |
PDTransactionDetail
Defines all relevant information pertaining to a transaction.
Property | Description |
---|---|
transactionAmountSummary | PDTransactionAmount Defines the breakdown of the final amount submitted for authorization. |
ticket | PDTicket Defines an open transaction, as represented by the POS. |
redeemedOffers | Array The set of PDOffer objects for all offers that were redeemed for the transaction. |
loyaltyAccrualActivities | Array The set of PDTransactionLoyaltyAccrualActivity objects for each action in the transaction to which loyalty points apply. |
posRequestedPayments | Array The set of PDPaymentCharge objects for each instance in which the POS processed a payment from its terminal for the transaction. |
posRequestMobileTender | PDPosRequestMobileTender Identifies a partial payment applied to the transaction by the POS. |
posUtilizedOffers | Array The set of PDOffer objects that define any offers that were applied by the POS externally of the mobile wallet. |
currentPaymentResult | PDTransactionAccount The object that defines the outcome of the most recent payment instance. |
previousPaymentResults | Array A set of PDTransactionAccount objects that defines each of any prior payment instances or attempts that have been applied to the transaction. |
processedPreAuthPaymentResults | Array A set of PDTransactionAccount objects that defines each of any payment instances that served as pre-authorization charges for the purpose of securing funds validation prior to enabling product or service dispensing. |
PDTransactionEnums
Defines various transaction-related properties for which the set of valid value options is predefined.
|Property|Description|
|---|---|
|discoveryType
|PDDiscoveryType
Enum
Specifies the type of BLE event that the app has discovered.|
|event
|PDLifeCycleEventType
Enum
Identifies a single state within a transaction that is relevant to the associated metadata.|
|externalEventType
|PDExternalEventType
Enum
Specifies an action outside of the app that must precipitate the next step in a transaction.|
|fuelUnitType
|PDFuelUnitType
Enum
Specifies the unit of volume by which fuel is dispensed and charged.|
|offerType
|PDEligibleOfferType
Enum
The types of offers that can be processed for the current transaction.|
|flowRule
|PDTransactionFlowRule
Enum
Defines the specific step in a transaction for which the metadata property is relevant.|
PDTransactionFlowRuleSpecification
The transaction flow rule specification object defines the requirements for different processing steps within a transaction.
Property | Description |
---|---|
transactionFlowRule | String Deprecated as of SDK 5.10 and replaced by flowRule property. |
flowRule | PDTransactionFlowRule EnumIdentifies the flow rule for this specification. |
additionalRuleProcessingMetaData | Array The set of PDFlowRuleAdditionalData instances that defines any data properties that may be required in order to complete the flow rule. |
blockUntilEvent | PDLifeCycleEventType If this attribute is populated, the flow rule cannot complete until the event indicated by this enum value has fired. |
expectsOffers | Boolean Indicates if this flow rule requires offers to be submitted in order to complete. |
eligibleOfferType | PDEligibleOfferType EnumSpecifies the types of offers that can be redeemed for the transaction. Offers are categorized based on whether the offer is being published by the Paydiant service or input directly into the POS. |
executeRuleAfterTimeoutForPreExecutionEvent | Boolean When the rule is contingent upon a pre-execution event, this setting specifies that the rule should still execute if the pre-execution event times out. |
transactionType | PDTransactionType EnumThe type of transaction to which the rule applies. |
stepNumber | Integer Identifies the sequence in which this rule is to be applied during execution. |
expectsCheckoutToken | Boolean Specifies if this rule action requires a checkout token reference in order to be executed. |
expectsPaydiantReferenceId | Boolean Specifies if this rule action requires a PaydiantReferenceId in order to be executed. |
expectsPaymentTenders | Boolean Specifies if this rule must include relevant payment tender objects in order to execute. |
expectsTransactionData | Boolean Specifies if this flow rule must include relevant transaction metadata in order to execute. |
stepOptional | Boolean Specifies if this rule can be omitted at the developer ’s discretion. |
executeRuleAndPollForResult | Boolean Specifies if the service should begin listening for a response to the event simultaneously with its execution. |
numberOfTimesToRetryRequest | Integer The number of times attempted execution of this rule is to be automatically repeated before the event is considered to have failed. |
pollUntilTransactionErrorStatuses | Array Identifies one or more values from the PDTransactionStatus enum that the server expects as a response for this event. If the response does not include at least one of the listed values, the service will retry until the expected status is returned or the event times out. |
pollUntilTransactionSuccessStatuses | Array Identifies one or more values from the PDTransactionStatus enum that the server expects as a success response for this event. If the response does not include at least one of the listed values, the service will retry until the expected status is returned or the event times out. |
waitForPreExecutionEvent | PDLifeCycleEventType When populated, the flow rule cannot complete until the event specified by this enum value has fired. |
waitTime | Integer The number of milliseconds to wait for the preExecutionEvent to complete. |
preExecutionEventWaitTime | Integer The number of seconds to delay before executing this event. |
requestProcessingTimeInSeconds | Integer The number of milliseconds it takes for this event to complete. |
returnEligibleOffers | Boolean Specifies whether this rule passes the set of eligible offers in a response to the app. |
returnNextProcessingRule | Boolean Specifies whether this rule represents a response that identifies the flow rule that will execute next. |
returnTransactionDetails | Boolean Specifies whether this rule represents a response to the app that contains an instance of PDTransactionDetails . |
returnTransactionStatus | Boolean Specifies whether this rule represents a response to the app that contains an instance of PDTransactionStatus . |
transactionStatusesAfterRuleExecution | Array The set of PDTransactionStatus enum values that are expected following completion of the rule. |
transactionStatusesBeforeRuleExecution | Array The set of PDTransactionStatus enum values that must be valid before the rule can execute. |
returnTransactionMetaData | Boolean Specifies whether this rule represents a response to the app that contains an instance of PDTransactionMetadata . |
returnRefundableReceipts | Boolean Specifies whether this rule represents a response to the app that contains the list of receipts that are valid for a refund transaction at the current location. |
PDTransactionInformation
Defines the high-level aspects of the transaction.
Property | Description |
---|---|
checkoutToken | String The token that was scanned to initiate the transaction. |
customerUri | String The unique identifier for the mobile wallet user conducting the transaction. |
merchantName | String The name of the retailer registered with Paydiant to accept mobile payments. |
merchantLogoUri | String The unique identifier for the logo image associated with the retail location. |
logoLastUpdateDate | NSDate The last occasion on which the merchant logo was retrieved by the app. |
cardSurfaceDiscountLabel | String The message that appears on the payment account regarding any eligible discounts. |
transactionAmount | PDTransactionAmount Defines the transaction amount breakdown. |
storeLocation | PDStoreLocation Identifies the specific retail location where the transaction took place. |
refundableReceiptCollection | PDReceiptCollection Lists the set of receipts that are eligible for refund. |
discountEntries | Dictionary The list of discounts applied to the purchase. |
merchantLogo | UIImage The image file containing the logo for the registered retailer. |
type | PDTransactionType The type of transaction. |
transDate | NSDate The time and date that the transaction was completed. |
tenderTypeCollection | Array The list of payment account types accepted by the retail location. |
offerArray | Array The list of offers valid at the retail location. |
PDTransactionKey
Uniquely identifies all calls, events, and other data associated with a transaction in the Paydiant platform.
Property | Description |
---|---|
paydiantReferenceId | String WLW’s unique identifier for the transaction generated when a checkout token is requested. |
PDTransactionMetadata
Defines the transaction configurations supported for the POS processing the transaction.
Property | Description |
---|---|
acceptanceLocation | PDStoreLocation Defines the merchant location at which the transaction occurred. |
sitelocation | PDSiteLocation Provides additional property data specific to a fuel-dispensing acceptance location. |
tenderType s | Array The set of PDPaymentTender objects that are supported for the transaction. |
PDUpdateTransactionAdditionalData
A dictionary key/value pair that defines a custom property that extends the data passed in a PDUpdateTransactionRequest
.
Property | Description |
---|---|
additionalDataKey | String The name of the property defined, for example, unit . |
additionalDataValue | String The value of the property relevant to this call, for example, gallon . |
PDUpdateTransactionSecondaryIdentifier
Some transactions require an additional means of identification to ensure that the mobile wallet user consents to the processing of the transaction. In such cases, the app developer calls the generateAccessCode
method to create a unique value to serve as such an additional identifier. The returned value is persisted in an instance of this domain object.
Property | Description |
---|---|
secondaryIdentifier | String The value returned by the generateAccessCode method for the purpose of verifying the identity of the mobile wallet engaged in the transaction. |
Transaction Message Objects
PDRetrieveTransactionInformationRequest
Identifies the required transaction information.
Property | Description |
---|---|
checkoutToken | String Uniquely identifies the QR code scanned by the user for this transaction. This property cannot be null . |
startIndex | Integer If the request is fetching refundable receipts, the returned set of receipt objects should begin with this object number. The value for this attribute must be 0 or greater. The default value is 0 . |
numberOfRecords | Integer If the request is fetching refundable receipts, the returned set of receipts should display this number of receipts per page at a maximum. The value for this attribute must be 1 or greater. The default value is 15 . |
startDate | Date Filters the returned refundable receipts by the date range starting with this value. |
endDate | Date Filters the returned refundable receipts by the date range ending with this value. |
PDRetrieveTransactionInformationResponse
Returns the transaction information.
Property | Description |
---|---|
transactionInformation | PDTransactionInformation Defines the properties for the requested transaction instance. |
PDRetrieveTransactionMetaDataRequest
During Flow Rule Driven Processing, this object encapsulates the parameter data that is passed with the call to retrieve updated transaction data based on changes applied by the POS or an external party, such as the payment processor. The checkoutToken
and executingTransactionFlowRule
parameters are always required to associate the request with the transaction and its relevant step. Other parameter requirements are contingent on the specified executingTransactionFlowRule
value.
Property | Description |
---|---|
checkoutToken | PDMetaDataCheckoutToken Uniquely identifies the transaction for which the metadata is being requested. |
siteCheckInDetail | PDSiteCheckInDetail Positively identifies an acceptance location in range in order to initiate a transaction. |
discoveryType | PDDiscoveryType EnumSpecifies the type of transaction being processed. |
executingFlowRule | String Deprecated in SDK 5.10 and replaced with executingTransactionFlowRule . |
executingTransactionFlowRule | PDTransactionFlowRule EnumIdentifies the flow rule for this specification. |
transactionKey | PDMetadataTransactionKey The paydiantReferenceId associated with the transaction. |
receiptParameters | PDMetadataReceiptParameters If the executingTransactionFlowRule value is 7 kPDTransactionFlowRuleRetrieveTransactionMetaDataSummary , the request must include this parameter, populated with the following property values:- startIndex (Integer)- maxNumberOfRows (Integer)- retrieveRefundableReceipts (Boolean)- startDate (NSDate)- endDate (NSDate) |
offerParameters | PDMetadataOfferParameters If the executingFlowRule value is 9 kPDTransactionFlowRuleSubmitOffers or 10 kPDTransactionFlowRuleSubmitOffersAndPaymentTenders , the request must include this parameter, populated with the following property values:- startIndex (Integer)- maxNumberOfRows (Integer)- offerArtifcatChannelTypes (Array)- startDate (NSDate)- endDate (NSDate) |
numberOfTimesToRetryRequest | Integer The number of times the executingFlowRule is automatically repeated before the event is considered to have failed. |
requestProcessingTimeInSeconds | Integer The number of seconds it took for the executingFlowRule to complete. |
invoiceId | String The acceptance partner’s identifier for an individual payment request associated with the transaction. |
PDRetrieveTransactionMetaDataResponse
Returns the metadata values relevant to the parameters in the request.
Property | Description |
---|---|
checkoutToken | PDCheckoutToken Uniquely identifies the transaction for which the metadata is being requested. |
transactionKey | PDTransactionKey The paydiantReferenceId associated with the transaction. |
refundableReceipts | PDReceiptCollection The set of receipts in the wallet engaged in the transaction that are able to be refunded at the merchant location engaged in the transaction. |
eligibleOffers | PDOfferReceiptCollection The set of activated offers in the wallet engaged in the transaction that are able to be redeemed for the current transaction. This allows the app developer to alert the wallet user that an offer can be used. |
transactionMetaData | PDTransactionMetadata The transaction information from the merchant POS that specifies supported tender for the merchant location engaged in the transaction. This data allows the app developer to ensure that the wallet only displays payment accounts that match the supported tender. |
transactionStatus | PDTransactionStatus EnumThe current state of the transaction. |
transactionDetail | PDTransactionDetail Defines the actions applied to the transaction, such as offer redemption and loyalty accrual. |
currentExecutingFlowRule | String Deprecated in SDK 5.10 and replaced with currentExecutingTransactionFlowRule . |
currentExecutingTransactionFlowRule | PDTransactionFlowRule EnumIdentifies the flow rule for this specification. |
nextExecutingFlowRule | String Deprecated in SDK 5.10 and replaced with nextExecutingTransactionFlowRule . |
nextExecutingTransactionFlowRule | PDTransactionFlowRule EnumIdentifies the flow rule for this specification. |
transactionFlowRuleSpecifications | Array The set of PDTransactionFlowRuleSpecification objects that define each flow rule specification for this metadata. |
discoveryType | PDDiscoveryType EnumThe type of transaction for the discovered flow rule. |
externalEvents | Array The set of PDExternalEvent objects for each step in the transaction that has been processed outside the app and is relevant to the current flow rule of the transaction. |
PDUpdateTransactionRequest
During Flow Rule Driven Processing, this object encapsulates the parameter data that is passed with the call in order to submit data updates for the current step in the transaction. The checkoutToken
and executingTransactionFlowRule
parameters are always required to associate the request with the transaction and its relevant step. Other parameter requirements are contingent on the specified executingTransactionFlowRule
value.
Property | Description |
---|---|
checkoutToken | String Uniquely identifies the transaction for which the payment is being requested. |
transactionKey | String The unique identifier for the specified payment account. |
paymentAccounts | Array The set of PDPaymentAccount instances that defines each payment tender used to complete the transaction. |
extendedPaymentInstruments | Array The set of PDExtendedPaymentInstrument instances that define each payment tender used to complete the transaction and includes additional data properties not captured in the traditional payment account object. Note: When specifying payment tenders in updateTransaction , populate only the extendedPaymentInstruments OR paymentAccounts attribute. If both are included, extendedPaymentInstruments data is ignored. |
confirmationRequired | Boolean Specifies if the customer must confirm the payment for POS-initiated transactions. |
executingFlowRule | String Deprecated in SDK 5.10 and replaced with executingTransactionFlowRule . |
executingTransactionFlowRule | PDTransactionFlowRule EnumIdentifies the flow rule for this specification. |
cashAccessDetail | PDUpdateTransactionCashAccessDetail Summarizes a cash access transaction, as defined by the request class: - cashAccessType (PDCashAccessTransactionType enum)- cashAmount (Decimal) |
paymentAccountUri | Deprecated with no replacement as of SDK 5.9. |
fuelAccessDetail | PDFuelAccessDetail Groups properties of a transaction that are relevant only when the transaction type = fuel . |
additionalData | Key/Value Array of dictionary key/value pairs used to capture fuel-related transaction data that may be required for a particular partner. |
fixedAmount | Decimal The maximum dollar value worth of fuel to dispense. |
printReceipt | Boolean Indicates if a printed receipt is requested. |
pumpNumber | String identifier for the specific pump within an acceptance location. |
selectedSiteResources | PDSiteResource Array of objects that represents other entities within the site location with which the app can interact. |
acceptanceLocationExternalId | String Identfies the acceptance location as defined by the geolocation service. |
acceptanceLocationUri | String WLW’s unique identifier for the specific merchant location; for example, GasForLess_Store54 . |
acceptancePartnerUri | String WLW’s unique identifier for the registered acceptance partner of the location, for example, Gas4Less . |
partnerUri | String WLW’s unique identifier for the registered parent partner of the location, for example, GlobalGasCo . |
tipAmount | Decimal The dollar amount of any tip that was applied to the total amount due on the transaction. |
offers | Array The set of offerUri strings for each offer that was redeemed for the transaction. |
refundDetail | PDUpdateTransactionRefundDetail Defines a transaction of type = refund , as defined by the request class. |
merchantTransactionRefId | String Merchant-defined identifier for the transaction. |
acceptancePartnerUri | String WLW’s unique identifier for the registered acceptance partner of the location; for example, ShoeMart . |
paydiantReferenceId | String WLW’s unique identifier for the transaction. |
receiptId | String The unique identifier for the receipt generated for the original purchase that being refunded. |
secondaryIdentifier | PDUpdateTransactionSecondaryIdentifier Contains the value of the secondaryIdentifier property if required for pre-authorization of a transaction. This property is populated with the randomly generated access code returned by the generateAccessCode method. |
additionalData | Array The set of PDUpdateTransactionAdditionalData instances that define custom Key/Value properties to extend the data passed in the update request. |
PDUpdateTransactionResponse
Returns the update transaction information.
Property | Description |
---|---|
checkoutToken | PDCheckoutToken Defines the checkout token value and its type. |
transactionMetaData | PDTransactionMetadata Provides the data values for the current step within the transaction, which may include available offers, supported tender types, associated loyalty programs, whether tips are accepted, etc. |
transactionKey | PDTransactionKey Uniquely identifies a transaction within the Paydiant service. |
transactionDetail | PDTransactionDetail Defines the actions applied to the transaction, such as offer redemption, loyalty accrual, etc. |
currentExecutingFlowRule | String Deprecated in SDK 5.10 and replaced with currentExecutingTransactionFlowRule . |
currentExecutingTransactionFlowRule | PDTransactionFlowRule EnumIdentifies the flow rule for this specification. |
nextExecutingFlowRule | String Deprecated in SDK 5.10 and replaced with nextExecutingTransactionFlowRule . |
nextExecutingTransactionFlowRule | PDTransactionFlowRule EnumIdentfies the flow rule for this specification. |
transactionFlowRuleSpecifications | Array The set of PDTransactionFlowRuleSpecification that defines each flow rule specification for this transaction's metadata. |
externalEvents | Array The set of PDExternalEvent objects that identfies the activities completed outside the app that triggered this transaction update. |
transactionStatus | PDTransactionStatus EnumThe current state of the transaction. |
nextTransactionFlowRuleSpecification | PDTransaction EnumDefines the requirements for the flow rule that will execute next in the transaction sequence. This information allows the developer to configure the app to comply with those requirements, such as the timeout value, before executing the next call. |
PDSplitTenderPaymentTransactionRequest
Identifies the information required for the split tender transaction.
Property | Description |
---|---|
paydiantReferenceId | String Uniquely identifies the transaction for which the payment is being requested. |
paymentAccountUri | String The unique identifier for the specified payment account. |
offerUris | Array The set of URIs for offers with matching criteria that are eligible for the transaction. |
totalTipAmount | Decimal The amount that the user added to the amountDue as a tip. |
PDSplitTenderPaymentTransactionResponse
Returns the split tender transaction information.
Property | Description |
---|---|
paymentTransaction | PDPaymentTransaction Returns the details of the completed payment transaction. |
Transaction Enums
PDLifeCycleEventType
Enum |
---|
kPDLifeCycleEventTypeNone (default) |
kPDLifeCycleEventTypeMobileScan |
kPDLifeCycleEventTypeTransactionBlocked |
kPDLifeCycleEventTypeMobileTimeout |
kPDLifeCycleEventTypeMerchantTimeout |
kPDLifeCycleEventTypeTicketReceived |
kPDLifeCycleEventTypePyamentFailed |
kPDLifeCycleEventTypePaymentRetry |
kPDLifeCycleEventTypePaymentSuccess |
kPDLifeCycleEventTypeTransactionReceiptReceived |
kPDLifeCycleEventTypeTransactionComplete |
kPDLifeCycleEventTypeMerchantNotReachable |
kPDLifeCycleEventTypeTransactionClaimed |
kPDLifeCycleEventTypeRefundReceiptReceived |
kPDLifeCycleEventTypeSecondaryIdentifierReceived |
kPDLifeCycleEventTypeMonitorTransaction |
kPDLifeCycleEventTypePreTimeoutNotification |
kPDLifeCycleEventTypeLoyaltyCardCredentialsAvailable |
kPDLifeCycleEventTypeTipAmountReceived |
kPDLifeCycleEventTypeFullReversal |
kPDLifeCycleEventTypeVoidTransaction |
kPDLifeCycleEventTypeCancelTransactio |
kPDLifeCycleEventTypePaymentReceived |
kPDLifeCycleEventTypePaymentConfirmation |
kPDLifeCycleEventTypeReleaseToCustomer |
kPDLifeCycleEventTypeUndoVoidTransaction |
kPDLifeCycleEventTypeUndoFullReversal |
kPDLifeCycleEventTypeVoidPending |
kPDLifeCycleEventTypeFullReversalPending |
kPDLifeCycleEventTypeFullReversalFailed |
kPDLifeCycleEventTypeVoidFailed |
kPDLifeCycleEventTypeReceiptForRefundReceived |
kPDLifeCycleEventTypeMobileScanTimeout |
kPDLifeCycleEventTypePaymentSelectionTimeout |
kPDLifeCycleEventTypePaymentProcessingTimeout |
kPDLifeCycleEventTypeReceiptProcessingTimeout |
kPDLifeCycleEventTypeRefundReceiptTimeout |
kPDLifeCycleEventTypeTicketReceivedTimeout |
kPDLifeCycleEventTypeOffersProcessed |
kPDLifeCycleEventTypeTicketUpdated |
kPDLifeCycleEventTypePaymentPartial kPDLifeCycleEventTypeDoNotBlock |
kPDLifeCycleEventTypeUerSelectedOffersSubmitted |
kPDLifeCycleEventTypeUserSelectedPaymentTendersSubmitted |
kPDLifeCycleEventTypeUerNotEligibleForOffers |
kPDLifeCycleEventTypeUserDidNotSelectOffers |
kPDLifeCycleEventTypeUserDidNotSelectPaymentTenders |
kPDLifeCycleEventTypePosSelectedPaymentTendersSubmitted |
kPDLifeCycleEventTypePosDidNotSelectPaymentTenders |
kPDLifeCycleEventTypeUserConfirmedPayment |
kPDLifeCycleEventTypeUserDeclinedPayment |
kPDLifeCycleEventTypeAcceptancePointAvailable |
kPDLifeCycleEventTypePreAuthSuccess |
kPDLifeCycleEventTypePreAuthFailed |
kPDLifeCycleEventTypePreAuthReversal |
kPDLifeCycleEventTypePreAuthReversalFailed |
kPDLifeCycleEventTypePreAuthCaptureSuccess |
kPDLifeCycleEventTypePreAuthCaptureFailed |
kPDLifeCycleEventTypePreAuthSubmitted |
kPDLifeCycleEventTypePreAuthReversalPending |
kPDLifeCycleEventTypePreAuthReceived |
kPDLifeCycleEventTypeMobileTenderRequestReceivedFromPos |
kPDLifeCycleEventTypeUserDidNotSelectRequestedTender |
kPDLifeCycleEventTypeMobileTenderForProcessingReceived |
kPDLifeCycleEventTypeNonReferenceRefundSuccess |
kPDLifeCycleEventTypeNonPairedRefundSuccess |
kPDLifeCycleEventTypePairedRefundSuccess |
kPDLifeCycleEventTypeUserSelectionsSubmitted |
kPDLifeCycleEventTypeThirdPartyLoyaltyInstrumentsSubmitted |
kPDLifeCycleEventTypeThirdPartyLoyaltyInstrumentsNotAvailable |
PDExternalEventType
Enum |
---|
kPDExternalEventTypeNone (default) |
kPDExternalEventTypeFuelPumpActivated |
kPDExternalEventTypeFuelStart |
kPDExternalEventTypeFuelEnd |
kPDExternalEventTypeFuelPumpDeactivated |
kPDExternalEventTypeSecondaryidReceived |
kPDExternalEventTypeFuelCanceled |
kPDExternalEventTypeReceiptReceived |
PDCashAccessTransactionType
Enum |
---|
kPDCashAccessTransactionTypeWithdrawal - only accepted value at this time |
kPDCashAccessTransactionTypeDeposit |
kPDCashAccessTransactionTypeUnknown (unknown) |
PDCheckoutTokenType
Enum |
---|
kPDCheckoutTokenTypePurchase |
kPDCheckoutTokenTypeRefund |
kPDCheckoutTokenTypeOffer |
kPDCheckoutTokenTypeCashAccess |
kPDCheckoutTokenTypeFuel |
kPDCheckoutTokenTypeUnknown (default) |
PDDiscoveryType
Enum |
---|
kPDDiscoveryTypeFuelCheckIn |
kPDDiscoveryTypeRemoteOrder |
kPDDiscoveryTypePurchase |
kPDDiscoveryTypeRefund |
kPDDiscoveryTypeExchange |
kPDDiscoveryTypeCashAccess |
kPDDiscoveryTypeCloudDetermined |
kPDDiscoveryTypePayAtTheTable |
PDFuelUnitType
Enum |
---|
kPDFuelUnitTypeNone (default) |
kPDFuelUnitTypeGallon |
kPDFuelUnitTypeLitre |
PDMetaDataCheckoutTokenType
Type | Enum |
---|---|
1 | kPDMetaDataCheckoutTokenTypePurchase |
2 | kPDMetaDataCheckoutTokenTypeRefund |
3 | kPDMetaDataCheckoutTokenTypeOffer |
4 | kPDMetaDataCheckoutTokenTypeCashAccess |
5 | kPDMetaDataCheckoutTokenTypeFuel |
0 | kPDMetaDataCheckoutTokenTypeUnknown (default) |
PDTransactionFlowRule
Type | Enum |
---|---|
0 | kPDTransactionFlowRuleNone (default) |
1 | kPDTransactionFlowRuleConfirmTransaction |
2 | kPDTransactionFlowRuleObtainPurchaseToken |
3 | kPDTransactionFlowRuleObtainRefundToken |
4 | kPDTransactionFlowRuleProcessPayment |
5 | kPDTransactionFlowRuleRetrieveTransactionMetaDataDiscovery |
6 | kPDTransactionFlowRuleRetrieveTransactionMetaDataOther |
7 | kPDTransactionFlowRuleRetrieveTransactionMetaDataSummary |
8 | kPDTransactionFlowRuleSubmitCashAccessTicket |
9 | kPDTransactionFlowRuleSubmitOffers |
10 | kPDTransactionFlowRuleSubmitOffersAndPaymentTenders |
11 | kPDTransactionFlowRuleSubmitPaymentTenders |
12 | kPDTransactionFlowRuleSubmitRefundableReceipt |
13 | kPDTransactionFlowRuleSubmitTenderForFuel |
14 | kPDTransactionFlowRuleSubmitTenderforFuelWithSecondaryId |
15 | kPDTransactionFlowRuleSubmitTenderForOpenTab |
16 | kPDTransactionFlowRuleSubmitTenderForPreAuthPurchase |
17 | kPDTransctionFlowRuleSubmitMobileTenderForProcessing |
18 | kPDTransctionFlowRuleSubmitTenderForFuelWithFuelTicket |
19 | kPDTransctionFlowRuleSubmitTenderForFuelWithFuelTicketAndSecondaryId |
20 | kPDTransctionFlowRuleSubmitTenderForFuelWithFuelTicketAndOffers |
21 | kPDTransctionFlowRuleSubmitTenderForFuelWithFuelTicketAndSecondaryIdAndOffers |
22 | kPDTransactionFlowRuleProcessSplitPayment |
PDEligibleOfferType
Enum |
---|
kPDEligibleOfferTypePos |
kPDEligibleOfferTypePaydiant |
kPDEligibleOfferTypePosPaydiant |
kPDEligibleOfferTypeNone (default) |
PDTransactionType
Enum |
---|
kPDTransactionTypeUnknown (default) |
kPDTransactionTypePurchase |
kPDTransactionTypeReturn |
kPDTransactionTypeCashAccess |
kPDTransactionTypeFuel |
PDTransactionStatus
Enum |
---|
kPDTransactionStatusFailed |
kPDTransactionStatusBlocked |
kPDTransactionStatusCanceled |
kPDTransactionStatusFullReversal |
kPDTransactionStatusStart |
kPDTransactionStatusActive |
kPDTransactionStatusUnclaimed |
kPDTransactionStatusOpen |
kPDTransactionStatusProcessing |
kPDTransactionStatusPending |
kPDTransactionStatusReceiptPending |
kPDTransactionStatusVoidTransaction |
kPDTransactionStatusExpired |
kPDTransactionStatusVoidPending |
kPDTransactionStatusFullReversalPending |
kPDTransactionStatusPartialPayment |
kPDTransactionStatusNone (default) |