/** * Generated by orval v8.5.3 🍺 * Do not edit manually. * Space Invoices API * REST API for invoice management, customer management, and accounting operations. Features include cursor-based pagination for efficient data navigation, flexible JSON querying with MongoDB-style operators, full-text search across multiple fields, and comprehensive metadata support for custom tracking. * OpenAPI spec version: 1.0.0 */ import type { Error, TransactionTypeCheckRequest, TransactionTypeCheckResponse, ValidationError } from '../model'; /** * Check transaction type and reverse charge applicability based on issuer and customer information. **Country Resolution:** - Country names are automatically resolved to ISO country codes (handles variations like "Slovenija" → "SI") - If both country and country_code are provided, country_code takes precedence **Transaction Types:** - `domestic`: Same country for issuer and customer - `intra_eu_b2b`: Cross-border EU sale to business with valid tax number - `intra_eu_b2c`: Cross-border EU sale to consumer (no tax number) - `3w_b2b`: Non-EU sale to business (with tax number) - `3w_b2c`: Non-EU sale to consumer (no tax number, or is_end_consumer=true) **Reverse Charge:** Applies when: - Issuer is an EU tax subject - Customer is in a different EU country with valid tax number, OR customer is outside EU **End Consumer Override:** When customer.is_end_consumer is true, forces B2C classification for non-EU transactions even if the customer has a tax number. For intra-EU transactions, VIES validation takes precedence. **Non-Tax Subjects:** When issuer.is_tax_subject is false, all transactions are treated as B2C (no VIES validation, no reverse charge). * @summary Check transaction type */ export type checkTransactionTypeResponse200 = { data: TransactionTypeCheckResponse; status: 200; }; export type checkTransactionTypeResponse400 = { data: Error; status: 400; }; export type checkTransactionTypeResponse401 = { data: Error; status: 401; }; export type checkTransactionTypeResponse403 = { data: Error; status: 403; }; export type checkTransactionTypeResponse404 = { data: Error; status: 404; }; export type checkTransactionTypeResponse422 = { data: ValidationError; status: 422; }; export type checkTransactionTypeResponse500 = { data: Error; status: 500; }; export type checkTransactionTypeResponseSuccess = (checkTransactionTypeResponse200) & { headers: Headers; }; export type checkTransactionTypeResponseError = (checkTransactionTypeResponse400 | checkTransactionTypeResponse401 | checkTransactionTypeResponse403 | checkTransactionTypeResponse404 | checkTransactionTypeResponse422 | checkTransactionTypeResponse500) & { headers: Headers; }; export type checkTransactionTypeResponse = (checkTransactionTypeResponseSuccess | checkTransactionTypeResponseError); export declare const getCheckTransactionTypeUrl: () => string; export declare const checkTransactionType: (transactionTypeCheckRequest: TransactionTypeCheckRequest, options?: RequestInit) => Promise; //# sourceMappingURL=transaction-type.d.ts.map