UNPKG

data-and-reporting-sdk

Version:

Data And Reporting product consists of API's which provides details of transaction and invoice informations about shell cards. The Shell Card Transaction and Invoice API is REST-based and employs Basic authentication in Version 1 and Oauth authentication

525 lines 21.1 kB
/** * Shell Data & Reporting APIsLib * * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ). */ import { ApiResponse, RequestOptions } from '../core.js'; import { CardUsageSummaryReq } from '../models/cardUsageSummaryReq.js'; import { CardUsageSummaryRes } from '../models/cardUsageSummaryRes.js'; import { FeeSummaryResponse } from '../models/feeSummaryResponse.js'; import { FuelConsumptionReq } from '../models/fuelConsumptionReq.js'; import { FuelConsumptionResponse } from '../models/fuelConsumptionResponse.js'; import { MultiPricedTransactionReq } from '../models/multiPricedTransactionReq.js'; import { MultiPricedTransactionRes } from '../models/multiPricedTransactionRes.js'; import { PricedTransactionRequestV2 } from '../models/pricedTransactionRequestV2.js'; import { PricedTransactionRes } from '../models/pricedTransactionRes.js'; import { PricedTransactionResponseV2 } from '../models/pricedTransactionResponseV2.js'; import { PricedTransSummaryResp } from '../models/pricedTransSummaryResp.js'; import { PriceTransactionReq } from '../models/priceTransactionReq.js'; import { PriceTransSummaryReq } from '../models/priceTransSummaryReq.js'; import { RecentTransactionRequest } from '../models/recentTransactionRequest.js'; import { RecentTransactionsResponse } from '../models/recentTransactionsResponse.js'; import { TransactionExceptionsReq } from '../models/transactionExceptionsReq.js'; import { TransactionExceptionsRes } from '../models/transactionExceptionsRes.js'; import { TransactionFeesReq } from '../models/transactionFeesReq.js'; import { TransactionFeesRes } from '../models/transactionFeesRes.js'; import { TransactionFeesSummaryReq } from '../models/transactionFeesSummaryReq.js'; import { UpdateOdometerRequest } from '../models/updateOdometerRequest.js'; import { UpdateOdometerResp } from '../models/updateOdometerResp.js'; import { VolumeBasedBonusReq } from '../models/volumeBasedBonusReq.js'; import { VolumeBasedBonusRes } from '../models/volumeBasedBonusRes.js'; import { VolumeBasedPricingReq } from '../models/volumeBasedPricingReq.js'; import { VolumeBasedPricingRes } from '../models/volumeBasedPricingRes.js'; import { BaseController } from './baseController.js'; export declare class TransactionController extends BaseController { /** * This API allows querying transaction data (i.e. Priced, Billed and Unbilled sales items). It * provides a flexible search criteria and supports paging. * * * * Transactions that are posted but not yet priced, billed or that are in error will not be returned by * this API. The API also supports returning Fee Items. * * * * #### Supported operations * * * Get sales items and fee transactions * * * Search by invoice status * * * Search by fixed date period * * * Search by date range * * * Search by account * * * Search by card * * * Get sales items only * * * Search by transaction Id or location * * * Search by transaction posting date * * * Search by invoice number or date * * * Search by driver name or vehicle registration number * * * Search by card group * * * Search by fuel only transactions * * * Search by product * * * * This API fetches transactions for a period based on the below parameters and priority order: * * 1. InvoiceNumber * * 2. InvoiceDate * * 3. FromDate, ToDate * * 4. PostingFromDate, PostingToDate (Can be used only when IncludeFees = false) * * 5. InvoiceDateFrom, InvoiceDateTo * * 6. Period * * * * This API considers only one of the above set of parameters at a time. For example, if InvoiceNumber * and Period are provided in the input then Period is ignored and transactions associated to the given * invoice number are returned. * * * * If none of the above parameters are provided then last 7 days transactions will be fetched. * * * * This operation can fetch transactions that are old up to 24 (configurable) months. However, the date * range between any of the ‘From’ and ‘To’ dates in the above combination cannot be more than 210 * (configurable) days. * * * * @param requestId Mandatory UUID (according to RFC 4122 standards) for requests * and responses. This will be played back in the response from the * request. * @param body Priced Transaction Request Body * @return Response from the API call */ pricedTransactions(requestId: string, body?: PriceTransactionReq, requestOptions?: RequestOptions): Promise<ApiResponse<PricedTransactionRes>>; /** * This API returns the transaction summary data (i.e. Priced, Billed and Unbilled sales items). It * provides a flexible search criteria. * * The API also supports returning Fee Items. Transactions posted for fee items that are in error are * not included in the summary. * * * * The endpoint supports the exact same search criteria as the endpoint * *transaction/prciedtransactions*. * * * * #### Supported operations * * * Get sales items and fee transactions * * * Search by invoice status * * * Search by fixed date period * * * Search by date range * * * Search by account * * * Search by card * * * Get sales items only * * * Search by transaction Id or location * * * Search by transaction posting date * * * Search by invoice number or date * * * Search by driver name or vehicle registration number * * * Search by card group * * * Search by fuel only transactions * * * Search by product * * * * This API fetches transactions for a period based on the below parameters and priority order: * * 1. InvoiceNumber * * 2. InvoiceDate * * 3. FromDate, ToDate * * 4. PostingFromDate, PostingToDate (Can be used only when IncludeFees = false) * * 5. InvoiceDateFrom, InvoiceDateTo * * 6. Period * * * * This API considers only one of the above set of parameters at a time. For example, if InvoiceNumber * and Period are provided in the input then Period is ignored and transactions associated to the given * invoice number are returned. * * * * If none of the above parameters are provided then last 7 days transactions will be fetched. * * @param requestId Mandatory UUID (according to RFC 4122 standards) for requests * and responses. This will be played back in the response from * the request. * @param body PricedSummary RequestBody * @return Response from the API call */ pricedTransactionsSummary(requestId: string, body?: PriceTransSummaryReq, requestOptions?: RequestOptions): Promise<ApiResponse<PricedTransSummaryResp>>; /** * This API allows querying transaction data (i.e. Priced, Billed and Unbilled sales items) for * multiple payers. It provides a flexible search criteria and supports paging. * * * * Transactions that are posted but not yet priced, billed or that are in error will not be returned by * this API. The API also supports returning Fee Items. * * * * At least one payer should be provided. Multiple payers must belong to the same payer group. * * * * #### Supported operations * * * Get sales items and fee transactions for multiple payers * * * Search by invoice status * * * Search by fixed date period * * * Search by date range * * * Get sales items only for multiple payers * * * Search by transaction location * * * Search by transaction posting date * * * Search by invoice number or date * * * Search by fuel only transactions * * * * This API fetches transactions for a period based on the below parameters and priority order: * * 1. InvoiceNumber * * 2. InvoiceDate * * 3. FromDate, ToDate * * 4. PostingFromDate, PostingToDate (Can be used only when IncludeFees = false) * * 5. InvoiceDateFrom, InvoiceDateTo * * 6. Period * * * * This API considers only one of the above set of parameters at a time. For example, if InvoiceNumber * and Period are provided in the input then Period is ignored and transactions associated to the given * invoice number are returned. * * * * If none of the above parameters are provided then last 7 days transactions will be fetched. * * @param requestId Mandatory UUID (according to RFC 4122 standards) for * requests and responses. This will be played back in the * response from the request. * @param body MultiPayer RequestBody * @return Response from the API call */ multipricedTransactions(requestId: string, body?: MultiPricedTransactionReq, requestOptions?: RequestOptions): Promise<ApiResponse<MultiPricedTransactionRes>>; /** * This operation is to provide the expenditure analysis for a card for the past 7 months. * The response contains a daily summary of the transactions (billed & unbilled) from 1st of the last 7 * months for the requested card grouped by card, site-group and product. * * @param requestId Mandatory UUID (according to RFC 4122 standards) for requests * and responses. This will be played back in the response from the * request. * @param body Card Usage Summary RequestBody * @return Response from the API call */ cardUsageSummary(requestId: string, body?: CardUsageSummaryReq, requestOptions?: RequestOptions): Promise<ApiResponse<CardUsageSummaryRes>>; /** * - This API provides the details of the bonus and/or association bonus rules setup for the given * payer and that are active on the current date. * - This API also returns the details of the monthly breakup of current period consumption as well as * the details of the previously calculated bonus and consumption of the applicable payers. * * * * @param requestId Mandatory UUID (according to RFC 4122 standards) for requests * and responses. This will be played back in the response from the * request. * @param body VolumeBasedBonus RequestBody * @return Response from the API call */ volumeBasedBonus(requestId: string, body?: VolumeBasedBonusReq, requestOptions?: RequestOptions): Promise<ApiResponse<VolumeBasedBonusRes>>; /** * - This API will return the details of the in arrear fee rule applied to the payer along with details * of locations, products, tiers as applied. * * - It will also show historical and current volume consumption and related tier applied for the * following month. * * * * @param requestId Mandatory UUID (according to RFC 4122 standards) for requests * and responses. This will be played back in the response from * the request. * @param body VolumeBasedPricing RequestBody * @return Response from the API call */ volumeBasedPricing(requestId: string, body?: VolumeBasedPricingReq, requestOptions?: RequestOptions): Promise<ApiResponse<VolumeBasedPricingRes>>; /** * This API returns the fee/charges levied from a customer's account in a billing period or date range. * The API returns both billed and unbilled fee items. * * * * To get the summary of charges, the endpoint *transaction/feessummary* should be called with the same * input criteria. * * * * #### Supported operations * * * Get fees by invoice status * * * Get fees by date period * * * Get fees by account * * * Get fees by card Id or PAN * * * Get fees by fee type charges * * * Get fees including cancelled items * * * Get fees by line item description * * * Get fees by product * * @param requestId Mandatory UUID (according to RFC 4122 standards) for requests * and responses. This will be played back in the response from the * request. * @param body Transaction Fees RequestBody * @return Response from the API call */ fees(requestId: string, body?: TransactionFeesReq, requestOptions?: RequestOptions): Promise<ApiResponse<TransactionFeesRes>>; /** * This API returns the summary data of the fee/charges levied from a customer's account in a billing * period or date range. The API returns both billed and unbilled fee items. * * * * The endpoint supports the exact same search criteria as the endpoint *transaction/feessummary*. * * * * #### Supported operations * * * Get fees by invoice status * * * Get fees by date period * * * Get fees by account * * * Get fees by card Id or PAN * * * Get fees by fee type charges * * * Get fees including cancelled items * * * Get fees by line item description * * * Get fees by product * * @param requestId Mandatory UUID (according to RFC 4122 standards) for * requests and responses. This will be played back in the * response from the request. * @param body FeeSummary RequestBody * @return Response from the API call */ feeSummaryResponse(requestId: string, body?: TransactionFeesSummaryReq, requestOptions?: RequestOptions): Promise<ApiResponse<FeeSummaryResponse>>; /** * - This API returns the customer an overview of how many transactions, how much fuel volume used over * a given period and the total volume used by a card * * - This operation response will contains card & transaction details for given period aggregated by * payer, account, cardGroup, PAN, DriverName and VRN * * * * @param requestId Mandatory UUID (according to RFC 4122 standards) for requests * and responses. This will be played back in the response from the * request. * @param body FuelConsumption RequestBody * @return Response from the API call */ fuelConsumption(requestId: string, body?: FuelConsumptionReq, requestOptions?: RequestOptions): Promise<ApiResponse<FuelConsumptionResponse>>; /** * - This API allows the users to update the odometer readings on the sales items (transaction data) * * - This is an asynchronous operation. If opted, the user will be notified on completion of processing. * * @param requestId Mandatory UUID (according to RFC 4122 standards) for requests * and responses. This will be played back in the response from * the request. * @param body updateOdometer RequestBody * @return Response from the API call */ updateOdometer(requestId: string, body?: UpdateOdometerRequest, requestOptions?: RequestOptions): Promise<ApiResponse<UpdateOdometerResp>>; /** * - This API provides the details of the Cards or Transaction related exceptions based on the given * conditions for the Requested period. * - This API will return the Transactions related exceptions when the OutputType input parameter is * passed as ‘Transaction’ else will return the Cards related exceptions. * * * * @param requestId Mandatory UUID (according to RFC 4122 standards) for * requests and responses. This will be played back in the * response from the request. * @param body Transaction Exceptions RequestBody * @return Response from the API call */ transactionExceptions(requestId: string, body?: TransactionExceptionsReq, requestOptions?: RequestOptions): Promise<ApiResponse<TransactionExceptionsRes>>; /** * This endpoint allows querying last 48 hours of transaction data of Shell Card (i.e. Priced, Billed, * Unbilled etc. sales items). It provides a flexible search criteria and supports pagination. E.g., if * the request is made at 08:30 AM on 18 Aug 2022 then transactions until 16 Aug 2022 08:30 AM * (including) can be retrieved. * * * #### Supported operations * * * Search by Date and Time range (within the last 48 hours only) * * * Search by Payer and/or Account number * * * Search by Card * * * Search by Purchased Country * * * Search by Transaction posting date * * * Search by Driver Name or Vehicle registration number * * * Search by Fuel only transactions * * * Search by Product and/or Product group * * @param requestId Mandatory UUID (according to RFC 4122 standards) for * requests and responses. This will be played back in the * response from the request. * @param body New Recent Transaction RequestBody * @return Response from the API call */ recentTransactionsNew(requestId: string, body?: RecentTransactionRequest, requestOptions?: RequestOptions): Promise<ApiResponse<RecentTransactionsResponse>>; /** * This API allows querying transaction data (i.e. Priced, Billed and Unbilled sales items). It * provides a flexible search criteria and supports paging. * * The version 2 is an enhancement to the version 1 where EV transactions and their details are added * in the response. * * * * Transactions that are posted but not yet priced, billed or that are in error will not be returned by * this API. The API also supports returning Fee Items. * * * * #### Supported operations * * * Get sales items and fee transactions * * * Search by invoice status * * * Search by fixed date period * * * Search by date range * * * Search by account * * * Search by card * * * Get sales items only * * * Search by transaction Id or location * * * Search by transaction posting date * * * Search by invoice number or date * * * Search by driver name or vehicle registration number * * * Search by card group * * * Search by fuel only transactions * * * Search by product * * * EV transaction details - Below are EV specific parameters * * * EVOperator * * * EVSerialId * * * EVChargePointSerial * * * EVChargePointConnectorType * * * EVChargePointConnectorTypeDescription * * * EVChargeDuration * * * EVChargeStartDate * * * EVChargeStartTime * * * EVChargeEndDate * * * EVChargeEndTime * * @param requestId Mandatory UUID (according to RFC 4122 standards) for * requests and responses. This will be played back in the * response from the request. * @param body Priced TransactionV2 RequestBody * @return Response from the API call */ pricedTransactionsV2(requestId: string, body?: PricedTransactionRequestV2, requestOptions?: RequestOptions): Promise<ApiResponse<PricedTransactionResponseV2>>; } //# sourceMappingURL=transactionController.d.ts.map