{"openapi":"3.1.0","info":{"title":"FisKit API","description":"Electronic invoicing with ARCA (Argentina) over REST and JSON: send the voucher,                                 get the CAE. Field names are snake_case; dates are YYYY-MM-DD and amounts have up                                 to 2 decimals.\n\n**Authentication:** `Authorization: Bearer sk_test_...` issues against ARCA's                                 testing environment, without tax validity; `sk_live_...` issues real vouchers.                                 Create the keys in the dashboard.\n\n**Errors** always share one format: `{\"error\": {\"type\", \"code\", \"message\", \"param\",                                 \"request_id\"}}`. Use `code` in your code; it is stable.\n\nStep-by-step guide: https://fiskit.com.ar/developers","version":"v1"},"servers":[{"url":"https://api.fiskit.com.ar","description":"Production and testing (the API key chooses the environment)"}],"security":[{"apiKey":[]}],"tags":[{"name":"Taxpayers","description":"Look up a CUIT in the ARCA registry."},{"name":"Invoices","description":"Issue electronic vouchers with ARCA and query them."}],"paths":{"/v1/invoices":{"post":{"tags":["Invoices"],"summary":"Issue an invoice","description":"Requests the CAE from ARCA and returns the authorized voucher with its number.\n\nOnly `voucher_type` and `amounts.total` are always required. Without `receiver` the voucher                     goes to a final consumer, without `concept` it is for products, and without `point_of_sale` the                     default one from the dashboard is used. For types A and B, send `amounts.vat_rate` and the API                     computes the net, the VAT and the breakdown; or send them yourself for full control.\n\nMinimal invoice C: `{\"voucher_type\": \"invoice_c\", \"amounts\": {\"total\": 1500}}`","operationId":"createInvoice","parameters":[{"name":"Idempotency-Key","in":"header","description":"Unique per invoice, for example your sale id. Retrying with the same key returns the same invoice and never issues a duplicate.","required":false,"schema":{"type":"string"},"example":"sale-8812"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateInvoiceRequest"}}},"required":true},"responses":{"200":{"description":"Authorized: it has number and CAE.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceResponse"}}}},"202":{"description":"Not final yet. If ARCA is down and you sent an Idempotency-Key, FisKit keeps retrying it for 24 h and sends a webhook when it is final; or query it with GET.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceResponse"}}}},"400":{"description":"Invalid data, or ARCA rejected it (error.authority_errors has its reasons).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"401":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"402":{"description":"The CUIT reached its monthly quota of live invoices.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"409":{"description":"Same Idempotency-Key with a different body.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}}}}},"/v1/invoices/{id}/email":{"post":{"tags":["Invoices"],"summary":"Email the invoice to the customer","description":"Sends the PDF to your customer, from FisKit with replies going to your account email. Without\na body it uses receiver.email from the invoice. Invoices issued with receiver.email are emailed\nautomatically once authorized; use this to send them again or to another address (up to 5\nemails per invoice).","operationId":"emailInvoice","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmailRequest"}}}},"responses":{"202":{"description":"Queued; it is sent within seconds.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmailSent"}}}},"400":{"description":"Not authorized, no valid address, or the limit was reached.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"404":{"description":"It does not exist in this environment.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}}}}},"/v1/taxpayers/{cuit}":{"get":{"tags":["Taxpayers"],"summary":"Look up a CUIT","description":"Name, fiscal address and VAT condition of a CUIT, from the ARCA registry (constancia de\ninscripción). `receiver_vat_condition_id` is the value to send as receiver.vat_condition_id,\nand `voucher_letter_for_registered_issuer` the letter a VAT-registered issuer uses (A or B);\na monotributista always issues C. Works with test and live keys.","operationId":"getTaxpayer","parameters":[{"name":"cuit","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The taxpayer.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaxpayerResponse"}}}},"400":{"description":"The CUIT is not valid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"404":{"description":"The CUIT is not in the registry.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"503":{"description":"The registry cannot be queried right now; retry later.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}}}}},"/v1/invoices/{id}":{"get":{"tags":["Invoices"],"summary":"Get an invoice","description":"Its current status. Use it to follow a 202 until it is final.","operationId":"getInvoice","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"The invoice.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoiceResponse"}}}},"404":{"description":"It does not exist in this environment.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}}}}},"/v1/invoices/{id}/pdf":{"get":{"tags":["Invoices"],"summary":"Download the invoice PDF","description":"The printed voucher, ready to send to your customer: issuer and receiver data, lines, totals,\nCAE and the QR code ARCA requires. Only for authorized invoices. Your company's data (name,\naddress, VAT condition) is filled in once in the dashboard, under Connect with ARCA.","operationId":"getInvoicePdf","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"The PDF.","content":{"application/pdf":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"The invoice is not authorized.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}},"404":{"description":"It does not exist in this environment.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Envelope"}}}}}}}},"components":{"schemas":{"Amounts":{"properties":{"total":{"type":"number","description":"Voucher total. With only the total (and vat_rate for A and B) the API computes the rest.","example":1500},"untaxed":{"type":"number","description":"Untaxed amount (ImpTotConc). Types A and B."},"net":{"type":"number","description":"Taxed net (ImpNeto). For type C, equal to the total."},"exempt":{"type":"number","description":"Exempt amount (ImpOpEx). Types A and B."},"other_taxes":{"type":"number","description":"Other taxes (ImpTrib). Not supported yet: send 0 or omit it."},"vat":{"type":"number","description":"Total VAT (ImpIVA). Types A and B."},"vat_rate":{"type":"string","description":"Shortcut for types A and B: send only total and this rate, and the API computes net, vat and vat_breakdown.","enum":["0","2.5","5","10.5","21","27"],"example":"21"}},"required":["total"]},"AssociatedVoucher":{"description":"For credit and debit notes: the voucher they modify.","properties":{"voucher_type":{"type":"string","enum":["invoice_a","debit_note_a","credit_note_a","invoice_b","debit_note_b","credit_note_b","invoice_c","debit_note_c","credit_note_c"]},"point_of_sale":{"type":"integer","format":"int32"},"number":{"type":"integer","format":"int64"},"issuer_cuit":{"type":"integer","format":"int64"},"date":{"type":"string","format":"date"}},"required":["number","point_of_sale","voucher_type"]},"CreateInvoiceRequest":{"properties":{"point_of_sale":{"type":"integer","format":"int32","description":"ARCA point of sale for web services. If omitted, the default one chosen in the dashboard.","example":1},"voucher_type":{"type":"string","description":"Voucher type: A to a VAT-registered company, B to a final consumer or monotributista, C if you are a monotributista.","enum":["invoice_a","debit_note_a","credit_note_a","invoice_b","debit_note_b","credit_note_b","invoice_c","debit_note_c","credit_note_c"],"example":"invoice_c"},"concept":{"type":"string","description":"What is being invoiced. If omitted, products. Services require service_period.","enum":["products","services","products_and_services"],"example":"products"},"date":{"type":"string","format":"date","description":"Voucher date, YYYY-MM-DD. If omitted, today in Argentina.","example":"2026-11-10"},"receiver":{"$ref":"#/components/schemas/Receiver"},"amounts":{"$ref":"#/components/schemas/Amounts"},"vat_breakdown":{"type":"array","description":"VAT by rate, for types A and B. Not needed if you send amounts.vat_rate.","items":{"$ref":"#/components/schemas/VatItem"}},"service_period":{"$ref":"#/components/schemas/ServicePeriod"},"currency":{"$ref":"#/components/schemas/Currency"},"associated_vouchers":{"type":"array","description":"For credit and debit notes: the voucher they modify.","items":{"$ref":"#/components/schemas/AssociatedVoucher"}},"items":{"type":"array","description":"Lines shown on the PDF. Optional and not sent to ARCA: the amounts that count are the ones in `amounts`. Prices with VAT for B and C, without VAT for A.","items":{"$ref":"#/components/schemas/Item"},"maxItems":100,"minItems":0},"notes":{"type":"string","description":"Free text shown on the PDF. Not sent to ARCA.","example":"Pedido #8812","maxLength":1000,"minLength":0}},"required":["amounts","voucher_type"]},"Currency":{"description":"Only for vouchers in a foreign currency. If omitted, Argentine pesos.","properties":{"code":{"type":"string"},"exchange_rate":{"type":"number"}},"required":["code","exchange_rate"]},"Item":{"description":"Lines shown on the PDF. Optional and not sent to ARCA: the amounts that count are the ones in `amounts`. Prices with VAT for B and C, without VAT for A.","properties":{"description":{"type":"string","description":"What was sold.","example":"Plan mensual","maxLength":300,"minLength":0},"quantity":{"type":"number","description":"If omitted, 1.","example":1,"minimum":0},"unit_price":{"type":"number","description":"Unit price.","example":1500,"minimum":0}},"required":["description","unit_price"]},"Receiver":{"description":"Who receives the voucher. If omitted, a final consumer without identification (not allowed for type A).","properties":{"document_type":{"type":"string","description":"Type of the receiver's document. If omitted, a final consumer without identification.","enum":["cuit","cuil","dni","final_consumer"],"example":"dni"},"document_number":{"type":"integer","format":"int64","description":"Document number without dashes. Not needed for final_consumer.","example":30111222},"vat_condition_id":{"type":"integer","format":"int32","description":"ARCA's receiver VAT condition (RG 5616): 1 VAT-registered, 4 exempt, 5 final consumer, 6 monotributista. If omitted for dni or final_consumer, 5.","example":5},"name":{"type":"string","description":"Name or company name, shown on the PDF.","example":"Juan Pérez","maxLength":200,"minLength":0},"address":{"type":"string","description":"Address, shown on the PDF.","maxLength":300,"minLength":0},"email":{"type":"string","format":"email","description":"The customer's email, kept with the invoice.","example":"juan@example.com","maxLength":254,"minLength":0}}},"ServicePeriod":{"description":"Billed period, required for services.","properties":{"from":{"type":"string","format":"date"},"to":{"type":"string","format":"date"},"payment_due_date":{"type":"string","format":"date"}},"required":["from","payment_due_date","to"]},"VatItem":{"description":"VAT by rate, for types A and B. Not needed if you send amounts.vat_rate.","properties":{"rate":{"type":"string","enum":["0","2.5","5","10.5","21","27"]},"taxable_base":{"type":"number"},"amount":{"type":"number"}},"required":["amount","rate","taxable_base"]},"AuthorityMessage":{"description":"ARCA's reasons when it rejected the voucher.","properties":{"code":{"type":"integer","format":"int32"},"message":{"type":"string"}}},"InvoiceResponse":{"properties":{"id":{"type":"string","description":"Invoice id in FisKit, to query it later.","example":"6f1c2a90-3b7d-4c1e-9a52-0d8e7f6b1c23"},"object":{"type":"string","description":"Always invoice.","example":"invoice"},"status":{"type":"string","description":"authorized (final, with CAE), rejected (final), pending, processing or reconciling (in progress: query it again) or failed.","example":"authorized"},"point_of_sale":{"type":"integer","format":"int32","description":"Point of sale used.","example":1},"voucher_type":{"type":"string","enum":["invoice_a","debit_note_a","credit_note_a","invoice_b","debit_note_b","credit_note_b","invoice_c","debit_note_c","credit_note_c"]},"number":{"type":"integer","format":"int64","description":"Number assigned by ARCA. Only when authorized.","example":1842},"cae":{"type":"string","description":"Electronic authorization code (CAE). Only when authorized.","example":"76451234567890"},"cae_due_date":{"type":"string","format":"date","description":"Date until which the CAE is valid.","example":"2026-11-20"},"authority_observations":{"type":"array","description":"Warnings from ARCA on an authorized voucher.","items":{"$ref":"#/components/schemas/AuthorityMessage"}},"authority_errors":{"type":"array","description":"ARCA's reasons when it rejected the voucher.","items":{"$ref":"#/components/schemas/AuthorityMessage"}}}},"ApiError":{"properties":{"type":{"type":"string"},"code":{"type":"string"},"message":{"type":"string"},"param":{"type":"string"},"request_id":{"type":"string"},"authority_errors":{"type":"array","items":{"$ref":"#/components/schemas/AuthorityMessage"}},"invoice":{"$ref":"#/components/schemas/InvoiceResponse"}}},"Envelope":{"properties":{"error":{"$ref":"#/components/schemas/ApiError"}}},"EmailRequest":{"properties":{"email":{"type":"string","example":"juan@example.com"}}},"EmailSent":{"properties":{"email":{"type":"string"}}},"Address":{"properties":{"street":{"type":"string"},"city":{"type":"string"},"province":{"type":"string"},"postal_code":{"type":"string"}}},"TaxpayerResponse":{"properties":{"object":{"type":"string"},"cuit":{"type":"integer","format":"int64"},"name":{"type":"string"},"type":{"type":"string","enum":["person","company"]},"active":{"type":"boolean"},"vat_condition":{"type":"string","enum":["registered","monotributo","exempt","not_registered"]},"receiver_vat_condition_id":{"type":"integer","format":"int32","description":"The value for receiver.vat_condition_id when invoicing this CUIT."},"voucher_letter_for_registered_issuer":{"type":"string","description":"The letter a VAT-registered issuer uses: A for VAT-registered and monotributo receivers, B otherwise."},"monotributo_category":{"type":"string"},"address":{"$ref":"#/components/schemas/Address"}}}},"securitySchemes":{"apiKey":{"type":"http","description":"Your API key: sk_test_... or sk_live_...","scheme":"bearer"}}}}