{"openapi":"3.1.0","info":{"title":"FIRS E-Invoicing","description":"\n **Description:**\nThe e-Invoicing API is a powerful tool designed to streamline the process of issuing, managing, and processing electronic invoices for the Federal Inland Revenue Services FIRS. This API enables businesses to automate their invoicing workflows, ensuring efficient, accurate, and compliant financial transactions. \n\n \n \n **Terms of Service:**\n     By using this API, you agree to use it for authorized purposes only and in compliance with applicable laws and regulations. \nUnauthorized access or misuse may result in suspension or legal action. eTranzact reserves the right to modify or discontinue API access at any time.\n \n \n **Summary:**\n This API harmonizes the integration privileges of the System Integrator and Access Point Provider, enabling seamless onboarding of existing and new business infrastructures into the FIRS E-Invoicing system.","contact":{"name":"eTranzact Developer Team","url":"https://www.etranzact.com","email":"samuel.omolaja@etranzactng.com"},"license":{"name":"eTranzact license","url":"https://www.etranzact.com"},"version":"3.1.0"},"servers":[{"url":"https://firseinvoice.etranzactng.com","description":"Generated server url"}],"security":[{"x-api-key":[],"x-api-signature":[],"x-api-timestamp":[]}],"paths":{"/api/v2/si/validate":{"post":{"tags":["System Integrator V2"],"summary":"Validate Invoice ","description":"This endpoint validates the content of the invoice to ensure compliance with FIRS requirements ","operationId":"validateInvoice_v2","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidateInvoiceRequest"}}},"required":true},"responses":{"200":{"description":"successfully Processed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessPointProviderResponse"}}}},"404":{"description":"NOT_FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FirsErrorDetails"}}}}}}},"/api/v2/si/generate-qr-code":{"post":{"tags":["System Integrator V2"],"summary":"Generate a QR code","description":"This endpoint is used to generate a QR code","operationId":"generateQRCode","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateIRNRequestQRCode"}}},"required":true},"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseGenerateQrCodeResponse"}}}}}}},"/api/v2/si/generate-irn":{"post":{"tags":["System Integrator V2"],"summary":"Generate and Validate IRN ","description":"This endpoint enables System Integrator generate and validate IRN by sending the invoice reference, business ID and unique IRN","operationId":"generateAndValidateIRN_V2","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateIRNRequest"}}},"required":true},"responses":{"200":{"description":"successfully Processed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateIRNResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FirsErrorDetails"}}}}}}},"/api/v2/si/generate-invoice-number":{"post":{"tags":["System Integrator V2"],"summary":"Generate Invoice Number","description":"This endpoint is used to generate a standardized, invoice number","operationId":"generateInvoiceNumber_V2","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateInvoiceNumberRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseGenerateInvoiceNumberResponse"}}}}}}},"/api/v2/resource/verify-tin":{"post":{"tags":["Resources V2"],"summary":"Validate TIN","description":"This endpoint enable users to validate TIN number ","operationId":"verifyTin_V2","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyTinRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseVerifyTinApiResponse"}}}}}}},"/api/v2/app/invoice/validate":{"post":{"tags":["Access Point Provider V2"],"summary":"Validate and Sign Invoice ","description":"This endpoint validates the content of the invoice to ensure compliance with FIRS requirements and there after signs and report it ","operationId":"validateInvoice","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidateInvoiceRequestV2"}}},"required":true},"responses":{"200":{"description":"successfully Processed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessPointProviderResponse"}}}},"404":{"description":"NOT_FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FirsErrorDetails"}}}}}}},"/api/v2/app/invoice/validate-irn":{"post":{"tags":["Access Point Provider V2"],"summary":"Validate IRN ","description":"This endpoint enables System Integrator validate pre generated IRN by sending the business ID and unique IRN","operationId":"validateIRN","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidatePreGeneratedIrnRequestV2"}}},"required":true},"responses":{"200":{"description":"successfully Processed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateIRNResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FirsErrorDetails"}}}}}}},"/api/v2/app/invoice/transmit":{"post":{"tags":["Access Point Provider V2"],"summary":"Transmit Invoice","description":"This endpoint checks all involve parties and ensures theirs system is up for transmission before it transmit  ","operationId":"transmitInvoice","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransmitInvoiceRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseTransmitInvoiceResponse"}}}}}}},"/api/v2/app/invoice/sign":{"post":{"tags":["Access Point Provider V2"],"summary":"Sign Invoice ","description":"This endpoint signs the invoice after it validates the content of the invoice to ensure compliance with FIRS requirements and there after signs and report it ","operationId":"signInvoice","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidateInvoiceRequestV2"}}},"required":true},"responses":{"200":{"description":"successfully Processed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessPointProviderResponse"}}}},"404":{"description":"NOT_FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FirsErrorDetails"}}}}}}},"/api/v1/si/validate":{"post":{"tags":["System Integrator"],"summary":"Validate Invoice ","description":"This endpoint validates the content of the invoice to ensure compliance with FIRS requirements ","operationId":"validateInvoice_1","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidateInvoiceRequest"}}},"required":true},"responses":{"200":{"description":"successfully Processed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessPointProviderResponse"}}}},"404":{"description":"NOT_FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FirsErrorDetails"}}}}}}},"/api/v1/si/generate-qr-code":{"post":{"tags":["System Integrator"],"summary":"Generate a QR code","description":"This endpoint is used to generate a QR code","operationId":"generateQRCode_1","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateIRNRequestQRCode"}}},"required":true},"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseGenerateQrCodeResponse"}}}}}}},"/api/v1/si/generate-irn":{"post":{"tags":["System Integrator"],"summary":"Generate and Validate IRN ","description":"This endpoint enables System Integrator generate and validate IRN by sending the invoice reference, business ID and unique IRN","operationId":"generateAndValidateIRN","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateIRNRequest"}}},"required":true},"responses":{"200":{"description":"successfully Processed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateIRNResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FirsErrorDetails"}}}}}}},"/api/v1/si/generate-invoice-number":{"post":{"tags":["System Integrator"],"summary":"Generate Invoice Number","description":"This endpoint is used to generate a standardized, invoice number","operationId":"generateInvoiceNumber","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateInvoiceNumberRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseGenerateInvoiceNumberResponse"}}}}}}},"/api/v1/resource/verify-tin":{"post":{"tags":["Resources"],"summary":"Validate TIN","description":"This endpoint enable users to validate TIN number ","operationId":"verifyTin","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyTinRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseVerifyTinApiResponse"}}}}}}},"/api/v1/app/invoice/validate":{"post":{"tags":["Access Point Provider"],"summary":"Validate and Sign Invoice ","description":"This endpoint validates the content of the invoice to ensure compliance with FIRS requirements and there after signs and report it ","operationId":"validateInvoice_2","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidateInvoiceRequest"}}},"required":true},"responses":{"200":{"description":"successfully Processed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessPointProviderResponse"}}}},"404":{"description":"NOT_FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FirsErrorDetails"}}}}}}},"/api/v1/app/invoice/validate-irn":{"post":{"tags":["Access Point Provider"],"summary":"Validate IRN ","description":"This endpoint enables System Integrator validate pre generated IRN by sending the business ID and unique IRN","operationId":"validateIRN_1","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidatePreGeneratedIrnRequest"}}},"required":true},"responses":{"200":{"description":"successfully Processed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GenerateIRNResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FirsErrorDetails"}}}}}}},"/api/v1/app/invoice/transmit":{"post":{"tags":["Access Point Provider"],"summary":"Transmit Invoice","description":"This endpoint checks all involve parties and ensures theirs system is up for transmission before it transmit  ","operationId":"transmitInvoice_1","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransmitInvoiceRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseTransmitInvoiceResponse"}}}}}}},"/api/v1/app/invoice/sign":{"post":{"tags":["Access Point Provider"],"summary":"Sign Invoice ","description":"This endpoint signs the invoice after it validates the content of the invoice to ensure compliance with FIRS requirements and there after signs and report it ","operationId":"signInvoice_1","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidateInvoiceRequest"}}},"required":true},"responses":{"200":{"description":"successfully Processed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessPointProviderResponse"}}}},"404":{"description":"NOT_FOUND","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FirsErrorDetails"}}}}}}},"/api/v2/app/invoice/update/{irn}":{"patch":{"tags":["Access Point Provider V2"],"summary":"Update Invoice ","description":"This endpoint enables users to update an invoice","operationId":"updateInvoice","parameters":[{"name":"irn","in":"path","required":true,"schema":{"$ref":"#/components/schemas/InvoiceReferenceNumberRequest"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateInvoiceRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseDataResponse"}}}}}}},"/api/v1/app/invoice/update/{irn}":{"patch":{"tags":["Access Point Provider"],"summary":"Update Invoice ","description":"This endpoint enables users to update an invoice","operationId":"updateInvoice_1","parameters":[{"name":"irn","in":"path","required":true,"schema":{"$ref":"#/components/schemas/InvoiceReferenceNumberRequest"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateInvoiceRequest"}}},"required":true},"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseDataResponse"}}}}}}},"/api/v2/si/invoice-types":{"get":{"tags":["System Integrator V2"],"summary":"Get List of Invoice Types","description":"This endpoint return a list of Invoice types and it corresponding value","operationId":"invoiceType_V2","responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseListInvoiceTypeResponse"}}}}}}},"/api/v2/si/get-invoice/{irn}":{"get":{"tags":["System Integrator V2"],"summary":"Pull Invoice","description":"This endpoint is used by a buyer to pull an invoice that has been signed and transmitted by the supplier","operationId":"getInvoice","parameters":[{"name":"irn","in":"path","required":true,"schema":{"$ref":"#/components/schemas/InvoiceReferenceNumberRequest"}}],"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseInvoiceResponse"}}}}}}},"/api/v2/resource/vat-exemptions":{"get":{"tags":["Resources V2"],"summary":"VAT Exemptions","description":"This endpoint get a list of VAT Exemption","operationId":"vatExemption_V2","responses":{"200":{"description":"This endpoint get a list of all VAT exemption","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceVatExemptions"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v2/resource/tax-categories":{"get":{"tags":["Resources V2"],"summary":"Tax Categories","description":"This endpoint get a list of Tax Categories","operationId":"taxCategories_V2","responses":{"200":{"description":"This endpoint get a list of tax categories","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceTaxCategories"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v2/resource/states":{"get":{"tags":["Resources V2"],"summary":"State  Codes","description":"This endpoint get a list of State Codes In Nigeria","operationId":"stateCodes_V2","responses":{"200":{"description":"This endpoint get a list of State Codes In Nigeria","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceStateCode"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v2/resource/service-codes":{"get":{"tags":["Resources V2"],"summary":"Service Codes","description":"This endpoint get a list of Service Codes","operationId":"serviceCodes_V2","responses":{"200":{"description":"This endpoint get a list of service codes","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceServiceCode"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v2/resource/product-codes":{"get":{"tags":["Resources V2"],"summary":"Product Codes","description":"This endpoint get a list of all product codes","operationId":"productCodes_V2","responses":{"200":{"description":"This endpoint get a list of all product codes","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceProductCodes"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v2/resource/payment-means":{"get":{"tags":["Resources V2"],"summary":"Payment Means","description":"This endpoint get a list of Payment Means","operationId":"paymentMeans_V2","responses":{"200":{"description":"This endpoint get a list of payment Means","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourcePaymentMeans"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v2/resource/lgas":{"get":{"tags":["Resources V2"],"summary":"Local Government Code Codes","description":"This endpoint get a list of local governments Codes In Nigeria","operationId":"localGovernmentCodes_V2","responses":{"200":{"description":"This endpoint get a list of local governments Codes In Nigeria","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceLocalGovernmentCode"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v2/resource/invoice-types":{"get":{"tags":["Resources V2"],"summary":"Invoice Types ","description":"This endpoint get a list of Invoice types","operationId":"invoiceType_V2_1","responses":{"200":{"description":"This endpoint get a list of invoice types","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceInvoiceType"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v2/resource/currencies":{"get":{"tags":["Resources V2"],"summary":"Currencies","description":"This endpoint get a list of all Currencies","operationId":"currency_V2","responses":{"200":{"description":"This endpoint get a list of all currencies","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceCurrencies"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v2/resource/countries":{"get":{"tags":["Resources V2"],"summary":"State  Codes","description":"This endpoint get a list of State Codes In Nigeria","operationId":"countries_V2","responses":{"200":{"description":"This endpoint get a list of countries","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceCountries"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v2/app/invoice/confirm/{irn}":{"get":{"tags":["Access Point Provider V2"],"summary":"Confirm Invoice","description":"This endpoint enable users to confirm the status of the validate IRN ","operationId":"confirmInvoice","parameters":[{"name":"irn","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseConfirmInvoiceResponse"}}}}}}},"/api/v1/si/invoice-types":{"get":{"tags":["System Integrator"],"summary":"Get List of Invoice Types","description":"This endpoint return a list of Invoice types and it corresponding value","operationId":"invoiceType","responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseListInvoiceTypeResponse"}}}}}}},"/api/v1/si/get-invoice/{irn}":{"get":{"tags":["System Integrator"],"summary":"Pull Invoice","description":"This endpoint is used by a buyer to pull an invoice that has been signed and transmitted by the supplier","operationId":"getInvoice_1","parameters":[{"name":"irn","in":"path","required":true,"schema":{"$ref":"#/components/schemas/InvoiceReferenceNumberRequest"}}],"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseInvoiceResponse"}}}}}}},"/api/v1/resource/vat-exemptions":{"get":{"tags":["Resources"],"summary":"VAT Exemptions","description":"This endpoint get a list of VAT Exemption","operationId":"vatExemption","responses":{"200":{"description":"This endpoint get a list of all VAT exemption","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceVatExemptions"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v1/resource/tax-categories":{"get":{"tags":["Resources"],"summary":"Tax Categories","description":"This endpoint get a list of Tax Categories","operationId":"taxCategories","responses":{"200":{"description":"This endpoint get a list of tax categories","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceTaxCategories"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v1/resource/states":{"get":{"tags":["Resources"],"summary":"State  Codes","description":"This endpoint get a list of State Codes In Nigeria","operationId":"stateCodes","responses":{"200":{"description":"This endpoint get a list of State Codes In Nigeria","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceStateCode"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v1/resource/service-codes":{"get":{"tags":["Resources"],"summary":"Service Codes","description":"This endpoint get a list of Service Codes","operationId":"serviceCodes","responses":{"200":{"description":"This endpoint get a list of service codes","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceServiceCode"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v1/resource/product-codes":{"get":{"tags":["Resources"],"summary":"Product Codes","description":"This endpoint get a list of all product codes","operationId":"productCodes","responses":{"200":{"description":"This endpoint get a list of all product codes","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceProductCodes"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v1/resource/payment-means":{"get":{"tags":["Resources"],"summary":"Payment Means","description":"This endpoint get a list of Payment Means","operationId":"paymentMeans","responses":{"200":{"description":"This endpoint get a list of payment Means","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourcePaymentMeans"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v1/resource/lgas":{"get":{"tags":["Resources"],"summary":"Local Government Code Codes","description":"This endpoint get a list of local governments Codes In Nigeria","operationId":"localGovernmentCodes","responses":{"200":{"description":"This endpoint get a list of local governments Codes In Nigeria","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceLocalGovernmentCode"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v1/resource/invoice-types":{"get":{"tags":["Resources"],"summary":"Invoice Types ","description":"This endpoint get a list of Invoice types","operationId":"invoiceType_1","responses":{"200":{"description":"This endpoint get a list of invoice types","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceInvoiceType"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v1/resource/currencies":{"get":{"tags":["Resources"],"summary":"Currencies","description":"This endpoint get a list of all Currencies","operationId":"currency","responses":{"200":{"description":"This endpoint get a list of all currencies","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceCurrencies"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v1/resource/countries":{"get":{"tags":["Resources"],"summary":"State  Codes","description":"This endpoint get a list of State Codes In Nigeria","operationId":"countries","responses":{"200":{"description":"This endpoint get a list of countries","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ResourceCountries"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorDetails"}}}}}}},"/api/v1/health-check":{"get":{"tags":["Health Check"],"summary":"Health Check ","description":"Returns the current health status of the FIRS e-Invoicing system. This includes the internal application health, external service dependencies, and the status of the client's configured webhook endpoint. The response provides both general system information and detailed component statuses depending on the caller's authorization level. Execution time for generating the health response is also included.","operationId":"getHealth","responses":{"200":{"description":"successful","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HealthResponse"}}}}}}},"/api/v1/app/invoice/confirm/{irn}":{"get":{"tags":["Access Point Provider"],"summary":"Confirm Invoice","description":"This endpoint enable users to confirm the status of the validate IRN ","operationId":"confirmInvoice_1","parameters":[{"name":"irn","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"*/*":{"schema":{"$ref":"#/components/schemas/AppResponseConfirmInvoiceResponse"}}}}}}}},"components":{"schemas":{"AccountingCustomerPartyRequest":{"type":"object","properties":{"tin":{"type":"string"},"email":{"type":"string"},"telephone":{"type":"string","pattern":"^\\+?[0-9]*$"},"party_name":{"type":"string"},"business_description":{"type":"string"},"postal_address":{"$ref":"#/components/schemas/PostalAddressRequest"}},"required":["email","party_name","postal_address","tin"]},"AccountingSupplierPartyRequest":{"type":"object","properties":{"tin":{"type":"string"},"email":{"type":"string"},"telephone":{"type":"string","pattern":"^\\+?[0-9]*$"},"party_name":{"type":"string"},"business_description":{"type":"string"},"postal_address":{"$ref":"#/components/schemas/PostalAddressRequest"}},"required":["email","party_name","postal_address","tin"]},"AdditionalDocumentReferenceRequest":{"type":"object","properties":{"irn":{"type":"string"},"issue_date":{"type":"string","format":"date"}},"required":["irn","issue_date"]},"AllowanceChargeRequest":{"type":"object","properties":{"amount":{"type":"number"},"charge_indicator":{"type":"boolean"}}},"BillPartyRequest":{"type":"object","properties":{"tin":{"type":"string"},"email":{"type":"string"},"telephone":{"type":"string","pattern":"^\\+?[0-9]*$"},"party_name":{"type":"string"},"business_description":{"type":"string"},"postal_address":{"$ref":"#/components/schemas/PostalAddressRequest"}},"required":["email","party_name","postal_address","tin"]},"BillingReferenceRequest":{"type":"object","properties":{"irn":{"type":"string"},"issue_date":{"type":"string","format":"date"}},"required":["irn","issue_date"]},"ContractDocumentReferenceRequest":{"type":"object","properties":{"irn":{"type":"string"},"issue_date":{"type":"string","format":"date"}},"required":["irn","issue_date"]},"DispatchDocumentReferenceRequest":{"type":"object","properties":{"irn":{"type":"string"},"issue_date":{"type":"string","format":"date"}},"required":["irn","issue_date"]},"DocumentReferenceRequest":{"type":"object","properties":{"irn":{"type":"string"},"issue_date":{"type":"string","format":"date"}},"required":["irn","issue_date"]},"InvoiceDeliveryPeriodRequest":{"type":"object","properties":{"start_date":{"type":"string","format":"date"},"end_date":{"type":"string","format":"date"}},"required":["end_date","start_date"]},"InvoiceLineRequest":{"type":"object","properties":{"item":{"$ref":"#/components/schemas/ItemRequest"},"price":{"$ref":"#/components/schemas/PriceRequest"},"hsn_code":{"type":"string"},"product_category":{"type":"string"},"isic_code":{"type":"string"},"service_category":{"type":"string"},"discount_rate":{"type":"number"},"discount_amount":{"type":"number"},"fee_rate":{"type":"number"},"fee_amount":{"type":"number"},"invoiced_quantity":{"type":"integer","format":"int32"},"line_extension_amount":{"type":"number"}},"required":["discount_amount","discount_rate","fee_amount","fee_rate","invoiced_quantity","line_extension_amount"]},"ItemRequest":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"sellers_item_identification":{"type":"string"}},"required":["description","name"]},"LegalMonetaryTotalRequest":{"type":"object","properties":{"line_extension_amount":{"type":"number","description":"The total amount of all invoice items before tax and any discounts/charges","example":" A construction company buys 3 bags of cement at ₦10,000 each and 4 pallets of bricks at ₦5,000 each. After a 5% discount and a 2% handling fee, the total is ₦48,500."},"tax_exclusive_amount":{"type":"number","description":"The total invoice amount before tax is added.","example":"The ₦48,500 total remains unchanged at this stage because VAT has not yet been added."},"tax_inclusive_amount":{"type":"number","description":"The total invoice after tax is added","example":"VAT (7.5%) on ₦48,500 is ₦3,637.50, making the final tax-inclusive amount ₦52,137.50."},"payable_amount":{"type":"number","description":"The final amount the buyer must pay after discounts, charges, and tax","example":"The buyer must pay ₦52,137.50, including VAT, to receive the goods."}},"required":["line_extension_amount","payable_amount","tax_exclusive_amount","tax_inclusive_amount"]},"LocalTime":{"type":"object","properties":{"hour":{"type":"integer","format":"int32"},"minute":{"type":"integer","format":"int32"},"second":{"type":"integer","format":"int32"},"nano":{"type":"integer","format":"int32"}}},"OriginatorDocumentReferenceRequest":{"type":"object","properties":{"irn":{"type":"string"},"issue_date":{"type":"string","format":"date"}},"required":["irn","issue_date"]},"PayeePartyRequest":{"type":"object","properties":{"tin":{"type":"string"},"email":{"type":"string"},"telephone":{"type":"string","pattern":"^\\+?[0-9]*$"},"party_name":{"type":"string"},"business_description":{"type":"string"},"postal_address":{"$ref":"#/components/schemas/PostalAddressRequest"}},"required":["email","party_name","postal_address","tin"]},"PaymentMeansRequest":{"type":"object","properties":{"payment_means_code":{"type":"string"},"payment_due_date":{"type":"string","format":"date"}}},"PostalAddressRequest":{"type":"object","properties":{"street_name":{"type":"string"},"city_name":{"type":"string"},"postal_zone":{"type":"string"},"lga":{"type":"string"},"state":{"type":"string"},"country":{"type":"string"}},"required":["city_name","country","lga","postal_zone","state","street_name"]},"PriceRequest":{"type":"object","properties":{"price_amount":{"type":"number"},"base_quantity":{"type":"integer","format":"int32"},"price_unit":{"type":"string"}},"required":["base_quantity","price_amount","price_unit"]},"ReceiptDocumentReferenceRequest":{"type":"object","properties":{"irn":{"type":"string"},"issue_date":{"type":"string","format":"date"}},"required":["irn","issue_date"]},"ShipPartyRequest":{"type":"object","properties":{"tin":{"type":"string"},"email":{"type":"string"},"telephone":{"type":"string","pattern":"^\\+?[0-9]*$"},"party_name":{"type":"string"},"business_description":{"type":"string"},"postal_address":{"$ref":"#/components/schemas/PostalAddressRequest"}},"required":["email","party_name","postal_address","tin"]},"TaxCategoryRequest":{"type":"object","properties":{"id":{"type":"string"},"percent":{"type":"number"}},"required":["id","percent"]},"TaxRepresentativePartyRequest":{"type":"object","properties":{"tin":{"type":"string"},"email":{"type":"string"},"telephone":{"type":"string","pattern":"^\\+?[0-9]*$"},"party_name":{"type":"string"},"business_description":{"type":"string"},"postal_address":{"$ref":"#/components/schemas/PostalAddressRequest"}},"required":["email","tin"]},"TaxSubtotalRequest":{"type":"object","properties":{"taxable_amount":{"type":"number","description":"The total value of goods/services on which tax is calculated"},"tax_amount":{"type":"number","description":"The actual tax applied on the taxable amount."},"tax_category":{"$ref":"#/components/schemas/TaxCategoryRequest","description":"Specifies what type of tax is applied to this subtotal."}},"required":["tax_amount","tax_category","taxable_amount"]},"TaxTotalRequest":{"type":"object","properties":{"tax_amount":{"type":"number","description":"The total tax charged on the invoice."},"tax_subtotal":{"type":"array","description":"This section breaks down the tax into different tax categories","items":{"$ref":"#/components/schemas/TaxSubtotalRequest"}}},"required":["tax_amount","tax_subtotal"]},"ValidateInvoiceRequest":{"type":"object","properties":{"irn":{"type":"string","description":"A unique tracking number assigned to each invoice.\n"},"note":{"type":"string","description":"A free-form text pertinent to the invoice and conveying information that is not contained explicitly in other structures.\n\nExample:\nThis invoice includes a 5% discount."},"business_id":{"type":"string","description":"This is the unique identification number for the business issuing the invoice.\n"},"issue_date":{"type":"string","format":"date","description":"The date, assigned by the sender, on which this document was issued.\n"},"due_date":{"type":"string","format":"date","description":"The date on which the Invoice is due for payment.\n"},"issue_time":{"$ref":"#/components/schemas/LocalTime","description":"The time, assigned by the sender, at which this document was issued.\n"},"invoice_type_code":{"type":"string","description":"A code that specifies the type of invoice being issued.\n"},"invoice_kind":{"type":"string"},"payment_status":{"type":"string","description":"Shows whether the invoice has been paid or is still pending.\n","pattern":"^(PENDING|PAID|REJECTED)$"},"tax_point_date":{"type":"string","format":"date","description":"The actual date when the tax becomes applicable.\n"},"document_currency_code":{"type":"string","description":"A code that specifies the default currency in which the invoice is issued.\n"},"tax_currency_code":{"type":"string","description":"The currency in which tax amounts are calculated.\n"},"accounting_cost":{"type":"string","description":"Represents the accounting category or cost center assigned to the transaction.\nScenario:\nA large company assigns cost codes to expenses. If ₦5000 is booked under “Office Supplies,” the \"accounting_cost\" field helps track spending across different business units."},"buyer_reference":{"type":"string","description":"A reference number or code provided by the buyer to track the invoice.\n"},"invoice_delivery_period":{"$ref":"#/components/schemas/InvoiceDeliveryPeriodRequest","description":"Defines the start and end dates for when goods or services were delivered.\n"},"order_reference":{"type":"string","description":"The order number tied to an invoice. Example: \"ITW001-E9E0C0D3-20240619\""},"billing_reference":{"type":"array","description":"Links the invoice to previous billing documents (e.g., credit notes, debit notes, or prior invoices).\n","items":{"$ref":"#/components/schemas/BillingReferenceRequest"}},"dispatch_document_reference":{"$ref":"#/components/schemas/DispatchDocumentReferenceRequest","description":"An identifier of a referenced dispatch advice. Refers to the document used to track the dispatch of goods.\nScenario:\nA factory ships goods to a warehouse. The dispatch document ensures that the goods left the supplier’s location and arrived at the buyer’s address.\n"},"receipt_document_reference":{"$ref":"#/components/schemas/ReceiptDocumentReferenceRequest","description":"A reference to a Receipt Advice associated with an invoice. Links the invoice to a receipt document\nScenario:\n\nA supermarket issues a receipt (\"ITW001-E9E0C0D3-20240619\") after a customer makes a partial payment for an order. When generating the final invoice, this receipt is referenced to track the paid amount."},"originator_document_reference":{"$ref":"#/components/schemas/OriginatorDocumentReferenceRequest","description":"A reference to an originator document associated with an invoice. Identifies the original document that initiated the invoice.\n"},"contract_document_reference":{"$ref":"#/components/schemas/ContractDocumentReferenceRequest","description":"A reference to a contract associated with an invoice. Links the invoice to a contract governing the transaction.\n"},"document_reference":{"type":"array","items":{"$ref":"#/components/schemas/DocumentReferenceRequest"}},"additional_document_reference":{"type":"array","description":"A reference to an additional document associated with an invoice. Used as a general reference field for any related documents.\n","items":{"$ref":"#/components/schemas/AdditionalDocumentReferenceRequest"}},"accounting_supplier_party":{"$ref":"#/components/schemas/AccountingSupplierPartyRequest","description":"This refers to the seller or supplier issuing the invoice.\n"},"accounting_customer_party":{"$ref":"#/components/schemas/AccountingCustomerPartyRequest","description":"The buyer or recipient of the goods or services.\n This is an optional field"},"payee_party":{"$ref":"#/components/schemas/PayeePartyRequest"},"tax_representative_party":{"$ref":"#/components/schemas/TaxRepresentativePartyRequest","description":"If a business has a tax agent handling invoicing and compliance, their details are entered here.\n "},"actual_delivery_date":{"type":"string","format":"date","description":"The date the goods or services were delivered.\n\nMust be in YYYY-MM-DD format. Example: \"2024-05-14\"\n"},"payment_means":{"type":"array","description":"Defines how the invoice will be paid and when payment is due.","items":{"$ref":"#/components/schemas/PaymentMeansRequest"}},"payment_terms_note":{"type":"string","description":"Describes the terms and conditions of payment.\nExample:\nPayment due within 30 days of invoice issue."},"allowance_charge":{"type":"array","description":"Defines any discounts (allowance) or extra charges (charge).","items":{"$ref":"#/components/schemas/AllowanceChargeRequest"}},"tax_total":{"type":"array","description":"The total tax charged on the invoice.\nScenario:\nA 2.3% tax is applied to an item worth ₦800, leading to a tax of ₦8.","items":{"$ref":"#/components/schemas/TaxTotalRequest"}},"legal_monetary_total":{"$ref":"#/components/schemas/LegalMonetaryTotalRequest","description":"The total amount the buyer has to pay, including or excluding taxes."},"invoice_line":{"type":"array","description":"This captures details about each item or service being invoiced.\n","items":{"$ref":"#/components/schemas/InvoiceLineRequest"}},"bill_party":{"$ref":"#/components/schemas/BillPartyRequest"},"ship_party":{"$ref":"#/components/schemas/ShipPartyRequest"}},"required":["accounting_supplier_party","business_id","document_currency_code","invoice_line","invoice_type_code","irn","issue_date","legal_monetary_total","payment_status","tax_currency_code","tax_total"]},"AccessPointProviderResponse":{"type":"object","properties":{"message":{"type":"string"},"payment_status":{"type":"string","enum":["REJECTED","PAID","PENDING"]}}},"FirsErrorDetails":{"type":"object","properties":{"timestamp":{"type":"string","format":"date-time"},"message":{"type":"string"},"details":{"type":"string"},"status":{"type":"string","enum":["100 CONTINUE","101 SWITCHING_PROTOCOLS","102 PROCESSING","103 EARLY_HINTS","103 CHECKPOINT","200 OK","201 CREATED","202 ACCEPTED","203 NON_AUTHORITATIVE_INFORMATION","204 NO_CONTENT","205 RESET_CONTENT","206 PARTIAL_CONTENT","207 MULTI_STATUS","208 ALREADY_REPORTED","226 IM_USED","300 MULTIPLE_CHOICES","301 MOVED_PERMANENTLY","302 FOUND","302 MOVED_TEMPORARILY","303 SEE_OTHER","304 NOT_MODIFIED","305 USE_PROXY","307 TEMPORARY_REDIRECT","308 PERMANENT_REDIRECT","400 BAD_REQUEST","401 UNAUTHORIZED","402 PAYMENT_REQUIRED","403 FORBIDDEN","404 NOT_FOUND","405 METHOD_NOT_ALLOWED","406 NOT_ACCEPTABLE","407 PROXY_AUTHENTICATION_REQUIRED","408 REQUEST_TIMEOUT","409 CONFLICT","410 GONE","411 LENGTH_REQUIRED","412 PRECONDITION_FAILED","413 PAYLOAD_TOO_LARGE","413 REQUEST_ENTITY_TOO_LARGE","414 URI_TOO_LONG","414 REQUEST_URI_TOO_LONG","415 UNSUPPORTED_MEDIA_TYPE","416 REQUESTED_RANGE_NOT_SATISFIABLE","417 EXPECTATION_FAILED","418 I_AM_A_TEAPOT","419 INSUFFICIENT_SPACE_ON_RESOURCE","420 METHOD_FAILURE","421 DESTINATION_LOCKED","422 UNPROCESSABLE_ENTITY","423 LOCKED","424 FAILED_DEPENDENCY","425 TOO_EARLY","426 UPGRADE_REQUIRED","428 PRECONDITION_REQUIRED","429 TOO_MANY_REQUESTS","431 REQUEST_HEADER_FIELDS_TOO_LARGE","451 UNAVAILABLE_FOR_LEGAL_REASONS","500 INTERNAL_SERVER_ERROR","501 NOT_IMPLEMENTED","502 BAD_GATEWAY","503 SERVICE_UNAVAILABLE","504 GATEWAY_TIMEOUT","505 HTTP_VERSION_NOT_SUPPORTED","506 VARIANT_ALSO_NEGOTIATES","507 INSUFFICIENT_STORAGE","508 LOOP_DETECTED","509 BANDWIDTH_LIMIT_EXCEEDED","510 NOT_EXTENDED","511 NETWORK_AUTHENTICATION_REQUIRED"]}}},"GenerateIRNRequestQRCode":{"type":"object","properties":{"invoice_number":{"type":"string","description":"The identifier generated by the taxpayer’s accounting system","maxLength":50,"minLength":2,"pattern":"^[a-zA-Z0-9]+$"},"issuance_date":{"type":"string","description":"The exact date of the invoice issuance","pattern":"\\d{4}(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])"},"service_id":{"type":"string","description":"A unique, system-generated identifier assigned to each taxpayer upon successful business enablement."},"business_id":{"type":"string","description":"This is the unique identification number for the business issuing the invoice.\n"},"certificate":{"type":"string","description":"Digital certificate representing the issuing entity, used to identify and establish trust for the invoice source.\n"}},"required":["business_id","invoice_number","service_id"]},"AppResponseGenerateQrCodeResponse":{"type":"object","properties":{"status":{"type":"string"},"message":{"type":"string"},"data":{"$ref":"#/components/schemas/GenerateQrCodeResponse"},"execTime":{"type":"string"},"error":{"type":"object"}}},"GenerateQrCodeResponse":{"type":"object","properties":{"qr_code_base64":{"type":"string"},"qr_code_file_bytes":{"type":"string","format":"byte"}}},"GenerateIRNRequest":{"type":"object","properties":{"invoice_number":{"type":"string","description":"The identifier generated by the taxpayer’s accounting system","maxLength":50,"minLength":2,"pattern":"^[a-zA-Z0-9]+$"},"issuance_date":{"type":"string","description":"The exact date of the invoice issuance","pattern":"\\d{4}(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])"},"service_id":{"type":"string","description":"A unique, system-generated identifier assigned to each taxpayer upon successful business enablement."},"business_id":{"type":"string","description":"This is the unique identification number for the business issuing the invoice.\n"}},"required":["business_id","invoice_number","service_id"]},"GenerateIRNResponse":{"type":"object","properties":{"irn":{"type":"string"}}},"GenerateInvoiceNumberRequest":{"type":"object","properties":{"code":{"type":"string","maxLength":5,"minLength":2,"pattern":"^[A-Z]+$"},"serial_number":{"type":"integer","format":"int64","minimum":1}}},"AppResponseGenerateInvoiceNumberResponse":{"type":"object","properties":{"status":{"type":"string"},"message":{"type":"string"},"data":{"$ref":"#/components/schemas/GenerateInvoiceNumberResponse"},"execTime":{"type":"string"},"error":{"type":"object"}}},"GenerateInvoiceNumberResponse":{"type":"object","properties":{"invoice_number":{"type":"string"}}},"VerifyTinRequest":{"type":"object","properties":{"tin":{"type":"string"}}},"AppResponseVerifyTinApiResponse":{"type":"object","properties":{"status":{"type":"string"},"message":{"type":"string"},"data":{"$ref":"#/components/schemas/VerifyTinApiResponse"},"execTime":{"type":"string"},"error":{"type":"object"}}},"VerifyTinApiResponse":{"type":"object","properties":{"message":{"type":"string"},"tin":{"type":"string"},"taxpayer_name":{"type":"string"},"address":{"type":"string"},"taxofficer_id":{"type":"string"},"taxofficer_name":{"type":"string"},"rc_number":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"}}},"AccountingCustomerPartyRequestV2":{"type":"object","properties":{"tin":{"type":"string"},"email":{"type":"string"},"telephone":{"type":"string","pattern":"^\\+?[0-9]*$"},"party_name":{"type":"string"},"business_description":{"type":"string"},"postal_address":{"$ref":"#/components/schemas/PostalAddressRequestV2"}},"required":["email","party_name","postal_address","tin"]},"AccountingSupplierPartyRequestV2":{"type":"object","properties":{"tin":{"type":"string"},"email":{"type":"string"},"telephone":{"type":"string","pattern":"^\\+?[0-9]*$"},"party_name":{"type":"string"},"business_description":{"type":"string"},"postal_address":{"$ref":"#/components/schemas/PostalAddressRequestV2"}},"required":["email","party_name","postal_address","tin"]},"BillPartyRequestV2":{"type":"object","properties":{"tin":{"type":"string"},"email":{"type":"string"},"telephone":{"type":"string","pattern":"^\\+?[0-9]*$"},"party_name":{"type":"string"},"business_description":{"type":"string"},"postal_address":{"$ref":"#/components/schemas/PostalAddressRequestV2"}},"required":["email","party_name","postal_address","tin"]},"InvoiceLineRequestV2":{"type":"object","properties":{"item":{"$ref":"#/components/schemas/ItemRequest"},"price":{"$ref":"#/components/schemas/PriceRequest"},"hsn_code":{"type":"string"},"product_category":{"type":"string"},"isic_code":{"type":"string"},"service_category":{"type":"string"},"discount_rate":{"type":"number"},"discount_amount":{"type":"number"},"fee_rate":{"type":"number"},"fee_amount":{"type":"number"},"invoiced_quantity":{"type":"integer","format":"int32"},"line_extension_amount":{"type":"number"}},"required":["discount_amount","discount_rate","fee_amount","fee_rate","invoiced_quantity","item","line_extension_amount","price"]},"PayeePartyRequestV2":{"type":"object","properties":{"tin":{"type":"string"},"email":{"type":"string"},"telephone":{"type":"string","pattern":"^\\+?[0-9]*$"},"party_name":{"type":"string"},"business_description":{"type":"string"},"postal_address":{"$ref":"#/components/schemas/PostalAddressRequestV2"}},"required":["email","party_name","postal_address","tin"]},"PostalAddressRequestV2":{"type":"object","properties":{"street_name":{"type":"string"},"city_name":{"type":"string"},"postal_zone":{"type":"string","maxLength":20,"minLength":0},"lga":{"type":"string"},"state":{"type":"string"},"country":{"type":"string"}},"required":["city_name","country","lga","postal_zone","state","street_name"]},"ShipPartyRequestV2":{"type":"object","properties":{"tin":{"type":"string"},"email":{"type":"string"},"telephone":{"type":"string","pattern":"^\\+?[0-9]*$"},"party_name":{"type":"string"},"business_description":{"type":"string"},"postal_address":{"$ref":"#/components/schemas/PostalAddressRequestV2"}},"required":["email","party_name","postal_address","tin"]},"TaxRepresentativePartyRequestV2":{"type":"object","properties":{"tin":{"type":"string"},"email":{"type":"string"},"telephone":{"type":"string","pattern":"^\\+?[0-9]*$"},"party_name":{"type":"string"},"business_description":{"type":"string"},"postal_address":{"$ref":"#/components/schemas/PostalAddressRequestV2"}},"required":["email","postal_address","tin"]},"ValidateInvoiceRequestV2":{"type":"object","properties":{"irn":{"type":"string","description":"A unique tracking number assigned to each invoice.\n"},"note":{"type":"string","description":"A free-form text pertinent to the invoice and conveying information that is not contained explicitly in other structures.\n\nExample:\nThis invoice includes a 5% discount."},"business_id":{"type":"string","description":"This is the unique identification number for the business issuing the invoice.\n"},"issue_date":{"type":"string","format":"date","description":"The date, assigned by the sender, on which this document was issued.\n"},"due_date":{"type":"string","format":"date","description":"The date on which the Invoice is due for payment.\n"},"issue_time":{"$ref":"#/components/schemas/LocalTime","description":"The time, assigned by the sender, at which this document was issued.\n"},"invoice_type_code":{"type":"string","description":"A code that specifies the type of invoice being issued.\n"},"invoice_kind":{"type":"string","description":"Shows the kind of invoice being process","pattern":"^(B2C|B2B|B2G)$"},"payment_status":{"type":"string","description":"Shows whether the invoice has been paid or is still pending.\n","pattern":"^(PENDING|PAID|REJECTED)$"},"tax_point_date":{"type":"string","format":"date","description":"The actual date when the tax becomes applicable.\n"},"document_currency_code":{"type":"string","description":"A code that specifies the default currency in which the invoice is issued.\n"},"tax_currency_code":{"type":"string","description":"The currency in which tax amounts are calculated.\n"},"accounting_cost":{"type":"string","description":"Represents the accounting category or cost center assigned to the transaction.\nScenario:\nA large company assigns cost codes to expenses. If ₦5000 is booked under “Office Supplies,” the \"accounting_cost\" field helps track spending across different business units."},"buyer_reference":{"type":"string","description":"A reference number or code provided by the buyer to track the invoice.\n"},"invoice_delivery_period":{"$ref":"#/components/schemas/InvoiceDeliveryPeriodRequest","description":"Defines the start and end dates for when goods or services were delivered.\n"},"order_reference":{"type":"string","description":"The order number tied to an invoice. Example: \"ITW001-E9E0C0D3-20240619\""},"billing_reference":{"type":"array","description":"Links the invoice to previous billing documents (e.g., credit notes, debit notes, or prior invoices).\n","items":{"$ref":"#/components/schemas/BillingReferenceRequest"}},"dispatch_document_reference":{"$ref":"#/components/schemas/DispatchDocumentReferenceRequest","description":"An identifier of a referenced dispatch advice. Refers to the document used to track the dispatch of goods.\nScenario:\nA factory ships goods to a warehouse. The dispatch document ensures that the goods left the supplier’s location and arrived at the buyer’s address.\n"},"receipt_document_reference":{"$ref":"#/components/schemas/ReceiptDocumentReferenceRequest","description":"A reference to a Receipt Advice associated with an invoice. Links the invoice to a receipt document\nScenario:\n\nA supermarket issues a receipt (\"ITW001-E9E0C0D3-20240619\") after a customer makes a partial payment for an order. When generating the final invoice, this receipt is referenced to track the paid amount."},"originator_document_reference":{"$ref":"#/components/schemas/OriginatorDocumentReferenceRequest","description":"A reference to an originator document associated with an invoice. Identifies the original document that initiated the invoice.\n"},"contract_document_reference":{"$ref":"#/components/schemas/ContractDocumentReferenceRequest","description":"A reference to a contract associated with an invoice. Links the invoice to a contract governing the transaction.\n"},"document_reference":{"type":"array","items":{"$ref":"#/components/schemas/DocumentReferenceRequest"}},"additional_document_reference":{"type":"array","description":"A reference to an additional document associated with an invoice. Used as a general reference field for any related documents.\n","items":{"$ref":"#/components/schemas/AdditionalDocumentReferenceRequest"}},"accounting_supplier_party":{"$ref":"#/components/schemas/AccountingSupplierPartyRequestV2","description":"This refers to the seller or supplier issuing the invoice.\n"},"accounting_customer_party":{"$ref":"#/components/schemas/AccountingCustomerPartyRequestV2","description":"The buyer or recipient of the goods or services.\n This is an optional field"},"payee_party":{"$ref":"#/components/schemas/PayeePartyRequestV2"},"tax_representative_party":{"$ref":"#/components/schemas/TaxRepresentativePartyRequestV2","description":"If a business has a tax agent handling invoicing and compliance, their details are entered here.\n "},"actual_delivery_date":{"type":"string","format":"date","description":"The date the goods or services were delivered.\n\nMust be in YYYY-MM-DD format. Example: \"2024-05-14\"\n"},"payment_means":{"type":"array","description":"Defines how the invoice will be paid and when payment is due.","items":{"$ref":"#/components/schemas/PaymentMeansRequest"}},"payment_terms_note":{"type":"string","description":"Describes the terms and conditions of payment.\nExample:\nPayment due within 30 days of invoice issue."},"allowance_charge":{"type":"array","description":"Defines any discounts (allowance) or extra charges (charge).","items":{"$ref":"#/components/schemas/AllowanceChargeRequest"}},"tax_total":{"type":"array","description":"The total tax charged on the invoice.\nScenario:\nA 2.3% tax is applied to an item worth ₦800, leading to a tax of ₦8.","items":{"$ref":"#/components/schemas/TaxTotalRequest"}},"legal_monetary_total":{"$ref":"#/components/schemas/LegalMonetaryTotalRequest","description":"The total amount the buyer has to pay, including or excluding taxes."},"invoice_line":{"type":"array","description":"This captures details about each item or service being invoiced.\n","items":{"$ref":"#/components/schemas/InvoiceLineRequestV2"}},"bill_party":{"$ref":"#/components/schemas/BillPartyRequestV2"},"ship_party":{"$ref":"#/components/schemas/ShipPartyRequestV2"}},"required":["accounting_supplier_party","business_id","document_currency_code","invoice_kind","invoice_line","invoice_type_code","irn","issue_date","legal_monetary_total","payment_status","tax_currency_code","tax_total"]},"ValidatePreGeneratedIrnRequestV2":{"type":"object","properties":{"irn":{"type":"string","description":"Unique tracking number in the format <reference>-<serviceId>-<datestamp>","pattern":"^[A-Za-z0-9]+-[A-Za-z0-9]+-\\d{8}$"},"business_id":{"type":"string","description":"This is the unique identification number for the business issuing the invoice.\n"}},"required":["business_id","irn"]},"TransmitInvoiceRequest":{"type":"object","properties":{"irn":{"type":"string","description":"A unique tracking number assigned to each invoice.\n"}},"required":["irn"]},"AppResponseTransmitInvoiceResponse":{"type":"object","properties":{"status":{"type":"string"},"message":{"type":"string"},"data":{"$ref":"#/components/schemas/TransmitInvoiceResponse"},"execTime":{"type":"string"},"error":{"type":"object"}}},"TransmitInvoiceResponse":{"type":"object","properties":{"message":{"type":"array","items":{"type":"string"}}}},"ValidatePreGeneratedIrnRequest":{"type":"object","properties":{"irn":{"type":"string","description":"Unique tracking number in the format <reference>-<serviceId>-<datestamp>","pattern":"^[A-Za-z0-9]+-[A-Za-z0-9]+-\\d{8}$"},"business_id":{"type":"string","description":"This is the unique identification number for the business issuing the invoice.\n"}},"required":["business_id","irn"]},"UpdateInvoiceRequest":{"type":"object","properties":{"payment_status":{"type":"string","description":"The payment status\n","pattern":"^(PENDING|PAID|REJECTED)$"}}},"InvoiceReferenceNumberRequest":{"type":"object","properties":{"irn":{"type":"string"}},"required":["irn"]},"AppResponseDataResponse":{"type":"object","properties":{"status":{"type":"string"},"message":{"type":"string"},"data":{"$ref":"#/components/schemas/DataResponse"},"execTime":{"type":"string"},"error":{"type":"object"}}},"DataResponse":{"type":"object","properties":{"message":{"type":"string"}}},"AppResponseListInvoiceTypeResponse":{"type":"object","properties":{"status":{"type":"string"},"message":{"type":"string"},"data":{"type":"array","items":{"$ref":"#/components/schemas/InvoiceTypeResponse"}},"execTime":{"type":"string"},"error":{"type":"object"}}},"InvoiceTypeResponse":{"type":"object","properties":{"code":{"type":"string"},"value":{"type":"string"}}},"AccountingCustomer":{"type":"object","properties":{"id":{"type":"string"},"tin":{"type":"string"},"email":{"type":"string"},"telephone":{"type":"string","pattern":"^\\+?[0-9]*$"},"postal_address_id":{"type":"string"},"party_name":{"type":"string"},"business_description":{"type":"string"},"postal_address":{"$ref":"#/components/schemas/PostalAddress"}},"required":["email","tin"]},"AccountingSupplier":{"type":"object","properties":{"id":{"type":"string"},"tin":{"type":"string"},"email":{"type":"string"},"telephone":{"type":"string","pattern":"^\\+?[0-9]*$"},"postal_address_id":{"type":"string"},"party_name":{"type":"string"},"business_description":{"type":"string"},"postal_address":{"$ref":"#/components/schemas/PostalAddress"}},"required":["email","tin"]},"AppResponseInvoiceResponse":{"type":"object","properties":{"status":{"type":"string"},"message":{"type":"string"},"data":{"$ref":"#/components/schemas/InvoiceResponse"},"execTime":{"type":"string"},"error":{"type":"object"}}},"InvoiceResponse":{"type":"object","properties":{"irn":{"type":"string"},"note":{"type":"string"},"business_id":{"type":"string"},"issue_date":{"type":"string","format":"date"},"due_date":{"type":"string","format":"date"},"issue_time":{"$ref":"#/components/schemas/LocalTime"},"invoice_type_code":{"type":"string"},"payment_status":{"type":"string","pattern":"^(PENDING|PAID|CANCELLED)$"},"tax_point_date":{"type":"string","format":"date"},"document_currency_code":{"type":"string"},"tax_currency_code":{"type":"string"},"accounting_cost":{"type":"string"},"buyer_reference":{"type":"string"},"invoice_delivery_period":{"$ref":"#/components/schemas/InvoiceDeliveryPeriodRequest"},"order_reference":{"type":"string"},"billing_reference":{"type":"array","items":{"$ref":"#/components/schemas/BillingReferenceRequest"}},"dispatch_document_reference":{"$ref":"#/components/schemas/DispatchDocumentReferenceRequest"},"receipt_document_reference":{"$ref":"#/components/schemas/ReceiptDocumentReferenceRequest"},"originator_document_reference":{"$ref":"#/components/schemas/OriginatorDocumentReferenceRequest"},"contract_document_reference":{"$ref":"#/components/schemas/ContractDocumentReferenceRequest"},"document_reference":{"type":"array","items":{"$ref":"#/components/schemas/DocumentReferenceRequest"}},"additional_document_reference":{"type":"array","items":{"$ref":"#/components/schemas/AdditionalDocumentReferenceRequest"}},"accounting_supplier_party":{"$ref":"#/components/schemas/AccountingSupplier"},"accounting_customer_party":{"$ref":"#/components/schemas/AccountingCustomer"},"payee_party":{"$ref":"#/components/schemas/PayeePartyRequest"},"bill_party":{"$ref":"#/components/schemas/BillPartyRequest"},"ship_party":{"$ref":"#/components/schemas/ShipPartyRequest"},"tax_representative_party":{"$ref":"#/components/schemas/TaxRepresentativePartyRequest"},"actual_delivery_date":{"type":"string","format":"date"},"payment_means":{"type":"array","items":{"$ref":"#/components/schemas/PaymentMeans"}},"payment_terms_note":{"type":"string"},"allowance_charge":{"type":"array","items":{"$ref":"#/components/schemas/AllowanceChargeRequest"}},"tax_total":{"type":"array","items":{"$ref":"#/components/schemas/TaxTotalRequest"}},"legal_monetary_total":{"$ref":"#/components/schemas/LegalMonetaryTotalRequest"},"invoice_line":{"type":"array","items":{"$ref":"#/components/schemas/InvoiceLineRequest"}}},"required":["accounting_supplier_party","business_id","document_currency_code","invoice_line","invoice_type_code","irn","issue_date","legal_monetary_total","payment_status"]},"PaymentMeans":{"type":"object","properties":{"payment_means_code":{"type":"string"},"payment_due_date":{"type":"string","format":"date-time"}}},"PostalAddress":{"type":"object","properties":{"id":{"type":"string"},"lga":{"type":"string"},"state":{"type":"string"},"street_name":{"type":"string"},"city_name":{"type":"string"},"postal_zone":{"type":"string"},"country":{"type":"string"}}},"ResourceVatExemptions":{"type":"object","properties":{"tariff":{"type":"string"},"description":{"type":"string"},"heading_no":{"type":"string"},"harmonized_system_code":{"type":"string"},"tariff_category":{"type":"string"}}},"ErrorDetails":{"type":"object","properties":{"timestamp":{"type":"string","format":"date-time"},"message":{"type":"string"},"details":{"type":"string"},"status":{"type":"string","enum":["100 CONTINUE","101 SWITCHING_PROTOCOLS","102 PROCESSING","103 EARLY_HINTS","103 CHECKPOINT","200 OK","201 CREATED","202 ACCEPTED","203 NON_AUTHORITATIVE_INFORMATION","204 NO_CONTENT","205 RESET_CONTENT","206 PARTIAL_CONTENT","207 MULTI_STATUS","208 ALREADY_REPORTED","226 IM_USED","300 MULTIPLE_CHOICES","301 MOVED_PERMANENTLY","302 FOUND","302 MOVED_TEMPORARILY","303 SEE_OTHER","304 NOT_MODIFIED","305 USE_PROXY","307 TEMPORARY_REDIRECT","308 PERMANENT_REDIRECT","400 BAD_REQUEST","401 UNAUTHORIZED","402 PAYMENT_REQUIRED","403 FORBIDDEN","404 NOT_FOUND","405 METHOD_NOT_ALLOWED","406 NOT_ACCEPTABLE","407 PROXY_AUTHENTICATION_REQUIRED","408 REQUEST_TIMEOUT","409 CONFLICT","410 GONE","411 LENGTH_REQUIRED","412 PRECONDITION_FAILED","413 PAYLOAD_TOO_LARGE","413 REQUEST_ENTITY_TOO_LARGE","414 URI_TOO_LONG","414 REQUEST_URI_TOO_LONG","415 UNSUPPORTED_MEDIA_TYPE","416 REQUESTED_RANGE_NOT_SATISFIABLE","417 EXPECTATION_FAILED","418 I_AM_A_TEAPOT","419 INSUFFICIENT_SPACE_ON_RESOURCE","420 METHOD_FAILURE","421 DESTINATION_LOCKED","422 UNPROCESSABLE_ENTITY","423 LOCKED","424 FAILED_DEPENDENCY","425 TOO_EARLY","426 UPGRADE_REQUIRED","428 PRECONDITION_REQUIRED","429 TOO_MANY_REQUESTS","431 REQUEST_HEADER_FIELDS_TOO_LARGE","451 UNAVAILABLE_FOR_LEGAL_REASONS","500 INTERNAL_SERVER_ERROR","501 NOT_IMPLEMENTED","502 BAD_GATEWAY","503 SERVICE_UNAVAILABLE","504 GATEWAY_TIMEOUT","505 HTTP_VERSION_NOT_SUPPORTED","506 VARIANT_ALSO_NEGOTIATES","507 INSUFFICIENT_STORAGE","508 LOOP_DETECTED","509 BANDWIDTH_LIMIT_EXCEEDED","510 NOT_EXTENDED","511 NETWORK_AUTHENTICATION_REQUIRED"]},"validation":{"type":"array","items":{"$ref":"#/components/schemas/ValidationError"}}}},"ValidationError":{"type":"object"},"ResourceTaxCategories":{"type":"object","properties":{"code":{"type":"string"},"value":{"type":"string"}}},"ResourceStateCode":{"type":"object","properties":{"name":{"type":"string"},"code":{"type":"string"}}},"ResourceServiceCode":{"type":"object","properties":{"code":{"type":"string"},"description":{"type":"string"}}},"ResourceProductCodes":{"type":"object","properties":{"hscode":{"type":"string"},"description":{"type":"string"}}},"ResourcePaymentMeans":{"type":"object","properties":{"code":{"type":"string"},"value":{"type":"string"}}},"ResourceLocalGovernmentCode":{"type":"object","properties":{"name":{"type":"string"},"code":{"type":"string"},"state_code":{"type":"string"}}},"ResourceInvoiceType":{"type":"object","properties":{"code":{"type":"string"},"value":{"type":"string"}}},"ResourceCurrencies":{"type":"object","properties":{"symbol":{"type":"string"},"name":{"type":"string"},"rounding":{"type":"integer","format":"int32"},"code":{"type":"string"},"symbol_native":{"type":"string"},"decimal_digits":{"type":"integer","format":"int32"},"name_plural":{"type":"string"}}},"ResourceCountries":{"type":"object","properties":{"name":{"type":"string"},"iso_3166_2":{"type":"string"},"region":{"type":"string"},"alpha_2":{"type":"string"},"alpha_3":{"type":"string"},"country_code":{"type":"string"},"sub_region":{"type":"string"},"intermediate_region":{"type":"string"},"region_code":{"type":"string"},"sub_region_code":{"type":"string"},"intermediate_region_code":{"type":"string"}}},"AppResponseConfirmInvoiceResponse":{"type":"object","properties":{"status":{"type":"string"},"message":{"type":"string"},"data":{"$ref":"#/components/schemas/ConfirmInvoiceResponse"},"execTime":{"type":"string"},"error":{"type":"object"}}},"ConfirmInvoiceResponse":{"type":"object","properties":{"transmitted":{"type":"boolean","description":"The transmitted status\n"},"delivered":{"type":"boolean","description":"The delivery status\n"},"issue_date":{"type":"string","description":"The issued date of the invoice\n"},"due_date":{"type":"string","description":"The due date of the invoice\n"},"sync_date":{"type":"string","description":"The sync date of the invoice\n"},"payment_status":{"type":"string","description":"The payment status\n"}}},"HealthResponse":{"type":"object","properties":{"firstStatus":{"type":"boolean"},"webhookStatus":{"type":"boolean"},"etranzactStatus":{"$ref":"#/components/schemas/Status"}}},"Status":{"type":"object","properties":{"description":{"type":"string"},"status":{"type":"string"}}}},"securitySchemes":{"x-api-key":{"type":"apiKey","name":"x-api-key","in":"header"},"x-api-signature":{"type":"apiKey","name":"x-api-signature","in":"header"},"x-api-timestamp":{"type":"apiKey","name":"x-api-timestamp","in":"header"}}}}