@beel_es/sdk 2.4.0 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1053,6 +1053,10 @@ interface paths {
1053
1053
  * invoice's registration. An invoice whose registration was rejected before reaching the
1054
1054
  * AEAT, or that was voided without ever being registered, has no PDF and answers
1055
1055
  * `400 INVOICE_NOT_REGISTERED_NO_PDF` immediately. Its `verifactu.error_message` says why.
1056
+ * - **Unavailable on our side:** when the invoice needs its VeriFactu QR and BeeL. cannot
1057
+ * produce the PDF, the answer is `409 INVOICE_PDF_UNAVAILABLE` immediately instead of a
1058
+ * `202` that would never end. Asking again does not help: contact support with the
1059
+ * `meta.request_id`. Once it is solved, the same request returns the PDF.
1056
1060
  * - **Never modified:** the PDF of an issued invoice is generated once — with its VeriFactu QR
1057
1061
  * when it applies — and stays the document you delivered. Voiding the invoice or issuing
1058
1062
  * a corrective against it does not change the PDF: read the invoice's `status` to know it.
@@ -1088,7 +1092,8 @@ interface paths {
1088
1092
  * PDF does not exist yet — right after issuing (whether or not the invoice goes through
1089
1093
  * VeriFactu, since the PDF is generated asynchronously) or, for a VeriFactu invoice
1090
1094
  * specifically, while it waits for the QR of its registration — the answer is `202`, as for
1091
- * the PDF download.
1095
+ * the PDF download. When BeeL. cannot produce that PDF, the answer is
1096
+ * `409 INVOICE_PDF_UNAVAILABLE`, also as for the PDF download.
1092
1097
  */
1093
1098
  get: operations["getCompanyInvoicePreview"];
1094
1099
  put?: never;
@@ -3628,8 +3633,8 @@ interface paths {
3628
3633
  * ownership you may keep or lower your access, but only they can raise it.
3629
3634
  * - **Billing:** the level never affects it — you pay for the account's subscription at any
3630
3635
  * level.
3631
- * - **`OPERATE`:** issuing invoices on the holder's behalf additionally requires a signed
3632
- * fiscal representation from them.
3636
+ * - **`OPERATE`:** issuing invoices on the holder's behalf in Live additionally requires a
3637
+ * signed fiscal representation from them. In Test you can issue from the start.
3633
3638
  * - **Entitlement:** requires `manage_accounts`.
3634
3639
  */
3635
3640
  patch: operations["changeManagedAccountAccessLevel"];
@@ -4385,6 +4390,13 @@ interface paths {
4385
4390
  * - **`legal_name_verified`:** tells those two cases apart.
4386
4391
  * - **`census_status`:** says whether an identified NIF is also deregistered or revoked.
4387
4392
  *
4393
+ * ## In sandbox
4394
+ *
4395
+ * With a `beel_sk_test_` key the AEAT register is not queried. Syntax is still checked: a
4396
+ * well-formed NIF comes back `VALID` with the `legal_name` you sent, `legal_name_verified: false`
4397
+ * and no `census_status`; a malformed one comes back `INVALID`. Use a Live key to check the real
4398
+ * register.
4399
+ *
4388
4400
  * ## Invalid input
4389
4401
  *
4390
4402
  * - **Bad syntax is an answer, not an error:** it comes back `200` with `status: INVALID`, so
@@ -4784,7 +4796,8 @@ interface paths {
4784
4796
  * `GET /v1/companies/{company_id}/representation/document`, sign it digitally and return
4785
4797
  * it through `POST /v1/companies/{company_id}/representation/submit`.
4786
4798
  * - **Fiscal identity:** must be complete before the document can be produced. An incomplete
4787
- * one is rejected with `400` naming what is missing.
4799
+ * one is rejected with `422` `PROFILE_INCOMPLETE` naming what is missing. The street number
4800
+ * is not required.
4788
4801
  * - **Existing representation:** a company that already holds an active one is rejected too.
4789
4802
  * Cancel it first.
4790
4803
  */
@@ -4932,6 +4945,109 @@ interface paths {
4932
4945
  patch?: never;
4933
4946
  trace?: never;
4934
4947
  };
4948
+ "/v1/companies/{company_id}/email-configuration": {
4949
+ parameters: {
4950
+ query?: never;
4951
+ header?: never;
4952
+ path: {
4953
+ /** @description Unique identifier (UUID) of the company the operation acts on: its identifier, not its NIF. It is the only source of context: the account that owns it is derived from it, and the `BeeL-Active-Company` header plays no part. A company you do not reach answers `403`, and so does a company that does not exist, so the existence of a company in another account is never disclosed. */
4954
+ company_id: string;
4955
+ };
4956
+ cookie?: never;
4957
+ };
4958
+ /**
4959
+ * Get the email configuration of a company
4960
+ * @description Returns the address the invoice emails of the company are sent from and the defaults that
4961
+ * apply when an invoice is sent by email. It applies only to invoice emails.
4962
+ *
4963
+ * - **`sender.source`, `sender.email_domain_id` and `sender.local_part`:** what the company
4964
+ * chose. A `local_part` that is `null` means `facturas`.
4965
+ * - **`sender.effective`:** the address the next invoice email will go out from, and why
4966
+ * (`reason`). With `source` `BEEL` it is the address of BeeL. Otherwise it is resolved in
4967
+ * this order: the email domain chosen by the company and the default email domain of the
4968
+ * account, then the address of BeeL. Only email domains that are verified, and only while
4969
+ * the account holds the custom email domain add-on, count. The add-on is contracted with
4970
+ * BeeL. `email_domain_id` is present only when the address uses one of the account's email
4971
+ * domains.
4972
+ * - **`defaults`:** the content applied to an invoice email that does not specify its own. Each
4973
+ * property is `null` when it is not set.
4974
+ * - **Domain no longer verified:** invoice emails go out from BeeL. without interruption, and
4975
+ * `reason` reports it.
4976
+ * - **Environment:** the configuration belongs to the company and is the same in test and live.
4977
+ */
4978
+ get: operations["getCompanyEmailConfiguration"];
4979
+ /**
4980
+ * Replace the email configuration of a company
4981
+ * @description Replaces the sender chosen for the invoice emails of the company, and optionally their
4982
+ * defaults. It does not affect other emails. The sender is a replacement, not a merge: a
4983
+ * property that is omitted or `null` goes back to its default, which is to inherit the default
4984
+ * email domain of the account and to use `facturas` as the `local_part`. The response is the
4985
+ * configuration as it is after the change, including the address in effect.
4986
+ *
4987
+ * - **`sender.source`:** when omitted it is `EMAIL_DOMAIN` if `email_domain_id` is sent and
4988
+ * `ACCOUNT_DEFAULT` otherwise. `email_domain_id` is accepted only with `EMAIL_DOMAIN`, and
4989
+ * `local_part` is not accepted with `BEEL`: any other combination answers `422`
4990
+ * `VALIDATION_ERROR`.
4991
+ * - **`defaults`:** omitted, the stored defaults stay as they are. `null` removes them. An
4992
+ * object replaces all of them, so a property left out of it is removed. Sending an object
4993
+ * requires the email customization plan: without it the call answers `403`
4994
+ * `FEATURE_NOT_AVAILABLE`, and the sender is not changed. The templates accept the variables
4995
+ * listed by `GET /v1/email-template-variables`.
4996
+ * - **`email_domain_id`:** an email domain of the account that has already been registered. A
4997
+ * domain that does not exist, belongs to another account or was removed answers `404`
4998
+ * `EMAIL_DOMAIN_NOT_FOUND`; one that is still being registered answers `409`
4999
+ * `EMAIL_DOMAIN_NOT_READY`. Choosing a domain that is not verified is allowed: until it is
5000
+ * verified, invoice emails go out from the default email domain of the account if that one is
5001
+ * verified, and from BeeL. otherwise.
5002
+ * - **`local_part`:** up to 64 characters: lowercase letters, digits and the symbols
5003
+ * `!#$%&'*+/=?^_\`{|}~-`, with single dots between groups. Any other value answers `422`
5004
+ * `VALIDATION_ERROR`.
5005
+ * - **Removed email domains:** when the email domain a company chose is removed, the company
5006
+ * goes back to `ACCOUNT_DEFAULT` and keeps its `local_part`.
5007
+ * - **Credentials:** it changes the address real invoices are sent from, so it requires a live
5008
+ * API key and the `companies:write` scope. A test API key answers `403`
5009
+ * `LIVE_CREDENTIAL_REQUIRED`. Send an `Idempotency-Key` so a retry does not repeat the
5010
+ * operation.
5011
+ * - **Environment:** the configuration belongs to the company and is the same in test and live.
5012
+ */
5013
+ put: operations["updateCompanyEmailConfiguration"];
5014
+ post?: never;
5015
+ delete?: never;
5016
+ options?: never;
5017
+ head?: never;
5018
+ patch?: never;
5019
+ trace?: never;
5020
+ };
5021
+ "/v1/email-template-variables": {
5022
+ parameters: {
5023
+ query?: never;
5024
+ header?: never;
5025
+ path?: never;
5026
+ cookie?: never;
5027
+ };
5028
+ /**
5029
+ * List the variables of the email templates
5030
+ * @description Returns the placeholders that the `subject` and `message` of the email templates accept,
5031
+ * such as `defaults.subject` in `GET /v1/companies/{company_id}/email-configuration`. Write a
5032
+ * placeholder, braces included, wherever the value should appear: it is replaced when the
5033
+ * email is sent.
5034
+ *
5035
+ * - **Scope:** the catalogue is the same for every credential and does not depend on any
5036
+ * account or company, so the operation takes no identifier.
5037
+ * - **Unknown placeholders:** a placeholder that is not listed is sent as written.
5038
+ *
5039
+ * **Closed catalogue.** This collection is fixed and bounded: it carries no `pagination`, it
5040
+ * takes no `page`/`limit`, and every response holds the whole set.
5041
+ */
5042
+ get: operations["listEmailTemplateVariables"];
5043
+ put?: never;
5044
+ post?: never;
5045
+ delete?: never;
5046
+ options?: never;
5047
+ head?: never;
5048
+ patch?: never;
5049
+ trace?: never;
5050
+ };
4935
5051
  "/v1/companies/{company_id}/verifactu-configuration": {
4936
5052
  parameters: {
4937
5053
  query?: never;
@@ -5371,6 +5487,10 @@ interface paths {
5371
5487
  * under the NIF it was sealed with. To move it, first
5372
5488
  * `DELETE /v1/companies/{company_id}/payment-connections/{connection_id}` on the NIF
5373
5489
  * that holds it, then open a new authorization on the NIF you want it under.
5490
+ * A provider account that was disconnected but already has payments recorded under a NIF
5491
+ * cannot be moved to another NIF: the callback fails with
5492
+ * `OAUTH_ACCOUNT_HAS_HISTORY_IN_OTHER_COMPANY`, and the way forward is to connect a new
5493
+ * provider account for the other NIF. Without recorded payments the move is allowed.
5374
5494
  */
5375
5495
  post: operations["initiatePaymentConnection"];
5376
5496
  delete?: never;
@@ -6378,6 +6498,191 @@ interface paths {
6378
6498
  patch?: never;
6379
6499
  trace?: never;
6380
6500
  };
6501
+ "/v1/accounts/{account_id}/email-domains": {
6502
+ parameters: {
6503
+ query?: never;
6504
+ header?: never;
6505
+ path: {
6506
+ /** @description Your own account, or an account you provisioned. The account in the path, not the credential, decides which account the operation acts on. A `403` is returned when you do not reach it, the same response an account that does not exist gets. */
6507
+ account_id: string;
6508
+ };
6509
+ cookie?: never;
6510
+ };
6511
+ /**
6512
+ * List the email domains
6513
+ * @description Returns the domains the account sends its emails from, each with the DNS records to publish
6514
+ * and the verification status of the domain and of every record. It only reads; it does not
6515
+ * register or verify anything.
6516
+ *
6517
+ * - **Without the add-on:** the list is still returned, so you can see what the account
6518
+ * holds, and `max_email_domains` is `0`.
6519
+ * - **`max_email_domains`:** the maximum number of domains the custom email domain add-on allows the
6520
+ * account; `null` when the add-on sets no explicit limit. The add-on is contracted with
6521
+ * BeeL.
6522
+ * - **`verified_at` and `last_checked_at`:** absent until the domain is verified or checked
6523
+ * for the first time.
6524
+ * - **Environment:** domains belong to the account and are the same in test and live.
6525
+ *
6526
+ * **Closed catalogue.** The domains of an account are a short, bounded set: the response
6527
+ * carries no `pagination`, the operation takes no paging parameters, and every response holds the
6528
+ * whole set.
6529
+ */
6530
+ get: operations["listAccountEmailDomains"];
6531
+ put?: never;
6532
+ /**
6533
+ * Register an email domain
6534
+ * @description Registers a domain to send your account's emails from and returns the DNS records you have to
6535
+ * publish for it. The domain starts `PENDING`; publish the records and ask for the check with
6536
+ * `POST /v1/accounts/{account_id}/email-domains/{email_domain_id}/verify`. A domain that is not
6537
+ * `VERIFIED` 72 hours after it was registered is removed and its name is freed.
6538
+ *
6539
+ * - **Add-on:** requires the custom email domain add-on, which is contracted with BeeL. Without
6540
+ * it the call answers `403 FEATURE_NOT_AVAILABLE`.
6541
+ * - **Default:** the first domain of an account, or the new one when the account has no default
6542
+ * domain, becomes the default; otherwise the default does not change.
6543
+ * - **`EMAIL_DOMAIN_INVALID` (`422`):** the text is not a full domain name. Internationalised names
6544
+ * are accepted and stored in their ASCII form.
6545
+ * - **`EMAIL_DOMAIN_RESERVED` (`422`):** the domain cannot be used as a sending domain, for example because it belongs to BeeL
6546
+ * or to a public mailbox provider.
6547
+ * - **`EMAIL_DOMAIN_UNAVAILABLE` (`409`):** the domain is already in use: registered by your account,
6548
+ * by another account, or already held in the sending service BeeL uses. The answer is the same in
6549
+ * every case and says nothing about who holds it.
6550
+ * - **While it registers:** a domain that is still registering shows `status: PENDING` with
6551
+ * `dns_records: []`. Read it again in a few seconds; if it stays that way, remove it with `DELETE`
6552
+ * and register it again.
6553
+ * - **`EMAIL_DOMAIN_LIMIT_REACHED` (`409`):** the account already holds as many domains as the
6554
+ * add-on allows; `error.details.limit` carries that number.
6555
+ * - **Unpaid billing:** when the billing of the account is unpaid the call answers `402 PAYMENT_REQUIRED`.
6556
+ * - **Credentials:** it changes the real account, so it requires a live API key or a dashboard
6557
+ * session. A test API key answers `403 LIVE_CREDENTIAL_REQUIRED`. Send an `Idempotency-Key` so a retry
6558
+ * does not repeat the operation.
6559
+ */
6560
+ post: operations["createAccountEmailDomain"];
6561
+ delete?: never;
6562
+ options?: never;
6563
+ head?: never;
6564
+ patch?: never;
6565
+ trace?: never;
6566
+ };
6567
+ "/v1/accounts/{account_id}/email-domains/{email_domain_id}": {
6568
+ parameters: {
6569
+ query?: never;
6570
+ header?: never;
6571
+ path: {
6572
+ /** @description Your own account, or an account you provisioned. The account in the path, not the credential, decides which account the operation acts on. A `403` is returned when you do not reach it, the same response an account that does not exist gets. */
6573
+ account_id: string;
6574
+ /** @description Identifier of the email domain. */
6575
+ email_domain_id: string;
6576
+ };
6577
+ cookie?: never;
6578
+ };
6579
+ /**
6580
+ * Get an email domain
6581
+ * @description Returns one domain of your account with the DNS records to publish and the verification
6582
+ * status of the domain and of every record. It only reads; it does not verify anything. A domain
6583
+ * still registering shows `status: PENDING` with `dns_records: []`.
6584
+ *
6585
+ * It works without the custom email domain add-on, so you can inspect what the account holds.
6586
+ * A domain of another account, or one already removed, answers `404`.
6587
+ */
6588
+ get: operations["getAccountEmailDomain"];
6589
+ put?: never;
6590
+ post?: never;
6591
+ /**
6592
+ * Remove an email domain
6593
+ * @description Removes the domain from your account and from the email sending service, which frees the name so
6594
+ * it can be registered again. The account's emails stop being sent from it.
6595
+ *
6596
+ * - **Without the add-on:** it works, so you can clean up what the account still holds.
6597
+ * - **Default domain:** removing the default leaves the account without one; its emails go out
6598
+ * from BeeL until you set another.
6599
+ * - **Name:** the name is free for a new registration as soon as the call returns. If the removal in
6600
+ * the sending service fails afterwards, an immediate new registration of the same name may answer
6601
+ * `EMAIL_DOMAIN_UNAVAILABLE` for a while.
6602
+ * - **Still registering:** a domain that stays `PENDING` with `dns_records: []` is removed this way.
6603
+ * - **Credentials:** it changes the real account, so it requires a live API key or a dashboard
6604
+ * session. A test API key answers `403 LIVE_CREDENTIAL_REQUIRED`. Send an `Idempotency-Key` so a
6605
+ * retry does not repeat the operation.
6606
+ */
6607
+ delete: operations["deleteAccountEmailDomain"];
6608
+ options?: never;
6609
+ head?: never;
6610
+ patch?: never;
6611
+ trace?: never;
6612
+ };
6613
+ "/v1/accounts/{account_id}/email-domains/{email_domain_id}/verify": {
6614
+ parameters: {
6615
+ query?: never;
6616
+ header?: never;
6617
+ path: {
6618
+ /** @description Your own account, or an account you provisioned. The account in the path, not the credential, decides which account the operation acts on. A `403` is returned when you do not reach it, the same response an account that does not exist gets. */
6619
+ account_id: string;
6620
+ /** @description Identifier of the email domain. */
6621
+ email_domain_id: string;
6622
+ };
6623
+ cookie?: never;
6624
+ };
6625
+ get?: never;
6626
+ put?: never;
6627
+ /**
6628
+ * Verify an email domain
6629
+ * @description Asks for the DNS records of the domain to be checked, once you have published them. The check
6630
+ * is asynchronous: the call returns `202` with the domain as it is now, usually still `PENDING`,
6631
+ * and its `status` changes to `VERIFIED` or `FAILED` when the check finishes. Read the domain with
6632
+ * `GET` to see the result. A domain that is not `VERIFIED` 72 hours after it was registered is
6633
+ * removed and its name is freed.
6634
+ *
6635
+ * - **Add-on:** requires the custom email domain add-on, which is contracted with BeeL. Without
6636
+ * it the call answers `403 FEATURE_NOT_AVAILABLE`.
6637
+ * - **`EMAIL_DOMAIN_NOT_READY` (`409`):** the domain is still registering (`dns_records: []`); repeat
6638
+ * the call in a few seconds.
6639
+ * - **Sending service failure:** if the check cannot be requested the call fails with `502` and nothing changes.
6640
+ * - **Unpaid billing:** when the billing of the account is unpaid the call answers `402 PAYMENT_REQUIRED`.
6641
+ * - **Credentials:** it requires a live API key or a dashboard session. A test API key answers
6642
+ * `403 LIVE_CREDENTIAL_REQUIRED`. Send an `Idempotency-Key` so a retry does not repeat the operation.
6643
+ */
6644
+ post: operations["verifyAccountEmailDomain"];
6645
+ delete?: never;
6646
+ options?: never;
6647
+ head?: never;
6648
+ patch?: never;
6649
+ trace?: never;
6650
+ };
6651
+ "/v1/accounts/{account_id}/email-domains/{email_domain_id}/default": {
6652
+ parameters: {
6653
+ query?: never;
6654
+ header?: never;
6655
+ path: {
6656
+ /** @description Your own account, or an account you provisioned. The account in the path, not the credential, decides which account the operation acts on. A `403` is returned when you do not reach it, the same response an account that does not exist gets. */
6657
+ account_id: string;
6658
+ /** @description Identifier of the email domain. */
6659
+ email_domain_id: string;
6660
+ };
6661
+ cookie?: never;
6662
+ };
6663
+ get?: never;
6664
+ /**
6665
+ * Set the default email domain
6666
+ * @description Makes this domain the one the account's emails are sent from by default, and clears the
6667
+ * flag on the domain that had it, so the account always has at most one default.
6668
+ *
6669
+ * - **Repeatable:** it states the desired default rather than performing a change, so
6670
+ * repeating the call on the domain that already is the default returns the same `200`.
6671
+ * - **Any status:** a domain can be the default while it is still `PENDING` or `FAILED`.
6672
+ * Emails only leave from it once it is `VERIFIED`; until then they go out from BeeL.
6673
+ * - **Without the add-on:** it works, so an account can still choose among the domains it holds.
6674
+ * - **Credentials:** it changes the real account, so it requires a live API key or a dashboard
6675
+ * session. A test API key answers `403 LIVE_CREDENTIAL_REQUIRED`. Send an `Idempotency-Key` so a
6676
+ * retry does not repeat the operation.
6677
+ */
6678
+ put: operations["setAccountEmailDomainDefault"];
6679
+ post?: never;
6680
+ delete?: never;
6681
+ options?: never;
6682
+ head?: never;
6683
+ patch?: never;
6684
+ trace?: never;
6685
+ };
6381
6686
  "/v1/emails": {
6382
6687
  parameters: {
6383
6688
  query?: never;
@@ -7865,7 +8170,8 @@ interface components {
7865
8170
  attach_source_invoices?: boolean;
7866
8171
  /**
7867
8172
  * @description Only applies when `send_automatically` is `true`.
7868
- * Overrides default email settings. If it names no recipients, the email goes to the
8173
+ * Overrides the `defaults` of the company's email configuration: its `subject`, `message`
8174
+ * and `cc` are sent with the email. If it names no recipients, the email goes to the
7869
8175
  * customer's `billing_emails`, or to the customer's `email` when there are none.
7870
8176
  */
7871
8177
  email_config?: components["schemas"]["EmailConfiguration"];
@@ -8077,12 +8383,16 @@ interface components {
8077
8383
  */
8078
8384
  cc?: components["schemas"]["Email"][];
8079
8385
  /**
8080
- * @description Custom email subject (optional, if not specified uses a default)
8386
+ * @description Custom email subject (optional). Priority: the request that sends the email > this
8387
+ * `email_config.subject` > the `defaults.subject` of the company's email configuration >
8388
+ * the standard subject.
8081
8389
  * @example Invoice 2025/0001 - Web development services
8082
8390
  */
8083
8391
  subject?: string;
8084
8392
  /**
8085
- * @description Custom message (optional, added to email body)
8393
+ * @description Custom message (optional, added to the email body). It is sent with the email.
8394
+ * Priority: the request that sends the email > this `email_config.message` > the
8395
+ * `defaults.message` of the company's email configuration > the standard message.
8086
8396
  * @example Dear customer, please find attached the invoice for the services provided. Thank you for your trust.
8087
8397
  */
8088
8398
  message?: string;
@@ -8096,13 +8406,13 @@ interface components {
8096
8406
  /**
8097
8407
  * @description CC recipients. Copied addresses count as recipients of the message: they are subject
8098
8408
  * to the same sending restrictions and to the same quota as the addresses in `recipients`.
8099
- * When omitted, the CC addresses configured in the sender's email defaults apply; send an
8100
- * empty array to deliver the message without any copy.
8409
+ * When omitted, the invoice's `email_config.cc` applies, then the CC addresses in the `defaults` of the
8410
+ * company's email configuration; send an empty array to deliver the message without any copy.
8101
8411
  */
8102
8412
  cc?: components["schemas"]["Email"][];
8103
- /** @description Email subject (optional, if not specified uses a default) */
8413
+ /** @description Email subject. When omitted, the invoice's `email_config.subject` applies, then the `defaults.subject` of the company's email configuration, then the standard subject. */
8104
8414
  subject?: string;
8105
- /** @description Custom message (optional, added before standard message) */
8415
+ /** @description Custom message, added before the standard message. When omitted, the invoice's `email_config.message` applies, then the `defaults.message` of the company's email configuration, then the standard message. */
8106
8416
  message?: string;
8107
8417
  /** @default true */
8108
8418
  attach_pdf?: boolean;
@@ -9061,7 +9371,7 @@ interface components {
9061
9371
  * - {NUM}: Sequential number without padding (e.g., "1")
9062
9372
  * - {NUM:X}: Sequential number with padding (e.g., {NUM:4} → "0001")
9063
9373
  *
9064
- * **REQUIRED**: Must contain at least {NUM} or {NUM:X}
9374
+ * **REQUIRED**: Must contain exactly one {NUM} or {NUM:X}
9065
9375
  * **IMPORTANT**: Only uppercase (rejects {yy}, {mm}, {codigo}, etc.)
9066
9376
  *
9067
9377
  * Valid examples:
@@ -10552,8 +10862,13 @@ interface components {
10552
10862
  preview_days?: number;
10553
10863
  /** Format: date */
10554
10864
  end_date?: string | null;
10555
- /** Format: uuid */
10556
- series_id: string;
10865
+ /**
10866
+ * Format: uuid
10867
+ * @description Series the generated invoices are numbered in. Omit it to use the company's default
10868
+ * series for `invoice_type`. With no default standard series the call answers `422`
10869
+ * `SERIES_DEFAULT_NOT_FOUND`; the default simplified series is created on first use.
10870
+ */
10871
+ series_id?: string;
10557
10872
  invoice_type: components["schemas"]["RecurringInvoiceType"];
10558
10873
  /**
10559
10874
  * @description Total number of invoices this template will generate before ending on its own, between
@@ -11077,8 +11392,8 @@ interface components {
11077
11392
  */
11078
11393
  aeat_environment?: components["schemas"]["Environment"] | null;
11079
11394
  /**
11080
- * @description Account-level lifecycle, identical for every company of the account. AEAT emission
11081
- * additionally requires the per-NIF representation to be signed.
11395
+ * @description Account-level lifecycle, identical for every company of the account. AEAT emission in
11396
+ * Live additionally requires the per-NIF representation to be signed.
11082
11397
  */
11083
11398
  account_state?: components["schemas"]["AccountState"];
11084
11399
  /**
@@ -11343,6 +11658,8 @@ interface components {
11343
11658
  * (the provider rejected the code exchange), `ACCESS_DENIED` (the account holder declined
11344
11659
  * at the provider), `OAUTH_ACCOUNT_CONNECTED_TO_OTHER_COMPANY` (the provider account is
11345
11660
  * already connected to another NIF; disconnect it there first),
11661
+ * `OAUTH_ACCOUNT_HAS_HISTORY_IN_OTHER_COMPANY` (the provider account has payments recorded
11662
+ * under another NIF; connect a new provider account for this NIF),
11346
11663
  * `PROVIDER_ERROR` (any other provider-reported failure) or
11347
11664
  * `OAUTH_UNEXPECTED`. When omitted, the callback redirects to BeeL's default integrations
11348
11665
  * screen. A `return_url` that is not an absolute `https://` URL with a host is rejected
@@ -11430,10 +11747,12 @@ interface components {
11430
11747
  series?: components["schemas"]["CompanyPaymentConnectionSeries"];
11431
11748
  /**
11432
11749
  * Format: double
11433
- * @deprecated
11434
- * @description Deprecated. No longer affects auto-invoicing: a buyer with a tax ID and full address
11435
- * always gets an ordinary invoice; without them, a simplified one up to 3,000 EUR.
11436
- * Still accepted and returned.
11750
+ * @description Amount in EUR up to which a charge whose buyer has no complete fiscal data (tax ID, name
11751
+ * and address) is invoiced as a simplified invoice. Above it, the charge is not issued: it
11752
+ * waits as a draft standard invoice until the buyer's fiscal data is completed. A buyer with
11753
+ * complete fiscal data always gets a standard invoice, whatever the amount. Up to 400.00 is
11754
+ * the general limit; a higher value, up to 3000.00, is the issuer's statement that its
11755
+ * activity is one of those in article 4.2 of RD 1619/2012 (rule SIM-002).
11437
11756
  * @example 400
11438
11757
  */
11439
11758
  simplificada_threshold?: number;
@@ -11486,10 +11805,13 @@ interface components {
11486
11805
  series?: components["schemas"]["UpdateCompanyPaymentConnectionSeries"];
11487
11806
  /**
11488
11807
  * Format: double
11489
- * @deprecated
11490
- * @description Deprecated. No longer affects auto-invoicing: a buyer with a tax ID and full address
11491
- * always gets an ordinary invoice; without them, a simplified one up to 3,000 EUR.
11492
- * Still accepted; between 0.01 and 3000.00.
11808
+ * @description Amount in EUR up to which a charge whose buyer has no complete fiscal data (tax ID, name
11809
+ * and address) is invoiced as a simplified invoice. Above it, the charge is not issued: it
11810
+ * waits as a draft standard invoice until the buyer's fiscal data is completed. A buyer with
11811
+ * complete fiscal data always gets a standard invoice, whatever the amount. Up to 400.00 is
11812
+ * the general limit; a higher value, up to 3000.00, is the issuer's statement that its
11813
+ * activity is one of those in article 4.2 of RD 1619/2012 (rule SIM-002). Omit to keep
11814
+ * the current value.
11493
11815
  */
11494
11816
  simplificada_threshold?: number;
11495
11817
  /**
@@ -11529,9 +11851,11 @@ interface components {
11529
11851
  */
11530
11852
  external_event_id: string;
11531
11853
  /**
11532
- * @description Canonical identity of the payment at the provider. On Stripe this is always the
11533
- * PaymentIntent id (`pi_…`), so every event of the same payment carries the same value
11534
- * and can be grouped by it. Null while the identity is not yet resolved.
11854
+ * @description Canonical identity of the payment at the provider. On Stripe this is the
11855
+ * PaymentIntent id (`pi_…`); for a charge without a PaymentIntent, the Charge id
11856
+ * (`ch_…`); for a Stripe invoice paid outside Stripe, the payment record id (`pr_…`).
11857
+ * Every event of the same payment carries the same value and can be grouped by it.
11858
+ * Null while the identity is not yet resolved.
11535
11859
  * To trace the event back to the object that delivered it, use `source_object_id`.
11536
11860
  * @example pi_1234567890
11537
11861
  */
@@ -11580,11 +11904,12 @@ interface components {
11580
11904
  status: components["schemas"]["PaymentEventStatus"];
11581
11905
  /**
11582
11906
  * Format: uuid
11583
- * @description Invoice generated from the event, when there is one.
11907
+ * @description The invoice currently in force for this payment: when the simplified invoice it generated
11908
+ * was exchanged, the full invoice that replaced it. `null` when the event produced no invoice.
11584
11909
  */
11585
11910
  invoice_id?: string | null;
11586
11911
  /**
11587
- * @description Number of the invoice generated from the event. `null` while that invoice is still a
11912
+ * @description Number of the invoice in `invoice_id`. `null` while that invoice is still a
11588
11913
  * draft — a draft has no number yet — and `null` when the event produced no invoice.
11589
11914
  * @example 2026/0042
11590
11915
  */
@@ -11606,6 +11931,7 @@ interface components {
11606
11931
  * for reasons outside your control are excluded.
11607
11932
  */
11608
11933
  needs_action: boolean;
11934
+ outcome: components["schemas"]["PaymentEventOutcome"];
11609
11935
  /**
11610
11936
  * @description Whether a draft invoice can be generated from this event. When `false`, the draft
11611
11937
  * operation would be rejected.
@@ -11898,6 +12224,111 @@ interface components {
11898
12224
  };
11899
12225
  meta?: components["schemas"]["ResponseMeta"];
11900
12226
  };
12227
+ /**
12228
+ * @description Verification status of an email domain, and of each of its DNS records.
12229
+ *
12230
+ * - PENDING: the records have not been detected yet, or verification is in progress. A domain that
12231
+ * is not `VERIFIED` 72 hours after it was registered is removed
12232
+ * - VERIFIED: the records were detected and the domain can be used to send
12233
+ * - FAILED: verification did not succeed; check that the records are published as shown
12234
+ * @enum {string}
12235
+ */
12236
+ EmailDomainStatus: "PENDING" | "VERIFIED" | "FAILED";
12237
+ /**
12238
+ * @description Type of a DNS record.
12239
+ * @enum {string}
12240
+ */
12241
+ DnsRecordType: "MX" | "TXT" | "CNAME";
12242
+ /** @description A DNS record the domain owner has to publish for the domain to be verified. */
12243
+ DnsRecord: {
12244
+ type: components["schemas"]["DnsRecordType"];
12245
+ /**
12246
+ * @description Host name of the record, relative to the domain.
12247
+ * @example send
12248
+ */
12249
+ name: string;
12250
+ /**
12251
+ * @description Content the record must have.
12252
+ * @example mail.example.com
12253
+ */
12254
+ value: string;
12255
+ /**
12256
+ * @description Priority of the record. Only present on `MX` records.
12257
+ * @example 10
12258
+ */
12259
+ priority?: number;
12260
+ status: components["schemas"]["EmailDomainStatus"];
12261
+ };
12262
+ /** @description A domain an account sends its emails from. */
12263
+ EmailDomain: {
12264
+ /**
12265
+ * Format: uuid
12266
+ * @description Identifier of the email domain.
12267
+ * @example 550e8400-e29b-41d4-a716-446655440000
12268
+ */
12269
+ id: string;
12270
+ /**
12271
+ * @description Fully qualified domain name, in lowercase.
12272
+ * @example facturas.ejemplo.com
12273
+ */
12274
+ domain: string;
12275
+ status: components["schemas"]["EmailDomainStatus"];
12276
+ /**
12277
+ * @description Whether this is the domain the account's emails are sent from by default.
12278
+ * @example true
12279
+ */
12280
+ is_default: boolean;
12281
+ /**
12282
+ * @description Records to publish in the domain's DNS, with the verification status of each. Empty (`[]`) while
12283
+ * the domain is still registering, with `status: PENDING`: read it again in a few seconds, or
12284
+ * remove it with `DELETE` if it stays empty.
12285
+ */
12286
+ dns_records: components["schemas"]["DnsRecord"][];
12287
+ /**
12288
+ * Format: date-time
12289
+ * @description Moment the domain was registered.
12290
+ */
12291
+ created_at: string;
12292
+ /**
12293
+ * Format: date-time
12294
+ * @description Moment the domain was verified. Absent until it is.
12295
+ */
12296
+ verified_at?: string;
12297
+ /**
12298
+ * Format: date-time
12299
+ * @description Moment the records were last checked. Absent until the first check.
12300
+ */
12301
+ last_checked_at?: string;
12302
+ };
12303
+ EmailDomainListResponse: {
12304
+ /** @example true */
12305
+ success: boolean;
12306
+ data: {
12307
+ email_domains: components["schemas"]["EmailDomain"][];
12308
+ /**
12309
+ * @description Maximum number of email domains the account can have. `0` when the account does not
12310
+ * have the custom email domain add-on, which is contracted with BeeL. `null` when the
12311
+ * add-on sets no explicit limit.
12312
+ * @example 3
12313
+ */
12314
+ max_email_domains: number | null;
12315
+ };
12316
+ meta?: components["schemas"]["ResponseMeta"];
12317
+ };
12318
+ EmailDomainResponse: {
12319
+ /** @example true */
12320
+ success: boolean;
12321
+ data: components["schemas"]["EmailDomain"];
12322
+ meta?: components["schemas"]["ResponseMeta"];
12323
+ };
12324
+ CreateEmailDomainRequest: {
12325
+ /**
12326
+ * @description Fully qualified domain name to send from. It is trimmed, lowercased and stored without a
12327
+ * trailing dot; internationalised names are stored in their ASCII form.
12328
+ * @example facturas.ejemplo.com
12329
+ */
12330
+ domain: string;
12331
+ };
11901
12332
  /** @description Information about the queried period */
11902
12333
  QueriedPeriod: {
11903
12334
  /**
@@ -12520,6 +12951,8 @@ interface components {
12520
12951
  * @description Only on a full invoice issued in exchange for simplified invoices: the simplified
12521
12952
  * invoices it replaces, each now `VOIDED` with `void_cause` `EXCHANGED`. With VeriFactu,
12522
12953
  * the invoice is recorded as `F3` identifying them.
12954
+ * The invoice inherits the `metadata` of the simplified invoices; when there are several,
12955
+ * only the keys with the same value in all of them.
12523
12956
  */
12524
12957
  replaced_invoice_ids?: string[];
12525
12958
  void_cause?: components["schemas"]["VoidCause"];
@@ -12555,6 +12988,23 @@ interface components {
12555
12988
  * in `CONVERTED` status; never included in list rows.
12556
12989
  */
12557
12990
  converted_invoice_id?: string;
12991
+ /**
12992
+ * Format: uuid
12993
+ * @description UUID of the full invoice that replaced this simplified invoice when it was exchanged
12994
+ * (`void_cause` is `EXCHANGED`), derived at read time (not persisted).
12995
+ * Only present on the detail endpoint
12996
+ * (`GET /v1/companies/{company_id}/invoices/{invoice_id}`) for an exchanged simplified
12997
+ * invoice; never included in list rows.
12998
+ */
12999
+ replaced_by_invoice_id?: string;
13000
+ /**
13001
+ * @description UUIDs of the live (non-deleted) corrective invoices that rectify this invoice, in
13002
+ * order of creation, including drafts, derived at read time (not persisted).
13003
+ * Only present in responses that return a single invoice, such as
13004
+ * `GET /v1/companies/{company_id}/invoices/{invoice_id}`, and only when at least one
13005
+ * exists; never included in list rows.
13006
+ */
13007
+ rectified_by_invoice_ids?: string[];
12558
13008
  /** @description Reason for rectification (only for corrective invoices) */
12559
13009
  rectification_reason?: string;
12560
13010
  /**
@@ -12575,7 +13025,7 @@ interface components {
12575
13025
  * @description Additional metadata in key-value format. Invoices auto-generated from a
12576
13026
  * connected payment platform carry system keys you can filter on:
12577
13027
  * - external_customer_id: Payment-platform customer (e.g. Stripe `cus_…`), present when the payment carried a customer (absent on flows with no customer, e.g. Terminal / payment links without customer collection)
12578
- * - external_payment_id: Canonical payment reference. On Stripe this is always the PaymentIntent id (`pi_…`); the Charge, Stripe Invoice and Checkout Session ids are never used here, so every event of the same payment carries the same value.
13028
+ * - external_payment_id: Canonical payment reference. On Stripe this is the PaymentIntent id (`pi_…`); for a charge without a PaymentIntent, the Charge id (`ch_…`); for a Stripe invoice paid outside Stripe, the payment record id (`pr_…`). The Stripe Invoice and Checkout Session ids are never used here, so every event of the same payment carries the same value.
12579
13029
  * - payment_intent_id: Stripe PaymentIntent id, when the payment has one
12580
13030
  * - charge_id: Stripe Charge id, when the payment has one
12581
13031
  * - payment_provider: Origin platform (e.g. STRIPE_CONNECT)
@@ -12599,7 +13049,8 @@ interface components {
12599
13049
  */
12600
13050
  send_automatically?: boolean | null;
12601
13051
  /**
12602
- * @description Email configuration used when `send_automatically` is true.
13052
+ * @description Email configuration used when `send_automatically` is true. Its `subject`, `message`
13053
+ * and `cc` take priority over the `defaults` of the company's email configuration.
12603
13054
  * If it names no recipients, the email goes to the customer's `billing_emails`, or to
12604
13055
  * the customer's `email` when there are none.
12605
13056
  */
@@ -12879,13 +13330,25 @@ interface components {
12879
13330
  /**
12880
13331
  * @description CC recipients. Copied addresses count as recipients of the message: they are subject
12881
13332
  * to the same sending restrictions and to the same quota as the addresses in `recipients`.
12882
- * When omitted, the CC addresses configured in the sender's email defaults apply; send an
13333
+ * When omitted, the CC addresses in the `defaults` of the company's email configuration apply
13334
+ * (the `email_config.cc` of the invoice applies only when the delivery carries one invoice); send an
12883
13335
  * empty array to deliver the message without any copy.
12884
13336
  */
12885
13337
  cc?: components["schemas"]["Email"][];
12886
- /** @description Custom email subject. Defaults to the standard template. */
13338
+ /**
13339
+ * @description Custom email subject. When omitted, the `email_config.subject` of the invoice applies if the
13340
+ * delivery carries one invoice, then the `defaults.subject` of the company's email
13341
+ * configuration, then the standard subject. Variables resolve per delivery (see `message`).
13342
+ */
12887
13343
  subject?: string;
12888
- /** @description Custom message body. Defaults to the standard template. */
13344
+ /**
13345
+ * @description Custom message body. When omitted, the `email_config.message` of the invoice applies if the
13346
+ * delivery carries one invoice, then the `defaults.message` of the company's email
13347
+ * configuration, then the standard message. Variables in `subject` and `message` resolve per
13348
+ * delivery, which is one email: `{invoiceNumber}` is the list of invoice numbers separated by
13349
+ * ", ", `{customerName}` only when every invoice has the same customer, `{issuerName}` is the
13350
+ * issuer, and the others (total, dates) are empty.
13351
+ */
12889
13352
  message?: string;
12890
13353
  /** @description Email language. Defaults to the language of the requesting user. */
12891
13354
  language?: components["schemas"]["Language"];
@@ -13498,7 +13961,7 @@ interface components {
13498
13961
  * payment data and custom fields are taken from it, so only the recurrence is described here.
13499
13962
  * The source invoice is not modified.
13500
13963
  *
13501
- * Deliberately not a variant of `CreateRecurringInvoiceRequest`: that one requires `series_id`,
13964
+ * Deliberately not a variant of `CreateRecurringInvoiceRequest`: that one requires
13502
13965
  * `invoice_type` and `lines`, which this call does not carry. Relaxing them there would let a
13503
13966
  * template be created from scratch with no lines at all.
13504
13967
  */
@@ -14487,7 +14950,7 @@ interface components {
14487
14950
  *
14488
14951
  * `NONE` — no access to the data.
14489
14952
  * `VIEW` — read invoices, customers, products, series and fiscal data.
14490
- * `OPERATE` — everything in `VIEW`, plus creating and editing them. Issuing invoices for an account you manage additionally requires a signed fiscal representation from the account holder (see `/v1/accounts/{account_id}/companies/{company_id}/representation`).
14953
+ * `OPERATE` — everything in `VIEW`, plus creating and editing them. In Live, issuing invoices for an account you manage additionally requires a signed fiscal representation from the account holder (see `/v1/companies/{company_id}/representation`). In Test you can issue from the start.
14491
14954
  *
14492
14955
  * Access level never affects billing: whoever provisioned an account pays for its subscription regardless of the level they keep over it.
14493
14956
  * @enum {string}
@@ -15007,8 +15470,9 @@ interface components {
15007
15470
  max_size_formatted: string;
15008
15471
  /**
15009
15472
  * @description Size the request declared in its `Content-Length` header. Present
15010
- * when the whole body was measured, absent when the limit was reached
15011
- * while reading an individual uploaded file.
15473
+ * when the whole body was measured. Absent when the limit was reached
15474
+ * while reading an individual uploaded file, or when the request did
15475
+ * not declare a `Content-Length` and was stopped while being read.
15012
15476
  * @example 5242880
15013
15477
  */
15014
15478
  request_size_bytes?: string;
@@ -15483,6 +15947,145 @@ interface components {
15483
15947
  data?: components["schemas"]["IssuingReadinessData"];
15484
15948
  meta?: components["schemas"]["ResponseMeta"];
15485
15949
  };
15950
+ /**
15951
+ * @description What the company chose as the sender of its invoice emails.
15952
+ *
15953
+ * - ACCOUNT_DEFAULT: no choice; it inherits the default email domain of the account.
15954
+ * - EMAIL_DOMAIN: one of the email domains of the account, in `email_domain_id`.
15955
+ * - BEEL: the address of BeeL.
15956
+ * @enum {string}
15957
+ */
15958
+ CompanyEmailSenderSource: "ACCOUNT_DEFAULT" | "EMAIL_DOMAIN" | "BEEL";
15959
+ /**
15960
+ * @description Why invoice emails go out from the address they go out from.
15961
+ *
15962
+ * - CUSTOM_DOMAIN: from a verified email domain of the account. Nothing to do.
15963
+ * - ADDON_INACTIVE: the company or the account has an email domain but the account does not
15964
+ * hold the custom email domain add-on, so emails go out from BeeL. Contract the add-on with
15965
+ * BeeL. to use the domain.
15966
+ * - DOMAIN_NOT_VERIFIED: the email domains that apply are not verified, so emails go out from
15967
+ * BeeL. Verify the domain with `POST /v1/accounts/{account_id}/email-domains/{email_domain_id}/verify`
15968
+ * once its DNS records are published.
15969
+ * - NO_DOMAIN: neither the company nor the account has an email domain, so emails go out from
15970
+ * BeeL. Register one with `POST /v1/accounts/{account_id}/email-domains`.
15971
+ * - BEEL_SELECTED: the company chose the address of BeeL. (`source` `BEEL`). Nothing to do.
15972
+ * @enum {string}
15973
+ */
15974
+ EmailSenderReason: "CUSTOM_DOMAIN" | "ADDON_INACTIVE" | "DOMAIN_NOT_VERIFIED" | "NO_DOMAIN" | "BEEL_SELECTED";
15975
+ /** @description The address the invoice emails of a company go out from, and why. */
15976
+ EffectiveEmailSender: {
15977
+ /**
15978
+ * Format: email
15979
+ * @description Address shown as the sender of the invoice emails.
15980
+ * @example facturas@facturas.ejemplo.com
15981
+ */
15982
+ from_address: string;
15983
+ reason: components["schemas"]["EmailSenderReason"];
15984
+ /**
15985
+ * Format: uuid
15986
+ * @description The email domain of the account the address belongs to. Absent when the address is BeeL.'s.
15987
+ * @example 550e8400-e29b-41d4-a716-446655440000
15988
+ */
15989
+ email_domain_id?: string;
15990
+ };
15991
+ /** @description The sender chosen for the invoice emails of a company, and the one in effect. */
15992
+ CompanyEmailSender: {
15993
+ source: components["schemas"]["CompanyEmailSenderSource"];
15994
+ /**
15995
+ * Format: uuid
15996
+ * @description The email domain of the account the company chose; `null` unless `source` is `EMAIL_DOMAIN`.
15997
+ */
15998
+ email_domain_id: string | null;
15999
+ /**
16000
+ * @description Part of the address before the `@`. `null` means `facturas`, and it is always `null` when `source` is `BEEL`.
16001
+ * @example cobros
16002
+ */
16003
+ local_part: string | null;
16004
+ effective: components["schemas"]["EffectiveEmailSender"];
16005
+ };
16006
+ /** @description The content applied to an invoice email that does not specify its own. The additional recipients are always added. */
16007
+ CompanyEmailDefaults: {
16008
+ /**
16009
+ * @description Subject template, with the variables of `GET /v1/email-template-variables`.
16010
+ * @example Invoice {invoiceNumber}
16011
+ */
16012
+ subject: string | null;
16013
+ /**
16014
+ * @description Message template, with the variables of `GET /v1/email-template-variables`.
16015
+ * @example Dear {customerName}, please find attached invoice {invoiceNumber}.
16016
+ */
16017
+ message: string | null;
16018
+ /** @description CC recipients, applied when the email request does not specify `cc`. */
16019
+ cc: components["schemas"]["Email"][] | null;
16020
+ /** @description Recipients added to those of every invoice email. */
16021
+ additional_recipients: components["schemas"]["Email"][] | null;
16022
+ };
16023
+ CompanyEmailConfiguration: {
16024
+ sender: components["schemas"]["CompanyEmailSender"];
16025
+ defaults: components["schemas"]["CompanyEmailDefaults"];
16026
+ };
16027
+ UpdateCompanyEmailSender: {
16028
+ source?: components["schemas"]["CompanyEmailSenderSource"];
16029
+ /**
16030
+ * Format: uuid
16031
+ * @description An email domain of the account. Accepted only with `source` `EMAIL_DOMAIN`.
16032
+ */
16033
+ email_domain_id?: string | null;
16034
+ /**
16035
+ * @description Part of the address before the `@`. Not accepted with `source` `BEEL`.
16036
+ * @example cobros
16037
+ */
16038
+ local_part?: string | null;
16039
+ };
16040
+ UpdateCompanyEmailDefaults: {
16041
+ /**
16042
+ * @description Subject template.
16043
+ * @example Invoice {invoiceNumber}
16044
+ */
16045
+ subject?: string | null;
16046
+ /**
16047
+ * @description Message template.
16048
+ * @example Dear {customerName}, please find attached invoice {invoiceNumber}.
16049
+ */
16050
+ message?: string | null;
16051
+ /** @description CC recipients. */
16052
+ cc?: components["schemas"]["Email"][] | null;
16053
+ /** @description Additional recipients. */
16054
+ additional_recipients?: components["schemas"]["Email"][] | null;
16055
+ };
16056
+ UpdateCompanyEmailConfigurationRequest: {
16057
+ sender: components["schemas"]["UpdateCompanyEmailSender"];
16058
+ /** @description The defaults of the invoice emails. Omitted keeps them; `null` removes them. */
16059
+ defaults?: components["schemas"]["UpdateCompanyEmailDefaults"] | null;
16060
+ };
16061
+ /**
16062
+ * @description Name of a variable of the email templates.
16063
+ *
16064
+ * - invoiceNumber: number of the invoice.
16065
+ * - customerName: name of the customer.
16066
+ * - issueDate: issue date of the invoice.
16067
+ * - invoiceTotal: total of the invoice.
16068
+ * - dueDate: due date of the invoice.
16069
+ * - issuerName: name of the company that issues the invoice.
16070
+ * @enum {string}
16071
+ */
16072
+ EmailTemplateVariableKey: "invoiceNumber" | "customerName" | "issueDate" | "invoiceTotal" | "dueDate" | "issuerName";
16073
+ EmailTemplateVariable: {
16074
+ key: components["schemas"]["EmailTemplateVariableKey"];
16075
+ /**
16076
+ * @description The text to write in a template, braces included.
16077
+ * @example {invoiceNumber}
16078
+ */
16079
+ placeholder: string;
16080
+ /**
16081
+ * @description What the variable is replaced with.
16082
+ * @example Invoice number
16083
+ */
16084
+ description: string;
16085
+ };
16086
+ EmailTemplateVariables: {
16087
+ variables: components["schemas"]["EmailTemplateVariable"][];
16088
+ };
15486
16089
  /**
15487
16090
  * @description Nominal billing period of a subscription.
15488
16091
  * @example MONTHLY
@@ -15741,6 +16344,25 @@ interface components {
15741
16344
  * @enum {string}
15742
16345
  */
15743
16346
  PaymentEventType: "PAYMENT_COMPLETED" | "PAYMENT_FAILED" | "REFUND_COMPLETED" | "DISPUTE_OPENED" | "DISPUTE_CLOSED" | "UNKNOWN";
16347
+ /**
16348
+ * @description What this event means for its payment. Branch on this value instead of deriving it from
16349
+ * `status` and `failure_reason`.
16350
+ *
16351
+ * - `INVOICED`: an invoice was generated from the event (`invoice_id` is set)
16352
+ * - `IN_PROGRESS`: the payment can still change, because the event is being processed or
16353
+ * retried, or the payer has yet to pay
16354
+ * - `NOT_INVOICED`: closed without an invoice and with nothing for you to do, for example a
16355
+ * zero-amount payment, or a payment settled from the payer's balance
16356
+ * - `RESOLVED`: marked as resolved outside BeeL
16357
+ * - `INCIDENT`: needs your action (`needs_action` is `true`)
16358
+ * - `NO_CHANGE`: the event does not change the tax position of the payment, such as a refund
16359
+ * that did not complete, a failed payment attempt, an event type BeeL does not handle, or a
16360
+ * dispute settled in your favour
16361
+ *
16362
+ * `INCIDENT` takes precedence over the rest, then `INVOICED`.
16363
+ * @enum {string}
16364
+ */
16365
+ PaymentEventOutcome: "INVOICED" | "IN_PROGRESS" | "NOT_INVOICED" | "RESOLVED" | "INCIDENT" | "NO_CHANGE";
15744
16366
  /** @description How many events share one failure reason. */
15745
16367
  PaymentEventFailureReasonCount: {
15746
16368
  /**
@@ -15933,12 +16555,21 @@ interface components {
15933
16555
  * - `account.claimed` — A provisioned account was claimed by its holder
15934
16556
  * - `company.created` — A company was created inside a provisioned account
15935
16557
  * - `representation.signed` — Fiscal representation signed for a NIF (production invoicing enabled)
16558
+ * - `email_domain.verified` — A sending domain of the account became `VERIFIED`; sent once per transition
16559
+ * - `email_domain.failed` — A sending domain of the account became `FAILED`; sent once per transition
16560
+ * - `email_domain.removed` — A sending domain of the account was removed, with a `reason` (`EXPIRED`,
16561
+ * `DELETED_BY_USER` or `DELETED_AT_PROVIDER`); sent once per removal
16562
+ * - `invoice.email.bounced` — The email of an invoice bounced or was marked as spam, with a `reason`
16563
+ * (`BOUNCED` or `COMPLAINED`); sent once per email
16564
+ *
16565
+ * The `email_domain.*` events belong to the account: they are delivered only to its live
16566
+ * endpoints, never to the account that manages it, and `company_id` and `nif` are not set (absent or `null`).
15936
16567
  *
15937
16568
  * The `account.*` events are delivered only to the **provisioner** that created the
15938
16569
  * account; a subscription on any other account never receives them.
15939
16570
  * @enum {string}
15940
16571
  */
15941
- WebhookEventTypeEnum: "invoice.issued" | "invoice.email.sent" | "invoice.pdf.generated" | "invoice.voided" | "recurring_invoice.paused" | "invoice.schedule_failed" | "verifactu.status.updated" | "account.claimed" | "company.created" | "representation.signed";
16572
+ WebhookEventTypeEnum: "invoice.issued" | "invoice.email.sent" | "invoice.pdf.generated" | "invoice.voided" | "recurring_invoice.paused" | "invoice.schedule_failed" | "verifactu.status.updated" | "account.claimed" | "company.created" | "representation.signed" | "email_domain.verified" | "email_domain.failed" | "email_domain.removed" | "invoice.email.bounced";
15942
16573
  CreateWebhookSubscriptionRequest: {
15943
16574
  /**
15944
16575
  * Format: uri
@@ -16207,6 +16838,81 @@ interface components {
16207
16838
  */
16208
16839
  signed_at: string;
16209
16840
  };
16841
+ /**
16842
+ * @description Data payload for `email_domain.verified` and `email_domain.failed` events: the email domain as it
16843
+ * is after the change, plus its previous status. Sent once per transition. On `email_domain.failed`,
16844
+ * `previous_status` `PENDING` means the domain never verified and `VERIFIED` means it stopped passing
16845
+ * the check.
16846
+ */
16847
+ WebhookEventDataEmailDomain: {
16848
+ /**
16849
+ * Format: uuid
16850
+ * @description Identifier of the email domain.
16851
+ */
16852
+ email_domain_id: string;
16853
+ /** @example facturas.ejemplo.com */
16854
+ domain: string;
16855
+ status: components["schemas"]["EmailDomainStatus"];
16856
+ previous_status: components["schemas"]["EmailDomainStatus"];
16857
+ is_default: boolean;
16858
+ dns_records: components["schemas"]["DnsRecord"][];
16859
+ /** Format: date-time */
16860
+ created_at: string;
16861
+ /** Format: date-time */
16862
+ verified_at?: string | null;
16863
+ /** Format: date-time */
16864
+ last_checked_at?: string | null;
16865
+ };
16866
+ /**
16867
+ * @description Why the domain was removed:
16868
+ *
16869
+ * - EXPIRED: it expired before being verified, 72 hours after it was registered
16870
+ * - DELETED_BY_USER: a user of the account deleted it
16871
+ * - DELETED_AT_PROVIDER: it no longer existed in the email sending service, so BeeL. removed it from the account
16872
+ * @enum {string}
16873
+ */
16874
+ EmailDomainRemovalReason: "EXPIRED" | "DELETED_BY_USER" | "DELETED_AT_PROVIDER";
16875
+ /**
16876
+ * @description Data payload for `email_domain.removed` events: the email domain as it was when it was removed, plus
16877
+ * the reason. Sent once per removal.
16878
+ */
16879
+ WebhookEventDataEmailDomainRemoved: {
16880
+ /**
16881
+ * Format: uuid
16882
+ * @description Identifier of the email domain.
16883
+ */
16884
+ email_domain_id: string;
16885
+ /** @example facturas.ejemplo.com */
16886
+ domain: string;
16887
+ status: components["schemas"]["EmailDomainStatus"];
16888
+ is_default: boolean;
16889
+ dns_records: components["schemas"]["DnsRecord"][];
16890
+ /** Format: date-time */
16891
+ created_at: string;
16892
+ /** Format: date-time */
16893
+ verified_at?: string | null;
16894
+ /** Format: date-time */
16895
+ last_checked_at?: string | null;
16896
+ reason: components["schemas"]["EmailDomainRemovalReason"];
16897
+ };
16898
+ /**
16899
+ * @description Why the email was not delivered: the recipient's server rejected it (`BOUNCED`) or the recipient
16900
+ * marked it as spam (`COMPLAINED`).
16901
+ * @enum {string}
16902
+ */
16903
+ InvoiceEmailBounceReason: "BOUNCED" | "COMPLAINED";
16904
+ /** @description Data payload for `invoice.email.bounced` events. */
16905
+ WebhookEventDataInvoiceEmailBounced: {
16906
+ /** Format: uuid */
16907
+ invoice_id: string;
16908
+ /** @example 2025/0001 */
16909
+ invoice_number?: string | null;
16910
+ /** @description The addresses the invoice email was sent to (to and cc); at least one of them bounced or complained. */
16911
+ recipients: string[];
16912
+ reason: components["schemas"]["InvoiceEmailBounceReason"];
16913
+ /** Format: date-time */
16914
+ bounced_at: string;
16915
+ };
16210
16916
  /** @description Payload delivered to your endpoint on every webhook event. */
16211
16917
  WebhookEvent: {
16212
16918
  /**
@@ -16253,7 +16959,7 @@ interface components {
16253
16959
  */
16254
16960
  account_external_ref?: string | null;
16255
16961
  account_relationship?: components["schemas"]["WebhookEventAccountRelationship"];
16256
- data: components["schemas"]["WebhookEventDataInvoiceIssued"] | components["schemas"]["WebhookEventDataInvoiceEmailSent"] | components["schemas"]["WebhookEventDataInvoicePdfGenerated"] | components["schemas"]["WebhookEventDataInvoiceVoided"] | components["schemas"]["WebhookEventDataRecurringInvoicePaused"] | components["schemas"]["WebhookEventDataInvoiceScheduleFailed"] | components["schemas"]["WebhookEventDataVeriFactuStatusUpdated"] | components["schemas"]["WebhookEventDataAccountClaimed"] | components["schemas"]["WebhookEventDataCompanyCreated"] | components["schemas"]["WebhookEventDataRepresentationSigned"];
16962
+ data: components["schemas"]["WebhookEventDataInvoiceIssued"] | components["schemas"]["WebhookEventDataInvoiceEmailSent"] | components["schemas"]["WebhookEventDataInvoicePdfGenerated"] | components["schemas"]["WebhookEventDataInvoiceVoided"] | components["schemas"]["WebhookEventDataRecurringInvoicePaused"] | components["schemas"]["WebhookEventDataInvoiceScheduleFailed"] | components["schemas"]["WebhookEventDataVeriFactuStatusUpdated"] | components["schemas"]["WebhookEventDataAccountClaimed"] | components["schemas"]["WebhookEventDataCompanyCreated"] | components["schemas"]["WebhookEventDataRepresentationSigned"] | components["schemas"]["WebhookEventDataEmailDomain"] | components["schemas"]["WebhookEventDataEmailDomainRemoved"] | components["schemas"]["WebhookEventDataInvoiceEmailBounced"];
16257
16963
  };
16258
16964
  UpdateWebhookSubscriptionRequest: {
16259
16965
  /**
@@ -16605,9 +17311,10 @@ interface components {
16605
17311
  * API key and no OAuth2 token can perform it, whatever scopes it holds.
16606
17312
  * - `OPERATION_REQUIRES_API_KEY` — the reverse: the operation needs a scope that only an API
16607
17313
  * key can hold (such as `accounts:write`), so a dashboard session never satisfies it.
16608
- * - `API_KEY_LIVE_NOT_AVAILABLE` — the call came with a live API key (`beel_sk_live_…`) and
16609
- * the account has no Live mode yet. It is never degraded to Test: use your test key, or
16610
- * activate Live first.
17314
+ * - `API_KEY_LIVE_NOT_AVAILABLE` — the call came with a live credential (a `beel_sk_live_…`
17315
+ * API key, or an OAuth2 token issued without the `sandbox` scope) and the account has no
17316
+ * Live mode yet. It is never degraded to Test: use test credentials, or activate Live
17317
+ * first.
16611
17318
  * - `ACCOUNT_REQUIRES_FOCUS_SWITCH` — dashboard session only: you are a member of the account
16612
17319
  * in the path, but it is not the account in focus. Switch focus to it and retry.
16613
17320
  * - `REQUEST_BLOCKED` — the edge security filter stopped the request before the API saw its
@@ -17164,6 +17871,11 @@ interface components {
17164
17871
  * contract's `snake_case`) to a message describing what is wrong with it, or follows
17165
17872
  * `FieldDeserializationError` when the value is outside an enum's vocabulary. Otherwise it is
17166
17873
  * one of the series rules, among them:
17874
+ * - `SERIES_FORMAT_NUM_REQUIRED` / `SERIES_FORMAT_MULTIPLE_NUM` — the format has no counter
17875
+ * (`{NUM}` or `{NUM:X}`), or more than one. It needs exactly one.
17876
+ * - `SERIES_FORMAT_INVALID_PADDING` / `SERIES_FORMAT_UNRECOGNIZED_VARS` — the padding in
17877
+ * `{NUM:X}` is not a whole number from 1 to 20, or the format uses a variable BeeL. does
17878
+ * not know. Allowed: `{CODIGO}`, `{YYYY}`, `{YY}`, `{MM}`, `{NUM}`, `{NUM:X}`.
17167
17879
  * - `SERIES_MONTHLY_REQUIRES_MONTH_AND_YEAR` / `SERIES_ANNUAL_REQUIRES_YEAR` — the format
17168
17880
  * cannot tell the counter reset periods apart.
17169
17881
  * - `SERIES_INITIAL_NUMBER_OUT_OF_RANGE` — the initial number is out of range.
@@ -17344,6 +18056,28 @@ interface components {
17344
18056
  "application/json": components["schemas"]["ErrorResponse"];
17345
18057
  };
17346
18058
  };
18059
+ /** @description `EMAIL_DOMAIN_NOT_FOUND` — no email domain with that id belongs to the account. A domain of another account, or one already removed, answers the same way. */
18060
+ EmailDomainNotFound: {
18061
+ headers: {
18062
+ [name: string]: unknown;
18063
+ };
18064
+ content: {
18065
+ /**
18066
+ * @example {
18067
+ * "success": false,
18068
+ * "error": {
18069
+ * "code": "EMAIL_DOMAIN_NOT_FOUND",
18070
+ * "message": "No email domain with that id belongs to your account."
18071
+ * },
18072
+ * "meta": {
18073
+ * "timestamp": "2025-01-15T10:30:00Z",
18074
+ * "request_id": "4bf92f3577b34da6a3ce929d0e0e4736"
18075
+ * }
18076
+ * }
18077
+ */
18078
+ "application/json": components["schemas"]["ErrorResponse"];
18079
+ };
18080
+ };
17347
18081
  };
17348
18082
  parameters: {
17349
18083
  /**
@@ -17353,7 +18087,10 @@ interface components {
17353
18087
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
17354
18088
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
17355
18089
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
17356
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
18090
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
18091
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
18092
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
18093
+ * the retry runs the operation once
17357
18094
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
17358
18095
  * - Stored responses expire 24 hours after processing
17359
18096
  *
@@ -17390,7 +18127,8 @@ interface components {
17390
18127
  * The company does **not** have to belong to the API key's own account: one you manage works
17391
18128
  * too, which is what makes the `company_id` returned by `POST /v1/accounts` usable here to
17392
18129
  * invoice on a provisioned account's behalf. What you may do with it is then decided by your
17393
- * access level over that account, and issuing also requires a signed fiscal representation.
18130
+ * access level over that account, and issuing in Live also requires a signed fiscal
18131
+ * representation.
17394
18132
  *
17395
18133
  * This header is how you **operate** on a company, never how you find one: a value you do not
17396
18134
  * reach answers `403`, the same as one that does not exist, so guessing reveals nothing. Get
@@ -17667,7 +18405,8 @@ interface operations {
17667
18405
  * The company does **not** have to belong to the API key's own account: one you manage works
17668
18406
  * too, which is what makes the `company_id` returned by `POST /v1/accounts` usable here to
17669
18407
  * invoice on a provisioned account's behalf. What you may do with it is then decided by your
17670
- * access level over that account, and issuing also requires a signed fiscal representation.
18408
+ * access level over that account, and issuing in Live also requires a signed fiscal
18409
+ * representation.
17671
18410
  *
17672
18411
  * This header is how you **operate** on a company, never how you find one: a value you do not
17673
18412
  * reach answers `403`, the same as one that does not exist, so guessing reveals nothing. Get
@@ -17780,7 +18519,8 @@ interface operations {
17780
18519
  * The company does **not** have to belong to the API key's own account: one you manage works
17781
18520
  * too, which is what makes the `company_id` returned by `POST /v1/accounts` usable here to
17782
18521
  * invoice on a provisioned account's behalf. What you may do with it is then decided by your
17783
- * access level over that account, and issuing also requires a signed fiscal representation.
18522
+ * access level over that account, and issuing in Live also requires a signed fiscal
18523
+ * representation.
17784
18524
  *
17785
18525
  * This header is how you **operate** on a company, never how you find one: a value you do not
17786
18526
  * reach answers `403`, the same as one that does not exist, so guessing reveals nothing. Get
@@ -17798,7 +18538,10 @@ interface operations {
17798
18538
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
17799
18539
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
17800
18540
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
17801
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
18541
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
18542
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
18543
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
18544
+ * the retry runs the operation once
17802
18545
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
17803
18546
  * - Stored responses expire 24 hours after processing
17804
18547
  *
@@ -18033,7 +18776,8 @@ interface operations {
18033
18776
  * The company does **not** have to belong to the API key's own account: one you manage works
18034
18777
  * too, which is what makes the `company_id` returned by `POST /v1/accounts` usable here to
18035
18778
  * invoice on a provisioned account's behalf. What you may do with it is then decided by your
18036
- * access level over that account, and issuing also requires a signed fiscal representation.
18779
+ * access level over that account, and issuing in Live also requires a signed fiscal
18780
+ * representation.
18037
18781
  *
18038
18782
  * This header is how you **operate** on a company, never how you find one: a value you do not
18039
18783
  * reach answers `403`, the same as one that does not exist, so guessing reveals nothing. Get
@@ -18099,7 +18843,8 @@ interface operations {
18099
18843
  * The company does **not** have to belong to the API key's own account: one you manage works
18100
18844
  * too, which is what makes the `company_id` returned by `POST /v1/accounts` usable here to
18101
18845
  * invoice on a provisioned account's behalf. What you may do with it is then decided by your
18102
- * access level over that account, and issuing also requires a signed fiscal representation.
18846
+ * access level over that account, and issuing in Live also requires a signed fiscal
18847
+ * representation.
18103
18848
  *
18104
18849
  * This header is how you **operate** on a company, never how you find one: a value you do not
18105
18850
  * reach answers `403`, the same as one that does not exist, so guessing reveals nothing. Get
@@ -18332,7 +19077,8 @@ interface operations {
18332
19077
  * The company does **not** have to belong to the API key's own account: one you manage works
18333
19078
  * too, which is what makes the `company_id` returned by `POST /v1/accounts` usable here to
18334
19079
  * invoice on a provisioned account's behalf. What you may do with it is then decided by your
18335
- * access level over that account, and issuing also requires a signed fiscal representation.
19080
+ * access level over that account, and issuing in Live also requires a signed fiscal
19081
+ * representation.
18336
19082
  *
18337
19083
  * This header is how you **operate** on a company, never how you find one: a value you do not
18338
19084
  * reach answers `403`, the same as one that does not exist, so guessing reveals nothing. Get
@@ -18455,7 +19201,10 @@ interface operations {
18455
19201
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
18456
19202
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
18457
19203
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
18458
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
19204
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
19205
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
19206
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
19207
+ * the retry runs the operation once
18459
19208
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
18460
19209
  * - Stored responses expire 24 hours after processing
18461
19210
  *
@@ -18571,7 +19320,10 @@ interface operations {
18571
19320
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
18572
19321
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
18573
19322
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
18574
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
19323
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
19324
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
19325
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
19326
+ * the retry runs the operation once
18575
19327
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
18576
19328
  * - Stored responses expire 24 hours after processing
18577
19329
  *
@@ -18661,7 +19413,10 @@ interface operations {
18661
19413
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
18662
19414
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
18663
19415
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
18664
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
19416
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
19417
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
19418
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
19419
+ * the retry runs the operation once
18665
19420
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
18666
19421
  * - Stored responses expire 24 hours after processing
18667
19422
  *
@@ -18791,6 +19546,15 @@ interface operations {
18791
19546
  401: components["responses"]["Unauthorized"];
18792
19547
  403: components["responses"]["Forbidden"];
18793
19548
  404: components["responses"]["NotFound"];
19549
+ /** @description `INVOICE_PDF_UNAVAILABLE`: the invoice needs its VeriFactu QR and BeeL. cannot produce its PDF because of a problem on our side. Answered immediately and without `Retry-After`: asking again does not help until support solves it. Contact support with the `meta.request_id`. */
19550
+ 409: {
19551
+ headers: {
19552
+ [name: string]: unknown;
19553
+ };
19554
+ content: {
19555
+ "application/json": components["schemas"]["ErrorResponse"];
19556
+ };
19557
+ };
18794
19558
  429: components["responses"]["TooManyRequests"];
18795
19559
  500: components["responses"]["InternalServerError"];
18796
19560
  default: components["responses"]["UnexpectedError"];
@@ -18852,7 +19616,10 @@ interface operations {
18852
19616
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
18853
19617
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
18854
19618
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
18855
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
19619
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
19620
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
19621
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
19622
+ * the retry runs the operation once
18856
19623
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
18857
19624
  * - Stored responses expire 24 hours after processing
18858
19625
  *
@@ -18983,7 +19750,10 @@ interface operations {
18983
19750
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
18984
19751
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
18985
19752
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
18986
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
19753
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
19754
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
19755
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
19756
+ * the retry runs the operation once
18987
19757
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
18988
19758
  * - Stored responses expire 24 hours after processing
18989
19759
  *
@@ -19072,7 +19842,10 @@ interface operations {
19072
19842
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
19073
19843
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
19074
19844
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
19075
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
19845
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
19846
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
19847
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
19848
+ * the retry runs the operation once
19076
19849
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
19077
19850
  * - Stored responses expire 24 hours after processing
19078
19851
  *
@@ -19190,7 +19963,10 @@ interface operations {
19190
19963
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
19191
19964
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
19192
19965
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
19193
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
19966
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
19967
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
19968
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
19969
+ * the retry runs the operation once
19194
19970
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
19195
19971
  * - Stored responses expire 24 hours after processing
19196
19972
  *
@@ -19403,7 +20179,10 @@ interface operations {
19403
20179
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
19404
20180
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
19405
20181
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
19406
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
20182
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
20183
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
20184
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
20185
+ * the retry runs the operation once
19407
20186
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
19408
20187
  * - Stored responses expire 24 hours after processing
19409
20188
  *
@@ -19541,7 +20320,10 @@ interface operations {
19541
20320
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
19542
20321
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
19543
20322
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
19544
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
20323
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
20324
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
20325
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
20326
+ * the retry runs the operation once
19545
20327
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
19546
20328
  * - Stored responses expire 24 hours after processing
19547
20329
  *
@@ -19659,7 +20441,10 @@ interface operations {
19659
20441
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
19660
20442
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
19661
20443
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
19662
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
20444
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
20445
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
20446
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
20447
+ * the retry runs the operation once
19663
20448
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
19664
20449
  * - Stored responses expire 24 hours after processing
19665
20450
  *
@@ -19756,7 +20541,10 @@ interface operations {
19756
20541
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
19757
20542
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
19758
20543
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
19759
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
20544
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
20545
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
20546
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
20547
+ * the retry runs the operation once
19760
20548
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
19761
20549
  * - Stored responses expire 24 hours after processing
19762
20550
  *
@@ -19819,7 +20607,10 @@ interface operations {
19819
20607
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
19820
20608
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
19821
20609
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
19822
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
20610
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
20611
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
20612
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
20613
+ * the retry runs the operation once
19823
20614
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
19824
20615
  * - Stored responses expire 24 hours after processing
19825
20616
  *
@@ -19916,7 +20707,10 @@ interface operations {
19916
20707
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
19917
20708
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
19918
20709
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
19919
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
20710
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
20711
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
20712
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
20713
+ * the retry runs the operation once
19920
20714
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
19921
20715
  * - Stored responses expire 24 hours after processing
19922
20716
  *
@@ -20041,7 +20835,10 @@ interface operations {
20041
20835
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
20042
20836
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
20043
20837
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
20044
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
20838
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
20839
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
20840
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
20841
+ * the retry runs the operation once
20045
20842
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
20046
20843
  * - Stored responses expire 24 hours after processing
20047
20844
  *
@@ -20308,6 +21105,14 @@ interface operations {
20308
21105
  date_from?: string;
20309
21106
  /** @description Date to, inclusive (YYYY-MM-DD). Applies to the same date as `date_from`. */
20310
21107
  date_to?: string;
21108
+ /** @description Due date from, inclusive (YYYY-MM-DD). Invoices without a due date are excluded. */
21109
+ due_date_from?: string;
21110
+ /** @description Due date to, inclusive (YYYY-MM-DD). Invoices without a due date are excluded. */
21111
+ due_date_to?: string;
21112
+ /** @description Payment date from, inclusive (YYYY-MM-DD). Invoices without a payment date are excluded. */
21113
+ payment_date_from?: string;
21114
+ /** @description Payment date to, inclusive (YYYY-MM-DD). Invoices without a payment date are excluded. */
21115
+ payment_date_to?: string;
20311
21116
  /** @description Search by invoice number (e.g., 2025/0001) */
20312
21117
  invoice_number?: string;
20313
21118
  /** @description Filter by recipient's fiscal name (partial, case-insensitive search) */
@@ -20323,6 +21128,11 @@ interface operations {
20323
21128
  * issued invoice; a single invoice can have several partial correctives.
20324
21129
  */
20325
21130
  rectified_invoice_id?: string;
21131
+ /**
21132
+ * @description Return the simplified invoices replaced by this exchange invoice. Accepts the id of an
21133
+ * issued full invoice; it matches the ids in its `replaced_invoice_ids`.
21134
+ */
21135
+ replaced_by_invoice_id?: string;
20326
21136
  /** @description Minimum taxable base */
20327
21137
  taxable_base_min?: number;
20328
21138
  /** @description Maximum taxable base */
@@ -20475,7 +21285,10 @@ interface operations {
20475
21285
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
20476
21286
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
20477
21287
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
20478
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
21288
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
21289
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
21290
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
21291
+ * the retry runs the operation once
20479
21292
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
20480
21293
  * - Stored responses expire 24 hours after processing
20481
21294
  *
@@ -20718,7 +21531,10 @@ interface operations {
20718
21531
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
20719
21532
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
20720
21533
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
20721
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
21534
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
21535
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
21536
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
21537
+ * the retry runs the operation once
20722
21538
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
20723
21539
  * - Stored responses expire 24 hours after processing
20724
21540
  *
@@ -20909,7 +21725,10 @@ interface operations {
20909
21725
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
20910
21726
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
20911
21727
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
20912
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
21728
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
21729
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
21730
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
21731
+ * the retry runs the operation once
20913
21732
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
20914
21733
  * - Stored responses expire 24 hours after processing
20915
21734
  *
@@ -21089,7 +21908,10 @@ interface operations {
21089
21908
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
21090
21909
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
21091
21910
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
21092
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
21911
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
21912
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
21913
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
21914
+ * the retry runs the operation once
21093
21915
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
21094
21916
  * - Stored responses expire 24 hours after processing
21095
21917
  *
@@ -21383,7 +22205,10 @@ interface operations {
21383
22205
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
21384
22206
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
21385
22207
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
21386
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
22208
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
22209
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
22210
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
22211
+ * the retry runs the operation once
21387
22212
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
21388
22213
  * - Stored responses expire 24 hours after processing
21389
22214
  *
@@ -21765,6 +22590,15 @@ interface operations {
21765
22590
  };
21766
22591
  };
21767
22592
  404: components["responses"]["NotFound"];
22593
+ /** @description `INVOICE_PDF_UNAVAILABLE`: the invoice needs its VeriFactu QR and BeeL. cannot produce its PDF because of a problem on our side, not in your request. Answered immediately and without `Retry-After`: asking again does not help until support solves it. Contact support with the `meta.request_id`; once it is solved, the same request returns the PDF. */
22594
+ 409: {
22595
+ headers: {
22596
+ [name: string]: unknown;
22597
+ };
22598
+ content: {
22599
+ "application/json": components["schemas"]["ErrorResponse"];
22600
+ };
22601
+ };
21768
22602
  429: components["responses"]["TooManyRequests"];
21769
22603
  500: components["responses"]["InternalServerError"];
21770
22604
  default: components["responses"]["UnexpectedError"];
@@ -21832,6 +22666,15 @@ interface operations {
21832
22666
  };
21833
22667
  };
21834
22668
  404: components["responses"]["NotFound"];
22669
+ /** @description `INVOICE_PDF_UNAVAILABLE`: the invoice needs its VeriFactu QR and BeeL. cannot produce its PDF, so there is no preview image either. Asking again does not help until support solves it; contact support with the `meta.request_id`. */
22670
+ 409: {
22671
+ headers: {
22672
+ [name: string]: unknown;
22673
+ };
22674
+ content: {
22675
+ "application/json": components["schemas"]["ErrorResponse"];
22676
+ };
22677
+ };
21835
22678
  429: components["responses"]["TooManyRequests"];
21836
22679
  500: components["responses"]["InternalServerError"];
21837
22680
  default: components["responses"]["UnexpectedError"];
@@ -21907,7 +22750,10 @@ interface operations {
21907
22750
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
21908
22751
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
21909
22752
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
21910
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
22753
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
22754
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
22755
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
22756
+ * the retry runs the operation once
21911
22757
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
21912
22758
  * - Stored responses expire 24 hours after processing
21913
22759
  *
@@ -22071,7 +22917,10 @@ interface operations {
22071
22917
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
22072
22918
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
22073
22919
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
22074
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
22920
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
22921
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
22922
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
22923
+ * the retry runs the operation once
22075
22924
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
22076
22925
  * - Stored responses expire 24 hours after processing
22077
22926
  *
@@ -22209,6 +23058,8 @@ interface operations {
22209
23058
  * - `OPERATION_DATE_AFTER_ISSUE_DATE` — `operation_date` is later than the issue date (today when issuing); send today or a past date.
22210
23059
  * - `OPERATION_DATE_TOO_OLD` — `operation_date` is more than twenty years before the issue date; AEAT does not accept it. Send a more recent date.
22211
23060
  * - `PROFORMA_NOT_ISSUABLE` — a proforma is never issued; convert it with `convert-to-invoice` (optionally with `issue: true`).
23061
+ * - `RECIPIENT_ADDRESS_REQUIRED` — a standard invoice needs the recipient's address (RD 1619/2012 art. 6.1.e); complete it on the draft before issuing.
23062
+ * - `RECIPIENT_FISCAL_NAME_REQUIRED` — a standard invoice needs the recipient's legal name; a draft parked without it (for example, a Stripe payment with a tax ID and no name) must be completed before issuing.
22212
23063
  * - `RECIPIENT_ID_REQUIRED` — a standard invoice needs an identified recipient: a `customer_id`, or inline data with `nif` or `alternative_id`.
22213
23064
  * - `REGIME_KEY_CLASSIFICATION_NOT_ACCEPTED` — AEAT does not accept that `exemption_reason` (or its absence) with the line's `regime_key`; the message lists the reasons it admits.
22214
23065
  * - `REGIME_KEY_NOT_SUPPORTED` — BeeL. cannot declare that `regime_key` to AEAT (e.g. `06`, `14`); use another key.
@@ -22243,7 +23094,10 @@ interface operations {
22243
23094
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
22244
23095
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
22245
23096
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
22246
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
23097
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
23098
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
23099
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
23100
+ * the retry runs the operation once
22247
23101
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
22248
23102
  * - Stored responses expire 24 hours after processing
22249
23103
  *
@@ -22372,7 +23226,10 @@ interface operations {
22372
23226
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
22373
23227
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
22374
23228
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
22375
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
23229
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
23230
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
23231
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
23232
+ * the retry runs the operation once
22376
23233
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
22377
23234
  * - Stored responses expire 24 hours after processing
22378
23235
  *
@@ -22567,7 +23424,10 @@ interface operations {
22567
23424
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
22568
23425
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
22569
23426
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
22570
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
23427
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
23428
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
23429
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
23430
+ * the retry runs the operation once
22571
23431
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
22572
23432
  * - Stored responses expire 24 hours after processing
22573
23433
  *
@@ -22824,7 +23684,10 @@ interface operations {
22824
23684
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
22825
23685
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
22826
23686
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
22827
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
23687
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
23688
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
23689
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
23690
+ * the retry runs the operation once
22828
23691
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
22829
23692
  * - Stored responses expire 24 hours after processing
22830
23693
  *
@@ -22980,7 +23843,10 @@ interface operations {
22980
23843
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
22981
23844
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
22982
23845
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
22983
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
23846
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
23847
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
23848
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
23849
+ * the retry runs the operation once
22984
23850
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
22985
23851
  * - Stored responses expire 24 hours after processing
22986
23852
  *
@@ -23163,7 +24029,10 @@ interface operations {
23163
24029
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
23164
24030
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
23165
24031
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
23166
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
24032
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
24033
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
24034
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
24035
+ * the retry runs the operation once
23167
24036
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
23168
24037
  * - Stored responses expire 24 hours after processing
23169
24038
  *
@@ -23269,6 +24138,8 @@ interface operations {
23269
24138
  *
23270
24139
  * Other `error.code` values with this status:
23271
24140
  *
24141
+ * - `RECIPIENT_ADDRESS_REQUIRED` — a standard invoice needs the recipient's address; complete it before scheduling.
24142
+ * - `RECIPIENT_FISCAL_NAME_REQUIRED` — a standard invoice needs the recipient's legal name; complete it before scheduling.
23272
24143
  * - `RECIPIENT_ID_REQUIRED` — a standard invoice needs an identified recipient: a `customer_id`, or inline data with `nif` or `alternative_id`.
23273
24144
  */
23274
24145
  422: {
@@ -23295,7 +24166,10 @@ interface operations {
23295
24166
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
23296
24167
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
23297
24168
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
23298
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
24169
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
24170
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
24171
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
24172
+ * the retry runs the operation once
23299
24173
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
23300
24174
  * - Stored responses expire 24 hours after processing
23301
24175
  *
@@ -23371,7 +24245,10 @@ interface operations {
23371
24245
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
23372
24246
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
23373
24247
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
23374
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
24248
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
24249
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
24250
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
24251
+ * the retry runs the operation once
23375
24252
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
23376
24253
  * - Stored responses expire 24 hours after processing
23377
24254
  *
@@ -23537,7 +24414,10 @@ interface operations {
23537
24414
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
23538
24415
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
23539
24416
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
23540
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
24417
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
24418
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
24419
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
24420
+ * the retry runs the operation once
23541
24421
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
23542
24422
  * - Stored responses expire 24 hours after processing
23543
24423
  *
@@ -23678,6 +24558,9 @@ interface operations {
23678
24558
  * Also: `series_id` (explicit or resolved by default) numbering against a series that is
23679
24559
  * inactive is rejected with `error.code` `SERIES_INACTIVE` — no template is created.
23680
24560
  * Activate the series, or send a `series_id` for one that is already active.
24561
+ * Also: with no `series_id` and no default standard series for a `STANDARD` template, the
24562
+ * call is rejected with `error.code` `SERIES_DEFAULT_NOT_FOUND`. Create a standard series
24563
+ * and mark it as default, or send a `series_id`.
23681
24564
  *
23682
24565
  * Other `error.code` values with this status:
23683
24566
  *
@@ -24184,7 +25067,10 @@ interface operations {
24184
25067
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
24185
25068
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
24186
25069
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
24187
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
25070
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
25071
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
25072
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
25073
+ * the retry runs the operation once
24188
25074
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
24189
25075
  * - Stored responses expire 24 hours after processing
24190
25076
  *
@@ -24275,7 +25161,10 @@ interface operations {
24275
25161
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
24276
25162
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
24277
25163
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
24278
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
25164
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
25165
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
25166
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
25167
+ * the retry runs the operation once
24279
25168
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
24280
25169
  * - Stored responses expire 24 hours after processing
24281
25170
  *
@@ -24367,7 +25256,10 @@ interface operations {
24367
25256
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
24368
25257
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
24369
25258
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
24370
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
25259
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
25260
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
25261
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
25262
+ * the retry runs the operation once
24371
25263
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
24372
25264
  * - Stored responses expire 24 hours after processing
24373
25265
  *
@@ -24519,7 +25411,10 @@ interface operations {
24519
25411
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
24520
25412
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
24521
25413
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
24522
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
25414
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
25415
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
25416
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
25417
+ * the retry runs the operation once
24523
25418
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
24524
25419
  * - Stored responses expire 24 hours after processing
24525
25420
  *
@@ -24723,7 +25618,10 @@ interface operations {
24723
25618
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
24724
25619
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
24725
25620
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
24726
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
25621
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
25622
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
25623
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
25624
+ * the retry runs the operation once
24727
25625
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
24728
25626
  * - Stored responses expire 24 hours after processing
24729
25627
  *
@@ -24916,7 +25814,10 @@ interface operations {
24916
25814
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
24917
25815
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
24918
25816
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
24919
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
25817
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
25818
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
25819
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
25820
+ * the retry runs the operation once
24920
25821
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
24921
25822
  * - Stored responses expire 24 hours after processing
24922
25823
  *
@@ -25104,6 +26005,9 @@ interface operations {
25104
26005
  * Also: `series_id` (explicit or resolved by default) numbering against a series that is
25105
26006
  * inactive is rejected with `error.code` `SERIES_INACTIVE` — no template is created.
25106
26007
  * Activate the series, or send a `series_id` for one that is already active.
26008
+ * Also: with no `series_id` and no default standard series for a `STANDARD` template, the
26009
+ * call is rejected with `error.code` `SERIES_DEFAULT_NOT_FOUND`. Create a standard series
26010
+ * and mark it as default, or send a `series_id`.
25107
26011
  *
25108
26012
  * Other `error.code` values with this status:
25109
26013
  *
@@ -25296,7 +26200,10 @@ interface operations {
25296
26200
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
25297
26201
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
25298
26202
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
25299
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
26203
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
26204
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
26205
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
26206
+ * the retry runs the operation once
25300
26207
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
25301
26208
  * - Stored responses expire 24 hours after processing
25302
26209
  *
@@ -25576,7 +26483,10 @@ interface operations {
25576
26483
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
25577
26484
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
25578
26485
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
25579
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
26486
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
26487
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
26488
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
26489
+ * the retry runs the operation once
25580
26490
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
25581
26491
  * - Stored responses expire 24 hours after processing
25582
26492
  *
@@ -25689,7 +26599,10 @@ interface operations {
25689
26599
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
25690
26600
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
25691
26601
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
25692
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
26602
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
26603
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
26604
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
26605
+ * the retry runs the operation once
25693
26606
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
25694
26607
  * - Stored responses expire 24 hours after processing
25695
26608
  *
@@ -25985,7 +26898,10 @@ interface operations {
25985
26898
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
25986
26899
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
25987
26900
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
25988
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
26901
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
26902
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
26903
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
26904
+ * the retry runs the operation once
25989
26905
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
25990
26906
  * - Stored responses expire 24 hours after processing
25991
26907
  *
@@ -26173,7 +27089,10 @@ interface operations {
26173
27089
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
26174
27090
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
26175
27091
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
26176
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
27092
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
27093
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
27094
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
27095
+ * the retry runs the operation once
26177
27096
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
26178
27097
  * - Stored responses expire 24 hours after processing
26179
27098
  *
@@ -26409,7 +27328,10 @@ interface operations {
26409
27328
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
26410
27329
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
26411
27330
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
26412
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
27331
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
27332
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
27333
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
27334
+ * the retry runs the operation once
26413
27335
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
26414
27336
  * - Stored responses expire 24 hours after processing
26415
27337
  *
@@ -26751,7 +27673,10 @@ interface operations {
26751
27673
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
26752
27674
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
26753
27675
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
26754
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
27676
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
27677
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
27678
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
27679
+ * the retry runs the operation once
26755
27680
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
26756
27681
  * - Stored responses expire 24 hours after processing
26757
27682
  *
@@ -26970,7 +27895,10 @@ interface operations {
26970
27895
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
26971
27896
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
26972
27897
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
26973
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
27898
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
27899
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
27900
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
27901
+ * the retry runs the operation once
26974
27902
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
26975
27903
  * - Stored responses expire 24 hours after processing
26976
27904
  *
@@ -27143,7 +28071,10 @@ interface operations {
27143
28071
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
27144
28072
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
27145
28073
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
27146
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
28074
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
28075
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
28076
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
28077
+ * the retry runs the operation once
27147
28078
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
27148
28079
  * - Stored responses expire 24 hours after processing
27149
28080
  *
@@ -27252,7 +28183,10 @@ interface operations {
27252
28183
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
27253
28184
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
27254
28185
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
27255
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
28186
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
28187
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
28188
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
28189
+ * the retry runs the operation once
27256
28190
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
27257
28191
  * - Stored responses expire 24 hours after processing
27258
28192
  *
@@ -27968,7 +28902,10 @@ interface operations {
27968
28902
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
27969
28903
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
27970
28904
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
27971
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
28905
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
28906
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
28907
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
28908
+ * the retry runs the operation once
27972
28909
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
27973
28910
  * - Stored responses expire 24 hours after processing
27974
28911
  *
@@ -28335,7 +29272,10 @@ interface operations {
28335
29272
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
28336
29273
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
28337
29274
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
28338
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
29275
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
29276
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
29277
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
29278
+ * the retry runs the operation once
28339
29279
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
28340
29280
  * - Stored responses expire 24 hours after processing
28341
29281
  *
@@ -28550,7 +29490,10 @@ interface operations {
28550
29490
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
28551
29491
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
28552
29492
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
28553
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
29493
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
29494
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
29495
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
29496
+ * the retry runs the operation once
28554
29497
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
28555
29498
  * - Stored responses expire 24 hours after processing
28556
29499
  *
@@ -28668,7 +29611,10 @@ interface operations {
28668
29611
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
28669
29612
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
28670
29613
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
28671
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
29614
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
29615
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
29616
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
29617
+ * the retry runs the operation once
28672
29618
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
28673
29619
  * - Stored responses expire 24 hours after processing
28674
29620
  *
@@ -29173,7 +30119,10 @@ interface operations {
29173
30119
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
29174
30120
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
29175
30121
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
29176
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
30122
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
30123
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
30124
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
30125
+ * the retry runs the operation once
29177
30126
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
29178
30127
  * - Stored responses expire 24 hours after processing
29179
30128
  *
@@ -29323,7 +30272,10 @@ interface operations {
29323
30272
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
29324
30273
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
29325
30274
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
29326
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
30275
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
30276
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
30277
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
30278
+ * the retry runs the operation once
29327
30279
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
29328
30280
  * - Stored responses expire 24 hours after processing
29329
30281
  *
@@ -29469,7 +30421,10 @@ interface operations {
29469
30421
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
29470
30422
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
29471
30423
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
29472
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
30424
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
30425
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
30426
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
30427
+ * the retry runs the operation once
29473
30428
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
29474
30429
  * - Stored responses expire 24 hours after processing
29475
30430
  *
@@ -29865,7 +30820,10 @@ interface operations {
29865
30820
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
29866
30821
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
29867
30822
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
29868
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
30823
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
30824
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
30825
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
30826
+ * the retry runs the operation once
29869
30827
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
29870
30828
  * - Stored responses expire 24 hours after processing
29871
30829
  *
@@ -29966,7 +30924,10 @@ interface operations {
29966
30924
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
29967
30925
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
29968
30926
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
29969
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
30927
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
30928
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
30929
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
30930
+ * the retry runs the operation once
29970
30931
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
29971
30932
  * - Stored responses expire 24 hours after processing
29972
30933
  *
@@ -30206,7 +31167,10 @@ interface operations {
30206
31167
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
30207
31168
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
30208
31169
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
30209
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
31170
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
31171
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
31172
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
31173
+ * the retry runs the operation once
30210
31174
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
30211
31175
  * - Stored responses expire 24 hours after processing
30212
31176
  *
@@ -30480,7 +31444,10 @@ interface operations {
30480
31444
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
30481
31445
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
30482
31446
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
30483
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
31447
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
31448
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
31449
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
31450
+ * the retry runs the operation once
30484
31451
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
30485
31452
  * - Stored responses expire 24 hours after processing
30486
31453
  *
@@ -31144,7 +32111,10 @@ interface operations {
31144
32111
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
31145
32112
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
31146
32113
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
31147
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
32114
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
32115
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
32116
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
32117
+ * the retry runs the operation once
31148
32118
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
31149
32119
  * - Stored responses expire 24 hours after processing
31150
32120
  *
@@ -31222,6 +32192,7 @@ interface operations {
31222
32192
  *
31223
32193
  * - `SERIES_FORMAT_INVALID_PADDING` — the padding in `{NUM:X}` must be a whole number from 1 to 20 (e.g. `{NUM:4}` → `0001`).
31224
32194
  * - `SERIES_FORMAT_NUM_REQUIRED` — the series `format` has no `{NUM}` or `{NUM:X}`, so it cannot number invoices. Add the counter.
32195
+ * - `SERIES_FORMAT_MULTIPLE_NUM` — the series `format` has more than one `{NUM}` or `{NUM:X}`. The invoice number carries a single counter, so a second one would appear literally. Keep one.
31225
32196
  * - `SERIES_FORMAT_UNRECOGNIZED_VARS` — the `format` uses a variable BeeL. does not know. Allowed: `{CODIGO}`, `{YYYY}`, `{YY}`, `{MM}`, `{NUM}`, `{NUM:X}`.
31226
32197
  */
31227
32198
  422: {
@@ -31260,7 +32231,10 @@ interface operations {
31260
32231
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
31261
32232
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
31262
32233
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
31263
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
32234
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
32235
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
32236
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
32237
+ * the retry runs the operation once
31264
32238
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
31265
32239
  * - Stored responses expire 24 hours after processing
31266
32240
  *
@@ -31488,7 +32462,10 @@ interface operations {
31488
32462
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
31489
32463
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
31490
32464
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
31491
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
32465
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
32466
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
32467
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
32468
+ * the retry runs the operation once
31492
32469
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
31493
32470
  * - Stored responses expire 24 hours after processing
31494
32471
  *
@@ -31756,7 +32733,10 @@ interface operations {
31756
32733
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
31757
32734
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
31758
32735
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
31759
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
32736
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
32737
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
32738
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
32739
+ * the retry runs the operation once
31760
32740
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
31761
32741
  * - Stored responses expire 24 hours after processing
31762
32742
  *
@@ -31924,6 +32904,7 @@ interface operations {
31924
32904
  * - `IRPF_RATE_ONLY_FOR_CORPORATE_ISSUER` — the rate (e.g. 9.5 % Ceuta/Melilla) only applies to corporate issuers; an individual issuer must use a personal-income-tax rate.
31925
32905
  * - `SERIES_FORMAT_INVALID_PADDING` — the padding in `{NUM:X}` must be a whole number from 1 to 20 (e.g. `{NUM:4}` → `0001`).
31926
32906
  * - `SERIES_FORMAT_NUM_REQUIRED` — the series `format` has no `{NUM}` or `{NUM:X}`, so it cannot number invoices. Add the counter.
32907
+ * - `SERIES_FORMAT_MULTIPLE_NUM` — the series `format` has more than one `{NUM}` or `{NUM:X}`. The invoice number carries a single counter, so a second one would appear literally. Keep one.
31927
32908
  * - `SERIES_FORMAT_UNRECOGNIZED_VARS` — the `format` uses a variable BeeL. does not know. Allowed: `{CODIGO}`, `{YYYY}`, `{YY}`, `{MM}`, `{NUM}`, `{NUM:X}`.
31928
32909
  */
31929
32910
  422: {
@@ -32267,7 +33248,10 @@ interface operations {
32267
33248
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
32268
33249
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
32269
33250
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
32270
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
33251
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
33252
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
33253
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
33254
+ * the retry runs the operation once
32271
33255
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
32272
33256
  * - Stored responses expire 24 hours after processing
32273
33257
  *
@@ -32313,6 +33297,19 @@ interface operations {
32313
33297
  };
32314
33298
  };
32315
33299
  404: components["responses"]["NotFound"];
33300
+ /**
33301
+ * @description `PROFILE_INCOMPLETE` — the company's fiscal identity is not complete enough to produce
33302
+ * the document; `error.details` names each missing field, as in
33303
+ * `POST /v1/companies/{company_id}/representation`.
33304
+ */
33305
+ 422: {
33306
+ headers: {
33307
+ [name: string]: unknown;
33308
+ };
33309
+ content: {
33310
+ "application/json": components["schemas"]["ErrorResponse"];
33311
+ };
33312
+ };
32316
33313
  500: components["responses"]["InternalServerError"];
32317
33314
  default: components["responses"]["UnexpectedError"];
32318
33315
  };
@@ -32378,7 +33375,10 @@ interface operations {
32378
33375
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
32379
33376
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
32380
33377
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
32381
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
33378
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
33379
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
33380
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
33381
+ * the retry runs the operation once
32382
33382
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
32383
33383
  * - Stored responses expire 24 hours after processing
32384
33384
  *
@@ -32571,7 +33571,10 @@ interface operations {
32571
33571
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
32572
33572
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
32573
33573
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
32574
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
33574
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
33575
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
33576
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
33577
+ * the retry runs the operation once
32575
33578
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
32576
33579
  * - Stored responses expire 24 hours after processing
32577
33580
  *
@@ -32614,8 +33617,6 @@ interface operations {
32614
33617
  * generated on top of it; contact support.
32615
33618
  * * `REPRESENTATION_DOCUMENT_GENERATION_FAILED` — the provider could not produce the
32616
33619
  * document. Nothing was stored; repeat the request later.
32617
- *
32618
- * An incomplete fiscal identity is also answered with `400`, naming what is missing.
32619
33620
  */
32620
33621
  400: {
32621
33622
  headers: {
@@ -32639,7 +33640,21 @@ interface operations {
32639
33640
  "application/json": components["schemas"]["ErrorResponse"];
32640
33641
  };
32641
33642
  };
32642
- 422: components["responses"]["ValidationError"];
33643
+ /**
33644
+ * @description `PROFILE_INCOMPLETE` — the company's fiscal identity is not complete enough to produce
33645
+ * the document. `error.details` has one entry per missing field, keyed by its name:
33646
+ * `entity_type`, `nif`, `legal_name`, `address` and, for a legal entity, `legal_form` and
33647
+ * `legal_representative`. Nothing was generated. Complete the company and repeat the
33648
+ * request.
33649
+ */
33650
+ 422: {
33651
+ headers: {
33652
+ [name: string]: unknown;
33653
+ };
33654
+ content: {
33655
+ "application/json": components["schemas"]["ErrorResponse"];
33656
+ };
33657
+ };
32643
33658
  429: components["responses"]["TooManyRequests"];
32644
33659
  500: components["responses"]["InternalServerError"];
32645
33660
  default: components["responses"]["UnexpectedError"];
@@ -32762,7 +33777,10 @@ interface operations {
32762
33777
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
32763
33778
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
32764
33779
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
32765
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
33780
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
33781
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
33782
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
33783
+ * the retry runs the operation once
32766
33784
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
32767
33785
  * - Stored responses expire 24 hours after processing
32768
33786
  *
@@ -32863,7 +33881,10 @@ interface operations {
32863
33881
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
32864
33882
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
32865
33883
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
32866
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
33884
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
33885
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
33886
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
33887
+ * the retry runs the operation once
32867
33888
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
32868
33889
  * - Stored responses expire 24 hours after processing
32869
33890
  *
@@ -33033,7 +34054,10 @@ interface operations {
33033
34054
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
33034
34055
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
33035
34056
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
33036
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
34057
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
34058
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
34059
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
34060
+ * the retry runs the operation once
33037
34061
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
33038
34062
  * - Stored responses expire 24 hours after processing
33039
34063
  *
@@ -33094,6 +34118,247 @@ interface operations {
33094
34118
  default: components["responses"]["UnexpectedError"];
33095
34119
  };
33096
34120
  };
34121
+ getCompanyEmailConfiguration: {
34122
+ parameters: {
34123
+ query?: never;
34124
+ header?: never;
34125
+ path: {
34126
+ /** @description Unique identifier (UUID) of the company the operation acts on: its identifier, not its NIF. It is the only source of context: the account that owns it is derived from it, and the `BeeL-Active-Company` header plays no part. A company you do not reach answers `403`, and so does a company that does not exist, so the existence of a company in another account is never disclosed. */
34127
+ company_id: string;
34128
+ };
34129
+ cookie?: never;
34130
+ };
34131
+ requestBody?: never;
34132
+ responses: {
34133
+ /** @description Email configuration of the company */
34134
+ 200: {
34135
+ headers: {
34136
+ [name: string]: unknown;
34137
+ };
34138
+ content: {
34139
+ /**
34140
+ * @example {
34141
+ * "success": true,
34142
+ * "data": {
34143
+ * "sender": {
34144
+ * "source": "ACCOUNT_DEFAULT",
34145
+ * "email_domain_id": null,
34146
+ * "local_part": null,
34147
+ * "effective": {
34148
+ * "from_address": "facturas@facturas.ejemplo.com",
34149
+ * "reason": "CUSTOM_DOMAIN",
34150
+ * "email_domain_id": "550e8400-e29b-41d4-a716-446655440000"
34151
+ * }
34152
+ * },
34153
+ * "defaults": {
34154
+ * "subject": "Invoice {invoiceNumber}",
34155
+ * "message": "Dear {customerName}, please find attached invoice {invoiceNumber}.",
34156
+ * "cc": [
34157
+ * "administracion@ejemplo.com"
34158
+ * ],
34159
+ * "additional_recipients": null
34160
+ * }
34161
+ * }
34162
+ * }
34163
+ */
34164
+ "application/json": components["schemas"]["SuccessResponse"] & {
34165
+ data: components["schemas"]["CompanyEmailConfiguration"];
34166
+ };
34167
+ };
34168
+ };
34169
+ 401: components["responses"]["Unauthorized"];
34170
+ /**
34171
+ * @description Your account does not own or manage this company (`error.code`
34172
+ * `ACTIVE_COMPANY_NOT_ACCESSIBLE`), or the credential lacks the `companies:read` scope
34173
+ * (`INSUFFICIENT_SCOPE`).
34174
+ */
34175
+ 403: {
34176
+ headers: {
34177
+ [name: string]: unknown;
34178
+ };
34179
+ content: {
34180
+ "application/json": components["schemas"]["ErrorResponse"];
34181
+ };
34182
+ };
34183
+ 429: components["responses"]["TooManyRequests"];
34184
+ 500: components["responses"]["InternalServerError"];
34185
+ default: components["responses"]["UnexpectedError"];
34186
+ };
34187
+ };
34188
+ updateCompanyEmailConfiguration: {
34189
+ parameters: {
34190
+ query?: never;
34191
+ header?: {
34192
+ /**
34193
+ * @description Idempotency key to prevent duplicates in sensitive operations.
34194
+ *
34195
+ * - Any unique client-generated string (e.g. an order id). A UUID also works but is not required
34196
+ * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
34197
+ * - Retrying with the same key replays the first response when it was a success (2xx) or a
34198
+ * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
34199
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
34200
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
34201
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
34202
+ * the retry runs the operation once
34203
+ * - A 4xx is not stored: the key is released, so the corrected request can reuse it
34204
+ * - Stored responses expire 24 hours after processing
34205
+ *
34206
+ * The key is scoped per user and environment, and bound to the request body, so retrying after
34207
+ * a network timeout replays the stored response instead of repeating the operation.
34208
+ *
34209
+ * | Status | Code | When |
34210
+ * |---|---|---|
34211
+ * | `400` | `INVALID_IDEMPOTENCY_KEY` | The key breaks the format rules above. |
34212
+ * | `409` | `IDEMPOTENCY_KEY_PROCESSING` | The first request is still in flight. Wait for the `Retry-After` seconds (2) and retry with the same key. |
34213
+ * | `409` | `IDEMPOTENCY_KEY_MISMATCH` | The key was already used with a **different** body. Use a new key. |
34214
+ * @example invoice-order-12345
34215
+ */
34216
+ "Idempotency-Key"?: components["parameters"]["IdempotencyKeyHeader"];
34217
+ };
34218
+ path: {
34219
+ /** @description Unique identifier (UUID) of the company the operation acts on: its identifier, not its NIF. It is the only source of context: the account that owns it is derived from it, and the `BeeL-Active-Company` header plays no part. A company you do not reach answers `403`, and so does a company that does not exist, so the existence of a company in another account is never disclosed. */
34220
+ company_id: string;
34221
+ };
34222
+ cookie?: never;
34223
+ };
34224
+ requestBody: {
34225
+ content: {
34226
+ /**
34227
+ * @example {
34228
+ * "sender": {
34229
+ * "source": "EMAIL_DOMAIN",
34230
+ * "email_domain_id": "550e8400-e29b-41d4-a716-446655440000",
34231
+ * "local_part": "cobros"
34232
+ * },
34233
+ * "defaults": {
34234
+ * "subject": "Invoice {invoiceNumber}",
34235
+ * "message": "Dear {customerName}, please find attached invoice {invoiceNumber}.",
34236
+ * "cc": [
34237
+ * "administracion@ejemplo.com"
34238
+ * ]
34239
+ * }
34240
+ * }
34241
+ */
34242
+ "application/json": components["schemas"]["UpdateCompanyEmailConfigurationRequest"];
34243
+ };
34244
+ };
34245
+ responses: {
34246
+ /** @description Email configuration of the company after the change */
34247
+ 200: {
34248
+ headers: {
34249
+ [name: string]: unknown;
34250
+ };
34251
+ content: {
34252
+ "application/json": components["schemas"]["SuccessResponse"] & {
34253
+ data: components["schemas"]["CompanyEmailConfiguration"];
34254
+ };
34255
+ };
34256
+ };
34257
+ 400: components["responses"]["BadRequest"];
34258
+ 401: components["responses"]["Unauthorized"];
34259
+ /**
34260
+ * @description Your account does not own or manage this company, does not hold write access over it,
34261
+ * or the credential is a test one (`LIVE_CREDENTIAL_REQUIRED`). Not owning the company answers
34262
+ * `error.code` `ACTIVE_COMPANY_NOT_ACCESSIBLE`; a credential without the `companies:write`
34263
+ * scope answers `INSUFFICIENT_SCOPE`. Sending `defaults` without the email customization
34264
+ * plan answers `FEATURE_NOT_AVAILABLE`.
34265
+ */
34266
+ 403: {
34267
+ headers: {
34268
+ [name: string]: unknown;
34269
+ };
34270
+ content: {
34271
+ "application/json": components["schemas"]["ErrorResponse"];
34272
+ };
34273
+ };
34274
+ /**
34275
+ * @description The email domain does not exist, belongs to another account or was removed
34276
+ * (`error.code` `EMAIL_DOMAIN_NOT_FOUND`).
34277
+ */
34278
+ 404: {
34279
+ headers: {
34280
+ [name: string]: unknown;
34281
+ };
34282
+ content: {
34283
+ "application/json": components["schemas"]["ErrorResponse"];
34284
+ };
34285
+ };
34286
+ /**
34287
+ * @description The email domain is still being registered and cannot be chosen yet
34288
+ * (`error.code` `EMAIL_DOMAIN_NOT_READY`).
34289
+ */
34290
+ 409: {
34291
+ headers: {
34292
+ [name: string]: unknown;
34293
+ };
34294
+ content: {
34295
+ "application/json": components["schemas"]["ErrorResponse"];
34296
+ };
34297
+ };
34298
+ /**
34299
+ * @description A property is not valid, or the combination of `source`, `email_domain_id` and
34300
+ * `local_part` is not allowed (`error.code` `VALIDATION_ERROR`). Send values that follow
34301
+ * the format described for the operation.
34302
+ */
34303
+ 422: {
34304
+ headers: {
34305
+ [name: string]: unknown;
34306
+ };
34307
+ content: {
34308
+ "application/json": components["schemas"]["ErrorResponse"];
34309
+ };
34310
+ };
34311
+ 429: components["responses"]["TooManyRequests"];
34312
+ 500: components["responses"]["InternalServerError"];
34313
+ default: components["responses"]["UnexpectedError"];
34314
+ };
34315
+ };
34316
+ listEmailTemplateVariables: {
34317
+ parameters: {
34318
+ query?: never;
34319
+ header?: never;
34320
+ path?: never;
34321
+ cookie?: never;
34322
+ };
34323
+ requestBody?: never;
34324
+ responses: {
34325
+ /** @description Variables of the email templates */
34326
+ 200: {
34327
+ headers: {
34328
+ [name: string]: unknown;
34329
+ };
34330
+ content: {
34331
+ /**
34332
+ * @example {
34333
+ * "success": true,
34334
+ * "data": {
34335
+ * "variables": [
34336
+ * {
34337
+ * "key": "invoiceNumber",
34338
+ * "placeholder": "{invoiceNumber}",
34339
+ * "description": "Invoice number"
34340
+ * },
34341
+ * {
34342
+ * "key": "customerName",
34343
+ * "placeholder": "{customerName}",
34344
+ * "description": "Customer name"
34345
+ * }
34346
+ * ]
34347
+ * }
34348
+ * }
34349
+ */
34350
+ "application/json": components["schemas"]["SuccessResponse"] & {
34351
+ data: components["schemas"]["EmailTemplateVariables"];
34352
+ };
34353
+ };
34354
+ };
34355
+ 401: components["responses"]["Unauthorized"];
34356
+ 403: components["responses"]["Forbidden"];
34357
+ 429: components["responses"]["TooManyRequests"];
34358
+ 500: components["responses"]["InternalServerError"];
34359
+ default: components["responses"]["UnexpectedError"];
34360
+ };
34361
+ };
33097
34362
  getCompanyVeriFactuConfiguration: {
33098
34363
  parameters: {
33099
34364
  query?: never;
@@ -33429,7 +34694,10 @@ interface operations {
33429
34694
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
33430
34695
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
33431
34696
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
33432
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
34697
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
34698
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
34699
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
34700
+ * the retry runs the operation once
33433
34701
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
33434
34702
  * - Stored responses expire 24 hours after processing
33435
34703
  *
@@ -33523,6 +34791,7 @@ interface operations {
33523
34791
  *
33524
34792
  * - `SERIES_FORMAT_INVALID_PADDING` — the padding in `{NUM:X}` must be a whole number from 1 to 20 (e.g. `{NUM:4}` → `0001`).
33525
34793
  * - `SERIES_FORMAT_NUM_REQUIRED` — the series `format` has no `{NUM}` or `{NUM:X}`, so it cannot number invoices. Add the counter.
34794
+ * - `SERIES_FORMAT_MULTIPLE_NUM` — the series `format` has more than one `{NUM}` or `{NUM:X}`. The invoice number carries a single counter, so a second one would appear literally. Keep one.
33526
34795
  * - `SERIES_FORMAT_UNRECOGNIZED_VARS` — the `format` uses a variable BeeL. does not know. Allowed: `{CODIGO}`, `{YYYY}`, `{YY}`, `{MM}`, `{NUM}`, `{NUM:X}`.
33527
34796
  */
33528
34797
  422: {
@@ -33607,7 +34876,10 @@ interface operations {
33607
34876
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
33608
34877
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
33609
34878
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
33610
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
34879
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
34880
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
34881
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
34882
+ * the retry runs the operation once
33611
34883
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
33612
34884
  * - Stored responses expire 24 hours after processing
33613
34885
  *
@@ -33906,7 +35178,10 @@ interface operations {
33906
35178
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
33907
35179
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
33908
35180
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
33909
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
35181
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
35182
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
35183
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
35184
+ * the retry runs the operation once
33910
35185
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
33911
35186
  * - Stored responses expire 24 hours after processing
33912
35187
  *
@@ -34006,7 +35281,10 @@ interface operations {
34006
35281
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
34007
35282
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
34008
35283
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
34009
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
35284
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
35285
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
35286
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
35287
+ * the retry runs the operation once
34010
35288
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
34011
35289
  * - Stored responses expire 24 hours after processing
34012
35290
  *
@@ -34189,7 +35467,10 @@ interface operations {
34189
35467
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
34190
35468
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
34191
35469
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
34192
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
35470
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
35471
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
35472
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
35473
+ * the retry runs the operation once
34193
35474
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
34194
35475
  * - Stored responses expire 24 hours after processing
34195
35476
  *
@@ -34329,7 +35610,10 @@ interface operations {
34329
35610
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
34330
35611
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
34331
35612
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
34332
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
35613
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
35614
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
35615
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
35616
+ * the retry runs the operation once
34333
35617
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
34334
35618
  * - Stored responses expire 24 hours after processing
34335
35619
  *
@@ -34609,7 +35893,10 @@ interface operations {
34609
35893
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
34610
35894
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
34611
35895
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
34612
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
35896
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
35897
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
35898
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
35899
+ * the retry runs the operation once
34613
35900
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
34614
35901
  * - Stored responses expire 24 hours after processing
34615
35902
  *
@@ -34683,7 +35970,10 @@ interface operations {
34683
35970
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
34684
35971
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
34685
35972
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
34686
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
35973
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
35974
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
35975
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
35976
+ * the retry runs the operation once
34687
35977
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
34688
35978
  * - Stored responses expire 24 hours after processing
34689
35979
  *
@@ -34770,7 +36060,10 @@ interface operations {
34770
36060
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
34771
36061
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
34772
36062
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
34773
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
36063
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
36064
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
36065
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
36066
+ * the retry runs the operation once
34774
36067
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
34775
36068
  * - Stored responses expire 24 hours after processing
34776
36069
  *
@@ -34839,7 +36132,10 @@ interface operations {
34839
36132
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
34840
36133
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
34841
36134
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
34842
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
36135
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
36136
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
36137
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
36138
+ * the retry runs the operation once
34843
36139
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
34844
36140
  * - Stored responses expire 24 hours after processing
34845
36141
  *
@@ -34908,7 +36204,10 @@ interface operations {
34908
36204
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
34909
36205
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
34910
36206
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
34911
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
36207
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
36208
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
36209
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
36210
+ * the retry runs the operation once
34912
36211
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
34913
36212
  * - Stored responses expire 24 hours after processing
34914
36213
  *
@@ -35005,7 +36304,10 @@ interface operations {
35005
36304
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
35006
36305
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
35007
36306
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
35008
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
36307
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
36308
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
36309
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
36310
+ * the retry runs the operation once
35009
36311
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
35010
36312
  * - Stored responses expire 24 hours after processing
35011
36313
  *
@@ -35204,7 +36506,10 @@ interface operations {
35204
36506
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
35205
36507
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
35206
36508
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
35207
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
36509
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
36510
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
36511
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
36512
+ * the retry runs the operation once
35208
36513
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
35209
36514
  * - Stored responses expire 24 hours after processing
35210
36515
  *
@@ -35256,7 +36561,10 @@ interface operations {
35256
36561
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
35257
36562
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
35258
36563
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
35259
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
36564
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
36565
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
36566
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
36567
+ * the retry runs the operation once
35260
36568
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
35261
36569
  * - Stored responses expire 24 hours after processing
35262
36570
  *
@@ -35311,7 +36619,10 @@ interface operations {
35311
36619
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
35312
36620
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
35313
36621
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
35314
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
36622
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
36623
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
36624
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
36625
+ * the retry runs the operation once
35315
36626
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
35316
36627
  * - Stored responses expire 24 hours after processing
35317
36628
  *
@@ -35408,7 +36719,10 @@ interface operations {
35408
36719
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
35409
36720
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
35410
36721
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
35411
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
36722
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
36723
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
36724
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
36725
+ * the retry runs the operation once
35412
36726
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
35413
36727
  * - Stored responses expire 24 hours after processing
35414
36728
  *
@@ -35632,7 +36946,10 @@ interface operations {
35632
36946
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
35633
36947
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
35634
36948
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
35635
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
36949
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
36950
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
36951
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
36952
+ * the retry runs the operation once
35636
36953
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
35637
36954
  * - Stored responses expire 24 hours after processing
35638
36955
  *
@@ -35690,7 +37007,10 @@ interface operations {
35690
37007
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
35691
37008
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
35692
37009
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
35693
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
37010
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
37011
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
37012
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
37013
+ * the retry runs the operation once
35694
37014
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
35695
37015
  * - Stored responses expire 24 hours after processing
35696
37016
  *
@@ -35749,7 +37069,10 @@ interface operations {
35749
37069
  * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
35750
37070
  * - Retrying with the same key replays the first response when it was a success (2xx) or a
35751
37071
  * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
35752
- * After a 5xx, check whether the operation took effect before retrying with a **new** key
37072
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
37073
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
37074
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
37075
+ * the retry runs the operation once
35753
37076
  * - A 4xx is not stored: the key is released, so the corrected request can reuse it
35754
37077
  * - Stored responses expire 24 hours after processing
35755
37078
  *
@@ -36153,6 +37476,589 @@ interface operations {
36153
37476
  default: components["responses"]["UnexpectedError"];
36154
37477
  };
36155
37478
  };
37479
+ listAccountEmailDomains: {
37480
+ parameters: {
37481
+ query?: never;
37482
+ header?: never;
37483
+ path: {
37484
+ /** @description Your own account, or an account you provisioned. The account in the path, not the credential, decides which account the operation acts on. A `403` is returned when you do not reach it, the same response an account that does not exist gets. */
37485
+ account_id: string;
37486
+ };
37487
+ cookie?: never;
37488
+ };
37489
+ requestBody?: never;
37490
+ responses: {
37491
+ /** @description Email domains retrieved successfully */
37492
+ 200: {
37493
+ headers: {
37494
+ [name: string]: unknown;
37495
+ };
37496
+ content: {
37497
+ /**
37498
+ * @example {
37499
+ * "success": true,
37500
+ * "data": {
37501
+ * "email_domains": [
37502
+ * {
37503
+ * "id": "550e8400-e29b-41d4-a716-446655440000",
37504
+ * "domain": "facturas.ejemplo.com",
37505
+ * "status": "PENDING",
37506
+ * "is_default": true,
37507
+ * "dns_records": [
37508
+ * {
37509
+ * "type": "MX",
37510
+ * "name": "send",
37511
+ * "value": "mail.example.com",
37512
+ * "priority": 10,
37513
+ * "status": "PENDING"
37514
+ * },
37515
+ * {
37516
+ * "type": "TXT",
37517
+ * "name": "send",
37518
+ * "value": "v=spf1 include:example.com ~all",
37519
+ * "status": "PENDING"
37520
+ * }
37521
+ * ],
37522
+ * "created_at": "2025-01-20T14:30:00Z"
37523
+ * }
37524
+ * ],
37525
+ * "max_email_domains": 3
37526
+ * },
37527
+ * "meta": {
37528
+ * "timestamp": "2025-01-20T15:00:00Z",
37529
+ * "request_id": "req_123"
37530
+ * }
37531
+ * }
37532
+ */
37533
+ "application/json": components["schemas"]["EmailDomainListResponse"];
37534
+ };
37535
+ };
37536
+ 400: components["responses"]["InvalidRequestTarget"];
37537
+ 401: components["responses"]["Unauthorized"];
37538
+ /**
37539
+ * @description The credential cannot reach the account in the path, or lacks the `email-domains:read` scope.
37540
+ * An account you cannot reach and an account that does not exist answer identically.
37541
+ */
37542
+ 403: {
37543
+ headers: {
37544
+ [name: string]: unknown;
37545
+ };
37546
+ content: {
37547
+ "application/json": components["schemas"]["ErrorResponse"];
37548
+ };
37549
+ };
37550
+ 429: components["responses"]["TooManyRequests"];
37551
+ 500: components["responses"]["InternalServerError"];
37552
+ default: components["responses"]["UnexpectedError"];
37553
+ };
37554
+ };
37555
+ createAccountEmailDomain: {
37556
+ parameters: {
37557
+ query?: never;
37558
+ header?: {
37559
+ /**
37560
+ * @description Idempotency key to prevent duplicates in sensitive operations.
37561
+ *
37562
+ * - Any unique client-generated string (e.g. an order id). A UUID also works but is not required
37563
+ * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
37564
+ * - Retrying with the same key replays the first response when it was a success (2xx) or a
37565
+ * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
37566
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
37567
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
37568
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
37569
+ * the retry runs the operation once
37570
+ * - A 4xx is not stored: the key is released, so the corrected request can reuse it
37571
+ * - Stored responses expire 24 hours after processing
37572
+ *
37573
+ * The key is scoped per user and environment, and bound to the request body, so retrying after
37574
+ * a network timeout replays the stored response instead of repeating the operation.
37575
+ *
37576
+ * | Status | Code | When |
37577
+ * |---|---|---|
37578
+ * | `400` | `INVALID_IDEMPOTENCY_KEY` | The key breaks the format rules above. |
37579
+ * | `409` | `IDEMPOTENCY_KEY_PROCESSING` | The first request is still in flight. Wait for the `Retry-After` seconds (2) and retry with the same key. |
37580
+ * | `409` | `IDEMPOTENCY_KEY_MISMATCH` | The key was already used with a **different** body. Use a new key. |
37581
+ * @example invoice-order-12345
37582
+ */
37583
+ "Idempotency-Key"?: components["parameters"]["IdempotencyKeyHeader"];
37584
+ };
37585
+ path: {
37586
+ /** @description Your own account, or an account you provisioned. The account in the path, not the credential, decides which account the operation acts on. A `403` is returned when you do not reach it, the same response an account that does not exist gets. */
37587
+ account_id: string;
37588
+ };
37589
+ cookie?: never;
37590
+ };
37591
+ requestBody: {
37592
+ content: {
37593
+ /**
37594
+ * @example {
37595
+ * "domain": "facturas.ejemplo.com"
37596
+ * }
37597
+ */
37598
+ "application/json": components["schemas"]["CreateEmailDomainRequest"];
37599
+ };
37600
+ };
37601
+ responses: {
37602
+ /** @description Email domain registered */
37603
+ 201: {
37604
+ headers: {
37605
+ Location: components["headers"]["CreatedResourceLocation"];
37606
+ [name: string]: unknown;
37607
+ };
37608
+ content: {
37609
+ /**
37610
+ * @example {
37611
+ * "success": true,
37612
+ * "data": {
37613
+ * "id": "550e8400-e29b-41d4-a716-446655440000",
37614
+ * "domain": "facturas.ejemplo.com",
37615
+ * "status": "PENDING",
37616
+ * "is_default": true,
37617
+ * "dns_records": [
37618
+ * {
37619
+ * "type": "MX",
37620
+ * "name": "send",
37621
+ * "value": "mail.example.com",
37622
+ * "priority": 10,
37623
+ * "status": "PENDING"
37624
+ * },
37625
+ * {
37626
+ * "type": "TXT",
37627
+ * "name": "send",
37628
+ * "value": "v=spf1 include:example.com ~all",
37629
+ * "status": "PENDING"
37630
+ * }
37631
+ * ],
37632
+ * "created_at": "2025-01-20T14:30:00Z"
37633
+ * },
37634
+ * "meta": {
37635
+ * "timestamp": "2025-01-20T14:30:00Z",
37636
+ * "request_id": "req_123"
37637
+ * }
37638
+ * }
37639
+ */
37640
+ "application/json": components["schemas"]["EmailDomainResponse"];
37641
+ };
37642
+ };
37643
+ 400: components["responses"]["BadRequest"];
37644
+ 401: components["responses"]["Unauthorized"];
37645
+ /** @description `PAYMENT_REQUIRED` — the billing of your account is unpaid (payment retries are exhausted), so the operation is refused until the outstanding invoice is settled. */
37646
+ 402: {
37647
+ headers: {
37648
+ [name: string]: unknown;
37649
+ };
37650
+ content: {
37651
+ "application/json": components["schemas"]["ErrorResponse"];
37652
+ };
37653
+ };
37654
+ /**
37655
+ * @description The credential cannot reach the account in the path, lacks the `email-domains:write` scope,
37656
+ * is a test API key (`LIVE_CREDENTIAL_REQUIRED`), or the account does not have the custom
37657
+ * email domain add-on (`FEATURE_NOT_AVAILABLE`). An account you cannot reach and an account
37658
+ * that does not exist answer identically.
37659
+ */
37660
+ 403: {
37661
+ headers: {
37662
+ [name: string]: unknown;
37663
+ };
37664
+ content: {
37665
+ "application/json": components["schemas"]["ErrorResponse"];
37666
+ };
37667
+ };
37668
+ /** @description `EMAIL_DOMAIN_UNAVAILABLE` or `EMAIL_DOMAIN_LIMIT_REACHED`; `error.code` tells them apart. */
37669
+ 409: {
37670
+ headers: {
37671
+ [name: string]: unknown;
37672
+ };
37673
+ content: {
37674
+ "application/json": components["schemas"]["ErrorResponse"];
37675
+ };
37676
+ };
37677
+ /** @description `EMAIL_DOMAIN_INVALID` or `EMAIL_DOMAIN_RESERVED`; `error.code` tells them apart. */
37678
+ 422: {
37679
+ headers: {
37680
+ [name: string]: unknown;
37681
+ };
37682
+ content: {
37683
+ "application/json": components["schemas"]["ErrorResponse"];
37684
+ };
37685
+ };
37686
+ 429: components["responses"]["TooManyRequests"];
37687
+ 500: components["responses"]["InternalServerError"];
37688
+ /**
37689
+ * @description `EXTERNAL_SERVICE_ERROR` — the domain could not be registered with the email sending service.
37690
+ * Nothing was registered. It is transient; repeat the request later.
37691
+ */
37692
+ 502: {
37693
+ headers: {
37694
+ [name: string]: unknown;
37695
+ };
37696
+ content: {
37697
+ "application/json": components["schemas"]["ErrorResponse"];
37698
+ };
37699
+ };
37700
+ default: components["responses"]["UnexpectedError"];
37701
+ };
37702
+ };
37703
+ getAccountEmailDomain: {
37704
+ parameters: {
37705
+ query?: never;
37706
+ header?: never;
37707
+ path: {
37708
+ /** @description Your own account, or an account you provisioned. The account in the path, not the credential, decides which account the operation acts on. A `403` is returned when you do not reach it, the same response an account that does not exist gets. */
37709
+ account_id: string;
37710
+ /** @description Identifier of the email domain. */
37711
+ email_domain_id: string;
37712
+ };
37713
+ cookie?: never;
37714
+ };
37715
+ requestBody?: never;
37716
+ responses: {
37717
+ /** @description Email domain retrieved successfully */
37718
+ 200: {
37719
+ headers: {
37720
+ [name: string]: unknown;
37721
+ };
37722
+ content: {
37723
+ /**
37724
+ * @example {
37725
+ * "success": true,
37726
+ * "data": {
37727
+ * "id": "550e8400-e29b-41d4-a716-446655440000",
37728
+ * "domain": "facturas.ejemplo.com",
37729
+ * "status": "PENDING",
37730
+ * "is_default": true,
37731
+ * "dns_records": [
37732
+ * {
37733
+ * "type": "MX",
37734
+ * "name": "send",
37735
+ * "value": "mail.example.com",
37736
+ * "priority": 10,
37737
+ * "status": "PENDING"
37738
+ * }
37739
+ * ],
37740
+ * "created_at": "2025-01-20T14:30:00Z"
37741
+ * },
37742
+ * "meta": {
37743
+ * "timestamp": "2025-01-20T15:00:00Z",
37744
+ * "request_id": "req_123"
37745
+ * }
37746
+ * }
37747
+ */
37748
+ "application/json": components["schemas"]["EmailDomainResponse"];
37749
+ };
37750
+ };
37751
+ 400: components["responses"]["InvalidRequestTarget"];
37752
+ 401: components["responses"]["Unauthorized"];
37753
+ /**
37754
+ * @description The credential cannot reach the account in the path, or lacks the `email-domains:read` scope.
37755
+ * An account you cannot reach and an account that does not exist answer identically.
37756
+ */
37757
+ 403: {
37758
+ headers: {
37759
+ [name: string]: unknown;
37760
+ };
37761
+ content: {
37762
+ "application/json": components["schemas"]["ErrorResponse"];
37763
+ };
37764
+ };
37765
+ 404: components["responses"]["EmailDomainNotFound"];
37766
+ 429: components["responses"]["TooManyRequests"];
37767
+ 500: components["responses"]["InternalServerError"];
37768
+ default: components["responses"]["UnexpectedError"];
37769
+ };
37770
+ };
37771
+ deleteAccountEmailDomain: {
37772
+ parameters: {
37773
+ query?: never;
37774
+ header?: {
37775
+ /**
37776
+ * @description Idempotency key to prevent duplicates in sensitive operations.
37777
+ *
37778
+ * - Any unique client-generated string (e.g. an order id). A UUID also works but is not required
37779
+ * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
37780
+ * - Retrying with the same key replays the first response when it was a success (2xx) or a
37781
+ * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
37782
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
37783
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
37784
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
37785
+ * the retry runs the operation once
37786
+ * - A 4xx is not stored: the key is released, so the corrected request can reuse it
37787
+ * - Stored responses expire 24 hours after processing
37788
+ *
37789
+ * The key is scoped per user and environment, and bound to the request body, so retrying after
37790
+ * a network timeout replays the stored response instead of repeating the operation.
37791
+ *
37792
+ * | Status | Code | When |
37793
+ * |---|---|---|
37794
+ * | `400` | `INVALID_IDEMPOTENCY_KEY` | The key breaks the format rules above. |
37795
+ * | `409` | `IDEMPOTENCY_KEY_PROCESSING` | The first request is still in flight. Wait for the `Retry-After` seconds (2) and retry with the same key. |
37796
+ * | `409` | `IDEMPOTENCY_KEY_MISMATCH` | The key was already used with a **different** body. Use a new key. |
37797
+ * @example invoice-order-12345
37798
+ */
37799
+ "Idempotency-Key"?: components["parameters"]["IdempotencyKeyHeader"];
37800
+ };
37801
+ path: {
37802
+ /** @description Your own account, or an account you provisioned. The account in the path, not the credential, decides which account the operation acts on. A `403` is returned when you do not reach it, the same response an account that does not exist gets. */
37803
+ account_id: string;
37804
+ /** @description Identifier of the email domain. */
37805
+ email_domain_id: string;
37806
+ };
37807
+ cookie?: never;
37808
+ };
37809
+ requestBody?: never;
37810
+ responses: {
37811
+ /** @description Email domain removed successfully */
37812
+ 204: {
37813
+ headers: {
37814
+ [name: string]: unknown;
37815
+ };
37816
+ content?: never;
37817
+ };
37818
+ 400: components["responses"]["InvalidRequestTarget"];
37819
+ 401: components["responses"]["Unauthorized"];
37820
+ /**
37821
+ * @description The credential cannot reach the account in the path, lacks the `email-domains:write` scope,
37822
+ * or is a test API key (`LIVE_CREDENTIAL_REQUIRED`). An account you cannot reach and an
37823
+ * account that does not exist answer identically.
37824
+ */
37825
+ 403: {
37826
+ headers: {
37827
+ [name: string]: unknown;
37828
+ };
37829
+ content: {
37830
+ "application/json": components["schemas"]["ErrorResponse"];
37831
+ };
37832
+ };
37833
+ 404: components["responses"]["EmailDomainNotFound"];
37834
+ 429: components["responses"]["TooManyRequests"];
37835
+ 500: components["responses"]["InternalServerError"];
37836
+ default: components["responses"]["UnexpectedError"];
37837
+ };
37838
+ };
37839
+ verifyAccountEmailDomain: {
37840
+ parameters: {
37841
+ query?: never;
37842
+ header?: {
37843
+ /**
37844
+ * @description Idempotency key to prevent duplicates in sensitive operations.
37845
+ *
37846
+ * - Any unique client-generated string (e.g. an order id). A UUID also works but is not required
37847
+ * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
37848
+ * - Retrying with the same key replays the first response when it was a success (2xx) or a
37849
+ * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
37850
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
37851
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
37852
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
37853
+ * the retry runs the operation once
37854
+ * - A 4xx is not stored: the key is released, so the corrected request can reuse it
37855
+ * - Stored responses expire 24 hours after processing
37856
+ *
37857
+ * The key is scoped per user and environment, and bound to the request body, so retrying after
37858
+ * a network timeout replays the stored response instead of repeating the operation.
37859
+ *
37860
+ * | Status | Code | When |
37861
+ * |---|---|---|
37862
+ * | `400` | `INVALID_IDEMPOTENCY_KEY` | The key breaks the format rules above. |
37863
+ * | `409` | `IDEMPOTENCY_KEY_PROCESSING` | The first request is still in flight. Wait for the `Retry-After` seconds (2) and retry with the same key. |
37864
+ * | `409` | `IDEMPOTENCY_KEY_MISMATCH` | The key was already used with a **different** body. Use a new key. |
37865
+ * @example invoice-order-12345
37866
+ */
37867
+ "Idempotency-Key"?: components["parameters"]["IdempotencyKeyHeader"];
37868
+ };
37869
+ path: {
37870
+ /** @description Your own account, or an account you provisioned. The account in the path, not the credential, decides which account the operation acts on. A `403` is returned when you do not reach it, the same response an account that does not exist gets. */
37871
+ account_id: string;
37872
+ /** @description Identifier of the email domain. */
37873
+ email_domain_id: string;
37874
+ };
37875
+ cookie?: never;
37876
+ };
37877
+ requestBody?: never;
37878
+ responses: {
37879
+ /** @description Verification requested */
37880
+ 202: {
37881
+ headers: {
37882
+ [name: string]: unknown;
37883
+ };
37884
+ content: {
37885
+ /**
37886
+ * @example {
37887
+ * "success": true,
37888
+ * "data": {
37889
+ * "id": "550e8400-e29b-41d4-a716-446655440000",
37890
+ * "domain": "facturas.ejemplo.com",
37891
+ * "status": "PENDING",
37892
+ * "is_default": false,
37893
+ * "dns_records": [
37894
+ * {
37895
+ * "type": "MX",
37896
+ * "name": "send",
37897
+ * "value": "mail.example.com",
37898
+ * "priority": 10,
37899
+ * "status": "PENDING"
37900
+ * }
37901
+ * ],
37902
+ * "created_at": "2025-01-20T14:30:00Z"
37903
+ * },
37904
+ * "meta": {
37905
+ * "timestamp": "2025-01-20T15:30:00Z",
37906
+ * "request_id": "req_123"
37907
+ * }
37908
+ * }
37909
+ */
37910
+ "application/json": components["schemas"]["EmailDomainResponse"];
37911
+ };
37912
+ };
37913
+ 400: components["responses"]["InvalidRequestTarget"];
37914
+ 401: components["responses"]["Unauthorized"];
37915
+ /** @description `PAYMENT_REQUIRED` — the billing of your account is unpaid (payment retries are exhausted), so the operation is refused until the outstanding invoice is settled. */
37916
+ 402: {
37917
+ headers: {
37918
+ [name: string]: unknown;
37919
+ };
37920
+ content: {
37921
+ "application/json": components["schemas"]["ErrorResponse"];
37922
+ };
37923
+ };
37924
+ /**
37925
+ * @description The credential cannot reach the account in the path, lacks the `email-domains:write` scope,
37926
+ * is a test API key (`LIVE_CREDENTIAL_REQUIRED`), or the account does not have the custom
37927
+ * email domain add-on (`FEATURE_NOT_AVAILABLE`). An account you cannot reach and an account
37928
+ * that does not exist answer identically.
37929
+ */
37930
+ 403: {
37931
+ headers: {
37932
+ [name: string]: unknown;
37933
+ };
37934
+ content: {
37935
+ "application/json": components["schemas"]["ErrorResponse"];
37936
+ };
37937
+ };
37938
+ 404: components["responses"]["EmailDomainNotFound"];
37939
+ /** @description `EMAIL_DOMAIN_NOT_READY` — the domain is still registering with the email sending service (`dns_records: []`). */
37940
+ 409: {
37941
+ headers: {
37942
+ [name: string]: unknown;
37943
+ };
37944
+ content: {
37945
+ "application/json": components["schemas"]["ErrorResponse"];
37946
+ };
37947
+ };
37948
+ 429: components["responses"]["TooManyRequests"];
37949
+ 500: components["responses"]["InternalServerError"];
37950
+ /**
37951
+ * @description `EXTERNAL_SERVICE_ERROR` — the verification could not be requested from the email sending service.
37952
+ * Nothing changed. It is transient; repeat the request later.
37953
+ */
37954
+ 502: {
37955
+ headers: {
37956
+ [name: string]: unknown;
37957
+ };
37958
+ content: {
37959
+ "application/json": components["schemas"]["ErrorResponse"];
37960
+ };
37961
+ };
37962
+ default: components["responses"]["UnexpectedError"];
37963
+ };
37964
+ };
37965
+ setAccountEmailDomainDefault: {
37966
+ parameters: {
37967
+ query?: never;
37968
+ header?: {
37969
+ /**
37970
+ * @description Idempotency key to prevent duplicates in sensitive operations.
37971
+ *
37972
+ * - Any unique client-generated string (e.g. an order id). A UUID also works but is not required
37973
+ * - Allowed characters: letters, digits, `_` and `-` (max 255 chars)
37974
+ * - Retrying with the same key replays the first response when it was a success (2xx) or a
37975
+ * server error (5xx): same status and body, plus the header `Idempotency-Replay: true`.
37976
+ * After a 5xx other than 503, check whether the operation took effect before retrying with a **new** key
37977
+ * - After a `503`, retry first with the **same** key. If the response carries `Idempotency-Replay: true`,
37978
+ * the operation may have taken effect: check the resource before using a new key. Without that header,
37979
+ * the retry runs the operation once
37980
+ * - A 4xx is not stored: the key is released, so the corrected request can reuse it
37981
+ * - Stored responses expire 24 hours after processing
37982
+ *
37983
+ * The key is scoped per user and environment, and bound to the request body, so retrying after
37984
+ * a network timeout replays the stored response instead of repeating the operation.
37985
+ *
37986
+ * | Status | Code | When |
37987
+ * |---|---|---|
37988
+ * | `400` | `INVALID_IDEMPOTENCY_KEY` | The key breaks the format rules above. |
37989
+ * | `409` | `IDEMPOTENCY_KEY_PROCESSING` | The first request is still in flight. Wait for the `Retry-After` seconds (2) and retry with the same key. |
37990
+ * | `409` | `IDEMPOTENCY_KEY_MISMATCH` | The key was already used with a **different** body. Use a new key. |
37991
+ * @example invoice-order-12345
37992
+ */
37993
+ "Idempotency-Key"?: components["parameters"]["IdempotencyKeyHeader"];
37994
+ };
37995
+ path: {
37996
+ /** @description Your own account, or an account you provisioned. The account in the path, not the credential, decides which account the operation acts on. A `403` is returned when you do not reach it, the same response an account that does not exist gets. */
37997
+ account_id: string;
37998
+ /** @description Identifier of the email domain. */
37999
+ email_domain_id: string;
38000
+ };
38001
+ cookie?: never;
38002
+ };
38003
+ requestBody?: never;
38004
+ responses: {
38005
+ /** @description Default email domain set successfully */
38006
+ 200: {
38007
+ headers: {
38008
+ [name: string]: unknown;
38009
+ };
38010
+ content: {
38011
+ /**
38012
+ * @example {
38013
+ * "success": true,
38014
+ * "data": {
38015
+ * "id": "550e8400-e29b-41d4-a716-446655440000",
38016
+ * "domain": "facturas.ejemplo.com",
38017
+ * "status": "VERIFIED",
38018
+ * "is_default": true,
38019
+ * "dns_records": [
38020
+ * {
38021
+ * "type": "MX",
38022
+ * "name": "send",
38023
+ * "value": "mail.example.com",
38024
+ * "priority": 10,
38025
+ * "status": "VERIFIED"
38026
+ * }
38027
+ * ],
38028
+ * "created_at": "2025-01-20T14:30:00Z",
38029
+ * "verified_at": "2025-01-20T15:10:00Z",
38030
+ * "last_checked_at": "2025-01-20T15:10:00Z"
38031
+ * },
38032
+ * "meta": {
38033
+ * "timestamp": "2025-01-20T15:30:00Z",
38034
+ * "request_id": "req_123"
38035
+ * }
38036
+ * }
38037
+ */
38038
+ "application/json": components["schemas"]["EmailDomainResponse"];
38039
+ };
38040
+ };
38041
+ 400: components["responses"]["InvalidRequestTarget"];
38042
+ 401: components["responses"]["Unauthorized"];
38043
+ /**
38044
+ * @description The credential cannot reach the account in the path, lacks the `email-domains:write` scope,
38045
+ * or is a test API key (`LIVE_CREDENTIAL_REQUIRED`). An account you cannot reach and an
38046
+ * account that does not exist answer identically.
38047
+ */
38048
+ 403: {
38049
+ headers: {
38050
+ [name: string]: unknown;
38051
+ };
38052
+ content: {
38053
+ "application/json": components["schemas"]["ErrorResponse"];
38054
+ };
38055
+ };
38056
+ 404: components["responses"]["EmailDomainNotFound"];
38057
+ 429: components["responses"]["TooManyRequests"];
38058
+ 500: components["responses"]["InternalServerError"];
38059
+ default: components["responses"]["UnexpectedError"];
38060
+ };
38061
+ };
36156
38062
  listEmailDeliveries: {
36157
38063
  parameters: {
36158
38064
  query?: {
@@ -36411,6 +38317,8 @@ declare class InvoicesResource {
36411
38317
  rectified_invoice_id?: string;
36412
38318
  source_proforma_id?: string;
36413
38319
  converted_invoice_id?: string;
38320
+ replaced_by_invoice_id?: string;
38321
+ rectified_by_invoice_ids?: string[];
36414
38322
  rectification_reason?: string;
36415
38323
  recurring_invoice_id?: string | null;
36416
38324
  recurring_invoice_name?: string | null;
@@ -36469,6 +38377,8 @@ declare class InvoicesResource {
36469
38377
  rectified_invoice_id?: string;
36470
38378
  source_proforma_id?: string;
36471
38379
  converted_invoice_id?: string;
38380
+ replaced_by_invoice_id?: string;
38381
+ rectified_by_invoice_ids?: string[];
36472
38382
  rectification_reason?: string;
36473
38383
  recurring_invoice_id?: string | null;
36474
38384
  recurring_invoice_name?: string | null;
@@ -36528,6 +38438,8 @@ declare class InvoicesResource {
36528
38438
  rectified_invoice_id?: string;
36529
38439
  source_proforma_id?: string;
36530
38440
  converted_invoice_id?: string;
38441
+ replaced_by_invoice_id?: string;
38442
+ rectified_by_invoice_ids?: string[];
36531
38443
  rectification_reason?: string;
36532
38444
  recurring_invoice_id?: string | null;
36533
38445
  recurring_invoice_name?: string | null;
@@ -36596,6 +38508,8 @@ declare class InvoicesResource {
36596
38508
  rectified_invoice_id?: string;
36597
38509
  source_proforma_id?: string;
36598
38510
  converted_invoice_id?: string;
38511
+ replaced_by_invoice_id?: string;
38512
+ rectified_by_invoice_ids?: string[];
36599
38513
  rectification_reason?: string;
36600
38514
  recurring_invoice_id?: string | null;
36601
38515
  recurring_invoice_name?: string | null;
@@ -36657,6 +38571,8 @@ declare class InvoicesResource {
36657
38571
  rectified_invoice_id?: string;
36658
38572
  source_proforma_id?: string;
36659
38573
  converted_invoice_id?: string;
38574
+ replaced_by_invoice_id?: string;
38575
+ rectified_by_invoice_ids?: string[];
36660
38576
  rectification_reason?: string;
36661
38577
  recurring_invoice_id?: string | null;
36662
38578
  recurring_invoice_name?: string | null;
@@ -36719,6 +38635,8 @@ declare class InvoicesResource {
36719
38635
  rectified_invoice_id?: string;
36720
38636
  source_proforma_id?: string;
36721
38637
  converted_invoice_id?: string;
38638
+ replaced_by_invoice_id?: string;
38639
+ rectified_by_invoice_ids?: string[];
36722
38640
  rectification_reason?: string;
36723
38641
  recurring_invoice_id?: string | null;
36724
38642
  recurring_invoice_name?: string | null;
@@ -36780,6 +38698,8 @@ declare class InvoicesResource {
36780
38698
  rectified_invoice_id?: string;
36781
38699
  source_proforma_id?: string;
36782
38700
  converted_invoice_id?: string;
38701
+ replaced_by_invoice_id?: string;
38702
+ rectified_by_invoice_ids?: string[];
36783
38703
  rectification_reason?: string;
36784
38704
  recurring_invoice_id?: string | null;
36785
38705
  recurring_invoice_name?: string | null;
@@ -36838,6 +38758,8 @@ declare class InvoicesResource {
36838
38758
  rectified_invoice_id?: string;
36839
38759
  source_proforma_id?: string;
36840
38760
  converted_invoice_id?: string;
38761
+ replaced_by_invoice_id?: string;
38762
+ rectified_by_invoice_ids?: string[];
36841
38763
  rectification_reason?: string;
36842
38764
  recurring_invoice_id?: string | null;
36843
38765
  recurring_invoice_name?: string | null;
@@ -36903,6 +38825,8 @@ declare class InvoicesResource {
36903
38825
  rectified_invoice_id?: string;
36904
38826
  source_proforma_id?: string;
36905
38827
  converted_invoice_id?: string;
38828
+ replaced_by_invoice_id?: string;
38829
+ rectified_by_invoice_ids?: string[];
36906
38830
  rectification_reason?: string;
36907
38831
  recurring_invoice_id?: string | null;
36908
38832
  recurring_invoice_name?: string | null;
@@ -36962,6 +38886,8 @@ declare class InvoicesResource {
36962
38886
  rectified_invoice_id?: string;
36963
38887
  source_proforma_id?: string;
36964
38888
  converted_invoice_id?: string;
38889
+ replaced_by_invoice_id?: string;
38890
+ rectified_by_invoice_ids?: string[];
36965
38891
  rectification_reason?: string;
36966
38892
  recurring_invoice_id?: string | null;
36967
38893
  recurring_invoice_name?: string | null;
@@ -37024,6 +38950,8 @@ declare class InvoicesResource {
37024
38950
  rectified_invoice_id?: string;
37025
38951
  source_proforma_id?: string;
37026
38952
  converted_invoice_id?: string;
38953
+ replaced_by_invoice_id?: string;
38954
+ rectified_by_invoice_ids?: string[];
37027
38955
  rectification_reason?: string;
37028
38956
  recurring_invoice_id?: string | null;
37029
38957
  recurring_invoice_name?: string | null;
@@ -37082,6 +39010,8 @@ declare class InvoicesResource {
37082
39010
  rectified_invoice_id?: string;
37083
39011
  source_proforma_id?: string;
37084
39012
  converted_invoice_id?: string;
39013
+ replaced_by_invoice_id?: string;
39014
+ rectified_by_invoice_ids?: string[];
37085
39015
  rectification_reason?: string;
37086
39016
  recurring_invoice_id?: string | null;
37087
39017
  recurring_invoice_name?: string | null;
@@ -37143,6 +39073,8 @@ declare class InvoicesResource {
37143
39073
  rectified_invoice_id?: string;
37144
39074
  source_proforma_id?: string;
37145
39075
  converted_invoice_id?: string;
39076
+ replaced_by_invoice_id?: string;
39077
+ rectified_by_invoice_ids?: string[];
37146
39078
  rectification_reason?: string;
37147
39079
  recurring_invoice_id?: string | null;
37148
39080
  recurring_invoice_name?: string | null;
@@ -38627,6 +40559,7 @@ declare class CompanyPaymentEventsResource {
38627
40559
  failure_reason?: string | null;
38628
40560
  failure_message?: string | null;
38629
40561
  needs_action: boolean;
40562
+ outcome: components["schemas"]["PaymentEventOutcome"];
38630
40563
  draft_available: boolean;
38631
40564
  retry_available: boolean;
38632
40565
  discard_available: boolean;
@@ -38669,6 +40602,7 @@ declare class CompanyPaymentEventsResource {
38669
40602
  failure_reason?: string | null;
38670
40603
  failure_message?: string | null;
38671
40604
  needs_action: boolean;
40605
+ outcome: components["schemas"]["PaymentEventOutcome"];
38672
40606
  draft_available: boolean;
38673
40607
  retry_available: boolean;
38674
40608
  discard_available: boolean;
@@ -38719,6 +40653,7 @@ declare class CompanyPaymentEventsResource {
38719
40653
  failure_reason?: string | null;
38720
40654
  failure_message?: string | null;
38721
40655
  needs_action: boolean;
40656
+ outcome: components["schemas"]["PaymentEventOutcome"];
38722
40657
  draft_available: boolean;
38723
40658
  retry_available: boolean;
38724
40659
  discard_available: boolean;
@@ -38759,6 +40694,7 @@ declare class CompanyPaymentEventsResource {
38759
40694
  failure_reason?: string | null;
38760
40695
  failure_message?: string | null;
38761
40696
  needs_action: boolean;
40697
+ outcome: components["schemas"]["PaymentEventOutcome"];
38762
40698
  draft_available: boolean;
38763
40699
  retry_available: boolean;
38764
40700
  discard_available: boolean;
@@ -38799,6 +40735,7 @@ declare class CompanyPaymentEventsResource {
38799
40735
  failure_reason?: string | null;
38800
40736
  failure_message?: string | null;
38801
40737
  needs_action: boolean;
40738
+ outcome: components["schemas"]["PaymentEventOutcome"];
38802
40739
  draft_available: boolean;
38803
40740
  retry_available: boolean;
38804
40741
  discard_available: boolean;
@@ -39070,6 +41007,8 @@ declare class CompanyInvoicesResource {
39070
41007
  rectified_invoice_id?: string;
39071
41008
  source_proforma_id?: string;
39072
41009
  converted_invoice_id?: string;
41010
+ replaced_by_invoice_id?: string;
41011
+ rectified_by_invoice_ids?: string[];
39073
41012
  rectification_reason?: string;
39074
41013
  recurring_invoice_id?: string | null;
39075
41014
  recurring_invoice_name?: string | null;
@@ -39167,6 +41106,8 @@ declare class CompanyInvoicesResource {
39167
41106
  rectified_invoice_id?: string;
39168
41107
  source_proforma_id?: string;
39169
41108
  converted_invoice_id?: string;
41109
+ replaced_by_invoice_id?: string;
41110
+ rectified_by_invoice_ids?: string[];
39170
41111
  rectification_reason?: string;
39171
41112
  recurring_invoice_id?: string | null;
39172
41113
  recurring_invoice_name?: string | null;
@@ -39252,6 +41193,8 @@ declare class CompanyInvoicesResource {
39252
41193
  rectified_invoice_id?: string;
39253
41194
  source_proforma_id?: string;
39254
41195
  converted_invoice_id?: string;
41196
+ replaced_by_invoice_id?: string;
41197
+ rectified_by_invoice_ids?: string[];
39255
41198
  rectification_reason?: string;
39256
41199
  recurring_invoice_id?: string | null;
39257
41200
  recurring_invoice_name?: string | null;
@@ -39312,6 +41255,8 @@ declare class CompanyInvoicesResource {
39312
41255
  rectified_invoice_id?: string;
39313
41256
  source_proforma_id?: string;
39314
41257
  converted_invoice_id?: string;
41258
+ replaced_by_invoice_id?: string;
41259
+ rectified_by_invoice_ids?: string[];
39315
41260
  rectification_reason?: string;
39316
41261
  recurring_invoice_id?: string | null;
39317
41262
  recurring_invoice_name?: string | null;
@@ -39373,6 +41318,8 @@ declare class CompanyInvoicesResource {
39373
41318
  rectified_invoice_id?: string;
39374
41319
  source_proforma_id?: string;
39375
41320
  converted_invoice_id?: string;
41321
+ replaced_by_invoice_id?: string;
41322
+ rectified_by_invoice_ids?: string[];
39376
41323
  rectification_reason?: string;
39377
41324
  recurring_invoice_id?: string | null;
39378
41325
  recurring_invoice_name?: string | null;
@@ -39441,6 +41388,8 @@ declare class CompanyInvoicesResource {
39441
41388
  rectified_invoice_id?: string;
39442
41389
  source_proforma_id?: string;
39443
41390
  converted_invoice_id?: string;
41391
+ replaced_by_invoice_id?: string;
41392
+ rectified_by_invoice_ids?: string[];
39444
41393
  rectification_reason?: string;
39445
41394
  recurring_invoice_id?: string | null;
39446
41395
  recurring_invoice_name?: string | null;
@@ -39502,6 +41451,8 @@ declare class CompanyInvoicesResource {
39502
41451
  rectified_invoice_id?: string;
39503
41452
  source_proforma_id?: string;
39504
41453
  converted_invoice_id?: string;
41454
+ replaced_by_invoice_id?: string;
41455
+ rectified_by_invoice_ids?: string[];
39505
41456
  rectification_reason?: string;
39506
41457
  recurring_invoice_id?: string | null;
39507
41458
  recurring_invoice_name?: string | null;
@@ -39574,6 +41525,8 @@ declare class CompanyInvoicesResource {
39574
41525
  rectified_invoice_id?: string;
39575
41526
  source_proforma_id?: string;
39576
41527
  converted_invoice_id?: string;
41528
+ replaced_by_invoice_id?: string;
41529
+ rectified_by_invoice_ids?: string[];
39577
41530
  rectification_reason?: string;
39578
41531
  recurring_invoice_id?: string | null;
39579
41532
  recurring_invoice_name?: string | null;
@@ -39634,6 +41587,8 @@ declare class CompanyInvoicesResource {
39634
41587
  rectified_invoice_id?: string;
39635
41588
  source_proforma_id?: string;
39636
41589
  converted_invoice_id?: string;
41590
+ replaced_by_invoice_id?: string;
41591
+ rectified_by_invoice_ids?: string[];
39637
41592
  rectification_reason?: string;
39638
41593
  recurring_invoice_id?: string | null;
39639
41594
  recurring_invoice_name?: string | null;
@@ -39704,6 +41659,8 @@ declare class CompanyInvoicesResource {
39704
41659
  rectified_invoice_id?: string;
39705
41660
  source_proforma_id?: string;
39706
41661
  converted_invoice_id?: string;
41662
+ replaced_by_invoice_id?: string;
41663
+ rectified_by_invoice_ids?: string[];
39707
41664
  rectification_reason?: string;
39708
41665
  recurring_invoice_id?: string | null;
39709
41666
  recurring_invoice_name?: string | null;
@@ -39784,6 +41741,8 @@ declare class CompanyInvoicesResource {
39784
41741
  rectified_invoice_id?: string;
39785
41742
  source_proforma_id?: string;
39786
41743
  converted_invoice_id?: string;
41744
+ replaced_by_invoice_id?: string;
41745
+ rectified_by_invoice_ids?: string[];
39787
41746
  rectification_reason?: string;
39788
41747
  recurring_invoice_id?: string | null;
39789
41748
  recurring_invoice_name?: string | null;
@@ -39991,6 +41950,8 @@ declare class CompanyInvoiceScheduleResource {
39991
41950
  rectified_invoice_id?: string | undefined;
39992
41951
  source_proforma_id?: string | undefined;
39993
41952
  converted_invoice_id?: string | undefined;
41953
+ replaced_by_invoice_id?: string | undefined;
41954
+ rectified_by_invoice_ids?: string[] | undefined;
39994
41955
  rectification_reason?: string | undefined;
39995
41956
  recurring_invoice_id?: string | null | undefined;
39996
41957
  recurring_invoice_name?: string | null | undefined;
@@ -41139,6 +43100,8 @@ declare class CompanyRecurringInvoicesResource {
41139
43100
  rectified_invoice_id?: string | undefined;
41140
43101
  source_proforma_id?: string | undefined;
41141
43102
  converted_invoice_id?: string | undefined;
43103
+ replaced_by_invoice_id?: string | undefined;
43104
+ rectified_by_invoice_ids?: string[] | undefined;
41142
43105
  rectification_reason?: string | undefined;
41143
43106
  recurring_invoice_id?: string | null | undefined;
41144
43107
  recurring_invoice_name?: string | null | undefined;