/** * 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 * as zod from "zod"; /** * 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 declare const checkTransactionTypeBodyIssuerCountryCodeMin = 2; export declare const checkTransactionTypeBodyIssuerCountryCodeMax = 2; export declare const checkTransactionTypeBodyIssuerIsTaxSubjectDefault = true; export declare const checkTransactionTypeBodyCustomerCountryCodeMin = 2; export declare const checkTransactionTypeBodyCustomerCountryCodeMax = 2; export declare const CheckTransactionTypeBody: zod.ZodObject<{ issuer: zod.ZodObject<{ country: zod.ZodOptional; country_code: zod.ZodOptional; is_tax_subject: zod.ZodDefault; }, zod.z.core.$strip>; customer: zod.ZodObject<{ country: zod.ZodOptional; country_code: zod.ZodOptional; tax_number: zod.ZodOptional; is_end_consumer: zod.ZodOptional; }, zod.z.core.$strip>; }, zod.z.core.$strip>; export declare const checkTransactionTypeResponseIssuerCountryCodeMin = 2; export declare const checkTransactionTypeResponseIssuerCountryCodeMax = 2; export declare const checkTransactionTypeResponseCustomerCountryCodeMin = 2; export declare const checkTransactionTypeResponseCustomerCountryCodeMax = 2; export declare const CheckTransactionTypeResponse: zod.ZodObject<{ transaction_type: zod.ZodNullable, zod.ZodLiteral<"intra_eu_b2b">, zod.ZodLiteral<"intra_eu_b2c">, zod.ZodLiteral<"3w_b2b">, zod.ZodLiteral<"3w_b2c">, zod.ZodLiteral]>>; reverse_charge_applies: zod.ZodBoolean; issuer_country_code: zod.ZodNullable; customer_country_code: zod.ZodNullable; vies_valid: zod.ZodNullable; warning: zod.ZodNullable; is_tax_subject: zod.ZodOptional; }, zod.z.core.$strip>; //# sourceMappingURL=transaction-type.d.ts.map