Fuel API - Data Classes
Last updated: Aug 15th, 7:28am
The following data classes are included in the Fuel Integration API:
AdditionalData
Amount
B2bRequest
B2bResponse
CarWashInfo
Error
FuelDiscount
FuelGrade
FuelPump
FuelReceipt
FuelTicket
KeyValue
LoyaltyInstrument
MerchantTenderData
MessageHeader
PaymentCharge
PaymentInstrument
PaymentResult
PaymentTender
ReconciliationInfo
RedeemedOffer
SettlementInfo
SiteResource
Status
Tenant
TotalAmount
TotalsInfo
TransactionInfo
Enumerations
AdditionalData
A custom property definition related to the parent class in which it is defined. For example, an AdditionalData
property defined for a customer profile object might be nickname
=Max
.
Attribute | Description |
---|---|
key | Required String The name of a custom property. Example: key =maritalStatus |
value | Required String A specific setting for a custom property. Example: maritalStatus.value =married |
Amount
Indicates the value and currency to use for an amount in the transaction.
Attribute | Description |
---|---|
amount | Required Double Value of the transaction. |
currencyCode | Required String The ISO 4217 recognized code representing the type of currency used for the transaction; for example, USD = United States Dollar. |
B2bRequest
The parent class that is extended by all request instances calling the B2B Gateway.
Attribute | Description |
---|---|
messageHeader | Required MessageHeader Identifies the calling service. |
B2bResponse
The parent class that is extended by all response instances returned by the B2B Gateway.
Attribute | Description |
---|---|
messageHeader | Required String Identifies the calling service. |
configurationDetails | Optional KeyValue Communicates additional information about the outcome of the call as a set of Key/Value definitions. |
status | Required Status Conveys the results of a request, including any relevant errors. |
CarWashInfo
Describes the specifics associated with a purchased car wash.
Attribute | Description |
---|---|
carWashCodeExpirationDate | Optional String Date when the Car Wash code is no longer valid. |
siteResource | Required SiteResource An object that describes the specific car wash. |
carWashCode | Optional String The code generated by the car wash controller. |
siteResourceDiscount | Optional Amount Discount associated with the purchased site resource. |
Error
Statement returned from the Cloud Service indicating whether the originating call failed or succeeded.
Attribute | Description |
---|---|
errorCode | Required Enum Identifies the specific error that caused the failure. |
errorDesciption | Optional String Message associated with the error code explaining the nature of the result. |
FuelDiscount
Provides details about savings earned for a specific fuel purchase.
Attribute | Description |
---|---|
fuelDiscountTotal | Required Amount The total savings on the fuel purchase. |
discount | Optional Amount The discount per unit that will be applied to a discounted purchase. |
units | Required String The units used for this purchase. Valid values are: - GALLON - LITRE |
FuelGrade
Provides details about a specific grade of fuel offered at the fuel site.
Attribute | Description |
---|---|
available | Optional Boolean Indicates if this grade is currently available. TRUE =availableFALSE = not currently available |
description | Optional String The text description of the fuel grade that will be displayed on the mobile device. |
id | Optional String Unique identifier for this fuel grade. |
price | Optional Amount The current price of this Fuel Grade. |
FuelPump
Describes the details of each fuel pump, including pump number and fuel type.
Attribute | Description |
---|---|
available | Optional Boolean Indicates if this grade is currently available. TRUE = availableFALSE = not currently available |
additionalData | Optional KeyValue Custom key value pairs used to provide additional details about this pump. |
fuelGrades | Optional FuelGrade The list of fuel grade objects that describe the fuel grades available at this pump. |
fuelType | Optional String A string field available to describes the type of fuel at this pump. |
pumpNumber | Required String The number used to identify this pump at the fuel site. |
FuelReceipt
Lists the specifics of this pay-at-the-pump transaction.
Attribute | Description |
---|---|
totalAmount | Required Amount Total amount spent including fuel and car wash purchases. |
totalDiscount | Optional Amount The total discount applied to this transaction. |
unitsDispensed | Required String Total volume of gas dispensed. |
fuelAmount | Required Amount Total amount spent on fuel only. |
pricePerUnit | Required Amount Price charged per unit used, for example, per gallon or per liter. |
unitType | Required String The units associated with the gas. Valid values are: - GALLON - LITRE |
FuelGrade | Optional FuelGrade The grade of fuel dispensed. |
additionalData | Optional KeyValue Custom key value pairs used to provide additional details about this transaction. |
totalTax | Optional Amount The total amount of tax included in the sale. |
fuelDiscount | Optional FuelPump The discount applied to the gas purchase. |
carWashInfo | Optional B2bRequest Describes the car wash that was purchased as part of the transaction. |
receiptText | Optional String Text field available for additional receipt information. |
fuelTax | Optional Amount Tax applied to the fuel portion of the sale. |
FuelTicket
Describes all the selections made by a consumer to drive the Pump Authorization process.
Attribute | Description |
---|---|
selectedPumpNumber | Required String Pump selected by user on the mobile device. |
fixedAmount | Optional Amount The total sale amount of gas this pump can dispense before automatically shutting off. |
selectedSiteResources | Required SiteResource Car Wash selected by the user on the mobile device. |
printReceipts | Required Boolean Flag that indicates if the fuel site prints a receipt at the pump. True or False. |
additionalData | Optional KeyValue Custom key value pairs used to provide additional details about this pump. |
fuelDiscount | Optional Amount The amount that the pump should roll back the price per unit. |
KeyValue
A custom property definition of the parent class in which it is defined. For example, a property defined for a customer profile object might be maritalStatus
, gender
, or completedSchooling
.
Attribute | Description |
---|---|
key | Required String The name of a custom property. Example: key ="completedSchool" |
value | Required String A specific setting for a custom property. Example: completedSchool.value="phD" |
LoyaltyInstrument
Defines a payment account in the mobile wallet that is associated with the user’s loyalty program subscription.
Attribute | Description |
---|---|
paymentTender | Optional PaymentTender An instance of the PaymentTender object that defines the manner in which the loyalty account gets processed when selected during a transaction. |
additionalData | Optional KeyValue Custom key value pairs used to provide additional details about this pump. |
loyaltyInstrumentUri | Required String The WLW unique identifier of the payment account in the mobile wallet that represents the user’s loyalty account. |
loyaltyInstrumentId | Optional String An alternate identifier for the loyalty account that provides a shorter option to the URI format. Designed to support legacy systems that may not be able to accommodate the full URI. |
loyaltyId | Required String Loyalty account’s ID number. |
MerchantTenderData
Identifies a merchant’s record of a particular tender as it was used in a transaction.
Attribute | Description |
---|---|
tenderLocalDate | Required String The local date stamp (in yyyyMMdd format) provided by the merchant when a specific tender is submitted for payment authorization. If the merchant does not provide a value, it will be populated with WLW’s transactionLocalDate value. |
tenderLocalTime | Required String The local time stamp (in hhmmss format) provided by the merchant when a specific tender is submitted for payment authorization. If the merchant does not provide a value, it will be populated with WLW’s transactionLocalTime value. |
merchantTenderId | Optional String The merchant-defined unique identifier for the tender used in a payment. For example, in a split-tender transaction, a gift card payment may be identified as tender01 and a credit card payment may be identified as tender02 .Note: This value must be unique within a split or multi-tender transaction. If the merchant does not provide, the WLW system will generate. |
MessageHeader
An element of the B2bRequest
and B2bResponse
parent classes that identify the authorization credentials of the entity calling the B2B Gateway.
Attribute | Description |
---|---|
partnerId | Required String The value assigned by WLW to identify the partner for the purposes of authenticating the call. |
messageId | Optional String A reference value that can be used to identify the call for the purposes of troubleshooting support. |
versionId | Optional String The value identifying the version of the software on which the calling server is running. |
environmentId | Optional String A reference value that identifies the platform on which the call service is running. |
PaymentCharge
Defines a specific authorized payment instance toward completion of a transaction. A complete transaction may have one or more paymentCharge
instances depending on the number of tenders selected for full or partial payment.
Attribute | Description |
---|---|
paymentInstrument | Required PaymentInstrument Represents the mobile wallet payment account for which the payment was authorized. |
amount | Required Amount The dollar amount for which the payment was authorized. |
merchantTenderData | Optional MerchantTenderData Represents a particular tender submission for payment authorization. |
PaymentInstrument
Uniquely identifies a payment account in the mobile wallet.
Attribute | Description |
---|---|
paymentTender | Required PaymentTender An instance of the PaymentTender object that defines the manner in which the payment account gets processed when selected during a transaction. |
additionalData | Optional KeyValue Defines a custom property about the definition of the payment instrument, but is not captured by default; for example, minimumCharge ="5 Dollars" . There may be as many instances of this object as needed.Note: Some extended properties are required for certain payment tenders. Ensure that paymentInstrument s are populated accurately based on their individual requirements. |
paymentInstrumentUri | Required String The WLW unique identifier for the payment account in the mobile wallet. |
paymentInstrumentId | Required String An alternate identifier for the payment account that provides a shorter option to the URI format. Designed to support legacy systems that may not be able to accommodate the full URI. |
maskedCardNumber | Optional String The first 6 and last 4 digits of the card used. |
altFuelId | Optional String 6-10 digit identifier that can serve as a pseudo BIN for account types that do not have a traditional BIN. |
PaymentResult
Defines the outcome of a specific payment authorization request.
Attribute | Description |
---|---|
paymentInstrument | Required PaymentInstrument Represents the mobile wallet payment account for which the payment authorization was submitted. |
amount | Required Amount The dollar amount for which the payment authorization was submitted. |
merchantTenderData | Optional MerchantTenderData Represents the tender submitted for payment authorization. |
paydiantTenderId | Optional String The WLW identification of the tender associated with the payment authorization submission. |
paymentStatus | Required String Statement returned indicating the status of the payment request to the processor. |
paymentStatusCode | Required Payment Status The numerical status code corresponding to the payment status. |
externalPaymentStatusCode | Optional String The payment processor’s code representing the status of the payment authorization. |
externalPaymentStatusDescription | Optional String Message returned in the payment processor response describing the specific payment authorization request processing result. |
externalPaymentAuthCode | Optional String Auth code from the Processor/Issuer. |
additionalData | Optional KeyValue A custom key value pair used to provide additional details about this payment. A paymentResult instance may define as many additionalData properties as needed. |
PaymentTender
Defines a particular type of currency that is a supported method of payment by a merchant.
Attribute | Description |
---|---|
accountTypeName | Optional String The name identifying the specific category of account that the tender belongs to, such as credit, gift, loyalty, debit, etc. |
accountTypeUri | Required String WLW’s unique identifier representing a specific category of payment account. |
networkTypeName | Optional String The name identifying the network processor to which requests for payment authorization are to be submitted for a particular tender. For example, Visa or AMEX . |
networkTypeUri | Required String WLW’s unique identifier representing a specific network payment processor. |
RedeemedOffer
An array of redeemedoffer
instances that define the properties that make up a discount offer that was redeemed as part of this transaction.
Attribute | Description |
---|---|
discountAmount | Required Amount The dollar or percentage amount by which the total purchase was changed. |
isRefundable | Required Boolean Indicates if the offer can be reactivated in the wallet if the transaction in which it was originally redeemed is refunded. |
offerCampaignExternalId | Optional String Identifies the external offer campaign from the merchant that was included in this transaction. |
offerCampaignUri | Required String The unique WLW identifier of the offer campaign. |
offerCombinable | Required Boolean Indicates if the offer can be combined with other qualifying offers within the same purchase. |
offerId | Required String Unique identifier for this offer within WLW. |
offerProcessingPoint | Required OfferProcessingPoint Indicates how this offer was redeemed. Either pos or paydiant |
offerUri | Required String WLW unique URI identifier for this offer. |
rewardType | Required RewardType Indicates if this is a monetary or item reward. |
skuItems | Optional String Lists the SKU item number for an item-based reward. |
ReconciliationInfo
Data that is delivered from the fuel site that is typically leveraged for reconciliation purposes.
Attribute | Description |
---|---|
terminalID | Optional String Unique identifier of the specific terminal within a particular acceptance location. |
retailerID | Optional String An ID typically associated with a specific franchisee owner. |
additionalData | Optional KeyValue Custom key value pairs used to provide additional details about this reconciliation. |
invoiceID | Required String A unique transaction identifier generated by the retailer’s Cloud Services for the retailer’s own tracking purposes. |
SettlementInfo
An object that defines the details related to a settlement processing request from an acceptance location.
Attribute | Description |
---|---|
settlementPeriodTimestamp | Optional String Defines the range of time during which the transactions within the settlement period were processed. |
settlementPeriodId | Optional String Captures the merchant’s identifier for the settlement period, if there is one, such as "Store11_2016May15_MorningShift" |
terminalTotal | Optional String In the event that the merchant submits separate settlement requests for multiple terminals in a single location, this value represents the total dollar amount processed for all transactions included in the settlement period. |
totalsInfo | Optional TotalsInfo Provides the breakdown of transactions included in the settlement period. |
SiteResource
Describes the actual elements that are used to define products that can be selected by a consumer; for example, "Car Wash."
Attribute | Description |
---|---|
available | Optional Boolean Indicates if the resource is available. |
description | Optional String Description that will be delivered to the mobile device. |
additionalData | Optional KeyValue Custom key value pairs used to provide additional details about this reconciliation. |
id | Required String Unique identifier for this resource. |
name | Required String Name of the resource. |
itemPrice | Required Amount Price of the item being selected. |
tax | Optional Amount Amount of tax associated with this resource. |
Status
Statement returned from the Cloud Service indicating whether the originating call failed or succeeded.
Attribute | Description |
---|---|
statusCode | Required StatusCode Identifies the outcome of the call to the B2B Gateway. |
statusDesciption | Optional String Message associated with the status code explaining the nature of the result. |
errors | Optional Error An array of Error instances providing specific failure details. |
Tenant
Identifies the WLW partner authorized to submit calls to the B2B gateway.
Attribute | Description |
---|---|
partnerUri | Required String WLW’s unique identifier of an entity that is onboarded to participate in mobile transactions through the WLW platform. |
tenantUri | Required String WLW’s unique identifier of an entity under a registered partner that is further configured as intending to develop a mobile wallet (issuing tenant) or accept payments from a mobile wallet (acceptance or merchant tenant). |
TotalAmount
The details related to a group of transactions within a settlement period for a specific payment type.
Attribute | Description |
---|---|
primaryCardType | Optional String Identifies the first level categorization of transactions in this group for the settlement period. An example might be credit or debit. |
secondaryCardType | Optional String Identifies the sub level categorization of transactions in this group for the settlement period. For example, if the primary type were credit , the sub-type might be Visa or Amex . |
transactionCount | Optional Integer The number of transactions processed during the settlement period that used the payment type defined by this group. |
amount | Optional String The total dollar amount of all transactions of this payment type included in the settlement period. The last two digits of this value are read as decimal values in all cases. |
currency | Optional String The ISO 4217 recognized code representing the type of currency used for the transaction (for example, USD = United States Dollar). If an amount is populated, this field becomes required. |
additionalInformation | Optional KeyValue A custom Key/Value property that extends the TransactionInfo definition with relevant data. For example, key ="managerID" ; value ="KS4258" . There may be as many instances of this object as needed. |
TotalsInfo
Contains the breakdown of transactions within a settlement period based on payment type.
Attribute | Description |
---|---|
totalAmount | Required TotalAmount Represents the transaction totals for a specific payment type in the settlement period. There will be an instance for each payment type supported by the merchant, some of which may be null, if no transactions for that type occurred within the settlement period. |
TransactionInfo
Defines the details related to a specific interaction between the calling entity and WLW’s platform through the B2B gateway.
Attribute | Description |
---|---|
partnerUri | Optional String WLW’s unique identifier of the global partner registered to engage with the WLW platform. |
acceptancePartnerUri | Optional String WLW’s unique identifier for the entity registered to initiate WLW-powered mobile transactions. |
acceptanceLocationUri | Optional String WLW’s unique identifier for the individual location through which mobile transactions are conducted. |
externalStoreLocationId | Optional String The acceptance partner’s identifier for the specific location within its system. |
additionalInformation | Optional KeyValue A custom Key/Value property that extends the TransactionInfo definition with relevant data. For example, key ="managerID" ; value ="KS4258" . There may be as many instances of this object as needed. |
Enumerations
ErrorCode
Valid values representing the outcome of a request submitted to the Platform through the B2B Gateway.
Code | Description |
---|---|
ERR101 | Syntax error |
ERR102 | Illegal operation |
ERR103 | Service not available |
ERR104 | Partner not found |
ERR105 | Already exists |
ERR106 | Invalid credentials |
ERR107 | Missing required data |
OfferProcessingPoint
Indicates if the offer was processed at the POS or by the WLW (Paydiant) platform. Valid values are:POS
PAYDIANT
.
RewardType
Indicates if the offer reward is an item or a monetary discount. Valid values are: VALUE_BASED_REWARD
SKU_BASED_REWARD
StatusCode
Valid values representing the outcome of a request submitted to the Platform through the B2B Gateway.
Code | Description |
---|---|
SUCCESS | The request completed successfully. |
PARTIAL_SUCCESS | Some portion of the request completed, but additional processing is pending. This status typically references a partial payment on which a balance is still owed. |
PENDING_COMPLETION | The request is still being processed. |
FAILED | The request cold not be completed. |
INVALID_DATA | Some values in the request are not valid for the property. |
FATAL_ERROR | The request failed. |
TIMEOUT | The request could not be completed in the allowed time. |
INVALID_OPERATION | The request is not supported. |
REQUIRED_DATA_MISSING | one or more required property values are missing. |
NOT_FOUND | An element referenced in the required can not be located. |
ALREADY_EXISTS | A referenced entity for creation already exists in the target system. |
TRANSACTION_CANCELED | The request was canceled. |
TRANSACTION_EXPIRED | The request timed our while waiting for a response. |
TRANSACTION_NOT_FOUND | The referenced transaction is not active in the system. |
INVALID_SECONDARY_ID | The authentication code does not match. |
CUSTOMER_DEACTIVATED | The referenced customer account is locked. |
CUSTOMER_PASSWORD_EXPIRED | The referenced customer’s password has expired and must be updated. |
CUSTOMER_EMAIL_NOT_VERIFIED | The customer account is inactive pending email verification. |
INVALID_ARGUMENTS | One or more properties in the request is not valid for the request. |
VERIFICATION_SUCCESS | Verification is complete. |
TransactionFlowRule
Enum | Description |
---|---|
SUBMIT_PRE_AUTH | Send a request to authorize a specific amount before dispensing fuel. |
SUBMIT_SECONDARY_ID_FOR_VALIDATION | Send the secondary identifier to validate the pre-auth. |
SUBMIT_FUEL_CANCEL | Stop pump. |
SUBMIT_FUEL_BEGIN | Start pump. |
SUBMIT_FUEL_END | Complete fuel dispensing. |
SUBMIT_FUEL_RECEIPT | Request receipt for pumped fuel. |
RETRIEVE_TRANSACTION_META_DATA | Return additional data associated with this transaction. |
SUBMIT_ACCEPTANCE_POINT | Send request to create a new fuel pump in the system. |
SUBMIT_TICKET | Send request to generate receipt. |
UPDATE_TICKET | Change an existing ticket. |
SUBMIT_PROCESSED_OFFERS | Send a request to include already-processed offers in the transaction. |
SUBMIT_PROCESSED_LOYALTY | Send the information that affects the transaction from an external loyalty processor. |
SUBMIT_PROCESSED_PAYMENTS | Send all payments that may be included in this transaction. |
SUBMIT_POS_SELECTED_TENDERS_FOR_PROCESSING | Send tender requests that initiated at the POS. |
OBTAIN_PURCHASE_TOKEN | Request an authorizing token for this transaction. |
OBTAIN_REFUND_TOKEN | Request an authorizing token for a refund being processed. |
SUBMIT_TRANSACTION_RECEIPT | Send the completed receipt for the transaction. |
OBTAIN_CASH_ACCESS_TOKEN | Request an authorizing token for a cash access transaction. |
SUBMIT_NON_PAIRED_REFUND_TICKET | Request a refund without a qualifying receipt. |
SUBMIT_PRE_AUTH_CAPTURE | Save the pre-authorization capture. |
SUBMIT_PROCESSED_PRE_AUTH | Send completion of the pre-authorization. |
SUBMIT_PROCESSED_PRE_AUTH_CAPTURE | Send the stored pre-auth capture. |
REQUEST_MOBILE_TENDER_FOR_PROCESSING | Send a request to use a tender in the consumer's wallet for processing. |
PROCESS_FULL_REVERSAL_ON_TENDER | Cancel use of tender before it has settled. |
PROCESS_VOID_ON_TENDER | Cancel use of tender before fuel is dispensed. |
VOID_TRANSACTION | Cancel an existing transaction before it has been settled. |
FULL_REVERSE_TRANSACTION | Back out of the current transaction. |
CANCEL_TRANSACTION | Cancel a fuel transaction before any fuel has been dispensed. |