@exode-team/ofd-uz
Version:
Node.js module for interacting with OFD tax system
93 lines (92 loc) • 1.94 kB
TypeScript
/**
* OFDClient
*
* @author: exode <hello@exode.ru>
*/
export interface Location {
Latitude: number;
Longitude: number;
}
export interface CommissionInfo {
TIN: string;
PINFL: string;
}
export interface ReceiptInfo {
TerminalID: string;
ReceiptSeq: string;
DateTime?: string;
FiscalSign?: string;
}
export interface TaxiInfo {
TIN: string;
PINFL: string;
CarNumber: string;
}
export interface ExtraInfo {
PhoneNumber: string;
Other?: string;
CashedOutFromCard?: number;
}
export interface MerchantInfo {
TIN: string;
PINFL: string;
Name?: string;
ContractDate: string;
ContractNumber: string;
}
export interface Item {
Name: string;
Barcode?: string;
Labels?: string[];
SPIC: string;
PackageCode: string;
OwnerType: number;
GoodPrice: number;
Price: number;
VAT: number;
VATPercent: number;
Amount: number;
Discount?: number;
Other?: number;
Voucher?: number;
CommissionInfo?: CommissionInfo;
}
export interface QRPaymentInfo {
PaymentId: string;
PaidSum: number;
DateTime: string;
TIN: string;
PINFL?: string;
PhoneNumber: string;
Location?: Location;
SalePointAddress: string;
IsRefund: number;
ReceiptInfo: ReceiptInfo;
}
export interface Receipt {
ReceiptSeq: number;
IsRefund: number;
Items: Item[];
ReceivedCash: number;
ReceivedCard: number;
TotalVAT: number;
Time: string;
ReceiptType: number;
AdvanceContractID?: string;
Location?: Location;
TaxiInfo?: TaxiInfo;
RefundInfo?: ReceiptInfo;
ExtraInfo?: ExtraInfo;
MerchantInfo?: MerchantInfo;
SaleReceiptInfo?: ReceiptInfo;
}
export interface OFDResponse {
Code: number;
Message: string;
TerminalID?: string;
DateTime?: string;
PaymentId?: string;
ReceiptSeq?: number;
FiscalSign?: string;
QRCodeURL?: string;
}