@timbro/payments 0.1.0-next.1 → 0.1.0-next.3

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.
@@ -3,6 +3,90 @@
3
3
  * Do not make direct changes to the file.
4
4
  */
5
5
  export interface paths {
6
+ "/v1/merchant_business": {
7
+ parameters: {
8
+ query?: never;
9
+ header?: never;
10
+ path?: never;
11
+ cookie?: never;
12
+ };
13
+ /**
14
+ * Retrieve the merchant business
15
+ * @description Returns the business the credential selects, its capabilities, and the requirements that remain. A caller resumes onboarding by acting on the first requirement it owns and reading again.
16
+ */
17
+ get: operations["retrieveMerchantBusiness"];
18
+ put?: never;
19
+ post?: never;
20
+ delete?: never;
21
+ options?: never;
22
+ head?: never;
23
+ /**
24
+ * Update the merchant business
25
+ * @description Replaces each member the request carries: requested capabilities, any subset of the fiscal details, or the whole payments profile. The server then provisions whatever the new state allows.
26
+ */
27
+ patch: operations["updateMerchantBusiness"];
28
+ trace?: never;
29
+ };
30
+ "/v1/merchant_business/signing_certificate": {
31
+ parameters: {
32
+ query?: never;
33
+ header?: never;
34
+ path?: never;
35
+ cookie?: never;
36
+ };
37
+ get?: never;
38
+ /**
39
+ * Import the sandbox signing certificate
40
+ * @description Hands the PKCS#12 archive and its password to Timbro's custody for the sandbox Legal issuer. Custody answers the certificate it already holds as a replay and refuses a different one. Once the Legal issuer is complete the TesteCF document is sent, and `Retry-After` names when to read again.
41
+ */
42
+ put: operations["importMerchantBusinessSigningCertificate"];
43
+ post?: never;
44
+ delete?: never;
45
+ options?: never;
46
+ head?: never;
47
+ patch?: never;
48
+ trace?: never;
49
+ };
50
+ "/v1/merchant_business/test_fiscal_document": {
51
+ parameters: {
52
+ query?: never;
53
+ header?: never;
54
+ path?: never;
55
+ cookie?: never;
56
+ };
57
+ get?: never;
58
+ put?: never;
59
+ /**
60
+ * Send the TesteCF document again
61
+ * @description Sends a new TesteCF document when none is processing or accepted and answers 202; otherwise answers 200 with the business unchanged. The server also sends it on its own once the certificate is active.
62
+ */
63
+ post: operations["retryMerchantBusinessTestFiscalDocument"];
64
+ delete?: never;
65
+ options?: never;
66
+ head?: never;
67
+ patch?: never;
68
+ trace?: never;
69
+ };
70
+ "/v1/merchant_business/sandbox_credentials": {
71
+ parameters: {
72
+ query?: never;
73
+ header?: never;
74
+ path?: never;
75
+ cookie?: never;
76
+ };
77
+ get?: never;
78
+ put?: never;
79
+ /**
80
+ * Issue the TesteCF invoice API credential
81
+ * @description Issues the credential an ERP uses against Timbro's sandbox invoice API once electronic invoicing is active, and retires the one issued before. This response is the only one that carries it; the same Idempotency-Key replays it.
82
+ */
83
+ post: operations["issueMerchantBusinessSandboxCredential"];
84
+ delete?: never;
85
+ options?: never;
86
+ head?: never;
87
+ patch?: never;
88
+ trace?: never;
89
+ };
6
90
  "/v1/payments": {
7
91
  parameters: {
8
92
  query?: never;
@@ -41,7 +125,10 @@ export interface paths {
41
125
  path?: never;
42
126
  cookie?: never;
43
127
  };
44
- /** Retrieve Timbro's verified printed representation */
128
+ /**
129
+ * Retrieve Timbro's verified printed representation
130
+ * @description Retrieves the official PDF for an issued fiscal document. When the cache is still pending, this GET asks Timbro. A 409 after that retrieve means Timbro has not produced the PDF yet and includes Retry-After. The retrieve abort is a hung-RPC ceiling, not expected latency.
131
+ */
45
132
  get: operations["retrieveFiscalDocumentPrintedRepresentation"];
46
133
  put?: never;
47
134
  post?: never;
@@ -535,7 +622,7 @@ export interface paths {
535
622
  put?: never;
536
623
  /**
537
624
  * Rotate the calling secret key
538
- * @description Issues a replacement secret key, returned only in this response, and keeps every key it retires authenticating for 24 hours.
625
+ * @description Issues a replacement for the calling secret key, returned only in this response, and keeps the calling key authenticating for 24 hours. Every other key is unchanged.
539
626
  */
540
627
  post: operations["rotateApiKey"];
541
628
  delete?: never;
@@ -796,19 +883,26 @@ export interface components {
796
883
  };
797
884
  /**
798
885
  * ApiKeyWithSecret
799
- * @description A newly issued secret key. Store it securely; it is never returned again.
886
+ * @description The replacement for the calling secret key. Store it securely; it is never returned again.
800
887
  */
801
888
  ApiKeyWithSecret: {
802
889
  /** @description API key identifier. */
803
890
  id: string;
804
891
  /** @constant */
805
892
  object: "api_key";
893
+ /** @constant */
894
+ kind: "secret_key";
895
+ mode: "test" | "live";
896
+ name: string | null;
806
897
  /** @description The new secret key. Returned only when it is issued. */
807
898
  secret: string;
808
899
  /** Format: date-time */
809
900
  createdAt: string;
810
- /** @description When every key this rotation retired stops authenticating, or null when none was retired. */
811
- retiredKeysExpireAt: string | null;
901
+ /**
902
+ * Format: date-time
903
+ * @description When the calling key this rotation replaced stops authenticating.
904
+ */
905
+ retiredKeyExpiresAt: string;
812
906
  };
813
907
  /** ApplePayPaymentMethodSummary */
814
908
  ApplePayPaymentMethodSummary: {
@@ -1740,6 +1834,14 @@ export interface components {
1740
1834
  */
1741
1835
  status: "delivered";
1742
1836
  };
1837
+ /** DeliveryNotOffered */
1838
+ DeliveryNotOffered: {
1839
+ /**
1840
+ * @description discriminator enum property added by openapi-typescript
1841
+ * @enum {string}
1842
+ */
1843
+ kind: "not_offered";
1844
+ };
1743
1845
  /**
1744
1846
  * ExternalFiscalDocumentReference
1745
1847
  * @description The fiscal document accepted by the merchant's external Timbro coordinator.
@@ -2784,499 +2886,897 @@ export interface components {
2784
2886
  /** @description Send as `cursor` to read the next page, or `null` on the last page. */
2785
2887
  nextCursor: string | null;
2786
2888
  };
2787
- /** MerchantCheckoutPolicy */
2788
- MerchantCheckoutPolicy: {
2889
+ /**
2890
+ * MerchantBusiness
2891
+ * @description The business the credential selects, its capabilities, and the requirements that remain.
2892
+ */
2893
+ MerchantBusiness: {
2789
2894
  /** @constant */
2790
- object: "merchant_checkout_policy";
2895
+ object: "merchant_business";
2896
+ id: string;
2897
+ rnc: string;
2898
+ legalName: string;
2791
2899
  revision: number;
2792
- isLiveMode: boolean;
2793
- /** MerchantCheckoutPolicyDefaults */
2794
- defaults: {
2795
- provider?: "azul" | "cardnet";
2796
- merchantAccountId?: string;
2797
- splits: boolean;
2798
- tips: boolean;
2799
- wallets: ("apple_pay" | "google_pay")[];
2900
+ capabilities: {
2901
+ payments: {
2902
+ requested: boolean;
2903
+ status: "active" | "pending" | "inactive";
2904
+ };
2905
+ electronicInvoicing: {
2906
+ requested: boolean;
2907
+ status: "active" | "pending" | "inactive";
2908
+ /** @constant */
2909
+ environment: "sandbox";
2910
+ };
2911
+ };
2912
+ fiscalDetails: {
2913
+ commercialName: string | null;
2914
+ address: string | null;
2915
+ location: {
2916
+ placeId: string;
2917
+ catalogReleaseId: string;
2918
+ municipalityCode: string | null;
2919
+ name: string;
2920
+ kind: "country" | "region" | "national_district" | "province" | "municipality" | "municipal_district" | "urban_zone" | "section" | "barrio" | "paraje" | "subbarrio";
2921
+ qualityStatus: "verified" | "provisional" | "conflicted";
2922
+ /** @description The places that contain the selected one, outermost first. */
2923
+ ancestors: {
2924
+ placeId: string;
2925
+ name: string;
2926
+ kind: "country" | "region" | "national_district" | "province" | "municipality" | "municipal_district" | "urban_zone" | "section" | "barrio" | "paraje" | "subbarrio";
2927
+ qualityStatus: "verified" | "provisional" | "conflicted";
2928
+ }[];
2929
+ } | null;
2930
+ phone: string | null;
2931
+ email: string | null;
2932
+ defaultIncomeType: string | null;
2800
2933
  };
2801
- /** MerchantCheckoutPolicyConstraints */
2802
- constraints: {
2803
- providers: ("azul" | "cardnet")[];
2804
- splits: boolean;
2805
- tips: boolean;
2806
- wallets: ("apple_pay" | "google_pay")[];
2807
- bill: boolean;
2808
- invoice: boolean;
2934
+ paymentsProfile: {
2935
+ displayName: string;
2936
+ statementDescriptor: string;
2937
+ /**
2938
+ * MerchantPermanentAddress
2939
+ * @description The selling merchant's permanent business address.
2940
+ */
2941
+ permanentAddress: {
2942
+ line1: string;
2943
+ line2?: string;
2944
+ city: string;
2945
+ province?: string;
2946
+ postalCode?: string;
2947
+ countryCode: string;
2948
+ };
2949
+ /** Format: email */
2950
+ supportEmail: string;
2951
+ supportPhone: string;
2952
+ /**
2953
+ * MerchantDeliveryPolicy
2954
+ * @description Whether the merchant offers delivery and the terms a payer needs before paying.
2955
+ */
2956
+ deliveryPolicy: {
2957
+ /** @constant */
2958
+ kind: "not_offered";
2959
+ } | {
2960
+ /** @constant */
2961
+ kind: "merchant_managed";
2962
+ summary: string;
2963
+ /** Format: uri */
2964
+ url?: string;
2965
+ };
2966
+ } | null;
2967
+ /**
2968
+ * MerchantBusinessFiscalSetup
2969
+ * @description Timbro's view of electronic invoicing provisioning, or why it cannot be read.
2970
+ */
2971
+ fiscalSetup: {
2972
+ /** @constant */
2973
+ status: "unavailable";
2974
+ /** @constant */
2975
+ cause: "timbro_unreachable";
2976
+ } | {
2977
+ /** @constant */
2978
+ status: "available";
2979
+ /**
2980
+ * MerchantBusinessFiscalBinding
2981
+ * @description The Timbro Organization, Legal issuer, Source connection, and webhook.
2982
+ */
2983
+ binding: {
2984
+ /** @constant */
2985
+ status: "unbound";
2986
+ } | {
2987
+ /** @constant */
2988
+ status: "provisioning";
2989
+ } | {
2990
+ /** @constant */
2991
+ status: "bound";
2992
+ webhookSecret: "sealed" | "pending";
2993
+ } | {
2994
+ /** @constant */
2995
+ status: "failed";
2996
+ } | {
2997
+ /** @constant */
2998
+ status: "conflict";
2999
+ };
3000
+ /**
3001
+ * MerchantBusinessLegalIssuer
3002
+ * @description Whether Timbro holds every profile field the hosted Legal issuer requires.
3003
+ */
3004
+ legalIssuer: {
3005
+ /** @constant */
3006
+ status: "missing";
3007
+ } | {
3008
+ /** @constant */
3009
+ status: "incomplete";
3010
+ } | {
3011
+ /** @constant */
3012
+ status: "complete";
3013
+ };
3014
+ /**
3015
+ * MerchantBusinessSigningCertificate
3016
+ * @description The certificate Timbro's custody holds for the sandbox Legal issuer.
3017
+ */
3018
+ signingCertificate: {
3019
+ /** @constant */
3020
+ status: "missing";
3021
+ } | {
3022
+ /** @constant */
3023
+ status: "active";
3024
+ sha256: string;
3025
+ signerSerialNumber: string;
3026
+ /** Format: date-time */
3027
+ notBefore: string;
3028
+ /** Format: date-time */
3029
+ notAfter: string;
3030
+ };
3031
+ /**
3032
+ * MerchantBusinessTestFiscalDocument
3033
+ * @description The TesteCF document DGII must accept for this RNC and certificate.
3034
+ */
3035
+ testFiscalDocument: {
3036
+ /** @constant */
3037
+ status: "not_sent";
3038
+ } | {
3039
+ /** @constant */
3040
+ status: "processing";
3041
+ id: string;
3042
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3043
+ } | {
3044
+ /** @constant */
3045
+ status: "accepted";
3046
+ id: string;
3047
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3048
+ } | {
3049
+ /** @constant */
3050
+ status: "rejected";
3051
+ id: string;
3052
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3053
+ reason: "timbro_rejected" | "authority_rejected";
3054
+ messages: string[];
3055
+ } | {
3056
+ /** @constant */
3057
+ status: "operator_required";
3058
+ id: string;
3059
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3060
+ };
2809
3061
  };
2810
- /** Format: date-time */
2811
- updatedAt?: string;
3062
+ requirements: {
3063
+ code: "capabilities_required" | "commercial_name_required" | "address_required" | "location_required" | "phone_required" | "default_income_type_required" | "contact_email_verification_required" | "fiscal_details_rejected" | "taxpayer_registration_required" | "signing_certificate_required" | "signing_certificate_expiring" | "test_fiscal_document_rejected" | "test_fiscal_document_pending" | "test_fiscal_document_send_pending" | "fiscal_binding_pending" | "legal_issuer_sync_pending" | "fiscal_setup_unavailable" | "fiscal_binding_conflict" | "fiscal_issuer_rejected" | "test_fiscal_document_operator_required" | "payments_profile_required" | "merchant_account_required" | "merchant_account_disabled" | "active_credential_required" | "credential_material_invalid" | "test_live_mode_mismatch" | "callback_configuration_failed" | "callback_configuration_required" | "connectivity_check_failed" | "connectivity_check_required" | "provider_qualification_failed" | "provider_qualification_required" | "provider_adapter_unavailable";
3064
+ owner: "merchant" | "dgii" | "timbro" | "provider" | "operator";
3065
+ blocks: ("payments" | "electronic_invoicing")[];
3066
+ /** @description JSON Pointer into this representation the requirement names. */
3067
+ field?: string;
3068
+ errors?: {
3069
+ code: string;
3070
+ message: string;
3071
+ }[];
3072
+ }[];
3073
+ /** Format: uri */
3074
+ onboardingUrl: string;
2812
3075
  };
2813
- /** MerchantCheckoutPolicyConstraints */
2814
- MerchantCheckoutPolicyConstraints: {
2815
- providers: ("azul" | "cardnet")[];
2816
- splits: boolean;
2817
- tips: boolean;
2818
- wallets: ("apple_pay" | "google_pay")[];
2819
- bill: boolean;
2820
- invoice: boolean;
3076
+ /** MerchantBusinessBindingBound */
3077
+ MerchantBusinessBindingBound: {
3078
+ /**
3079
+ * @description discriminator enum property added by openapi-typescript
3080
+ * @enum {string}
3081
+ */
3082
+ status: "bound";
3083
+ webhookSecret: "sealed" | "pending";
2821
3084
  };
2822
- /** MerchantCheckoutPolicyDefaults */
2823
- MerchantCheckoutPolicyDefaults: {
2824
- provider?: "azul" | "cardnet";
2825
- merchantAccountId?: string;
2826
- splits: boolean;
2827
- tips: boolean;
2828
- wallets: ("apple_pay" | "google_pay")[];
3085
+ /** MerchantBusinessBindingConflict */
3086
+ MerchantBusinessBindingConflict: {
3087
+ /**
3088
+ * @description discriminator enum property added by openapi-typescript
3089
+ * @enum {string}
3090
+ */
3091
+ status: "conflict";
3092
+ };
3093
+ /** MerchantBusinessBindingFailed */
3094
+ MerchantBusinessBindingFailed: {
3095
+ /**
3096
+ * @description discriminator enum property added by openapi-typescript
3097
+ * @enum {string}
3098
+ */
3099
+ status: "failed";
3100
+ };
3101
+ /** MerchantBusinessBindingProvisioning */
3102
+ MerchantBusinessBindingProvisioning: {
3103
+ /**
3104
+ * @description discriminator enum property added by openapi-typescript
3105
+ * @enum {string}
3106
+ */
3107
+ status: "provisioning";
3108
+ };
3109
+ /** MerchantBusinessBindingUnbound */
3110
+ MerchantBusinessBindingUnbound: {
3111
+ /**
3112
+ * @description discriminator enum property added by openapi-typescript
3113
+ * @enum {string}
3114
+ */
3115
+ status: "unbound";
2829
3116
  };
2830
3117
  /**
2831
- * MerchantRncVerification
2832
- * @description The Directory-owned legal identity for a verified merchant RNC.
3118
+ * MerchantBusinessFiscalBinding
3119
+ * @description The Timbro Organization, Legal issuer, Source connection, and webhook.
2833
3120
  */
2834
- MerchantRncVerification: {
2835
- rnc: string;
2836
- legalName: string;
3121
+ MerchantBusinessFiscalBinding: {
3122
+ /** @constant */
3123
+ status: "unbound";
3124
+ } | {
3125
+ /** @constant */
3126
+ status: "provisioning";
3127
+ } | {
3128
+ /** @constant */
3129
+ status: "bound";
3130
+ webhookSecret: "sealed" | "pending";
3131
+ } | {
3132
+ /** @constant */
3133
+ status: "failed";
3134
+ } | {
3135
+ /** @constant */
3136
+ status: "conflict";
2837
3137
  };
2838
3138
  /**
2839
- * MerchantRncVerificationRequest
2840
- * @description A merchant onboarding request to verify an RNC.
3139
+ * MerchantBusinessFiscalSetup
3140
+ * @description Timbro's view of electronic invoicing provisioning, or why it cannot be read.
2841
3141
  */
2842
- MerchantRncVerificationRequest: {
2843
- /** @description The nine-digit RNC to verify against the active DGII directory snapshot. */
2844
- rnc: string;
2845
- };
2846
- /** MerchantSplit */
2847
- MerchantSplit: {
2848
- status: components["schemas"]["SplitStatus"];
2849
- captured: components["schemas"]["Money"];
2850
- authorized: components["schemas"]["Money"];
2851
- remainingToAuthorize: components["schemas"]["Money"];
2852
- remainingToCapture: components["schemas"]["Money"];
2853
- capturedCount: number;
2854
- authorizedCount: number;
2855
- partCount: number;
2856
- parts: {
2857
- ordinal: number;
2858
- amount: components["schemas"]["Money"];
2859
- allocatedItbis: components["schemas"]["Money"];
2860
- /**
2861
- * SplitPartStatus
2862
- * @description Authorization and capture state for one share. `authorized` means funds are reserved; `succeeded` means the reservation was captured.
2863
- * @enum {string}
2864
- */
2865
- status: "unpaid" | "processing" | "authorized" | "capturing" | "releasing" | "verifying" | "declined" | "succeeded" | "released" | "expired";
2866
- paymentMethodSummary: components["schemas"]["PaymentMethodSummary"] | null;
2867
- }[];
2868
- };
2869
- /**
2870
- * Money
2871
- * @description A monetary amount. Never a floating-point number.
2872
- */
2873
- Money: {
3142
+ MerchantBusinessFiscalSetup: {
3143
+ /** @constant */
3144
+ status: "unavailable";
3145
+ /** @constant */
3146
+ cause: "timbro_unreachable";
3147
+ } | {
3148
+ /** @constant */
3149
+ status: "available";
2874
3150
  /**
2875
- * @description ISO 4217 alphabetic code.
2876
- * @example DOP
3151
+ * MerchantBusinessFiscalBinding
3152
+ * @description The Timbro Organization, Legal issuer, Source connection, and webhook.
2877
3153
  */
2878
- currency: string;
3154
+ binding: {
3155
+ /** @constant */
3156
+ status: "unbound";
3157
+ } | {
3158
+ /** @constant */
3159
+ status: "provisioning";
3160
+ } | {
3161
+ /** @constant */
3162
+ status: "bound";
3163
+ webhookSecret: "sealed" | "pending";
3164
+ } | {
3165
+ /** @constant */
3166
+ status: "failed";
3167
+ } | {
3168
+ /** @constant */
3169
+ status: "conflict";
3170
+ };
2879
3171
  /**
2880
- * @description Amount in base-10 minor units of `currency`. DOP and USD use two decimal places, so 125000 is 1,250.00.
2881
- * @example 125000
3172
+ * MerchantBusinessLegalIssuer
3173
+ * @description Whether Timbro holds every profile field the hosted Legal issuer requires.
2882
3174
  */
2883
- minorUnits: number;
2884
- };
2885
- /**
2886
- * NextAction
2887
- * @description The next bounded action required from the customer. Never a provider response shape.
2888
- */
2889
- NextAction: {
2890
- /** @constant */
2891
- kind: "redirect_to_url";
3175
+ legalIssuer: {
3176
+ /** @constant */
3177
+ status: "missing";
3178
+ } | {
3179
+ /** @constant */
3180
+ status: "incomplete";
3181
+ } | {
3182
+ /** @constant */
3183
+ status: "complete";
3184
+ };
2892
3185
  /**
2893
- * Format: uri
2894
- * @description Open in a top-level browsing context.
3186
+ * MerchantBusinessSigningCertificate
3187
+ * @description The certificate Timbro's custody holds for the sandbox Legal issuer.
2895
3188
  */
2896
- url: string;
2897
- /** Format: date-time */
2898
- expiresAt: string;
2899
- };
2900
- /** OperatorRequiredFiscalDocument */
2901
- OperatorRequiredFiscalDocument: {
2902
- /** @description Fiscal document identifier. */
2903
- id: string;
2904
- /** @constant */
2905
- object: "fiscal_document";
2906
- /** @description Payment that requested the fiscal document. */
2907
- paymentId: string;
2908
- /** @enum {string} */
2909
- kind: "consumer" | "fiscal_credit" | "government";
3189
+ signingCertificate: {
3190
+ /** @constant */
3191
+ status: "missing";
3192
+ } | {
3193
+ /** @constant */
3194
+ status: "active";
3195
+ sha256: string;
3196
+ signerSerialNumber: string;
3197
+ /** Format: date-time */
3198
+ notBefore: string;
3199
+ /** Format: date-time */
3200
+ notAfter: string;
3201
+ };
2910
3202
  /**
2911
- * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
2912
- * @enum {string}
3203
+ * MerchantBusinessTestFiscalDocument
3204
+ * @description The TesteCF document DGII must accept for this RNC and certificate.
2913
3205
  */
2914
- issuanceMode: "required" | "deferred" | "externally_coordinated";
2915
- merchantInvoiceNumber?: string;
2916
- merchantOrderNumber?: string;
2917
- revision: number;
2918
- buyer?: components["schemas"]["FiscalBuyer"];
2919
- governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
2920
- lines: components["schemas"]["FiscalLine"][];
2921
- delivery: components["schemas"]["FiscalDelivery"] | null;
2922
- /** Format: date-time */
2923
- createdAt: string;
2924
- /** Format: date-time */
2925
- updatedAt: string;
3206
+ testFiscalDocument: {
3207
+ /** @constant */
3208
+ status: "not_sent";
3209
+ } | {
3210
+ /** @constant */
3211
+ status: "processing";
3212
+ id: string;
3213
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3214
+ } | {
3215
+ /** @constant */
3216
+ status: "accepted";
3217
+ id: string;
3218
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3219
+ } | {
3220
+ /** @constant */
3221
+ status: "rejected";
3222
+ id: string;
3223
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3224
+ reason: "timbro_rejected" | "authority_rejected";
3225
+ messages: string[];
3226
+ } | {
3227
+ /** @constant */
3228
+ status: "operator_required";
3229
+ id: string;
3230
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3231
+ };
3232
+ };
3233
+ /** MerchantBusinessFiscalSetupAvailable */
3234
+ MerchantBusinessFiscalSetupAvailable: {
2926
3235
  /**
2927
3236
  * @description discriminator enum property added by openapi-typescript
2928
3237
  * @enum {string}
2929
3238
  */
2930
- status: "operator_required";
2931
- problem: components["schemas"]["FiscalProblem"];
2932
- };
2933
- /** PayerAwaitingMerchantIssuanceFiscalDocument */
2934
- PayerAwaitingMerchantIssuanceFiscalDocument: {
2935
- /** @description Fiscal document identifier. */
2936
- id: string;
2937
- /** @constant */
2938
- object: "fiscal_document";
2939
- /** @description Payment that requested the fiscal document. */
2940
- paymentId: string;
2941
- /** @enum {string} */
2942
- kind: "consumer" | "fiscal_credit" | "government";
3239
+ status: "available";
2943
3240
  /**
2944
- * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
2945
- * @enum {string}
3241
+ * MerchantBusinessFiscalBinding
3242
+ * @description The Timbro Organization, Legal issuer, Source connection, and webhook.
2946
3243
  */
2947
- issuanceMode: "required" | "deferred" | "externally_coordinated";
2948
- revision: number;
2949
- buyer?: components["schemas"]["FiscalBuyer"];
2950
- governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
2951
- lines: components["schemas"]["FiscalLine"][];
2952
- /** Format: date-time */
2953
- createdAt: string;
2954
- /** Format: date-time */
2955
- updatedAt: string;
3244
+ binding: {
3245
+ /** @constant */
3246
+ status: "unbound";
3247
+ } | {
3248
+ /** @constant */
3249
+ status: "provisioning";
3250
+ } | {
3251
+ /** @constant */
3252
+ status: "bound";
3253
+ webhookSecret: "sealed" | "pending";
3254
+ } | {
3255
+ /** @constant */
3256
+ status: "failed";
3257
+ } | {
3258
+ /** @constant */
3259
+ status: "conflict";
3260
+ };
2956
3261
  /**
2957
- * @description discriminator enum property added by openapi-typescript
2958
- * @enum {string}
3262
+ * MerchantBusinessLegalIssuer
3263
+ * @description Whether Timbro holds every profile field the hosted Legal issuer requires.
2959
3264
  */
2960
- status: "awaiting_merchant_issuance";
2961
- delivery: null;
3265
+ legalIssuer: {
3266
+ /** @constant */
3267
+ status: "missing";
3268
+ } | {
3269
+ /** @constant */
3270
+ status: "incomplete";
3271
+ } | {
3272
+ /** @constant */
3273
+ status: "complete";
3274
+ };
3275
+ /**
3276
+ * MerchantBusinessSigningCertificate
3277
+ * @description The certificate Timbro's custody holds for the sandbox Legal issuer.
3278
+ */
3279
+ signingCertificate: {
3280
+ /** @constant */
3281
+ status: "missing";
3282
+ } | {
3283
+ /** @constant */
3284
+ status: "active";
3285
+ sha256: string;
3286
+ signerSerialNumber: string;
3287
+ /** Format: date-time */
3288
+ notBefore: string;
3289
+ /** Format: date-time */
3290
+ notAfter: string;
3291
+ };
3292
+ /**
3293
+ * MerchantBusinessTestFiscalDocument
3294
+ * @description The TesteCF document DGII must accept for this RNC and certificate.
3295
+ */
3296
+ testFiscalDocument: {
3297
+ /** @constant */
3298
+ status: "not_sent";
3299
+ } | {
3300
+ /** @constant */
3301
+ status: "processing";
3302
+ id: string;
3303
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3304
+ } | {
3305
+ /** @constant */
3306
+ status: "accepted";
3307
+ id: string;
3308
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3309
+ } | {
3310
+ /** @constant */
3311
+ status: "rejected";
3312
+ id: string;
3313
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3314
+ reason: "timbro_rejected" | "authority_rejected";
3315
+ messages: string[];
3316
+ } | {
3317
+ /** @constant */
3318
+ status: "operator_required";
3319
+ id: string;
3320
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3321
+ };
2962
3322
  };
2963
- /** PayerBouncedFiscalDelivery */
2964
- PayerBouncedFiscalDelivery: {
2965
- /** Format: email */
2966
- email: string;
3323
+ /** MerchantBusinessFiscalSetupUnavailable */
3324
+ MerchantBusinessFiscalSetupUnavailable: {
2967
3325
  /**
2968
3326
  * @description discriminator enum property added by openapi-typescript
2969
3327
  * @enum {string}
2970
3328
  */
2971
- status: "bounced";
3329
+ status: "unavailable";
3330
+ /** @constant */
3331
+ cause: "timbro_unreachable";
2972
3332
  };
2973
- /** PayerDelayedFiscalDocument */
2974
- PayerDelayedFiscalDocument: {
2975
- /** @description Fiscal document identifier. */
2976
- id: string;
3333
+ /**
3334
+ * MerchantBusinessLegalIssuer
3335
+ * @description Whether Timbro holds every profile field the hosted Legal issuer requires.
3336
+ */
3337
+ MerchantBusinessLegalIssuer: {
2977
3338
  /** @constant */
2978
- object: "fiscal_document";
2979
- /** @description Payment that requested the fiscal document. */
2980
- paymentId: string;
2981
- /** @enum {string} */
2982
- kind: "consumer" | "fiscal_credit" | "government";
2983
- /**
2984
- * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
2985
- * @enum {string}
2986
- */
2987
- issuanceMode: "required" | "deferred" | "externally_coordinated";
2988
- revision: number;
2989
- buyer?: components["schemas"]["FiscalBuyer"];
2990
- governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
2991
- lines: components["schemas"]["FiscalLine"][];
2992
- /** Format: date-time */
2993
- createdAt: string;
2994
- /** Format: date-time */
2995
- updatedAt: string;
3339
+ status: "missing";
3340
+ } | {
3341
+ /** @constant */
3342
+ status: "incomplete";
3343
+ } | {
3344
+ /** @constant */
3345
+ status: "complete";
3346
+ };
3347
+ /** MerchantBusinessLegalIssuerComplete */
3348
+ MerchantBusinessLegalIssuerComplete: {
2996
3349
  /**
2997
3350
  * @description discriminator enum property added by openapi-typescript
2998
3351
  * @enum {string}
2999
3352
  */
3000
- status: "delayed";
3001
- /** Format: date-time */
3002
- delayedSince: string;
3003
- delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3353
+ status: "complete";
3004
3354
  };
3005
- /** PayerDeliveredFiscalDelivery */
3006
- PayerDeliveredFiscalDelivery: {
3007
- /** Format: email */
3008
- email: string;
3355
+ /** MerchantBusinessLegalIssuerIncomplete */
3356
+ MerchantBusinessLegalIssuerIncomplete: {
3009
3357
  /**
3010
3358
  * @description discriminator enum property added by openapi-typescript
3011
3359
  * @enum {string}
3012
3360
  */
3013
- status: "delivered";
3361
+ status: "incomplete";
3014
3362
  };
3015
- /** PayerFailedFiscalDelivery */
3016
- PayerFailedFiscalDelivery: {
3017
- /** Format: email */
3018
- email: string;
3363
+ /** MerchantBusinessLegalIssuerMissing */
3364
+ MerchantBusinessLegalIssuerMissing: {
3019
3365
  /**
3020
3366
  * @description discriminator enum property added by openapi-typescript
3021
3367
  * @enum {string}
3022
3368
  */
3023
- status: "failed";
3369
+ status: "missing";
3024
3370
  };
3025
3371
  /**
3026
- * PayerFiscalDelivery
3027
- * @description Payer-visible delivery progress without merchant diagnostics.
3372
+ * MerchantBusinessPaymentsProfile
3373
+ * @description Payer-facing support, address, and delivery terms. The legal name and RNC are the business's.
3028
3374
  */
3029
- PayerFiscalDelivery: {
3375
+ MerchantBusinessPaymentsProfile: {
3376
+ displayName: string;
3377
+ statementDescriptor: string;
3378
+ /**
3379
+ * MerchantPermanentAddress
3380
+ * @description The selling merchant's permanent business address.
3381
+ */
3382
+ permanentAddress: {
3383
+ line1: string;
3384
+ line2?: string;
3385
+ city: string;
3386
+ province?: string;
3387
+ postalCode?: string;
3388
+ countryCode: string;
3389
+ };
3030
3390
  /** Format: email */
3031
- email: string;
3032
- /** @constant */
3033
- status: "waiting_for_document";
3034
- } | {
3035
- /** Format: email */
3036
- email: string;
3037
- /** @constant */
3038
- status: "pending";
3039
- } | {
3040
- /** Format: email */
3041
- email: string;
3042
- /** @constant */
3043
- status: "submitted";
3044
- } | {
3045
- /** Format: email */
3046
- email: string;
3047
- /** @constant */
3048
- status: "delivered";
3049
- } | {
3050
- /** Format: email */
3051
- email: string;
3052
- /** @constant */
3053
- status: "bounced";
3054
- } | {
3055
- /** Format: email */
3056
- email: string;
3057
- /** @constant */
3058
- status: "failed";
3059
- } | {
3060
- /** Format: email */
3061
- email: string;
3062
- /** @constant */
3063
- status: "suppressed";
3391
+ supportEmail: string;
3392
+ supportPhone: string;
3393
+ /**
3394
+ * MerchantDeliveryPolicy
3395
+ * @description Whether the merchant offers delivery and the terms a payer needs before paying.
3396
+ */
3397
+ deliveryPolicy: {
3398
+ /** @constant */
3399
+ kind: "not_offered";
3400
+ } | {
3401
+ /** @constant */
3402
+ kind: "merchant_managed";
3403
+ summary: string;
3404
+ /** Format: uri */
3405
+ url?: string;
3406
+ };
3064
3407
  };
3065
3408
  /**
3066
- * PayerFiscalDocument
3067
- * @description Payer-safe fiscal progress without signed XML or merchant diagnostics.
3409
+ * MerchantBusinessRequirement
3410
+ * @description One thing that must happen before a capability is active, and who acts on it. While a capability is active, a requirement it would otherwise block blocks nothing and is a warning.
3068
3411
  */
3069
- PayerFiscalDocument: {
3070
- /** @description Fiscal document identifier. */
3071
- id: string;
3412
+ MerchantBusinessRequirement: {
3413
+ code: "capabilities_required" | "commercial_name_required" | "address_required" | "location_required" | "phone_required" | "default_income_type_required" | "contact_email_verification_required" | "fiscal_details_rejected" | "taxpayer_registration_required" | "signing_certificate_required" | "signing_certificate_expiring" | "test_fiscal_document_rejected" | "test_fiscal_document_pending" | "test_fiscal_document_send_pending" | "fiscal_binding_pending" | "legal_issuer_sync_pending" | "fiscal_setup_unavailable" | "fiscal_binding_conflict" | "fiscal_issuer_rejected" | "test_fiscal_document_operator_required" | "payments_profile_required" | "merchant_account_required" | "merchant_account_disabled" | "active_credential_required" | "credential_material_invalid" | "test_live_mode_mismatch" | "callback_configuration_failed" | "callback_configuration_required" | "connectivity_check_failed" | "connectivity_check_required" | "provider_qualification_failed" | "provider_qualification_required" | "provider_adapter_unavailable";
3414
+ owner: "merchant" | "dgii" | "timbro" | "provider" | "operator";
3415
+ blocks: ("payments" | "electronic_invoicing")[];
3416
+ /** @description JSON Pointer into this representation the requirement names. */
3417
+ field?: string;
3418
+ errors?: {
3419
+ code: string;
3420
+ message: string;
3421
+ }[];
3422
+ };
3423
+ /**
3424
+ * MerchantBusinessSandboxCredential
3425
+ * @description The only response that carries the TesteCF credential; issuing again retires it.
3426
+ */
3427
+ MerchantBusinessSandboxCredential: {
3072
3428
  /** @constant */
3073
- object: "fiscal_document";
3074
- /** @description Payment that requested the fiscal document. */
3075
- paymentId: string;
3076
- /** @enum {string} */
3077
- kind: "consumer" | "fiscal_credit" | "government";
3078
- /**
3079
- * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
3080
- * @enum {string}
3081
- */
3082
- issuanceMode: "required" | "deferred" | "externally_coordinated";
3083
- revision: number;
3084
- buyer?: components["schemas"]["FiscalBuyer"];
3085
- governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
3086
- lines: components["schemas"]["FiscalLine"][];
3087
- /** Format: date-time */
3088
- createdAt: string;
3089
- /** Format: date-time */
3090
- updatedAt: string;
3429
+ object: "merchant_business_sandbox_credential";
3430
+ credential: string;
3431
+ /** Format: uri */
3432
+ fiscalOrigin: string;
3433
+ };
3434
+ /**
3435
+ * MerchantBusinessSigningCertificate
3436
+ * @description The certificate Timbro's custody holds for the sandbox Legal issuer.
3437
+ */
3438
+ MerchantBusinessSigningCertificate: {
3091
3439
  /** @constant */
3092
- status: "requested";
3093
- delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3440
+ status: "missing";
3094
3441
  } | {
3095
- /** @description Fiscal document identifier. */
3096
- id: string;
3097
3442
  /** @constant */
3098
- object: "fiscal_document";
3099
- /** @description Payment that requested the fiscal document. */
3100
- paymentId: string;
3101
- /** @enum {string} */
3102
- kind: "consumer" | "fiscal_credit" | "government";
3443
+ status: "active";
3444
+ sha256: string;
3445
+ signerSerialNumber: string;
3446
+ /** Format: date-time */
3447
+ notBefore: string;
3448
+ /** Format: date-time */
3449
+ notAfter: string;
3450
+ };
3451
+ /** MerchantBusinessSigningCertificateActive */
3452
+ MerchantBusinessSigningCertificateActive: {
3103
3453
  /**
3104
- * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
3454
+ * @description discriminator enum property added by openapi-typescript
3105
3455
  * @enum {string}
3106
3456
  */
3107
- issuanceMode: "required" | "deferred" | "externally_coordinated";
3108
- revision: number;
3109
- buyer?: components["schemas"]["FiscalBuyer"];
3110
- governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
3111
- lines: components["schemas"]["FiscalLine"][];
3457
+ status: "active";
3458
+ sha256: string;
3459
+ signerSerialNumber: string;
3112
3460
  /** Format: date-time */
3113
- createdAt: string;
3461
+ notBefore: string;
3114
3462
  /** Format: date-time */
3115
- updatedAt: string;
3116
- /** @constant */
3117
- status: "awaiting_merchant_issuance";
3118
- delivery: null;
3119
- } | {
3120
- /** @description Fiscal document identifier. */
3121
- id: string;
3122
- /** @constant */
3123
- object: "fiscal_document";
3124
- /** @description Payment that requested the fiscal document. */
3125
- paymentId: string;
3126
- /** @enum {string} */
3127
- kind: "consumer" | "fiscal_credit" | "government";
3463
+ notAfter: string;
3464
+ };
3465
+ /** MerchantBusinessSigningCertificateMissing */
3466
+ MerchantBusinessSigningCertificateMissing: {
3128
3467
  /**
3129
- * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
3468
+ * @description discriminator enum property added by openapi-typescript
3130
3469
  * @enum {string}
3131
3470
  */
3132
- issuanceMode: "required" | "deferred" | "externally_coordinated";
3133
- revision: number;
3134
- buyer?: components["schemas"]["FiscalBuyer"];
3135
- governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
3136
- lines: components["schemas"]["FiscalLine"][];
3137
- /** Format: date-time */
3138
- createdAt: string;
3139
- /** Format: date-time */
3140
- updatedAt: string;
3471
+ status: "missing";
3472
+ };
3473
+ /** MerchantBusinessSigningCertificateRequest */
3474
+ MerchantBusinessSigningCertificateRequest: {
3475
+ certificateP12Base64: string;
3476
+ password: string;
3477
+ };
3478
+ /**
3479
+ * MerchantBusinessTestFiscalDocument
3480
+ * @description The TesteCF document DGII must accept for this RNC and certificate.
3481
+ */
3482
+ MerchantBusinessTestFiscalDocument: {
3483
+ /** @constant */
3484
+ status: "not_sent";
3485
+ } | {
3141
3486
  /** @constant */
3142
3487
  status: "processing";
3143
- delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3488
+ id: string;
3489
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3144
3490
  } | {
3145
- /** @description Fiscal document identifier. */
3491
+ /** @constant */
3492
+ status: "accepted";
3146
3493
  id: string;
3494
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3495
+ } | {
3147
3496
  /** @constant */
3148
- object: "fiscal_document";
3149
- /** @description Payment that requested the fiscal document. */
3150
- paymentId: string;
3151
- /** @enum {string} */
3152
- kind: "consumer" | "fiscal_credit" | "government";
3497
+ status: "rejected";
3498
+ id: string;
3499
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3500
+ reason: "timbro_rejected" | "authority_rejected";
3501
+ messages: string[];
3502
+ } | {
3503
+ /** @constant */
3504
+ status: "operator_required";
3505
+ id: string;
3506
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3507
+ };
3508
+ /** MerchantBusinessTestFiscalDocumentAccepted */
3509
+ MerchantBusinessTestFiscalDocumentAccepted: {
3153
3510
  /**
3154
- * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
3511
+ * @description discriminator enum property added by openapi-typescript
3155
3512
  * @enum {string}
3156
3513
  */
3157
- issuanceMode: "required" | "deferred" | "externally_coordinated";
3158
- revision: number;
3159
- buyer?: components["schemas"]["FiscalBuyer"];
3160
- governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
3161
- lines: components["schemas"]["FiscalLine"][];
3162
- /** Format: date-time */
3163
- createdAt: string;
3164
- /** Format: date-time */
3165
- updatedAt: string;
3166
- /** @constant */
3167
- status: "delayed";
3168
- /** Format: date-time */
3169
- delayedSince: string;
3170
- delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3171
- } | {
3172
- /** @description Fiscal document identifier. */
3514
+ status: "accepted";
3173
3515
  id: string;
3174
- /** @constant */
3175
- object: "fiscal_document";
3176
- /** @description Payment that requested the fiscal document. */
3177
- paymentId: string;
3178
- /** @enum {string} */
3179
- kind: "consumer" | "fiscal_credit" | "government";
3516
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3517
+ };
3518
+ /** MerchantBusinessTestFiscalDocumentNotSent */
3519
+ MerchantBusinessTestFiscalDocumentNotSent: {
3180
3520
  /**
3181
- * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
3521
+ * @description discriminator enum property added by openapi-typescript
3182
3522
  * @enum {string}
3183
3523
  */
3184
- issuanceMode: "required" | "deferred" | "externally_coordinated";
3185
- revision: number;
3186
- buyer?: components["schemas"]["FiscalBuyer"];
3187
- governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
3188
- lines: components["schemas"]["FiscalLine"][];
3189
- /** Format: date-time */
3190
- createdAt: string;
3191
- /** Format: date-time */
3192
- updatedAt: string;
3193
- /** @constant */
3194
- status: "unavailable";
3195
- /** Format: date-time */
3196
- retryAt: string;
3197
- delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3198
- } | {
3199
- /** @description Fiscal document identifier. */
3200
- id: string;
3201
- /** @constant */
3202
- object: "fiscal_document";
3203
- /** @description Payment that requested the fiscal document. */
3204
- paymentId: string;
3205
- /** @enum {string} */
3206
- kind: "consumer" | "fiscal_credit" | "government";
3524
+ status: "not_sent";
3525
+ };
3526
+ /** MerchantBusinessTestFiscalDocumentOperatorRequired */
3527
+ MerchantBusinessTestFiscalDocumentOperatorRequired: {
3207
3528
  /**
3208
- * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
3529
+ * @description discriminator enum property added by openapi-typescript
3209
3530
  * @enum {string}
3210
3531
  */
3211
- issuanceMode: "required" | "deferred" | "externally_coordinated";
3212
- revision: number;
3213
- buyer?: components["schemas"]["FiscalBuyer"];
3214
- governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
3215
- lines: components["schemas"]["FiscalLine"][];
3216
- /** Format: date-time */
3217
- createdAt: string;
3218
- /** Format: date-time */
3219
- updatedAt: string;
3220
- /** @constant */
3221
- status: "issued";
3222
- eNcf: string;
3223
- /** Format: date-time */
3224
- issuedAt: string;
3225
- printedRepresentation: components["schemas"]["PayerPrintedRepresentation"];
3226
- delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3227
- } | {
3228
- /** @description Fiscal document identifier. */
3532
+ status: "operator_required";
3229
3533
  id: string;
3230
- /** @constant */
3231
- object: "fiscal_document";
3232
- /** @description Payment that requested the fiscal document. */
3233
- paymentId: string;
3234
- /** @enum {string} */
3235
- kind: "consumer" | "fiscal_credit" | "government";
3534
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3535
+ };
3536
+ /** MerchantBusinessTestFiscalDocumentProcessing */
3537
+ MerchantBusinessTestFiscalDocumentProcessing: {
3236
3538
  /**
3237
- * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
3539
+ * @description discriminator enum property added by openapi-typescript
3238
3540
  * @enum {string}
3239
3541
  */
3240
- issuanceMode: "required" | "deferred" | "externally_coordinated";
3241
- revision: number;
3242
- buyer?: components["schemas"]["FiscalBuyer"];
3243
- governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
3244
- lines: components["schemas"]["FiscalLine"][];
3245
- /** Format: date-time */
3246
- createdAt: string;
3247
- /** Format: date-time */
3248
- updatedAt: string;
3249
- /** @constant */
3250
- status: "rejected";
3251
- delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3252
- } | {
3253
- /** @description Fiscal document identifier. */
3542
+ status: "processing";
3254
3543
  id: string;
3255
- /** @constant */
3256
- object: "fiscal_document";
3257
- /** @description Payment that requested the fiscal document. */
3258
- paymentId: string;
3259
- /** @enum {string} */
3260
- kind: "consumer" | "fiscal_credit" | "government";
3544
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3545
+ };
3546
+ /** MerchantBusinessTestFiscalDocumentRejected */
3547
+ MerchantBusinessTestFiscalDocumentRejected: {
3261
3548
  /**
3262
- * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
3549
+ * @description discriminator enum property added by openapi-typescript
3263
3550
  * @enum {string}
3264
3551
  */
3265
- issuanceMode: "required" | "deferred" | "externally_coordinated";
3266
- revision: number;
3267
- buyer?: components["schemas"]["FiscalBuyer"];
3268
- governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
3269
- lines: components["schemas"]["FiscalLine"][];
3270
- /** Format: date-time */
3271
- createdAt: string;
3552
+ status: "rejected";
3553
+ id: string;
3554
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
3555
+ reason: "timbro_rejected" | "authority_rejected";
3556
+ messages: string[];
3557
+ };
3558
+ /** MerchantBusinessTestFiscalDocumentRequest */
3559
+ MerchantBusinessTestFiscalDocumentRequest: {
3560
+ documentType?: "31" | "32" | "41" | "43" | "44" | "45" | "46" | "47";
3561
+ };
3562
+ /**
3563
+ * MerchantBusinessUpdateRequest
3564
+ * @description Each member the request carries replaces that member of the business.
3565
+ */
3566
+ MerchantBusinessUpdateRequest: {
3567
+ expectedRevision?: number;
3568
+ capabilities?: {
3569
+ payments?: {
3570
+ requested: boolean;
3571
+ };
3572
+ electronicInvoicing?: {
3573
+ requested: boolean;
3574
+ };
3575
+ };
3576
+ fiscalDetails?: {
3577
+ commercialName?: string;
3578
+ address?: string;
3579
+ location?: {
3580
+ placeId: string;
3581
+ catalogReleaseId: string;
3582
+ } | {
3583
+ /** @description An official e-CF municipality code, resolved to its place in the active location catalog release. A province code is refused. */
3584
+ municipalityCode: string;
3585
+ };
3586
+ /** @description A Dominican business number in E.164 format. */
3587
+ phone?: string;
3588
+ defaultIncomeType?: "01" | "02" | "03" | "04" | "05" | "06";
3589
+ };
3590
+ /**
3591
+ * MerchantBusinessPaymentsProfile
3592
+ * @description Payer-facing support, address, and delivery terms. The legal name and RNC are the business's.
3593
+ */
3594
+ paymentsProfile?: {
3595
+ displayName: string;
3596
+ statementDescriptor: string;
3597
+ /**
3598
+ * MerchantPermanentAddress
3599
+ * @description The selling merchant's permanent business address.
3600
+ */
3601
+ permanentAddress: {
3602
+ line1: string;
3603
+ line2?: string;
3604
+ city: string;
3605
+ province?: string;
3606
+ postalCode?: string;
3607
+ countryCode: string;
3608
+ };
3609
+ /** Format: email */
3610
+ supportEmail: string;
3611
+ supportPhone: string;
3612
+ /**
3613
+ * MerchantDeliveryPolicy
3614
+ * @description Whether the merchant offers delivery and the terms a payer needs before paying.
3615
+ */
3616
+ deliveryPolicy: {
3617
+ /** @constant */
3618
+ kind: "not_offered";
3619
+ } | {
3620
+ /** @constant */
3621
+ kind: "merchant_managed";
3622
+ summary: string;
3623
+ /** Format: uri */
3624
+ url?: string;
3625
+ };
3626
+ };
3627
+ };
3628
+ /** MerchantCheckoutPolicy */
3629
+ MerchantCheckoutPolicy: {
3630
+ /** @constant */
3631
+ object: "merchant_checkout_policy";
3632
+ revision: number;
3633
+ isLiveMode: boolean;
3634
+ /** MerchantCheckoutPolicyDefaults */
3635
+ defaults: {
3636
+ provider?: "azul" | "cardnet";
3637
+ merchantAccountId?: string;
3638
+ splits: boolean;
3639
+ tips: boolean;
3640
+ wallets: ("apple_pay" | "google_pay")[];
3641
+ };
3642
+ /** MerchantCheckoutPolicyConstraints */
3643
+ constraints: {
3644
+ providers: ("azul" | "cardnet")[];
3645
+ splits: boolean;
3646
+ tips: boolean;
3647
+ wallets: ("apple_pay" | "google_pay")[];
3648
+ bill: boolean;
3649
+ invoice: boolean;
3650
+ };
3272
3651
  /** Format: date-time */
3273
- updatedAt: string;
3652
+ updatedAt?: string;
3653
+ };
3654
+ /** MerchantCheckoutPolicyConstraints */
3655
+ MerchantCheckoutPolicyConstraints: {
3656
+ providers: ("azul" | "cardnet")[];
3657
+ splits: boolean;
3658
+ tips: boolean;
3659
+ wallets: ("apple_pay" | "google_pay")[];
3660
+ bill: boolean;
3661
+ invoice: boolean;
3662
+ };
3663
+ /** MerchantCheckoutPolicyDefaults */
3664
+ MerchantCheckoutPolicyDefaults: {
3665
+ provider?: "azul" | "cardnet";
3666
+ merchantAccountId?: string;
3667
+ splits: boolean;
3668
+ tips: boolean;
3669
+ wallets: ("apple_pay" | "google_pay")[];
3670
+ };
3671
+ /**
3672
+ * MerchantDeliveryPolicy
3673
+ * @description Whether the merchant offers delivery and the terms a payer needs before paying.
3674
+ */
3675
+ MerchantDeliveryPolicy: {
3274
3676
  /** @constant */
3275
- status: "operator_required";
3276
- delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3677
+ kind: "not_offered";
3678
+ } | {
3679
+ /** @constant */
3680
+ kind: "merchant_managed";
3681
+ summary: string;
3682
+ /** Format: uri */
3683
+ url?: string;
3277
3684
  };
3278
- /** PayerIssuedFiscalDocument */
3279
- PayerIssuedFiscalDocument: {
3685
+ /** MerchantManagedDelivery */
3686
+ MerchantManagedDelivery: {
3687
+ /**
3688
+ * @description discriminator enum property added by openapi-typescript
3689
+ * @enum {string}
3690
+ */
3691
+ kind: "merchant_managed";
3692
+ summary: string;
3693
+ /** Format: uri */
3694
+ url?: string;
3695
+ };
3696
+ /**
3697
+ * MerchantPermanentAddress
3698
+ * @description The selling merchant's permanent business address.
3699
+ */
3700
+ MerchantPermanentAddress: {
3701
+ line1: string;
3702
+ line2?: string;
3703
+ city: string;
3704
+ province?: string;
3705
+ postalCode?: string;
3706
+ countryCode: string;
3707
+ };
3708
+ /**
3709
+ * MerchantRncVerification
3710
+ * @description The Directory-owned legal identity for a verified merchant RNC.
3711
+ */
3712
+ MerchantRncVerification: {
3713
+ rnc: string;
3714
+ legalName: string;
3715
+ };
3716
+ /**
3717
+ * MerchantRncVerificationRequest
3718
+ * @description A merchant onboarding request to verify an RNC.
3719
+ */
3720
+ MerchantRncVerificationRequest: {
3721
+ /** @description The nine-digit RNC to verify against the active DGII directory snapshot. */
3722
+ rnc: string;
3723
+ };
3724
+ /** MerchantSplit */
3725
+ MerchantSplit: {
3726
+ status: components["schemas"]["SplitStatus"];
3727
+ captured: components["schemas"]["Money"];
3728
+ authorized: components["schemas"]["Money"];
3729
+ remainingToAuthorize: components["schemas"]["Money"];
3730
+ remainingToCapture: components["schemas"]["Money"];
3731
+ capturedCount: number;
3732
+ authorizedCount: number;
3733
+ partCount: number;
3734
+ parts: {
3735
+ ordinal: number;
3736
+ amount: components["schemas"]["Money"];
3737
+ allocatedItbis: components["schemas"]["Money"];
3738
+ /**
3739
+ * SplitPartStatus
3740
+ * @description Authorization and capture state for one share. `authorized` means funds are reserved; `succeeded` means the reservation was captured.
3741
+ * @enum {string}
3742
+ */
3743
+ status: "unpaid" | "processing" | "authorized" | "capturing" | "releasing" | "verifying" | "declined" | "succeeded" | "released" | "expired";
3744
+ paymentMethodSummary: components["schemas"]["PaymentMethodSummary"] | null;
3745
+ }[];
3746
+ };
3747
+ /**
3748
+ * Money
3749
+ * @description A monetary amount. Never a floating-point number.
3750
+ */
3751
+ Money: {
3752
+ /**
3753
+ * @description ISO 4217 alphabetic code.
3754
+ * @example DOP
3755
+ */
3756
+ currency: string;
3757
+ /**
3758
+ * @description Amount in base-10 minor units of `currency`. DOP and USD use two decimal places, so 125000 is 1,250.00.
3759
+ * @example 125000
3760
+ */
3761
+ minorUnits: number;
3762
+ };
3763
+ /**
3764
+ * NextAction
3765
+ * @description The next bounded action required from the customer. Never a provider response shape.
3766
+ */
3767
+ NextAction: {
3768
+ /** @constant */
3769
+ kind: "redirect_to_url";
3770
+ /**
3771
+ * Format: uri
3772
+ * @description Open in a top-level browsing context.
3773
+ */
3774
+ url: string;
3775
+ /** Format: date-time */
3776
+ expiresAt: string;
3777
+ };
3778
+ /** OperatorRequiredFiscalDocument */
3779
+ OperatorRequiredFiscalDocument: {
3280
3780
  /** @description Fiscal document identifier. */
3281
3781
  id: string;
3282
3782
  /** @constant */
@@ -3290,10 +3790,13 @@ export interface components {
3290
3790
  * @enum {string}
3291
3791
  */
3292
3792
  issuanceMode: "required" | "deferred" | "externally_coordinated";
3793
+ merchantInvoiceNumber?: string;
3794
+ merchantOrderNumber?: string;
3293
3795
  revision: number;
3294
3796
  buyer?: components["schemas"]["FiscalBuyer"];
3295
3797
  governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
3296
3798
  lines: components["schemas"]["FiscalLine"][];
3799
+ delivery: components["schemas"]["FiscalDelivery"] | null;
3297
3800
  /** Format: date-time */
3298
3801
  createdAt: string;
3299
3802
  /** Format: date-time */
@@ -3302,15 +3805,11 @@ export interface components {
3302
3805
  * @description discriminator enum property added by openapi-typescript
3303
3806
  * @enum {string}
3304
3807
  */
3305
- status: "issued";
3306
- eNcf: string;
3307
- /** Format: date-time */
3308
- issuedAt: string;
3309
- printedRepresentation: components["schemas"]["PayerPrintedRepresentation"];
3310
- delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3808
+ status: "operator_required";
3809
+ problem: components["schemas"]["FiscalProblem"];
3311
3810
  };
3312
- /** PayerOperatorRequiredFiscalDocument */
3313
- PayerOperatorRequiredFiscalDocument: {
3811
+ /** PayerAwaitingMerchantIssuanceFiscalDocument */
3812
+ PayerAwaitingMerchantIssuanceFiscalDocument: {
3314
3813
  /** @description Fiscal document identifier. */
3315
3814
  id: string;
3316
3815
  /** @constant */
@@ -3336,47 +3835,21 @@ export interface components {
3336
3835
  * @description discriminator enum property added by openapi-typescript
3337
3836
  * @enum {string}
3338
3837
  */
3339
- status: "operator_required";
3340
- delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3838
+ status: "awaiting_merchant_issuance";
3839
+ delivery: null;
3341
3840
  };
3342
- /** PayerPendingFiscalDelivery */
3343
- PayerPendingFiscalDelivery: {
3841
+ /** PayerBouncedFiscalDelivery */
3842
+ PayerBouncedFiscalDelivery: {
3344
3843
  /** Format: email */
3345
3844
  email: string;
3346
3845
  /**
3347
3846
  * @description discriminator enum property added by openapi-typescript
3348
3847
  * @enum {string}
3349
3848
  */
3350
- status: "pending";
3351
- };
3352
- /** PayerPendingPrintedRepresentation */
3353
- PayerPendingPrintedRepresentation: {
3354
- /**
3355
- * @description discriminator enum property added by openapi-typescript
3356
- * @enum {string}
3357
- */
3358
- status: "pending";
3359
- };
3360
- /**
3361
- * PayerPrintedRepresentation
3362
- * @description Payer-visible PDF readiness without merchant diagnostics.
3363
- */
3364
- PayerPrintedRepresentation: {
3365
- /** @constant */
3366
- status: "pending";
3367
- } | {
3368
- /** @constant */
3369
- status: "ready";
3370
- /** @constant */
3371
- mediaType: "application/pdf";
3372
- sha256: string;
3373
- byteLength: number;
3374
- } | {
3375
- /** @constant */
3376
- status: "unavailable";
3849
+ status: "bounced";
3377
3850
  };
3378
- /** PayerProcessingFiscalDocument */
3379
- PayerProcessingFiscalDocument: {
3851
+ /** PayerDelayedFiscalDocument */
3852
+ PayerDelayedFiscalDocument: {
3380
3853
  /** @description Fiscal document identifier. */
3381
3854
  id: string;
3382
3855
  /** @constant */
@@ -3402,23 +3875,76 @@ export interface components {
3402
3875
  * @description discriminator enum property added by openapi-typescript
3403
3876
  * @enum {string}
3404
3877
  */
3405
- status: "processing";
3878
+ status: "delayed";
3879
+ /** Format: date-time */
3880
+ delayedSince: string;
3406
3881
  delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3407
3882
  };
3408
- /** PayerReadyPrintedRepresentation */
3409
- PayerReadyPrintedRepresentation: {
3883
+ /** PayerDeliveredFiscalDelivery */
3884
+ PayerDeliveredFiscalDelivery: {
3885
+ /** Format: email */
3886
+ email: string;
3410
3887
  /**
3411
3888
  * @description discriminator enum property added by openapi-typescript
3412
3889
  * @enum {string}
3413
3890
  */
3414
- status: "ready";
3891
+ status: "delivered";
3892
+ };
3893
+ /** PayerFailedFiscalDelivery */
3894
+ PayerFailedFiscalDelivery: {
3895
+ /** Format: email */
3896
+ email: string;
3897
+ /**
3898
+ * @description discriminator enum property added by openapi-typescript
3899
+ * @enum {string}
3900
+ */
3901
+ status: "failed";
3902
+ };
3903
+ /**
3904
+ * PayerFiscalDelivery
3905
+ * @description Payer-visible delivery progress without merchant diagnostics.
3906
+ */
3907
+ PayerFiscalDelivery: {
3908
+ /** Format: email */
3909
+ email: string;
3415
3910
  /** @constant */
3416
- mediaType: "application/pdf";
3417
- sha256: string;
3418
- byteLength: number;
3911
+ status: "waiting_for_document";
3912
+ } | {
3913
+ /** Format: email */
3914
+ email: string;
3915
+ /** @constant */
3916
+ status: "pending";
3917
+ } | {
3918
+ /** Format: email */
3919
+ email: string;
3920
+ /** @constant */
3921
+ status: "submitted";
3922
+ } | {
3923
+ /** Format: email */
3924
+ email: string;
3925
+ /** @constant */
3926
+ status: "delivered";
3927
+ } | {
3928
+ /** Format: email */
3929
+ email: string;
3930
+ /** @constant */
3931
+ status: "bounced";
3932
+ } | {
3933
+ /** Format: email */
3934
+ email: string;
3935
+ /** @constant */
3936
+ status: "failed";
3937
+ } | {
3938
+ /** Format: email */
3939
+ email: string;
3940
+ /** @constant */
3941
+ status: "suppressed";
3419
3942
  };
3420
- /** PayerRejectedFiscalDocument */
3421
- PayerRejectedFiscalDocument: {
3943
+ /**
3944
+ * PayerFiscalDocument
3945
+ * @description Payer-safe fiscal progress without signed XML or merchant diagnostics.
3946
+ */
3947
+ PayerFiscalDocument: {
3422
3948
  /** @description Fiscal document identifier. */
3423
3949
  id: string;
3424
3950
  /** @constant */
@@ -3440,15 +3966,35 @@ export interface components {
3440
3966
  createdAt: string;
3441
3967
  /** Format: date-time */
3442
3968
  updatedAt: string;
3969
+ /** @constant */
3970
+ status: "requested";
3971
+ delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3972
+ } | {
3973
+ /** @description Fiscal document identifier. */
3974
+ id: string;
3975
+ /** @constant */
3976
+ object: "fiscal_document";
3977
+ /** @description Payment that requested the fiscal document. */
3978
+ paymentId: string;
3979
+ /** @enum {string} */
3980
+ kind: "consumer" | "fiscal_credit" | "government";
3443
3981
  /**
3444
- * @description discriminator enum property added by openapi-typescript
3982
+ * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
3445
3983
  * @enum {string}
3446
3984
  */
3447
- status: "rejected";
3448
- delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3449
- };
3450
- /** PayerRequestedFiscalDocument */
3451
- PayerRequestedFiscalDocument: {
3985
+ issuanceMode: "required" | "deferred" | "externally_coordinated";
3986
+ revision: number;
3987
+ buyer?: components["schemas"]["FiscalBuyer"];
3988
+ governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
3989
+ lines: components["schemas"]["FiscalLine"][];
3990
+ /** Format: date-time */
3991
+ createdAt: string;
3992
+ /** Format: date-time */
3993
+ updatedAt: string;
3994
+ /** @constant */
3995
+ status: "awaiting_merchant_issuance";
3996
+ delivery: null;
3997
+ } | {
3452
3998
  /** @description Fiscal document identifier. */
3453
3999
  id: string;
3454
4000
  /** @constant */
@@ -3470,35 +4016,93 @@ export interface components {
3470
4016
  createdAt: string;
3471
4017
  /** Format: date-time */
3472
4018
  updatedAt: string;
4019
+ /** @constant */
4020
+ status: "processing";
4021
+ delivery: components["schemas"]["PayerFiscalDelivery"] | null;
4022
+ } | {
4023
+ /** @description Fiscal document identifier. */
4024
+ id: string;
4025
+ /** @constant */
4026
+ object: "fiscal_document";
4027
+ /** @description Payment that requested the fiscal document. */
4028
+ paymentId: string;
4029
+ /** @enum {string} */
4030
+ kind: "consumer" | "fiscal_credit" | "government";
3473
4031
  /**
3474
- * @description discriminator enum property added by openapi-typescript
4032
+ * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
3475
4033
  * @enum {string}
3476
4034
  */
3477
- status: "requested";
4035
+ issuanceMode: "required" | "deferred" | "externally_coordinated";
4036
+ revision: number;
4037
+ buyer?: components["schemas"]["FiscalBuyer"];
4038
+ governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
4039
+ lines: components["schemas"]["FiscalLine"][];
4040
+ /** Format: date-time */
4041
+ createdAt: string;
4042
+ /** Format: date-time */
4043
+ updatedAt: string;
4044
+ /** @constant */
4045
+ status: "delayed";
4046
+ /** Format: date-time */
4047
+ delayedSince: string;
3478
4048
  delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3479
- };
3480
- /** PayerSubmittedFiscalDelivery */
3481
- PayerSubmittedFiscalDelivery: {
3482
- /** Format: email */
3483
- email: string;
4049
+ } | {
4050
+ /** @description Fiscal document identifier. */
4051
+ id: string;
4052
+ /** @constant */
4053
+ object: "fiscal_document";
4054
+ /** @description Payment that requested the fiscal document. */
4055
+ paymentId: string;
4056
+ /** @enum {string} */
4057
+ kind: "consumer" | "fiscal_credit" | "government";
3484
4058
  /**
3485
- * @description discriminator enum property added by openapi-typescript
4059
+ * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
3486
4060
  * @enum {string}
3487
4061
  */
3488
- status: "submitted";
3489
- };
3490
- /** PayerSuppressedFiscalDelivery */
3491
- PayerSuppressedFiscalDelivery: {
3492
- /** Format: email */
3493
- email: string;
4062
+ issuanceMode: "required" | "deferred" | "externally_coordinated";
4063
+ revision: number;
4064
+ buyer?: components["schemas"]["FiscalBuyer"];
4065
+ governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
4066
+ lines: components["schemas"]["FiscalLine"][];
4067
+ /** Format: date-time */
4068
+ createdAt: string;
4069
+ /** Format: date-time */
4070
+ updatedAt: string;
4071
+ /** @constant */
4072
+ status: "unavailable";
4073
+ /** Format: date-time */
4074
+ retryAt: string;
4075
+ delivery: components["schemas"]["PayerFiscalDelivery"] | null;
4076
+ } | {
4077
+ /** @description Fiscal document identifier. */
4078
+ id: string;
4079
+ /** @constant */
4080
+ object: "fiscal_document";
4081
+ /** @description Payment that requested the fiscal document. */
4082
+ paymentId: string;
4083
+ /** @enum {string} */
4084
+ kind: "consumer" | "fiscal_credit" | "government";
3494
4085
  /**
3495
- * @description discriminator enum property added by openapi-typescript
4086
+ * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
3496
4087
  * @enum {string}
3497
4088
  */
3498
- status: "suppressed";
3499
- };
3500
- /** PayerUnavailableFiscalDocument */
3501
- PayerUnavailableFiscalDocument: {
4089
+ issuanceMode: "required" | "deferred" | "externally_coordinated";
4090
+ revision: number;
4091
+ buyer?: components["schemas"]["FiscalBuyer"];
4092
+ governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
4093
+ lines: components["schemas"]["FiscalLine"][];
4094
+ /** Format: date-time */
4095
+ createdAt: string;
4096
+ /** Format: date-time */
4097
+ updatedAt: string;
4098
+ /** @constant */
4099
+ status: "issued";
4100
+ eNcf: string;
4101
+ /** Format: date-time */
4102
+ issuedAt: string;
4103
+ printedRepresentation: components["schemas"]["PayerPrintedRepresentation"];
4104
+ delivery: components["schemas"]["PayerFiscalDelivery"] | null;
4105
+ } | {
3502
4106
  /** @description Fiscal document identifier. */
3503
4107
  id: string;
3504
4108
  /** @constant */
@@ -3520,39 +4124,313 @@ export interface components {
3520
4124
  createdAt: string;
3521
4125
  /** Format: date-time */
3522
4126
  updatedAt: string;
4127
+ /** @constant */
4128
+ status: "rejected";
4129
+ delivery: components["schemas"]["PayerFiscalDelivery"] | null;
4130
+ } | {
4131
+ /** @description Fiscal document identifier. */
4132
+ id: string;
4133
+ /** @constant */
4134
+ object: "fiscal_document";
4135
+ /** @description Payment that requested the fiscal document. */
4136
+ paymentId: string;
4137
+ /** @enum {string} */
4138
+ kind: "consumer" | "fiscal_credit" | "government";
3523
4139
  /**
3524
- * @description discriminator enum property added by openapi-typescript
4140
+ * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
3525
4141
  * @enum {string}
3526
4142
  */
3527
- status: "unavailable";
4143
+ issuanceMode: "required" | "deferred" | "externally_coordinated";
4144
+ revision: number;
4145
+ buyer?: components["schemas"]["FiscalBuyer"];
4146
+ governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
4147
+ lines: components["schemas"]["FiscalLine"][];
3528
4148
  /** Format: date-time */
3529
- retryAt: string;
4149
+ createdAt: string;
4150
+ /** Format: date-time */
4151
+ updatedAt: string;
4152
+ /** @constant */
4153
+ status: "operator_required";
3530
4154
  delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3531
4155
  };
3532
- /** PayerUnavailablePrintedRepresentation */
3533
- PayerUnavailablePrintedRepresentation: {
4156
+ /** PayerIssuedFiscalDocument */
4157
+ PayerIssuedFiscalDocument: {
4158
+ /** @description Fiscal document identifier. */
4159
+ id: string;
4160
+ /** @constant */
4161
+ object: "fiscal_document";
4162
+ /** @description Payment that requested the fiscal document. */
4163
+ paymentId: string;
4164
+ /** @enum {string} */
4165
+ kind: "consumer" | "fiscal_credit" | "government";
3534
4166
  /**
3535
- * @description discriminator enum property added by openapi-typescript
4167
+ * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
3536
4168
  * @enum {string}
3537
4169
  */
3538
- status: "unavailable";
3539
- };
3540
- /** PayerWaitingFiscalDelivery */
3541
- PayerWaitingFiscalDelivery: {
3542
- /** Format: email */
3543
- email: string;
4170
+ issuanceMode: "required" | "deferred" | "externally_coordinated";
4171
+ revision: number;
4172
+ buyer?: components["schemas"]["FiscalBuyer"];
4173
+ governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
4174
+ lines: components["schemas"]["FiscalLine"][];
4175
+ /** Format: date-time */
4176
+ createdAt: string;
4177
+ /** Format: date-time */
4178
+ updatedAt: string;
3544
4179
  /**
3545
4180
  * @description discriminator enum property added by openapi-typescript
3546
4181
  * @enum {string}
3547
4182
  */
3548
- status: "waiting_for_document";
4183
+ status: "issued";
4184
+ eNcf: string;
4185
+ /** Format: date-time */
4186
+ issuedAt: string;
4187
+ printedRepresentation: components["schemas"]["PayerPrintedRepresentation"];
4188
+ delivery: components["schemas"]["PayerFiscalDelivery"] | null;
3549
4189
  };
3550
- /**
3551
- * Payment
3552
- * @description The one durable money object for one sale.
3553
- */
3554
- Payment: {
3555
- /** @description Payment identifier. Opaque; do not parse beyond the prefix. */
4190
+ /** PayerOperatorRequiredFiscalDocument */
4191
+ PayerOperatorRequiredFiscalDocument: {
4192
+ /** @description Fiscal document identifier. */
4193
+ id: string;
4194
+ /** @constant */
4195
+ object: "fiscal_document";
4196
+ /** @description Payment that requested the fiscal document. */
4197
+ paymentId: string;
4198
+ /** @enum {string} */
4199
+ kind: "consumer" | "fiscal_credit" | "government";
4200
+ /**
4201
+ * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
4202
+ * @enum {string}
4203
+ */
4204
+ issuanceMode: "required" | "deferred" | "externally_coordinated";
4205
+ revision: number;
4206
+ buyer?: components["schemas"]["FiscalBuyer"];
4207
+ governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
4208
+ lines: components["schemas"]["FiscalLine"][];
4209
+ /** Format: date-time */
4210
+ createdAt: string;
4211
+ /** Format: date-time */
4212
+ updatedAt: string;
4213
+ /**
4214
+ * @description discriminator enum property added by openapi-typescript
4215
+ * @enum {string}
4216
+ */
4217
+ status: "operator_required";
4218
+ delivery: components["schemas"]["PayerFiscalDelivery"] | null;
4219
+ };
4220
+ /** PayerPendingFiscalDelivery */
4221
+ PayerPendingFiscalDelivery: {
4222
+ /** Format: email */
4223
+ email: string;
4224
+ /**
4225
+ * @description discriminator enum property added by openapi-typescript
4226
+ * @enum {string}
4227
+ */
4228
+ status: "pending";
4229
+ };
4230
+ /** PayerPendingPrintedRepresentation */
4231
+ PayerPendingPrintedRepresentation: {
4232
+ /**
4233
+ * @description discriminator enum property added by openapi-typescript
4234
+ * @enum {string}
4235
+ */
4236
+ status: "pending";
4237
+ };
4238
+ /**
4239
+ * PayerPrintedRepresentation
4240
+ * @description Payer-visible PDF readiness without merchant diagnostics.
4241
+ */
4242
+ PayerPrintedRepresentation: {
4243
+ /** @constant */
4244
+ status: "pending";
4245
+ } | {
4246
+ /** @constant */
4247
+ status: "ready";
4248
+ /** @constant */
4249
+ mediaType: "application/pdf";
4250
+ sha256: string;
4251
+ byteLength: number;
4252
+ } | {
4253
+ /** @constant */
4254
+ status: "unavailable";
4255
+ };
4256
+ /** PayerProcessingFiscalDocument */
4257
+ PayerProcessingFiscalDocument: {
4258
+ /** @description Fiscal document identifier. */
4259
+ id: string;
4260
+ /** @constant */
4261
+ object: "fiscal_document";
4262
+ /** @description Payment that requested the fiscal document. */
4263
+ paymentId: string;
4264
+ /** @enum {string} */
4265
+ kind: "consumer" | "fiscal_credit" | "government";
4266
+ /**
4267
+ * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
4268
+ * @enum {string}
4269
+ */
4270
+ issuanceMode: "required" | "deferred" | "externally_coordinated";
4271
+ revision: number;
4272
+ buyer?: components["schemas"]["FiscalBuyer"];
4273
+ governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
4274
+ lines: components["schemas"]["FiscalLine"][];
4275
+ /** Format: date-time */
4276
+ createdAt: string;
4277
+ /** Format: date-time */
4278
+ updatedAt: string;
4279
+ /**
4280
+ * @description discriminator enum property added by openapi-typescript
4281
+ * @enum {string}
4282
+ */
4283
+ status: "processing";
4284
+ delivery: components["schemas"]["PayerFiscalDelivery"] | null;
4285
+ };
4286
+ /** PayerReadyPrintedRepresentation */
4287
+ PayerReadyPrintedRepresentation: {
4288
+ /**
4289
+ * @description discriminator enum property added by openapi-typescript
4290
+ * @enum {string}
4291
+ */
4292
+ status: "ready";
4293
+ /** @constant */
4294
+ mediaType: "application/pdf";
4295
+ sha256: string;
4296
+ byteLength: number;
4297
+ };
4298
+ /** PayerRejectedFiscalDocument */
4299
+ PayerRejectedFiscalDocument: {
4300
+ /** @description Fiscal document identifier. */
4301
+ id: string;
4302
+ /** @constant */
4303
+ object: "fiscal_document";
4304
+ /** @description Payment that requested the fiscal document. */
4305
+ paymentId: string;
4306
+ /** @enum {string} */
4307
+ kind: "consumer" | "fiscal_credit" | "government";
4308
+ /**
4309
+ * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
4310
+ * @enum {string}
4311
+ */
4312
+ issuanceMode: "required" | "deferred" | "externally_coordinated";
4313
+ revision: number;
4314
+ buyer?: components["schemas"]["FiscalBuyer"];
4315
+ governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
4316
+ lines: components["schemas"]["FiscalLine"][];
4317
+ /** Format: date-time */
4318
+ createdAt: string;
4319
+ /** Format: date-time */
4320
+ updatedAt: string;
4321
+ /**
4322
+ * @description discriminator enum property added by openapi-typescript
4323
+ * @enum {string}
4324
+ */
4325
+ status: "rejected";
4326
+ delivery: components["schemas"]["PayerFiscalDelivery"] | null;
4327
+ };
4328
+ /** PayerRequestedFiscalDocument */
4329
+ PayerRequestedFiscalDocument: {
4330
+ /** @description Fiscal document identifier. */
4331
+ id: string;
4332
+ /** @constant */
4333
+ object: "fiscal_document";
4334
+ /** @description Payment that requested the fiscal document. */
4335
+ paymentId: string;
4336
+ /** @enum {string} */
4337
+ kind: "consumer" | "fiscal_credit" | "government";
4338
+ /**
4339
+ * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
4340
+ * @enum {string}
4341
+ */
4342
+ issuanceMode: "required" | "deferred" | "externally_coordinated";
4343
+ revision: number;
4344
+ buyer?: components["schemas"]["FiscalBuyer"];
4345
+ governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
4346
+ lines: components["schemas"]["FiscalLine"][];
4347
+ /** Format: date-time */
4348
+ createdAt: string;
4349
+ /** Format: date-time */
4350
+ updatedAt: string;
4351
+ /**
4352
+ * @description discriminator enum property added by openapi-typescript
4353
+ * @enum {string}
4354
+ */
4355
+ status: "requested";
4356
+ delivery: components["schemas"]["PayerFiscalDelivery"] | null;
4357
+ };
4358
+ /** PayerSubmittedFiscalDelivery */
4359
+ PayerSubmittedFiscalDelivery: {
4360
+ /** Format: email */
4361
+ email: string;
4362
+ /**
4363
+ * @description discriminator enum property added by openapi-typescript
4364
+ * @enum {string}
4365
+ */
4366
+ status: "submitted";
4367
+ };
4368
+ /** PayerSuppressedFiscalDelivery */
4369
+ PayerSuppressedFiscalDelivery: {
4370
+ /** Format: email */
4371
+ email: string;
4372
+ /**
4373
+ * @description discriminator enum property added by openapi-typescript
4374
+ * @enum {string}
4375
+ */
4376
+ status: "suppressed";
4377
+ };
4378
+ /** PayerUnavailableFiscalDocument */
4379
+ PayerUnavailableFiscalDocument: {
4380
+ /** @description Fiscal document identifier. */
4381
+ id: string;
4382
+ /** @constant */
4383
+ object: "fiscal_document";
4384
+ /** @description Payment that requested the fiscal document. */
4385
+ paymentId: string;
4386
+ /** @enum {string} */
4387
+ kind: "consumer" | "fiscal_credit" | "government";
4388
+ /**
4389
+ * @description Whether fiscal issuance is required before Checkout presents the purchase as complete, may finish after the paid receipt is shown, or is coordinated by an authenticated external ERP after payment.
4390
+ * @enum {string}
4391
+ */
4392
+ issuanceMode: "required" | "deferred" | "externally_coordinated";
4393
+ revision: number;
4394
+ buyer?: components["schemas"]["FiscalBuyer"];
4395
+ governmentEligibility?: components["schemas"]["FiscalGovernmentEligibility"];
4396
+ lines: components["schemas"]["FiscalLine"][];
4397
+ /** Format: date-time */
4398
+ createdAt: string;
4399
+ /** Format: date-time */
4400
+ updatedAt: string;
4401
+ /**
4402
+ * @description discriminator enum property added by openapi-typescript
4403
+ * @enum {string}
4404
+ */
4405
+ status: "unavailable";
4406
+ /** Format: date-time */
4407
+ retryAt: string;
4408
+ delivery: components["schemas"]["PayerFiscalDelivery"] | null;
4409
+ };
4410
+ /** PayerUnavailablePrintedRepresentation */
4411
+ PayerUnavailablePrintedRepresentation: {
4412
+ /**
4413
+ * @description discriminator enum property added by openapi-typescript
4414
+ * @enum {string}
4415
+ */
4416
+ status: "unavailable";
4417
+ };
4418
+ /** PayerWaitingFiscalDelivery */
4419
+ PayerWaitingFiscalDelivery: {
4420
+ /** Format: email */
4421
+ email: string;
4422
+ /**
4423
+ * @description discriminator enum property added by openapi-typescript
4424
+ * @enum {string}
4425
+ */
4426
+ status: "waiting_for_document";
4427
+ };
4428
+ /**
4429
+ * Payment
4430
+ * @description The one durable money object for one sale.
4431
+ */
4432
+ Payment: {
4433
+ /** @description Payment identifier. Opaque; do not parse beyond the prefix. */
3556
4434
  id: string;
3557
4435
  /** @constant */
3558
4436
  object: "payment";
@@ -4847,9 +5725,11 @@ export interface components {
4847
5725
  * @description Stable machine-readable code. Branch on this, never on `title`.
4848
5726
  * @enum {string}
4849
5727
  */
4850
- code: "merchant_authentication_unavailable" | "merchant_fiscal_binding_unavailable" | "merchant_workspace_identity_locked" | "merchant_workspace_bootstrap_required" | "merchant_contact_email_confirmation_required" | "merchant_service_scope_required" | "merchant_business_address_required" | "merchant_current_payment_methods_required" | "merchant_current_sales_channels_required" | "merchant_existing_card_service_not_applicable" | "merchant_existing_card_service_other_provider_name_invalid" | "merchant_existing_card_service_other_provider_name_not_allowed" | "merchant_existing_card_service_other_provider_name_required" | "merchant_existing_card_service_providers_exclusive_choice" | "merchant_existing_card_service_providers_required" | "merchant_existing_card_service_required" | "merchant_location_catalog_changed" | "merchant_location_catalog_unavailable" | "merchant_location_selection_invalid" | "merchant_payment_methods_not_applicable" | "merchant_sales_channels_exclusive_choice" | "merchant_sales_channels_not_applicable" | "merchant_business_type_not_applicable" | "merchant_business_type_required" | "merchant_charge_timing_not_applicable" | "merchant_charge_timing_required" | "merchant_payment_methods_exclusive_choice" | "merchant_session_missing" | "merchant_workspace_organization_required" | "merchant_onboarding_revision_conflict" | "merchant_checkout_policy_revision_conflict" | "merchant_business_identity_required" | "merchant_business_identity_confirmation_required" | "merchant_payment_setup_assessment_incomplete" | "parameter_missing" | "parameter_invalid" | "provider_not_available" | "currency_not_supported" | "amount_below_minimum" | "amount_above_maximum" | "checkout_reference_invalid" | "checkout_reference_expired" | "fiscal_buyer_tax_id_invalid" | "fiscal_lines_required" | "payment_split_invalid" | "submission_token_invalid" | "submission_token_expired" | "request_body_malformed" | "collection_cursor_invalid" | "webhook_replay_scope_invalid" | "api_key_missing" | "api_key_invalid" | "checkout_token_invalid" | "checkout_token_expired" | "payer_session_missing" | "operation_not_permitted" | "merchant_fiscal_binding_conflict" | "live_mode_not_enabled" | "origin_not_allowed" | "payer_step_up_required" | "route_not_found" | "payment_not_found" | "refund_not_found" | "payment_part_not_found" | "payment_split_not_found" | "fiscal_document_not_found" | "merchant_account_not_found" | "merchant_profile_not_found" | "webhook_endpoint_not_found" | "webhook_event_not_found" | "three_ds_not_found" | "payer_not_found" | "payer_credential_not_found" | "payer_purchase_not_found" | "payer_fiscal_profile_not_found" | "idempotency_key_reused" | "idempotency_request_in_progress" | "idempotency_key_expired" | "payment_method_already_in_progress" | "payment_not_payable" | "refund_not_allowed" | "refund_already_exists" | "payment_awaiting_verification" | "payment_attempt_invalid" | "payment_attempt_mismatch" | "payment_attempt_stale" | "payment_method_mismatch" | "provider_response_invalid" | "decline_not_retryable" | "checkout_window_closed" | "payment_not_editable" | "payment_cancel_not_allowed" | "payment_cancellation_pending" | "invoicing_locked" | "source_identity_conflict" | "refund_source_identity_conflict" | "refund_payment_not_captured" | "refund_exceeds_captured" | "refund_allocation_not_found" | "refund_allocation_conflict" | "refund_allocation_ledger_unavailable" | "fiscal_buyer_required" | "fiscal_correction_not_allowed" | "fiscal_artifact_not_ready" | "fiscal_coordination_not_ready" | "fiscal_coordination_not_allowed" | "fiscal_reference_stale" | "fiscal_reference_conflict" | "fiscal_delivery_not_ready" | "payment_split_not_allowed" | "payment_split_exists" | "payment_split_locked" | "payment_split_not_capturable" | "payment_split_not_expired" | "payment_split_not_renewable" | "payment_split_complete" | "payment_split_part_required" | "payment_part_not_payable" | "webhook_endpoint_deleted" | "webhook_endpoint_suspended" | "three_ds_binding_mismatch" | "payer_enrollment_unavailable" | "payer_claim_unavailable" | "payer_claim_conflict" | "payer_claim_proof_invalid" | "payer_delivery_address_unavailable" | "payer_fiscal_profile_unavailable" | "receipt_retention_elapsed" | "request_body_too_large" | "unsupported_media_type" | "merchant_account_not_ready" | "merchant_checkout_policy_invalid" | "merchant_account_provider_mismatch" | "merchant_account_identity_mismatch" | "merchant_profile_incomplete" | "payment_description_required" | "sale_amount_invalid" | "credential_storage_unavailable" | "refund_credentials_unavailable" | "refund_provider_unavailable" | "refund_provider_reference_unavailable" | "provider_not_eligible" | "no_eligible_provider" | "currency_not_supported_by_provider" | "currency_not_supported_for_fiscal_document" | "fiscal_total_mismatch" | "fiscal_line_total_invalid" | "fiscal_line_legal_tip_invalid" | "fiscal_document_kind_not_allowed" | "fiscal_document_kind_unsupported" | "fiscal_government_eligibility_required" | "fiscal_government_eligibility_not_allowed" | "taxpayer_unregistered" | "taxpayer_inactive" | "voluntary_tip_currency_mismatch" | "voluntary_tip_not_allowed_for_split" | "voluntary_tip_not_available" | "voluntary_tip_exceeds_maximum" | "refund_amount_invalid" | "refund_currency_mismatch" | "payer_fiscal_profile_invalid" | "rate_limit_exceeded" | "internal_error" | "provider_unavailable" | "provider_rejected_request" | "taxpayer_directory_unavailable" | "fiscal_artifact_retrieval_unavailable" | "fiscal_delivery_unavailable" | "contact_request_delivery_unavailable";
5728
+ code: "merchant_authentication_unavailable" | "merchant_fiscal_binding_unavailable" | "merchant_fiscal_setup_unavailable" | "merchant_contact_email_confirmation_required" | "merchant_service_scope_required" | "merchant_business_address_required" | "merchant_business_contact_required" | "merchant_business_location_official_codes_required" | "merchant_business_details_invalid" | "merchant_current_payment_methods_required" | "merchant_current_sales_channels_required" | "merchant_existing_card_service_not_applicable" | "merchant_existing_card_service_other_provider_name_invalid" | "merchant_existing_card_service_other_provider_name_not_allowed" | "merchant_existing_card_service_other_provider_name_required" | "merchant_existing_card_service_providers_exclusive_choice" | "merchant_existing_card_service_providers_required" | "merchant_existing_card_service_required" | "merchant_location_catalog_changed" | "merchant_location_catalog_unavailable" | "merchant_location_selection_invalid" | "merchant_payment_methods_not_applicable" | "merchant_sales_channels_exclusive_choice" | "merchant_sales_channels_not_applicable" | "merchant_business_type_not_applicable" | "merchant_charge_timing_not_applicable" | "merchant_charge_timing_required" | "merchant_payment_methods_exclusive_choice" | "merchant_session_missing" | "merchant_workspace_organization_required" | "merchant_onboarding_revision_conflict" | "merchant_checkout_policy_revision_conflict" | "merchant_business_already_claimed" | "merchant_business_attachment_conflict" | "merchant_business_identity_required" | "merchant_business_not_member" | "merchant_business_revision_conflict" | "merchant_business_capabilities_required" | "merchant_fiscal_setup_incomplete" | "merchant_payment_setup_assessment_incomplete" | "merchant_certificate_conflict" | "merchant_test_fiscal_document_blocked" | "merchant_dgii_assistance_not_applicable" | "merchant_dgii_assistance_notes_invalid" | "parameter_missing" | "parameter_invalid" | "provider_not_available" | "currency_not_supported" | "amount_below_minimum" | "amount_above_maximum" | "checkout_reference_invalid" | "checkout_reference_expired" | "fiscal_buyer_tax_id_invalid" | "fiscal_lines_required" | "payment_split_invalid" | "submission_token_invalid" | "submission_token_expired" | "request_body_malformed" | "collection_cursor_invalid" | "webhook_replay_scope_invalid" | "api_key_missing" | "api_key_invalid" | "checkout_token_invalid" | "checkout_token_expired" | "payer_session_missing" | "operation_not_permitted" | "journey_scope_mismatch" | "journey_report_timeout" | "merchant_fiscal_binding_conflict" | "live_mode_not_enabled" | "origin_not_allowed" | "payer_step_up_required" | "certificate_handoff_person_mismatch" | "route_not_found" | "api_key_not_found" | "payment_not_found" | "refund_not_found" | "payment_part_not_found" | "payment_split_not_found" | "fiscal_document_not_found" | "merchant_account_not_found" | "merchant_account_card_capability_not_found" | "merchant_business_not_found" | "agent_client_not_found" | "connected_agent_not_found" | "certificate_handoff_not_found" | "webhook_endpoint_not_found" | "webhook_event_not_found" | "three_ds_not_found" | "payer_not_found" | "saved_card_not_found" | "payer_credential_not_found" | "payer_purchase_not_found" | "payer_fiscal_profile_not_found" | "idempotency_key_reused" | "idempotency_request_in_progress" | "idempotency_key_expired" | "api_key_retired" | "payment_method_already_in_progress" | "payment_not_payable" | "refund_not_allowed" | "refund_already_exists" | "payment_awaiting_verification" | "payment_attempt_invalid" | "payment_attempt_mismatch" | "payment_attempt_stale" | "payment_method_mismatch" | "provider_response_invalid" | "decline_not_retryable" | "checkout_window_closed" | "payment_not_editable" | "payment_cancel_not_allowed" | "payment_cancellation_pending" | "invoicing_locked" | "source_identity_conflict" | "refund_source_identity_conflict" | "refund_payment_not_captured" | "refund_exceeds_captured" | "refund_allocation_not_found" | "refund_allocation_conflict" | "refund_allocation_ledger_unavailable" | "fiscal_buyer_required" | "fiscal_correction_not_allowed" | "fiscal_artifact_not_ready" | "fiscal_coordination_not_ready" | "fiscal_coordination_not_allowed" | "fiscal_reference_stale" | "fiscal_reference_conflict" | "fiscal_delivery_not_ready" | "payment_split_not_allowed" | "payment_split_exists" | "payment_split_locked" | "payment_split_not_capturable" | "payment_split_not_expired" | "payment_split_not_renewable" | "payment_split_complete" | "payment_split_part_required" | "payment_part_not_payable" | "webhook_endpoint_deleted" | "webhook_endpoint_suspended" | "three_ds_binding_mismatch" | "payer_enrollment_unavailable" | "payer_claim_unavailable" | "payer_claim_conflict" | "payer_claim_proof_invalid" | "payer_delivery_address_unavailable" | "payer_fiscal_profile_unavailable" | "certificate_handoff_used" | "receipt_retention_elapsed" | "certificate_handoff_expired" | "request_body_too_large" | "unsupported_media_type" | "merchant_account_not_ready" | "merchant_checkout_policy_invalid" | "merchant_account_provider_mismatch" | "merchant_account_identity_mismatch" | "merchant_profile_incomplete" | "payment_description_required" | "sale_amount_invalid" | "credential_storage_unavailable" | "refund_credentials_unavailable" | "refund_provider_unavailable" | "refund_provider_reference_unavailable" | "provider_not_eligible" | "no_eligible_provider" | "currency_not_supported_by_provider" | "currency_not_supported_for_fiscal_document" | "fiscal_total_mismatch" | "fiscal_line_total_invalid" | "fiscal_line_legal_tip_invalid" | "fiscal_document_kind_not_allowed" | "fiscal_document_kind_unsupported" | "fiscal_government_eligibility_required" | "fiscal_government_eligibility_not_allowed" | "certificate_p12_password_invalid" | "certificate_pkcs12_invalid" | "certificate_not_supported" | "taxpayer_unregistered" | "taxpayer_inactive" | "voluntary_tip_currency_mismatch" | "voluntary_tip_not_allowed_for_split" | "voluntary_tip_not_available" | "voluntary_tip_exceeds_maximum" | "refund_amount_invalid" | "refund_currency_mismatch" | "payer_fiscal_profile_invalid" | "rate_limit_exceeded" | "internal_error" | "provider_unavailable" | "provider_rejected_request" | "taxpayer_directory_unavailable" | "fiscal_artifact_retrieval_unavailable" | "fiscal_delivery_unavailable" | "journey_marks_unavailable" | "contact_request_delivery_unavailable";
4851
5729
  /** @description Correlation id, also returned as the Request-Id header. */
4852
5730
  requestId: string;
5731
+ /** @description Human-readable explanation of this occurrence. Branch on `code`, not on it. */
5732
+ detail?: string;
4853
5733
  /** @description One entry per offending request field. */
4854
5734
  problems?: {
4855
5735
  /** @description JSON Pointer to the offending request field. */
@@ -4858,7 +5738,7 @@ export interface components {
4858
5738
  * @description Stable machine-readable code. Branch on this, never on `title`.
4859
5739
  * @enum {string}
4860
5740
  */
4861
- code: "merchant_authentication_unavailable" | "merchant_fiscal_binding_unavailable" | "merchant_workspace_identity_locked" | "merchant_workspace_bootstrap_required" | "merchant_contact_email_confirmation_required" | "merchant_service_scope_required" | "merchant_business_address_required" | "merchant_current_payment_methods_required" | "merchant_current_sales_channels_required" | "merchant_existing_card_service_not_applicable" | "merchant_existing_card_service_other_provider_name_invalid" | "merchant_existing_card_service_other_provider_name_not_allowed" | "merchant_existing_card_service_other_provider_name_required" | "merchant_existing_card_service_providers_exclusive_choice" | "merchant_existing_card_service_providers_required" | "merchant_existing_card_service_required" | "merchant_location_catalog_changed" | "merchant_location_catalog_unavailable" | "merchant_location_selection_invalid" | "merchant_payment_methods_not_applicable" | "merchant_sales_channels_exclusive_choice" | "merchant_sales_channels_not_applicable" | "merchant_business_type_not_applicable" | "merchant_business_type_required" | "merchant_charge_timing_not_applicable" | "merchant_charge_timing_required" | "merchant_payment_methods_exclusive_choice" | "merchant_session_missing" | "merchant_workspace_organization_required" | "merchant_onboarding_revision_conflict" | "merchant_checkout_policy_revision_conflict" | "merchant_business_identity_required" | "merchant_business_identity_confirmation_required" | "merchant_payment_setup_assessment_incomplete" | "parameter_missing" | "parameter_invalid" | "provider_not_available" | "currency_not_supported" | "amount_below_minimum" | "amount_above_maximum" | "checkout_reference_invalid" | "checkout_reference_expired" | "fiscal_buyer_tax_id_invalid" | "fiscal_lines_required" | "payment_split_invalid" | "submission_token_invalid" | "submission_token_expired" | "request_body_malformed" | "collection_cursor_invalid" | "webhook_replay_scope_invalid" | "api_key_missing" | "api_key_invalid" | "checkout_token_invalid" | "checkout_token_expired" | "payer_session_missing" | "operation_not_permitted" | "merchant_fiscal_binding_conflict" | "live_mode_not_enabled" | "origin_not_allowed" | "payer_step_up_required" | "route_not_found" | "payment_not_found" | "refund_not_found" | "payment_part_not_found" | "payment_split_not_found" | "fiscal_document_not_found" | "merchant_account_not_found" | "merchant_profile_not_found" | "webhook_endpoint_not_found" | "webhook_event_not_found" | "three_ds_not_found" | "payer_not_found" | "payer_credential_not_found" | "payer_purchase_not_found" | "payer_fiscal_profile_not_found" | "idempotency_key_reused" | "idempotency_request_in_progress" | "idempotency_key_expired" | "payment_method_already_in_progress" | "payment_not_payable" | "refund_not_allowed" | "refund_already_exists" | "payment_awaiting_verification" | "payment_attempt_invalid" | "payment_attempt_mismatch" | "payment_attempt_stale" | "payment_method_mismatch" | "provider_response_invalid" | "decline_not_retryable" | "checkout_window_closed" | "payment_not_editable" | "payment_cancel_not_allowed" | "payment_cancellation_pending" | "invoicing_locked" | "source_identity_conflict" | "refund_source_identity_conflict" | "refund_payment_not_captured" | "refund_exceeds_captured" | "refund_allocation_not_found" | "refund_allocation_conflict" | "refund_allocation_ledger_unavailable" | "fiscal_buyer_required" | "fiscal_correction_not_allowed" | "fiscal_artifact_not_ready" | "fiscal_coordination_not_ready" | "fiscal_coordination_not_allowed" | "fiscal_reference_stale" | "fiscal_reference_conflict" | "fiscal_delivery_not_ready" | "payment_split_not_allowed" | "payment_split_exists" | "payment_split_locked" | "payment_split_not_capturable" | "payment_split_not_expired" | "payment_split_not_renewable" | "payment_split_complete" | "payment_split_part_required" | "payment_part_not_payable" | "webhook_endpoint_deleted" | "webhook_endpoint_suspended" | "three_ds_binding_mismatch" | "payer_enrollment_unavailable" | "payer_claim_unavailable" | "payer_claim_conflict" | "payer_claim_proof_invalid" | "payer_delivery_address_unavailable" | "payer_fiscal_profile_unavailable" | "receipt_retention_elapsed" | "request_body_too_large" | "unsupported_media_type" | "merchant_account_not_ready" | "merchant_checkout_policy_invalid" | "merchant_account_provider_mismatch" | "merchant_account_identity_mismatch" | "merchant_profile_incomplete" | "payment_description_required" | "sale_amount_invalid" | "credential_storage_unavailable" | "refund_credentials_unavailable" | "refund_provider_unavailable" | "refund_provider_reference_unavailable" | "provider_not_eligible" | "no_eligible_provider" | "currency_not_supported_by_provider" | "currency_not_supported_for_fiscal_document" | "fiscal_total_mismatch" | "fiscal_line_total_invalid" | "fiscal_line_legal_tip_invalid" | "fiscal_document_kind_not_allowed" | "fiscal_document_kind_unsupported" | "fiscal_government_eligibility_required" | "fiscal_government_eligibility_not_allowed" | "taxpayer_unregistered" | "taxpayer_inactive" | "voluntary_tip_currency_mismatch" | "voluntary_tip_not_allowed_for_split" | "voluntary_tip_not_available" | "voluntary_tip_exceeds_maximum" | "refund_amount_invalid" | "refund_currency_mismatch" | "payer_fiscal_profile_invalid" | "rate_limit_exceeded" | "internal_error" | "provider_unavailable" | "provider_rejected_request" | "taxpayer_directory_unavailable" | "fiscal_artifact_retrieval_unavailable" | "fiscal_delivery_unavailable" | "contact_request_delivery_unavailable";
5741
+ code: "merchant_authentication_unavailable" | "merchant_fiscal_binding_unavailable" | "merchant_fiscal_setup_unavailable" | "merchant_contact_email_confirmation_required" | "merchant_service_scope_required" | "merchant_business_address_required" | "merchant_business_contact_required" | "merchant_business_location_official_codes_required" | "merchant_business_details_invalid" | "merchant_current_payment_methods_required" | "merchant_current_sales_channels_required" | "merchant_existing_card_service_not_applicable" | "merchant_existing_card_service_other_provider_name_invalid" | "merchant_existing_card_service_other_provider_name_not_allowed" | "merchant_existing_card_service_other_provider_name_required" | "merchant_existing_card_service_providers_exclusive_choice" | "merchant_existing_card_service_providers_required" | "merchant_existing_card_service_required" | "merchant_location_catalog_changed" | "merchant_location_catalog_unavailable" | "merchant_location_selection_invalid" | "merchant_payment_methods_not_applicable" | "merchant_sales_channels_exclusive_choice" | "merchant_sales_channels_not_applicable" | "merchant_business_type_not_applicable" | "merchant_charge_timing_not_applicable" | "merchant_charge_timing_required" | "merchant_payment_methods_exclusive_choice" | "merchant_session_missing" | "merchant_workspace_organization_required" | "merchant_onboarding_revision_conflict" | "merchant_checkout_policy_revision_conflict" | "merchant_business_already_claimed" | "merchant_business_attachment_conflict" | "merchant_business_identity_required" | "merchant_business_not_member" | "merchant_business_revision_conflict" | "merchant_business_capabilities_required" | "merchant_fiscal_setup_incomplete" | "merchant_payment_setup_assessment_incomplete" | "merchant_certificate_conflict" | "merchant_test_fiscal_document_blocked" | "merchant_dgii_assistance_not_applicable" | "merchant_dgii_assistance_notes_invalid" | "parameter_missing" | "parameter_invalid" | "provider_not_available" | "currency_not_supported" | "amount_below_minimum" | "amount_above_maximum" | "checkout_reference_invalid" | "checkout_reference_expired" | "fiscal_buyer_tax_id_invalid" | "fiscal_lines_required" | "payment_split_invalid" | "submission_token_invalid" | "submission_token_expired" | "request_body_malformed" | "collection_cursor_invalid" | "webhook_replay_scope_invalid" | "api_key_missing" | "api_key_invalid" | "checkout_token_invalid" | "checkout_token_expired" | "payer_session_missing" | "operation_not_permitted" | "journey_scope_mismatch" | "journey_report_timeout" | "merchant_fiscal_binding_conflict" | "live_mode_not_enabled" | "origin_not_allowed" | "payer_step_up_required" | "certificate_handoff_person_mismatch" | "route_not_found" | "api_key_not_found" | "payment_not_found" | "refund_not_found" | "payment_part_not_found" | "payment_split_not_found" | "fiscal_document_not_found" | "merchant_account_not_found" | "merchant_account_card_capability_not_found" | "merchant_business_not_found" | "agent_client_not_found" | "connected_agent_not_found" | "certificate_handoff_not_found" | "webhook_endpoint_not_found" | "webhook_event_not_found" | "three_ds_not_found" | "payer_not_found" | "saved_card_not_found" | "payer_credential_not_found" | "payer_purchase_not_found" | "payer_fiscal_profile_not_found" | "idempotency_key_reused" | "idempotency_request_in_progress" | "idempotency_key_expired" | "api_key_retired" | "payment_method_already_in_progress" | "payment_not_payable" | "refund_not_allowed" | "refund_already_exists" | "payment_awaiting_verification" | "payment_attempt_invalid" | "payment_attempt_mismatch" | "payment_attempt_stale" | "payment_method_mismatch" | "provider_response_invalid" | "decline_not_retryable" | "checkout_window_closed" | "payment_not_editable" | "payment_cancel_not_allowed" | "payment_cancellation_pending" | "invoicing_locked" | "source_identity_conflict" | "refund_source_identity_conflict" | "refund_payment_not_captured" | "refund_exceeds_captured" | "refund_allocation_not_found" | "refund_allocation_conflict" | "refund_allocation_ledger_unavailable" | "fiscal_buyer_required" | "fiscal_correction_not_allowed" | "fiscal_artifact_not_ready" | "fiscal_coordination_not_ready" | "fiscal_coordination_not_allowed" | "fiscal_reference_stale" | "fiscal_reference_conflict" | "fiscal_delivery_not_ready" | "payment_split_not_allowed" | "payment_split_exists" | "payment_split_locked" | "payment_split_not_capturable" | "payment_split_not_expired" | "payment_split_not_renewable" | "payment_split_complete" | "payment_split_part_required" | "payment_part_not_payable" | "webhook_endpoint_deleted" | "webhook_endpoint_suspended" | "three_ds_binding_mismatch" | "payer_enrollment_unavailable" | "payer_claim_unavailable" | "payer_claim_conflict" | "payer_claim_proof_invalid" | "payer_delivery_address_unavailable" | "payer_fiscal_profile_unavailable" | "certificate_handoff_used" | "receipt_retention_elapsed" | "certificate_handoff_expired" | "request_body_too_large" | "unsupported_media_type" | "merchant_account_not_ready" | "merchant_checkout_policy_invalid" | "merchant_account_provider_mismatch" | "merchant_account_identity_mismatch" | "merchant_profile_incomplete" | "payment_description_required" | "sale_amount_invalid" | "credential_storage_unavailable" | "refund_credentials_unavailable" | "refund_provider_unavailable" | "refund_provider_reference_unavailable" | "provider_not_eligible" | "no_eligible_provider" | "currency_not_supported_by_provider" | "currency_not_supported_for_fiscal_document" | "fiscal_total_mismatch" | "fiscal_line_total_invalid" | "fiscal_line_legal_tip_invalid" | "fiscal_document_kind_not_allowed" | "fiscal_document_kind_unsupported" | "fiscal_government_eligibility_required" | "fiscal_government_eligibility_not_allowed" | "certificate_p12_password_invalid" | "certificate_pkcs12_invalid" | "certificate_not_supported" | "taxpayer_unregistered" | "taxpayer_inactive" | "voluntary_tip_currency_mismatch" | "voluntary_tip_not_allowed_for_split" | "voluntary_tip_not_available" | "voluntary_tip_exceeds_maximum" | "refund_amount_invalid" | "refund_currency_mismatch" | "payer_fiscal_profile_invalid" | "rate_limit_exceeded" | "internal_error" | "provider_unavailable" | "provider_rejected_request" | "taxpayer_directory_unavailable" | "fiscal_artifact_retrieval_unavailable" | "fiscal_delivery_unavailable" | "journey_marks_unavailable" | "contact_request_delivery_unavailable";
4862
5742
  }[];
4863
5743
  };
4864
5744
  /** ProcessingFiscalDocument */
@@ -5026,7 +5906,7 @@ export interface components {
5026
5906
  * @description Normalized classification of an unresolved refund.
5027
5907
  * @enum {string}
5028
5908
  */
5029
- code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable";
5909
+ code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable" | "refund_provider_credentials_rejected";
5030
5910
  message: string;
5031
5911
  };
5032
5912
  };
@@ -5184,7 +6064,7 @@ export interface components {
5184
6064
  * @description Normalized classification of an unresolved refund.
5185
6065
  * @enum {string}
5186
6066
  */
5187
- code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable";
6067
+ code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable" | "refund_provider_credentials_rejected";
5188
6068
  message: string;
5189
6069
  };
5190
6070
  }[];
@@ -5223,7 +6103,7 @@ export interface components {
5223
6103
  * @description Normalized classification of an unresolved refund.
5224
6104
  * @enum {string}
5225
6105
  */
5226
- code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable";
6106
+ code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable" | "refund_provider_credentials_rejected";
5227
6107
  message: string;
5228
6108
  };
5229
6109
  /**
@@ -5813,36 +6693,2126 @@ export interface components {
5813
6693
  /** @description Signing secret in the Standard Webhooks whsec_ form. Returned only when it is issued. */
5814
6694
  secret: string;
5815
6695
  };
5816
- /**
5817
- * WebhookEventType
5818
- * @description Domain events that the gateway can deliver to a merchant endpoint.
5819
- */
5820
- WebhookEventType: "payment.succeeded" | "payment.canceled" | "payment.operator_required" | "refund.operator_required" | "refund.fiscal_coordination_updated" | "fiscal_document.issued" | "fiscal_document.rejected" | "fiscal_document.operator_required";
5821
- /**
5822
- * WebhookReplay
5823
- * @description A request to send stored events to one endpoint again. Each queued delivery repeats the original event id and is signed with a fresh webhook-timestamp.
5824
- */
5825
- WebhookReplay: {
5826
- /** @description Replay identifier, carried by every delivery it queued. */
5827
- id: string;
5828
- /** @constant */
5829
- object: "webhook_replay";
5830
- /** @description The endpoint the deliveries were queued for. */
5831
- webhookEndpointId: string;
5832
- /** @description How many deliveries this replay queued. */
5833
- deliveryCount: number;
5834
- /** Format: date-time */
5835
- createdAt: string;
6696
+ /**
6697
+ * WebhookEventType
6698
+ * @description Domain events that the gateway can deliver to a merchant endpoint.
6699
+ */
6700
+ WebhookEventType: "payment.succeeded" | "payment.canceled" | "payment.operator_required" | "refund.operator_required" | "refund.fiscal_coordination_updated" | "fiscal_document.issued" | "fiscal_document.rejected" | "fiscal_document.operator_required";
6701
+ /**
6702
+ * WebhookReplay
6703
+ * @description A request to send stored events to one endpoint again. Each queued delivery repeats the original event id and is signed with a fresh webhook-timestamp.
6704
+ */
6705
+ WebhookReplay: {
6706
+ /** @description Replay identifier, carried by every delivery it queued. */
6707
+ id: string;
6708
+ /** @constant */
6709
+ object: "webhook_replay";
6710
+ /** @description The endpoint the deliveries were queued for. */
6711
+ webhookEndpointId: string;
6712
+ /** @description How many deliveries this replay queued. */
6713
+ deliveryCount: number;
6714
+ /** Format: date-time */
6715
+ createdAt: string;
6716
+ };
6717
+ };
6718
+ responses: never;
6719
+ parameters: never;
6720
+ requestBodies: never;
6721
+ headers: never;
6722
+ pathItems: never;
6723
+ }
6724
+ export type $defs = Record<string, never>;
6725
+ export interface operations {
6726
+ retrieveMerchantBusiness: {
6727
+ parameters: {
6728
+ query?: never;
6729
+ header?: never;
6730
+ path?: never;
6731
+ cookie?: never;
6732
+ };
6733
+ requestBody?: never;
6734
+ responses: {
6735
+ /** @description The business the credential selects, its capabilities, and the requirements that remain. */
6736
+ 200: {
6737
+ headers: {
6738
+ [name: string]: unknown;
6739
+ };
6740
+ content: {
6741
+ "application/json": {
6742
+ /** @constant */
6743
+ object: "merchant_business";
6744
+ id: string;
6745
+ rnc: string;
6746
+ legalName: string;
6747
+ revision: number;
6748
+ capabilities: {
6749
+ payments: {
6750
+ requested: boolean;
6751
+ status: "active" | "pending" | "inactive";
6752
+ };
6753
+ electronicInvoicing: {
6754
+ requested: boolean;
6755
+ status: "active" | "pending" | "inactive";
6756
+ /** @constant */
6757
+ environment: "sandbox";
6758
+ };
6759
+ };
6760
+ fiscalDetails: {
6761
+ commercialName: string | null;
6762
+ address: string | null;
6763
+ location: {
6764
+ placeId: string;
6765
+ catalogReleaseId: string;
6766
+ municipalityCode: string | null;
6767
+ name: string;
6768
+ kind: "country" | "region" | "national_district" | "province" | "municipality" | "municipal_district" | "urban_zone" | "section" | "barrio" | "paraje" | "subbarrio";
6769
+ qualityStatus: "verified" | "provisional" | "conflicted";
6770
+ /** @description The places that contain the selected one, outermost first. */
6771
+ ancestors: {
6772
+ placeId: string;
6773
+ name: string;
6774
+ kind: "country" | "region" | "national_district" | "province" | "municipality" | "municipal_district" | "urban_zone" | "section" | "barrio" | "paraje" | "subbarrio";
6775
+ qualityStatus: "verified" | "provisional" | "conflicted";
6776
+ }[];
6777
+ } | null;
6778
+ phone: string | null;
6779
+ email: string | null;
6780
+ defaultIncomeType: string | null;
6781
+ };
6782
+ paymentsProfile: {
6783
+ displayName: string;
6784
+ statementDescriptor: string;
6785
+ /**
6786
+ * MerchantPermanentAddress
6787
+ * @description The selling merchant's permanent business address.
6788
+ */
6789
+ permanentAddress: {
6790
+ line1: string;
6791
+ line2?: string;
6792
+ city: string;
6793
+ province?: string;
6794
+ postalCode?: string;
6795
+ countryCode: string;
6796
+ };
6797
+ /** Format: email */
6798
+ supportEmail: string;
6799
+ supportPhone: string;
6800
+ /**
6801
+ * MerchantDeliveryPolicy
6802
+ * @description Whether the merchant offers delivery and the terms a payer needs before paying.
6803
+ */
6804
+ deliveryPolicy: {
6805
+ /** @constant */
6806
+ kind: "not_offered";
6807
+ } | {
6808
+ /** @constant */
6809
+ kind: "merchant_managed";
6810
+ summary: string;
6811
+ /** Format: uri */
6812
+ url?: string;
6813
+ };
6814
+ } | null;
6815
+ /**
6816
+ * MerchantBusinessFiscalSetup
6817
+ * @description Timbro's view of electronic invoicing provisioning, or why it cannot be read.
6818
+ */
6819
+ fiscalSetup: {
6820
+ /** @constant */
6821
+ status: "unavailable";
6822
+ /** @constant */
6823
+ cause: "timbro_unreachable";
6824
+ } | {
6825
+ /** @constant */
6826
+ status: "available";
6827
+ /**
6828
+ * MerchantBusinessFiscalBinding
6829
+ * @description The Timbro Organization, Legal issuer, Source connection, and webhook.
6830
+ */
6831
+ binding: {
6832
+ /** @constant */
6833
+ status: "unbound";
6834
+ } | {
6835
+ /** @constant */
6836
+ status: "provisioning";
6837
+ } | {
6838
+ /** @constant */
6839
+ status: "bound";
6840
+ webhookSecret: "sealed" | "pending";
6841
+ } | {
6842
+ /** @constant */
6843
+ status: "failed";
6844
+ } | {
6845
+ /** @constant */
6846
+ status: "conflict";
6847
+ };
6848
+ /**
6849
+ * MerchantBusinessLegalIssuer
6850
+ * @description Whether Timbro holds every profile field the hosted Legal issuer requires.
6851
+ */
6852
+ legalIssuer: {
6853
+ /** @constant */
6854
+ status: "missing";
6855
+ } | {
6856
+ /** @constant */
6857
+ status: "incomplete";
6858
+ } | {
6859
+ /** @constant */
6860
+ status: "complete";
6861
+ };
6862
+ /**
6863
+ * MerchantBusinessSigningCertificate
6864
+ * @description The certificate Timbro's custody holds for the sandbox Legal issuer.
6865
+ */
6866
+ signingCertificate: {
6867
+ /** @constant */
6868
+ status: "missing";
6869
+ } | {
6870
+ /** @constant */
6871
+ status: "active";
6872
+ sha256: string;
6873
+ signerSerialNumber: string;
6874
+ /** Format: date-time */
6875
+ notBefore: string;
6876
+ /** Format: date-time */
6877
+ notAfter: string;
6878
+ };
6879
+ /**
6880
+ * MerchantBusinessTestFiscalDocument
6881
+ * @description The TesteCF document DGII must accept for this RNC and certificate.
6882
+ */
6883
+ testFiscalDocument: {
6884
+ /** @constant */
6885
+ status: "not_sent";
6886
+ } | {
6887
+ /** @constant */
6888
+ status: "processing";
6889
+ id: string;
6890
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
6891
+ } | {
6892
+ /** @constant */
6893
+ status: "accepted";
6894
+ id: string;
6895
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
6896
+ } | {
6897
+ /** @constant */
6898
+ status: "rejected";
6899
+ id: string;
6900
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
6901
+ reason: "timbro_rejected" | "authority_rejected";
6902
+ messages: string[];
6903
+ } | {
6904
+ /** @constant */
6905
+ status: "operator_required";
6906
+ id: string;
6907
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
6908
+ };
6909
+ };
6910
+ requirements: {
6911
+ code: "capabilities_required" | "commercial_name_required" | "address_required" | "location_required" | "phone_required" | "default_income_type_required" | "contact_email_verification_required" | "fiscal_details_rejected" | "taxpayer_registration_required" | "signing_certificate_required" | "signing_certificate_expiring" | "test_fiscal_document_rejected" | "test_fiscal_document_pending" | "test_fiscal_document_send_pending" | "fiscal_binding_pending" | "legal_issuer_sync_pending" | "fiscal_setup_unavailable" | "fiscal_binding_conflict" | "fiscal_issuer_rejected" | "test_fiscal_document_operator_required" | "payments_profile_required" | "merchant_account_required" | "merchant_account_disabled" | "active_credential_required" | "credential_material_invalid" | "test_live_mode_mismatch" | "callback_configuration_failed" | "callback_configuration_required" | "connectivity_check_failed" | "connectivity_check_required" | "provider_qualification_failed" | "provider_qualification_required" | "provider_adapter_unavailable";
6912
+ owner: "merchant" | "dgii" | "timbro" | "provider" | "operator";
6913
+ blocks: ("payments" | "electronic_invoicing")[];
6914
+ /** @description JSON Pointer into this representation the requirement names. */
6915
+ field?: string;
6916
+ errors?: {
6917
+ code: string;
6918
+ message: string;
6919
+ }[];
6920
+ }[];
6921
+ /** Format: uri */
6922
+ onboardingUrl: string;
6923
+ };
6924
+ };
6925
+ };
6926
+ /** @description The request could not be understood. */
6927
+ 400: {
6928
+ headers: {
6929
+ [name: string]: unknown;
6930
+ };
6931
+ content: {
6932
+ "application/problem+json": components["schemas"]["Problem"] & {
6933
+ /** @constant */
6934
+ status: 400;
6935
+ /**
6936
+ * @description Stable machine-readable code. Branch on this, never on `title`.
6937
+ * @enum {string}
6938
+ */
6939
+ code: "parameter_invalid";
6940
+ problems?: {
6941
+ /**
6942
+ * @description Stable machine-readable code. Branch on this, never on `title`.
6943
+ * @enum {string}
6944
+ */
6945
+ code: "parameter_invalid";
6946
+ }[];
6947
+ };
6948
+ };
6949
+ };
6950
+ /** @description The credential is missing, malformed, or no longer valid. */
6951
+ 401: {
6952
+ headers: {
6953
+ [name: string]: unknown;
6954
+ };
6955
+ content: {
6956
+ "application/problem+json": components["schemas"]["Problem"] & {
6957
+ /** @constant */
6958
+ status: 401;
6959
+ /**
6960
+ * @description Stable machine-readable code. Branch on this, never on `title`.
6961
+ * @enum {string}
6962
+ */
6963
+ code: "api_key_missing" | "api_key_invalid" | "checkout_token_invalid" | "checkout_token_expired" | "merchant_session_missing";
6964
+ problems?: {
6965
+ /**
6966
+ * @description Stable machine-readable code. Branch on this, never on `title`.
6967
+ * @enum {string}
6968
+ */
6969
+ code: "api_key_missing" | "api_key_invalid" | "checkout_token_invalid" | "checkout_token_expired" | "merchant_session_missing";
6970
+ }[];
6971
+ };
6972
+ };
6973
+ };
6974
+ /** @description The credential is valid but not permitted to perform this operation. */
6975
+ 403: {
6976
+ headers: {
6977
+ [name: string]: unknown;
6978
+ };
6979
+ content: {
6980
+ "application/problem+json": components["schemas"]["Problem"] & {
6981
+ /** @constant */
6982
+ status: 403;
6983
+ /**
6984
+ * @description Stable machine-readable code. Branch on this, never on `title`.
6985
+ * @enum {string}
6986
+ */
6987
+ code: "operation_not_permitted";
6988
+ problems?: {
6989
+ /**
6990
+ * @description Stable machine-readable code. Branch on this, never on `title`.
6991
+ * @enum {string}
6992
+ */
6993
+ code: "operation_not_permitted";
6994
+ }[];
6995
+ };
6996
+ };
6997
+ };
6998
+ /** @description No endpoint serves this method and path, or no resource with this identifier exists within the caller's scope. */
6999
+ 404: {
7000
+ headers: {
7001
+ [name: string]: unknown;
7002
+ };
7003
+ content: {
7004
+ "application/problem+json": components["schemas"]["Problem"] & {
7005
+ /** @constant */
7006
+ status: 404;
7007
+ /**
7008
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7009
+ * @enum {string}
7010
+ */
7011
+ code: "merchant_business_not_found";
7012
+ problems?: {
7013
+ /**
7014
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7015
+ * @enum {string}
7016
+ */
7017
+ code: "merchant_business_not_found";
7018
+ }[];
7019
+ };
7020
+ };
7021
+ };
7022
+ /** @description The gateway failed before reaching a payment outcome. Retry with the same Idempotency-Key. */
7023
+ 500: {
7024
+ headers: {
7025
+ [name: string]: unknown;
7026
+ };
7027
+ content: {
7028
+ "application/problem+json": components["schemas"]["Problem"] & {
7029
+ /** @constant */
7030
+ status: 500;
7031
+ /**
7032
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7033
+ * @enum {string}
7034
+ */
7035
+ code: "internal_error";
7036
+ problems?: {
7037
+ /**
7038
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7039
+ * @enum {string}
7040
+ */
7041
+ code: "internal_error";
7042
+ }[];
7043
+ };
7044
+ };
7045
+ };
7046
+ };
7047
+ };
7048
+ updateMerchantBusiness: {
7049
+ parameters: {
7050
+ query?: never;
7051
+ header?: never;
7052
+ path?: never;
7053
+ cookie?: never;
7054
+ };
7055
+ /** @description Each member the request carries replaces that member of the business. */
7056
+ requestBody: {
7057
+ content: {
7058
+ "application/json": {
7059
+ expectedRevision?: number;
7060
+ capabilities?: {
7061
+ payments?: {
7062
+ requested: boolean;
7063
+ };
7064
+ electronicInvoicing?: {
7065
+ requested: boolean;
7066
+ };
7067
+ };
7068
+ fiscalDetails?: {
7069
+ commercialName?: string;
7070
+ address?: string;
7071
+ location?: {
7072
+ placeId: string;
7073
+ catalogReleaseId: string;
7074
+ } | {
7075
+ /** @description An official e-CF municipality code, resolved to its place in the active location catalog release. A province code is refused. */
7076
+ municipalityCode: string;
7077
+ };
7078
+ /** @description A Dominican business number in E.164 format. */
7079
+ phone?: string;
7080
+ defaultIncomeType?: "01" | "02" | "03" | "04" | "05" | "06";
7081
+ };
7082
+ /**
7083
+ * MerchantBusinessPaymentsProfile
7084
+ * @description Payer-facing support, address, and delivery terms. The legal name and RNC are the business's.
7085
+ */
7086
+ paymentsProfile?: {
7087
+ displayName: string;
7088
+ statementDescriptor: string;
7089
+ /**
7090
+ * MerchantPermanentAddress
7091
+ * @description The selling merchant's permanent business address.
7092
+ */
7093
+ permanentAddress: {
7094
+ line1: string;
7095
+ line2?: string;
7096
+ city: string;
7097
+ province?: string;
7098
+ postalCode?: string;
7099
+ countryCode: string;
7100
+ };
7101
+ /** Format: email */
7102
+ supportEmail: string;
7103
+ supportPhone: string;
7104
+ /**
7105
+ * MerchantDeliveryPolicy
7106
+ * @description Whether the merchant offers delivery and the terms a payer needs before paying.
7107
+ */
7108
+ deliveryPolicy: {
7109
+ /** @constant */
7110
+ kind: "not_offered";
7111
+ } | {
7112
+ /** @constant */
7113
+ kind: "merchant_managed";
7114
+ summary: string;
7115
+ /** Format: uri */
7116
+ url?: string;
7117
+ };
7118
+ };
7119
+ };
7120
+ };
7121
+ };
7122
+ responses: {
7123
+ /** @description The business the credential selects, its capabilities, and the requirements that remain. */
7124
+ 200: {
7125
+ headers: {
7126
+ [name: string]: unknown;
7127
+ };
7128
+ content: {
7129
+ "application/json": {
7130
+ /** @constant */
7131
+ object: "merchant_business";
7132
+ id: string;
7133
+ rnc: string;
7134
+ legalName: string;
7135
+ revision: number;
7136
+ capabilities: {
7137
+ payments: {
7138
+ requested: boolean;
7139
+ status: "active" | "pending" | "inactive";
7140
+ };
7141
+ electronicInvoicing: {
7142
+ requested: boolean;
7143
+ status: "active" | "pending" | "inactive";
7144
+ /** @constant */
7145
+ environment: "sandbox";
7146
+ };
7147
+ };
7148
+ fiscalDetails: {
7149
+ commercialName: string | null;
7150
+ address: string | null;
7151
+ location: {
7152
+ placeId: string;
7153
+ catalogReleaseId: string;
7154
+ municipalityCode: string | null;
7155
+ name: string;
7156
+ kind: "country" | "region" | "national_district" | "province" | "municipality" | "municipal_district" | "urban_zone" | "section" | "barrio" | "paraje" | "subbarrio";
7157
+ qualityStatus: "verified" | "provisional" | "conflicted";
7158
+ /** @description The places that contain the selected one, outermost first. */
7159
+ ancestors: {
7160
+ placeId: string;
7161
+ name: string;
7162
+ kind: "country" | "region" | "national_district" | "province" | "municipality" | "municipal_district" | "urban_zone" | "section" | "barrio" | "paraje" | "subbarrio";
7163
+ qualityStatus: "verified" | "provisional" | "conflicted";
7164
+ }[];
7165
+ } | null;
7166
+ phone: string | null;
7167
+ email: string | null;
7168
+ defaultIncomeType: string | null;
7169
+ };
7170
+ paymentsProfile: {
7171
+ displayName: string;
7172
+ statementDescriptor: string;
7173
+ /**
7174
+ * MerchantPermanentAddress
7175
+ * @description The selling merchant's permanent business address.
7176
+ */
7177
+ permanentAddress: {
7178
+ line1: string;
7179
+ line2?: string;
7180
+ city: string;
7181
+ province?: string;
7182
+ postalCode?: string;
7183
+ countryCode: string;
7184
+ };
7185
+ /** Format: email */
7186
+ supportEmail: string;
7187
+ supportPhone: string;
7188
+ /**
7189
+ * MerchantDeliveryPolicy
7190
+ * @description Whether the merchant offers delivery and the terms a payer needs before paying.
7191
+ */
7192
+ deliveryPolicy: {
7193
+ /** @constant */
7194
+ kind: "not_offered";
7195
+ } | {
7196
+ /** @constant */
7197
+ kind: "merchant_managed";
7198
+ summary: string;
7199
+ /** Format: uri */
7200
+ url?: string;
7201
+ };
7202
+ } | null;
7203
+ /**
7204
+ * MerchantBusinessFiscalSetup
7205
+ * @description Timbro's view of electronic invoicing provisioning, or why it cannot be read.
7206
+ */
7207
+ fiscalSetup: {
7208
+ /** @constant */
7209
+ status: "unavailable";
7210
+ /** @constant */
7211
+ cause: "timbro_unreachable";
7212
+ } | {
7213
+ /** @constant */
7214
+ status: "available";
7215
+ /**
7216
+ * MerchantBusinessFiscalBinding
7217
+ * @description The Timbro Organization, Legal issuer, Source connection, and webhook.
7218
+ */
7219
+ binding: {
7220
+ /** @constant */
7221
+ status: "unbound";
7222
+ } | {
7223
+ /** @constant */
7224
+ status: "provisioning";
7225
+ } | {
7226
+ /** @constant */
7227
+ status: "bound";
7228
+ webhookSecret: "sealed" | "pending";
7229
+ } | {
7230
+ /** @constant */
7231
+ status: "failed";
7232
+ } | {
7233
+ /** @constant */
7234
+ status: "conflict";
7235
+ };
7236
+ /**
7237
+ * MerchantBusinessLegalIssuer
7238
+ * @description Whether Timbro holds every profile field the hosted Legal issuer requires.
7239
+ */
7240
+ legalIssuer: {
7241
+ /** @constant */
7242
+ status: "missing";
7243
+ } | {
7244
+ /** @constant */
7245
+ status: "incomplete";
7246
+ } | {
7247
+ /** @constant */
7248
+ status: "complete";
7249
+ };
7250
+ /**
7251
+ * MerchantBusinessSigningCertificate
7252
+ * @description The certificate Timbro's custody holds for the sandbox Legal issuer.
7253
+ */
7254
+ signingCertificate: {
7255
+ /** @constant */
7256
+ status: "missing";
7257
+ } | {
7258
+ /** @constant */
7259
+ status: "active";
7260
+ sha256: string;
7261
+ signerSerialNumber: string;
7262
+ /** Format: date-time */
7263
+ notBefore: string;
7264
+ /** Format: date-time */
7265
+ notAfter: string;
7266
+ };
7267
+ /**
7268
+ * MerchantBusinessTestFiscalDocument
7269
+ * @description The TesteCF document DGII must accept for this RNC and certificate.
7270
+ */
7271
+ testFiscalDocument: {
7272
+ /** @constant */
7273
+ status: "not_sent";
7274
+ } | {
7275
+ /** @constant */
7276
+ status: "processing";
7277
+ id: string;
7278
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
7279
+ } | {
7280
+ /** @constant */
7281
+ status: "accepted";
7282
+ id: string;
7283
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
7284
+ } | {
7285
+ /** @constant */
7286
+ status: "rejected";
7287
+ id: string;
7288
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
7289
+ reason: "timbro_rejected" | "authority_rejected";
7290
+ messages: string[];
7291
+ } | {
7292
+ /** @constant */
7293
+ status: "operator_required";
7294
+ id: string;
7295
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
7296
+ };
7297
+ };
7298
+ requirements: {
7299
+ code: "capabilities_required" | "commercial_name_required" | "address_required" | "location_required" | "phone_required" | "default_income_type_required" | "contact_email_verification_required" | "fiscal_details_rejected" | "taxpayer_registration_required" | "signing_certificate_required" | "signing_certificate_expiring" | "test_fiscal_document_rejected" | "test_fiscal_document_pending" | "test_fiscal_document_send_pending" | "fiscal_binding_pending" | "legal_issuer_sync_pending" | "fiscal_setup_unavailable" | "fiscal_binding_conflict" | "fiscal_issuer_rejected" | "test_fiscal_document_operator_required" | "payments_profile_required" | "merchant_account_required" | "merchant_account_disabled" | "active_credential_required" | "credential_material_invalid" | "test_live_mode_mismatch" | "callback_configuration_failed" | "callback_configuration_required" | "connectivity_check_failed" | "connectivity_check_required" | "provider_qualification_failed" | "provider_qualification_required" | "provider_adapter_unavailable";
7300
+ owner: "merchant" | "dgii" | "timbro" | "provider" | "operator";
7301
+ blocks: ("payments" | "electronic_invoicing")[];
7302
+ /** @description JSON Pointer into this representation the requirement names. */
7303
+ field?: string;
7304
+ errors?: {
7305
+ code: string;
7306
+ message: string;
7307
+ }[];
7308
+ }[];
7309
+ /** Format: uri */
7310
+ onboardingUrl: string;
7311
+ };
7312
+ };
7313
+ };
7314
+ /** @description The request could not be understood. */
7315
+ 400: {
7316
+ headers: {
7317
+ [name: string]: unknown;
7318
+ };
7319
+ content: {
7320
+ "application/problem+json": components["schemas"]["Problem"] & {
7321
+ /** @constant */
7322
+ status: 400;
7323
+ /**
7324
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7325
+ * @enum {string}
7326
+ */
7327
+ code: "parameter_invalid" | "parameter_missing" | "request_body_malformed";
7328
+ problems?: {
7329
+ /**
7330
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7331
+ * @enum {string}
7332
+ */
7333
+ code: "parameter_invalid" | "parameter_missing" | "request_body_malformed";
7334
+ }[];
7335
+ };
7336
+ };
7337
+ };
7338
+ /** @description The credential is missing, malformed, or no longer valid. */
7339
+ 401: {
7340
+ headers: {
7341
+ [name: string]: unknown;
7342
+ };
7343
+ content: {
7344
+ "application/problem+json": components["schemas"]["Problem"] & {
7345
+ /** @constant */
7346
+ status: 401;
7347
+ /**
7348
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7349
+ * @enum {string}
7350
+ */
7351
+ code: "api_key_missing" | "api_key_invalid" | "checkout_token_invalid" | "checkout_token_expired" | "merchant_session_missing";
7352
+ problems?: {
7353
+ /**
7354
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7355
+ * @enum {string}
7356
+ */
7357
+ code: "api_key_missing" | "api_key_invalid" | "checkout_token_invalid" | "checkout_token_expired" | "merchant_session_missing";
7358
+ }[];
7359
+ };
7360
+ };
7361
+ };
7362
+ /** @description The credential is valid but not permitted to perform this operation. */
7363
+ 403: {
7364
+ headers: {
7365
+ [name: string]: unknown;
7366
+ };
7367
+ content: {
7368
+ "application/problem+json": components["schemas"]["Problem"] & {
7369
+ /** @constant */
7370
+ status: 403;
7371
+ /**
7372
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7373
+ * @enum {string}
7374
+ */
7375
+ code: "operation_not_permitted";
7376
+ problems?: {
7377
+ /**
7378
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7379
+ * @enum {string}
7380
+ */
7381
+ code: "operation_not_permitted";
7382
+ }[];
7383
+ };
7384
+ };
7385
+ };
7386
+ /** @description No endpoint serves this method and path, or no resource with this identifier exists within the caller's scope. */
7387
+ 404: {
7388
+ headers: {
7389
+ [name: string]: unknown;
7390
+ };
7391
+ content: {
7392
+ "application/problem+json": components["schemas"]["Problem"] & {
7393
+ /** @constant */
7394
+ status: 404;
7395
+ /**
7396
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7397
+ * @enum {string}
7398
+ */
7399
+ code: "merchant_business_not_found";
7400
+ problems?: {
7401
+ /**
7402
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7403
+ * @enum {string}
7404
+ */
7405
+ code: "merchant_business_not_found";
7406
+ }[];
7407
+ };
7408
+ };
7409
+ };
7410
+ /** @description The request conflicts with the current state of the resource or with a previous request using the same Idempotency-Key. */
7411
+ 409: {
7412
+ headers: {
7413
+ [name: string]: unknown;
7414
+ };
7415
+ content: {
7416
+ "application/problem+json": components["schemas"]["Problem"] & {
7417
+ /** @constant */
7418
+ status: 409;
7419
+ /**
7420
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7421
+ * @enum {string}
7422
+ */
7423
+ code: "merchant_business_revision_conflict" | "merchant_business_capabilities_required" | "merchant_business_identity_required" | "merchant_business_address_required" | "merchant_business_location_official_codes_required" | "merchant_business_details_invalid" | "merchant_contact_email_confirmation_required" | "merchant_location_catalog_changed" | "merchant_location_selection_invalid";
7424
+ problems?: {
7425
+ /**
7426
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7427
+ * @enum {string}
7428
+ */
7429
+ code: "merchant_business_revision_conflict" | "merchant_business_capabilities_required" | "merchant_business_identity_required" | "merchant_business_address_required" | "merchant_business_location_official_codes_required" | "merchant_business_details_invalid" | "merchant_contact_email_confirmation_required" | "merchant_location_catalog_changed" | "merchant_location_selection_invalid";
7430
+ }[];
7431
+ };
7432
+ };
7433
+ };
7434
+ /** @description The request body is larger than this endpoint accepts. */
7435
+ 413: {
7436
+ headers: {
7437
+ [name: string]: unknown;
7438
+ };
7439
+ content: {
7440
+ "application/problem+json": components["schemas"]["Problem"] & {
7441
+ /** @constant */
7442
+ status: 413;
7443
+ /**
7444
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7445
+ * @enum {string}
7446
+ */
7447
+ code: "request_body_too_large";
7448
+ problems?: {
7449
+ /**
7450
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7451
+ * @enum {string}
7452
+ */
7453
+ code: "request_body_too_large";
7454
+ }[];
7455
+ };
7456
+ };
7457
+ };
7458
+ /** @description The request body carries a content type this endpoint does not accept. */
7459
+ 415: {
7460
+ headers: {
7461
+ [name: string]: unknown;
7462
+ };
7463
+ content: {
7464
+ "application/problem+json": components["schemas"]["Problem"] & {
7465
+ /** @constant */
7466
+ status: 415;
7467
+ /**
7468
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7469
+ * @enum {string}
7470
+ */
7471
+ code: "unsupported_media_type";
7472
+ problems?: {
7473
+ /**
7474
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7475
+ * @enum {string}
7476
+ */
7477
+ code: "unsupported_media_type";
7478
+ }[];
7479
+ };
7480
+ };
7481
+ };
7482
+ /** @description The gateway failed before reaching a payment outcome. Retry with the same Idempotency-Key. */
7483
+ 500: {
7484
+ headers: {
7485
+ [name: string]: unknown;
7486
+ };
7487
+ content: {
7488
+ "application/problem+json": components["schemas"]["Problem"] & {
7489
+ /** @constant */
7490
+ status: 500;
7491
+ /**
7492
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7493
+ * @enum {string}
7494
+ */
7495
+ code: "internal_error";
7496
+ problems?: {
7497
+ /**
7498
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7499
+ * @enum {string}
7500
+ */
7501
+ code: "internal_error";
7502
+ }[];
7503
+ };
7504
+ };
7505
+ };
7506
+ /** @description A required Gateway dependency is temporarily unavailable. The request is safe to retry. */
7507
+ 503: {
7508
+ headers: {
7509
+ [name: string]: unknown;
7510
+ };
7511
+ content: {
7512
+ "application/problem+json": components["schemas"]["Problem"] & {
7513
+ /** @constant */
7514
+ status: 503;
7515
+ /**
7516
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7517
+ * @enum {string}
7518
+ */
7519
+ code: "merchant_location_catalog_unavailable";
7520
+ problems?: {
7521
+ /**
7522
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7523
+ * @enum {string}
7524
+ */
7525
+ code: "merchant_location_catalog_unavailable";
7526
+ }[];
7527
+ };
7528
+ };
7529
+ };
7530
+ };
7531
+ };
7532
+ importMerchantBusinessSigningCertificate: {
7533
+ parameters: {
7534
+ query?: never;
7535
+ header?: never;
7536
+ path?: never;
7537
+ cookie?: never;
7538
+ };
7539
+ requestBody: {
7540
+ content: {
7541
+ "application/json": {
7542
+ certificateP12Base64: string;
7543
+ password: string;
7544
+ };
7545
+ };
7546
+ };
7547
+ responses: {
7548
+ /** @description The business the credential selects, its capabilities, and the requirements that remain. */
7549
+ 200: {
7550
+ headers: {
7551
+ [name: string]: unknown;
7552
+ };
7553
+ content: {
7554
+ "application/json": {
7555
+ /** @constant */
7556
+ object: "merchant_business";
7557
+ id: string;
7558
+ rnc: string;
7559
+ legalName: string;
7560
+ revision: number;
7561
+ capabilities: {
7562
+ payments: {
7563
+ requested: boolean;
7564
+ status: "active" | "pending" | "inactive";
7565
+ };
7566
+ electronicInvoicing: {
7567
+ requested: boolean;
7568
+ status: "active" | "pending" | "inactive";
7569
+ /** @constant */
7570
+ environment: "sandbox";
7571
+ };
7572
+ };
7573
+ fiscalDetails: {
7574
+ commercialName: string | null;
7575
+ address: string | null;
7576
+ location: {
7577
+ placeId: string;
7578
+ catalogReleaseId: string;
7579
+ municipalityCode: string | null;
7580
+ name: string;
7581
+ kind: "country" | "region" | "national_district" | "province" | "municipality" | "municipal_district" | "urban_zone" | "section" | "barrio" | "paraje" | "subbarrio";
7582
+ qualityStatus: "verified" | "provisional" | "conflicted";
7583
+ /** @description The places that contain the selected one, outermost first. */
7584
+ ancestors: {
7585
+ placeId: string;
7586
+ name: string;
7587
+ kind: "country" | "region" | "national_district" | "province" | "municipality" | "municipal_district" | "urban_zone" | "section" | "barrio" | "paraje" | "subbarrio";
7588
+ qualityStatus: "verified" | "provisional" | "conflicted";
7589
+ }[];
7590
+ } | null;
7591
+ phone: string | null;
7592
+ email: string | null;
7593
+ defaultIncomeType: string | null;
7594
+ };
7595
+ paymentsProfile: {
7596
+ displayName: string;
7597
+ statementDescriptor: string;
7598
+ /**
7599
+ * MerchantPermanentAddress
7600
+ * @description The selling merchant's permanent business address.
7601
+ */
7602
+ permanentAddress: {
7603
+ line1: string;
7604
+ line2?: string;
7605
+ city: string;
7606
+ province?: string;
7607
+ postalCode?: string;
7608
+ countryCode: string;
7609
+ };
7610
+ /** Format: email */
7611
+ supportEmail: string;
7612
+ supportPhone: string;
7613
+ /**
7614
+ * MerchantDeliveryPolicy
7615
+ * @description Whether the merchant offers delivery and the terms a payer needs before paying.
7616
+ */
7617
+ deliveryPolicy: {
7618
+ /** @constant */
7619
+ kind: "not_offered";
7620
+ } | {
7621
+ /** @constant */
7622
+ kind: "merchant_managed";
7623
+ summary: string;
7624
+ /** Format: uri */
7625
+ url?: string;
7626
+ };
7627
+ } | null;
7628
+ /**
7629
+ * MerchantBusinessFiscalSetup
7630
+ * @description Timbro's view of electronic invoicing provisioning, or why it cannot be read.
7631
+ */
7632
+ fiscalSetup: {
7633
+ /** @constant */
7634
+ status: "unavailable";
7635
+ /** @constant */
7636
+ cause: "timbro_unreachable";
7637
+ } | {
7638
+ /** @constant */
7639
+ status: "available";
7640
+ /**
7641
+ * MerchantBusinessFiscalBinding
7642
+ * @description The Timbro Organization, Legal issuer, Source connection, and webhook.
7643
+ */
7644
+ binding: {
7645
+ /** @constant */
7646
+ status: "unbound";
7647
+ } | {
7648
+ /** @constant */
7649
+ status: "provisioning";
7650
+ } | {
7651
+ /** @constant */
7652
+ status: "bound";
7653
+ webhookSecret: "sealed" | "pending";
7654
+ } | {
7655
+ /** @constant */
7656
+ status: "failed";
7657
+ } | {
7658
+ /** @constant */
7659
+ status: "conflict";
7660
+ };
7661
+ /**
7662
+ * MerchantBusinessLegalIssuer
7663
+ * @description Whether Timbro holds every profile field the hosted Legal issuer requires.
7664
+ */
7665
+ legalIssuer: {
7666
+ /** @constant */
7667
+ status: "missing";
7668
+ } | {
7669
+ /** @constant */
7670
+ status: "incomplete";
7671
+ } | {
7672
+ /** @constant */
7673
+ status: "complete";
7674
+ };
7675
+ /**
7676
+ * MerchantBusinessSigningCertificate
7677
+ * @description The certificate Timbro's custody holds for the sandbox Legal issuer.
7678
+ */
7679
+ signingCertificate: {
7680
+ /** @constant */
7681
+ status: "missing";
7682
+ } | {
7683
+ /** @constant */
7684
+ status: "active";
7685
+ sha256: string;
7686
+ signerSerialNumber: string;
7687
+ /** Format: date-time */
7688
+ notBefore: string;
7689
+ /** Format: date-time */
7690
+ notAfter: string;
7691
+ };
7692
+ /**
7693
+ * MerchantBusinessTestFiscalDocument
7694
+ * @description The TesteCF document DGII must accept for this RNC and certificate.
7695
+ */
7696
+ testFiscalDocument: {
7697
+ /** @constant */
7698
+ status: "not_sent";
7699
+ } | {
7700
+ /** @constant */
7701
+ status: "processing";
7702
+ id: string;
7703
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
7704
+ } | {
7705
+ /** @constant */
7706
+ status: "accepted";
7707
+ id: string;
7708
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
7709
+ } | {
7710
+ /** @constant */
7711
+ status: "rejected";
7712
+ id: string;
7713
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
7714
+ reason: "timbro_rejected" | "authority_rejected";
7715
+ messages: string[];
7716
+ } | {
7717
+ /** @constant */
7718
+ status: "operator_required";
7719
+ id: string;
7720
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
7721
+ };
7722
+ };
7723
+ requirements: {
7724
+ code: "capabilities_required" | "commercial_name_required" | "address_required" | "location_required" | "phone_required" | "default_income_type_required" | "contact_email_verification_required" | "fiscal_details_rejected" | "taxpayer_registration_required" | "signing_certificate_required" | "signing_certificate_expiring" | "test_fiscal_document_rejected" | "test_fiscal_document_pending" | "test_fiscal_document_send_pending" | "fiscal_binding_pending" | "legal_issuer_sync_pending" | "fiscal_setup_unavailable" | "fiscal_binding_conflict" | "fiscal_issuer_rejected" | "test_fiscal_document_operator_required" | "payments_profile_required" | "merchant_account_required" | "merchant_account_disabled" | "active_credential_required" | "credential_material_invalid" | "test_live_mode_mismatch" | "callback_configuration_failed" | "callback_configuration_required" | "connectivity_check_failed" | "connectivity_check_required" | "provider_qualification_failed" | "provider_qualification_required" | "provider_adapter_unavailable";
7725
+ owner: "merchant" | "dgii" | "timbro" | "provider" | "operator";
7726
+ blocks: ("payments" | "electronic_invoicing")[];
7727
+ /** @description JSON Pointer into this representation the requirement names. */
7728
+ field?: string;
7729
+ errors?: {
7730
+ code: string;
7731
+ message: string;
7732
+ }[];
7733
+ }[];
7734
+ /** Format: uri */
7735
+ onboardingUrl: string;
7736
+ };
7737
+ };
7738
+ };
7739
+ /** @description The request could not be understood. */
7740
+ 400: {
7741
+ headers: {
7742
+ [name: string]: unknown;
7743
+ };
7744
+ content: {
7745
+ "application/problem+json": components["schemas"]["Problem"] & {
7746
+ /** @constant */
7747
+ status: 400;
7748
+ /**
7749
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7750
+ * @enum {string}
7751
+ */
7752
+ code: "parameter_invalid" | "parameter_missing" | "request_body_malformed";
7753
+ problems?: {
7754
+ /**
7755
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7756
+ * @enum {string}
7757
+ */
7758
+ code: "parameter_invalid" | "parameter_missing" | "request_body_malformed";
7759
+ }[];
7760
+ };
7761
+ };
7762
+ };
7763
+ /** @description The credential is missing, malformed, or no longer valid. */
7764
+ 401: {
7765
+ headers: {
7766
+ [name: string]: unknown;
7767
+ };
7768
+ content: {
7769
+ "application/problem+json": components["schemas"]["Problem"] & {
7770
+ /** @constant */
7771
+ status: 401;
7772
+ /**
7773
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7774
+ * @enum {string}
7775
+ */
7776
+ code: "api_key_missing" | "api_key_invalid" | "checkout_token_invalid" | "checkout_token_expired" | "merchant_session_missing";
7777
+ problems?: {
7778
+ /**
7779
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7780
+ * @enum {string}
7781
+ */
7782
+ code: "api_key_missing" | "api_key_invalid" | "checkout_token_invalid" | "checkout_token_expired" | "merchant_session_missing";
7783
+ }[];
7784
+ };
7785
+ };
7786
+ };
7787
+ /** @description The credential is valid but not permitted to perform this operation. */
7788
+ 403: {
7789
+ headers: {
7790
+ [name: string]: unknown;
7791
+ };
7792
+ content: {
7793
+ "application/problem+json": components["schemas"]["Problem"] & {
7794
+ /** @constant */
7795
+ status: 403;
7796
+ /**
7797
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7798
+ * @enum {string}
7799
+ */
7800
+ code: "operation_not_permitted";
7801
+ problems?: {
7802
+ /**
7803
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7804
+ * @enum {string}
7805
+ */
7806
+ code: "operation_not_permitted";
7807
+ }[];
7808
+ };
7809
+ };
7810
+ };
7811
+ /** @description No endpoint serves this method and path, or no resource with this identifier exists within the caller's scope. */
7812
+ 404: {
7813
+ headers: {
7814
+ [name: string]: unknown;
7815
+ };
7816
+ content: {
7817
+ "application/problem+json": components["schemas"]["Problem"] & {
7818
+ /** @constant */
7819
+ status: 404;
7820
+ /**
7821
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7822
+ * @enum {string}
7823
+ */
7824
+ code: "merchant_business_not_found";
7825
+ problems?: {
7826
+ /**
7827
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7828
+ * @enum {string}
7829
+ */
7830
+ code: "merchant_business_not_found";
7831
+ }[];
7832
+ };
7833
+ };
7834
+ };
7835
+ /** @description The request conflicts with the current state of the resource or with a previous request using the same Idempotency-Key. */
7836
+ 409: {
7837
+ headers: {
7838
+ [name: string]: unknown;
7839
+ };
7840
+ content: {
7841
+ "application/problem+json": components["schemas"]["Problem"] & {
7842
+ /** @constant */
7843
+ status: 409;
7844
+ /**
7845
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7846
+ * @enum {string}
7847
+ */
7848
+ code: "merchant_certificate_conflict" | "merchant_fiscal_setup_incomplete";
7849
+ problems?: {
7850
+ /**
7851
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7852
+ * @enum {string}
7853
+ */
7854
+ code: "merchant_certificate_conflict" | "merchant_fiscal_setup_incomplete";
7855
+ }[];
7856
+ };
7857
+ };
7858
+ };
7859
+ /** @description The request body is larger than this endpoint accepts. */
7860
+ 413: {
7861
+ headers: {
7862
+ [name: string]: unknown;
7863
+ };
7864
+ content: {
7865
+ "application/problem+json": components["schemas"]["Problem"] & {
7866
+ /** @constant */
7867
+ status: 413;
7868
+ /**
7869
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7870
+ * @enum {string}
7871
+ */
7872
+ code: "request_body_too_large";
7873
+ problems?: {
7874
+ /**
7875
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7876
+ * @enum {string}
7877
+ */
7878
+ code: "request_body_too_large";
7879
+ }[];
7880
+ };
7881
+ };
7882
+ };
7883
+ /** @description The request body carries a content type this endpoint does not accept. */
7884
+ 415: {
7885
+ headers: {
7886
+ [name: string]: unknown;
7887
+ };
7888
+ content: {
7889
+ "application/problem+json": components["schemas"]["Problem"] & {
7890
+ /** @constant */
7891
+ status: 415;
7892
+ /**
7893
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7894
+ * @enum {string}
7895
+ */
7896
+ code: "unsupported_media_type";
7897
+ problems?: {
7898
+ /**
7899
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7900
+ * @enum {string}
7901
+ */
7902
+ code: "unsupported_media_type";
7903
+ }[];
7904
+ };
7905
+ };
7906
+ };
7907
+ /** @description The request is well-formed but cannot be carried out. */
7908
+ 422: {
7909
+ headers: {
7910
+ [name: string]: unknown;
7911
+ };
7912
+ content: {
7913
+ "application/problem+json": components["schemas"]["Problem"] & {
7914
+ /** @constant */
7915
+ status: 422;
7916
+ /**
7917
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7918
+ * @enum {string}
7919
+ */
7920
+ code: "certificate_pkcs12_invalid" | "certificate_not_supported" | "certificate_p12_password_invalid";
7921
+ problems?: {
7922
+ /**
7923
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7924
+ * @enum {string}
7925
+ */
7926
+ code: "certificate_pkcs12_invalid" | "certificate_not_supported" | "certificate_p12_password_invalid";
7927
+ }[];
7928
+ };
7929
+ };
7930
+ };
7931
+ /** @description The gateway failed before reaching a payment outcome. Retry with the same Idempotency-Key. */
7932
+ 500: {
7933
+ headers: {
7934
+ [name: string]: unknown;
7935
+ };
7936
+ content: {
7937
+ "application/problem+json": components["schemas"]["Problem"] & {
7938
+ /** @constant */
7939
+ status: 500;
7940
+ /**
7941
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7942
+ * @enum {string}
7943
+ */
7944
+ code: "internal_error";
7945
+ problems?: {
7946
+ /**
7947
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7948
+ * @enum {string}
7949
+ */
7950
+ code: "internal_error";
7951
+ }[];
7952
+ };
7953
+ };
7954
+ };
7955
+ /** @description A required Gateway dependency is temporarily unavailable. The request is safe to retry. */
7956
+ 503: {
7957
+ headers: {
7958
+ [name: string]: unknown;
7959
+ };
7960
+ content: {
7961
+ "application/problem+json": components["schemas"]["Problem"] & {
7962
+ /** @constant */
7963
+ status: 503;
7964
+ /**
7965
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7966
+ * @enum {string}
7967
+ */
7968
+ code: "merchant_fiscal_setup_unavailable";
7969
+ problems?: {
7970
+ /**
7971
+ * @description Stable machine-readable code. Branch on this, never on `title`.
7972
+ * @enum {string}
7973
+ */
7974
+ code: "merchant_fiscal_setup_unavailable";
7975
+ }[];
7976
+ };
7977
+ };
7978
+ };
7979
+ };
7980
+ };
7981
+ retryMerchantBusinessTestFiscalDocument: {
7982
+ parameters: {
7983
+ query?: never;
7984
+ header?: never;
7985
+ path?: never;
7986
+ cookie?: never;
7987
+ };
7988
+ requestBody: {
7989
+ content: {
7990
+ "application/json": {
7991
+ documentType?: "31" | "32" | "41" | "43" | "44" | "45" | "46" | "47";
7992
+ };
7993
+ };
7994
+ };
7995
+ responses: {
7996
+ /** @description The business the credential selects, its capabilities, and the requirements that remain. */
7997
+ 200: {
7998
+ headers: {
7999
+ [name: string]: unknown;
8000
+ };
8001
+ content: {
8002
+ "application/json": {
8003
+ /** @constant */
8004
+ object: "merchant_business";
8005
+ id: string;
8006
+ rnc: string;
8007
+ legalName: string;
8008
+ revision: number;
8009
+ capabilities: {
8010
+ payments: {
8011
+ requested: boolean;
8012
+ status: "active" | "pending" | "inactive";
8013
+ };
8014
+ electronicInvoicing: {
8015
+ requested: boolean;
8016
+ status: "active" | "pending" | "inactive";
8017
+ /** @constant */
8018
+ environment: "sandbox";
8019
+ };
8020
+ };
8021
+ fiscalDetails: {
8022
+ commercialName: string | null;
8023
+ address: string | null;
8024
+ location: {
8025
+ placeId: string;
8026
+ catalogReleaseId: string;
8027
+ municipalityCode: string | null;
8028
+ name: string;
8029
+ kind: "country" | "region" | "national_district" | "province" | "municipality" | "municipal_district" | "urban_zone" | "section" | "barrio" | "paraje" | "subbarrio";
8030
+ qualityStatus: "verified" | "provisional" | "conflicted";
8031
+ /** @description The places that contain the selected one, outermost first. */
8032
+ ancestors: {
8033
+ placeId: string;
8034
+ name: string;
8035
+ kind: "country" | "region" | "national_district" | "province" | "municipality" | "municipal_district" | "urban_zone" | "section" | "barrio" | "paraje" | "subbarrio";
8036
+ qualityStatus: "verified" | "provisional" | "conflicted";
8037
+ }[];
8038
+ } | null;
8039
+ phone: string | null;
8040
+ email: string | null;
8041
+ defaultIncomeType: string | null;
8042
+ };
8043
+ paymentsProfile: {
8044
+ displayName: string;
8045
+ statementDescriptor: string;
8046
+ /**
8047
+ * MerchantPermanentAddress
8048
+ * @description The selling merchant's permanent business address.
8049
+ */
8050
+ permanentAddress: {
8051
+ line1: string;
8052
+ line2?: string;
8053
+ city: string;
8054
+ province?: string;
8055
+ postalCode?: string;
8056
+ countryCode: string;
8057
+ };
8058
+ /** Format: email */
8059
+ supportEmail: string;
8060
+ supportPhone: string;
8061
+ /**
8062
+ * MerchantDeliveryPolicy
8063
+ * @description Whether the merchant offers delivery and the terms a payer needs before paying.
8064
+ */
8065
+ deliveryPolicy: {
8066
+ /** @constant */
8067
+ kind: "not_offered";
8068
+ } | {
8069
+ /** @constant */
8070
+ kind: "merchant_managed";
8071
+ summary: string;
8072
+ /** Format: uri */
8073
+ url?: string;
8074
+ };
8075
+ } | null;
8076
+ /**
8077
+ * MerchantBusinessFiscalSetup
8078
+ * @description Timbro's view of electronic invoicing provisioning, or why it cannot be read.
8079
+ */
8080
+ fiscalSetup: {
8081
+ /** @constant */
8082
+ status: "unavailable";
8083
+ /** @constant */
8084
+ cause: "timbro_unreachable";
8085
+ } | {
8086
+ /** @constant */
8087
+ status: "available";
8088
+ /**
8089
+ * MerchantBusinessFiscalBinding
8090
+ * @description The Timbro Organization, Legal issuer, Source connection, and webhook.
8091
+ */
8092
+ binding: {
8093
+ /** @constant */
8094
+ status: "unbound";
8095
+ } | {
8096
+ /** @constant */
8097
+ status: "provisioning";
8098
+ } | {
8099
+ /** @constant */
8100
+ status: "bound";
8101
+ webhookSecret: "sealed" | "pending";
8102
+ } | {
8103
+ /** @constant */
8104
+ status: "failed";
8105
+ } | {
8106
+ /** @constant */
8107
+ status: "conflict";
8108
+ };
8109
+ /**
8110
+ * MerchantBusinessLegalIssuer
8111
+ * @description Whether Timbro holds every profile field the hosted Legal issuer requires.
8112
+ */
8113
+ legalIssuer: {
8114
+ /** @constant */
8115
+ status: "missing";
8116
+ } | {
8117
+ /** @constant */
8118
+ status: "incomplete";
8119
+ } | {
8120
+ /** @constant */
8121
+ status: "complete";
8122
+ };
8123
+ /**
8124
+ * MerchantBusinessSigningCertificate
8125
+ * @description The certificate Timbro's custody holds for the sandbox Legal issuer.
8126
+ */
8127
+ signingCertificate: {
8128
+ /** @constant */
8129
+ status: "missing";
8130
+ } | {
8131
+ /** @constant */
8132
+ status: "active";
8133
+ sha256: string;
8134
+ signerSerialNumber: string;
8135
+ /** Format: date-time */
8136
+ notBefore: string;
8137
+ /** Format: date-time */
8138
+ notAfter: string;
8139
+ };
8140
+ /**
8141
+ * MerchantBusinessTestFiscalDocument
8142
+ * @description The TesteCF document DGII must accept for this RNC and certificate.
8143
+ */
8144
+ testFiscalDocument: {
8145
+ /** @constant */
8146
+ status: "not_sent";
8147
+ } | {
8148
+ /** @constant */
8149
+ status: "processing";
8150
+ id: string;
8151
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
8152
+ } | {
8153
+ /** @constant */
8154
+ status: "accepted";
8155
+ id: string;
8156
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
8157
+ } | {
8158
+ /** @constant */
8159
+ status: "rejected";
8160
+ id: string;
8161
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
8162
+ reason: "timbro_rejected" | "authority_rejected";
8163
+ messages: string[];
8164
+ } | {
8165
+ /** @constant */
8166
+ status: "operator_required";
8167
+ id: string;
8168
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
8169
+ };
8170
+ };
8171
+ requirements: {
8172
+ code: "capabilities_required" | "commercial_name_required" | "address_required" | "location_required" | "phone_required" | "default_income_type_required" | "contact_email_verification_required" | "fiscal_details_rejected" | "taxpayer_registration_required" | "signing_certificate_required" | "signing_certificate_expiring" | "test_fiscal_document_rejected" | "test_fiscal_document_pending" | "test_fiscal_document_send_pending" | "fiscal_binding_pending" | "legal_issuer_sync_pending" | "fiscal_setup_unavailable" | "fiscal_binding_conflict" | "fiscal_issuer_rejected" | "test_fiscal_document_operator_required" | "payments_profile_required" | "merchant_account_required" | "merchant_account_disabled" | "active_credential_required" | "credential_material_invalid" | "test_live_mode_mismatch" | "callback_configuration_failed" | "callback_configuration_required" | "connectivity_check_failed" | "connectivity_check_required" | "provider_qualification_failed" | "provider_qualification_required" | "provider_adapter_unavailable";
8173
+ owner: "merchant" | "dgii" | "timbro" | "provider" | "operator";
8174
+ blocks: ("payments" | "electronic_invoicing")[];
8175
+ /** @description JSON Pointer into this representation the requirement names. */
8176
+ field?: string;
8177
+ errors?: {
8178
+ code: string;
8179
+ message: string;
8180
+ }[];
8181
+ }[];
8182
+ /** Format: uri */
8183
+ onboardingUrl: string;
8184
+ };
8185
+ };
8186
+ };
8187
+ /** @description The business the credential selects, its capabilities, and the requirements that remain. */
8188
+ 202: {
8189
+ headers: {
8190
+ [name: string]: unknown;
8191
+ };
8192
+ content: {
8193
+ "application/json": {
8194
+ /** @constant */
8195
+ object: "merchant_business";
8196
+ id: string;
8197
+ rnc: string;
8198
+ legalName: string;
8199
+ revision: number;
8200
+ capabilities: {
8201
+ payments: {
8202
+ requested: boolean;
8203
+ status: "active" | "pending" | "inactive";
8204
+ };
8205
+ electronicInvoicing: {
8206
+ requested: boolean;
8207
+ status: "active" | "pending" | "inactive";
8208
+ /** @constant */
8209
+ environment: "sandbox";
8210
+ };
8211
+ };
8212
+ fiscalDetails: {
8213
+ commercialName: string | null;
8214
+ address: string | null;
8215
+ location: {
8216
+ placeId: string;
8217
+ catalogReleaseId: string;
8218
+ municipalityCode: string | null;
8219
+ name: string;
8220
+ kind: "country" | "region" | "national_district" | "province" | "municipality" | "municipal_district" | "urban_zone" | "section" | "barrio" | "paraje" | "subbarrio";
8221
+ qualityStatus: "verified" | "provisional" | "conflicted";
8222
+ /** @description The places that contain the selected one, outermost first. */
8223
+ ancestors: {
8224
+ placeId: string;
8225
+ name: string;
8226
+ kind: "country" | "region" | "national_district" | "province" | "municipality" | "municipal_district" | "urban_zone" | "section" | "barrio" | "paraje" | "subbarrio";
8227
+ qualityStatus: "verified" | "provisional" | "conflicted";
8228
+ }[];
8229
+ } | null;
8230
+ phone: string | null;
8231
+ email: string | null;
8232
+ defaultIncomeType: string | null;
8233
+ };
8234
+ paymentsProfile: {
8235
+ displayName: string;
8236
+ statementDescriptor: string;
8237
+ /**
8238
+ * MerchantPermanentAddress
8239
+ * @description The selling merchant's permanent business address.
8240
+ */
8241
+ permanentAddress: {
8242
+ line1: string;
8243
+ line2?: string;
8244
+ city: string;
8245
+ province?: string;
8246
+ postalCode?: string;
8247
+ countryCode: string;
8248
+ };
8249
+ /** Format: email */
8250
+ supportEmail: string;
8251
+ supportPhone: string;
8252
+ /**
8253
+ * MerchantDeliveryPolicy
8254
+ * @description Whether the merchant offers delivery and the terms a payer needs before paying.
8255
+ */
8256
+ deliveryPolicy: {
8257
+ /** @constant */
8258
+ kind: "not_offered";
8259
+ } | {
8260
+ /** @constant */
8261
+ kind: "merchant_managed";
8262
+ summary: string;
8263
+ /** Format: uri */
8264
+ url?: string;
8265
+ };
8266
+ } | null;
8267
+ /**
8268
+ * MerchantBusinessFiscalSetup
8269
+ * @description Timbro's view of electronic invoicing provisioning, or why it cannot be read.
8270
+ */
8271
+ fiscalSetup: {
8272
+ /** @constant */
8273
+ status: "unavailable";
8274
+ /** @constant */
8275
+ cause: "timbro_unreachable";
8276
+ } | {
8277
+ /** @constant */
8278
+ status: "available";
8279
+ /**
8280
+ * MerchantBusinessFiscalBinding
8281
+ * @description The Timbro Organization, Legal issuer, Source connection, and webhook.
8282
+ */
8283
+ binding: {
8284
+ /** @constant */
8285
+ status: "unbound";
8286
+ } | {
8287
+ /** @constant */
8288
+ status: "provisioning";
8289
+ } | {
8290
+ /** @constant */
8291
+ status: "bound";
8292
+ webhookSecret: "sealed" | "pending";
8293
+ } | {
8294
+ /** @constant */
8295
+ status: "failed";
8296
+ } | {
8297
+ /** @constant */
8298
+ status: "conflict";
8299
+ };
8300
+ /**
8301
+ * MerchantBusinessLegalIssuer
8302
+ * @description Whether Timbro holds every profile field the hosted Legal issuer requires.
8303
+ */
8304
+ legalIssuer: {
8305
+ /** @constant */
8306
+ status: "missing";
8307
+ } | {
8308
+ /** @constant */
8309
+ status: "incomplete";
8310
+ } | {
8311
+ /** @constant */
8312
+ status: "complete";
8313
+ };
8314
+ /**
8315
+ * MerchantBusinessSigningCertificate
8316
+ * @description The certificate Timbro's custody holds for the sandbox Legal issuer.
8317
+ */
8318
+ signingCertificate: {
8319
+ /** @constant */
8320
+ status: "missing";
8321
+ } | {
8322
+ /** @constant */
8323
+ status: "active";
8324
+ sha256: string;
8325
+ signerSerialNumber: string;
8326
+ /** Format: date-time */
8327
+ notBefore: string;
8328
+ /** Format: date-time */
8329
+ notAfter: string;
8330
+ };
8331
+ /**
8332
+ * MerchantBusinessTestFiscalDocument
8333
+ * @description The TesteCF document DGII must accept for this RNC and certificate.
8334
+ */
8335
+ testFiscalDocument: {
8336
+ /** @constant */
8337
+ status: "not_sent";
8338
+ } | {
8339
+ /** @constant */
8340
+ status: "processing";
8341
+ id: string;
8342
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
8343
+ } | {
8344
+ /** @constant */
8345
+ status: "accepted";
8346
+ id: string;
8347
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
8348
+ } | {
8349
+ /** @constant */
8350
+ status: "rejected";
8351
+ id: string;
8352
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
8353
+ reason: "timbro_rejected" | "authority_rejected";
8354
+ messages: string[];
8355
+ } | {
8356
+ /** @constant */
8357
+ status: "operator_required";
8358
+ id: string;
8359
+ documentType: "31" | "32" | "33" | "34" | "41" | "43" | "44" | "45" | "46" | "47";
8360
+ };
8361
+ };
8362
+ requirements: {
8363
+ code: "capabilities_required" | "commercial_name_required" | "address_required" | "location_required" | "phone_required" | "default_income_type_required" | "contact_email_verification_required" | "fiscal_details_rejected" | "taxpayer_registration_required" | "signing_certificate_required" | "signing_certificate_expiring" | "test_fiscal_document_rejected" | "test_fiscal_document_pending" | "test_fiscal_document_send_pending" | "fiscal_binding_pending" | "legal_issuer_sync_pending" | "fiscal_setup_unavailable" | "fiscal_binding_conflict" | "fiscal_issuer_rejected" | "test_fiscal_document_operator_required" | "payments_profile_required" | "merchant_account_required" | "merchant_account_disabled" | "active_credential_required" | "credential_material_invalid" | "test_live_mode_mismatch" | "callback_configuration_failed" | "callback_configuration_required" | "connectivity_check_failed" | "connectivity_check_required" | "provider_qualification_failed" | "provider_qualification_required" | "provider_adapter_unavailable";
8364
+ owner: "merchant" | "dgii" | "timbro" | "provider" | "operator";
8365
+ blocks: ("payments" | "electronic_invoicing")[];
8366
+ /** @description JSON Pointer into this representation the requirement names. */
8367
+ field?: string;
8368
+ errors?: {
8369
+ code: string;
8370
+ message: string;
8371
+ }[];
8372
+ }[];
8373
+ /** Format: uri */
8374
+ onboardingUrl: string;
8375
+ };
8376
+ };
8377
+ };
8378
+ /** @description The request could not be understood. */
8379
+ 400: {
8380
+ headers: {
8381
+ [name: string]: unknown;
8382
+ };
8383
+ content: {
8384
+ "application/problem+json": components["schemas"]["Problem"] & {
8385
+ /** @constant */
8386
+ status: 400;
8387
+ /**
8388
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8389
+ * @enum {string}
8390
+ */
8391
+ code: "parameter_invalid" | "parameter_missing" | "request_body_malformed";
8392
+ problems?: {
8393
+ /**
8394
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8395
+ * @enum {string}
8396
+ */
8397
+ code: "parameter_invalid" | "parameter_missing" | "request_body_malformed";
8398
+ }[];
8399
+ };
8400
+ };
8401
+ };
8402
+ /** @description The credential is missing, malformed, or no longer valid. */
8403
+ 401: {
8404
+ headers: {
8405
+ [name: string]: unknown;
8406
+ };
8407
+ content: {
8408
+ "application/problem+json": components["schemas"]["Problem"] & {
8409
+ /** @constant */
8410
+ status: 401;
8411
+ /**
8412
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8413
+ * @enum {string}
8414
+ */
8415
+ code: "api_key_missing" | "api_key_invalid" | "checkout_token_invalid" | "checkout_token_expired" | "merchant_session_missing";
8416
+ problems?: {
8417
+ /**
8418
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8419
+ * @enum {string}
8420
+ */
8421
+ code: "api_key_missing" | "api_key_invalid" | "checkout_token_invalid" | "checkout_token_expired" | "merchant_session_missing";
8422
+ }[];
8423
+ };
8424
+ };
8425
+ };
8426
+ /** @description The credential is valid but not permitted to perform this operation. */
8427
+ 403: {
8428
+ headers: {
8429
+ [name: string]: unknown;
8430
+ };
8431
+ content: {
8432
+ "application/problem+json": components["schemas"]["Problem"] & {
8433
+ /** @constant */
8434
+ status: 403;
8435
+ /**
8436
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8437
+ * @enum {string}
8438
+ */
8439
+ code: "operation_not_permitted";
8440
+ problems?: {
8441
+ /**
8442
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8443
+ * @enum {string}
8444
+ */
8445
+ code: "operation_not_permitted";
8446
+ }[];
8447
+ };
8448
+ };
8449
+ };
8450
+ /** @description No endpoint serves this method and path, or no resource with this identifier exists within the caller's scope. */
8451
+ 404: {
8452
+ headers: {
8453
+ [name: string]: unknown;
8454
+ };
8455
+ content: {
8456
+ "application/problem+json": components["schemas"]["Problem"] & {
8457
+ /** @constant */
8458
+ status: 404;
8459
+ /**
8460
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8461
+ * @enum {string}
8462
+ */
8463
+ code: "merchant_business_not_found";
8464
+ problems?: {
8465
+ /**
8466
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8467
+ * @enum {string}
8468
+ */
8469
+ code: "merchant_business_not_found";
8470
+ }[];
8471
+ };
8472
+ };
8473
+ };
8474
+ /** @description The request conflicts with the current state of the resource or with a previous request using the same Idempotency-Key. */
8475
+ 409: {
8476
+ headers: {
8477
+ [name: string]: unknown;
8478
+ };
8479
+ content: {
8480
+ "application/problem+json": components["schemas"]["Problem"] & {
8481
+ /** @constant */
8482
+ status: 409;
8483
+ /**
8484
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8485
+ * @enum {string}
8486
+ */
8487
+ code: "merchant_fiscal_setup_incomplete" | "merchant_test_fiscal_document_blocked";
8488
+ problems?: {
8489
+ /**
8490
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8491
+ * @enum {string}
8492
+ */
8493
+ code: "merchant_fiscal_setup_incomplete" | "merchant_test_fiscal_document_blocked";
8494
+ }[];
8495
+ };
8496
+ };
8497
+ };
8498
+ /** @description The request body is larger than this endpoint accepts. */
8499
+ 413: {
8500
+ headers: {
8501
+ [name: string]: unknown;
8502
+ };
8503
+ content: {
8504
+ "application/problem+json": components["schemas"]["Problem"] & {
8505
+ /** @constant */
8506
+ status: 413;
8507
+ /**
8508
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8509
+ * @enum {string}
8510
+ */
8511
+ code: "request_body_too_large";
8512
+ problems?: {
8513
+ /**
8514
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8515
+ * @enum {string}
8516
+ */
8517
+ code: "request_body_too_large";
8518
+ }[];
8519
+ };
8520
+ };
8521
+ };
8522
+ /** @description The request body carries a content type this endpoint does not accept. */
8523
+ 415: {
8524
+ headers: {
8525
+ [name: string]: unknown;
8526
+ };
8527
+ content: {
8528
+ "application/problem+json": components["schemas"]["Problem"] & {
8529
+ /** @constant */
8530
+ status: 415;
8531
+ /**
8532
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8533
+ * @enum {string}
8534
+ */
8535
+ code: "unsupported_media_type";
8536
+ problems?: {
8537
+ /**
8538
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8539
+ * @enum {string}
8540
+ */
8541
+ code: "unsupported_media_type";
8542
+ }[];
8543
+ };
8544
+ };
8545
+ };
8546
+ /** @description The gateway failed before reaching a payment outcome. Retry with the same Idempotency-Key. */
8547
+ 500: {
8548
+ headers: {
8549
+ [name: string]: unknown;
8550
+ };
8551
+ content: {
8552
+ "application/problem+json": components["schemas"]["Problem"] & {
8553
+ /** @constant */
8554
+ status: 500;
8555
+ /**
8556
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8557
+ * @enum {string}
8558
+ */
8559
+ code: "internal_error";
8560
+ problems?: {
8561
+ /**
8562
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8563
+ * @enum {string}
8564
+ */
8565
+ code: "internal_error";
8566
+ }[];
8567
+ };
8568
+ };
8569
+ };
8570
+ /** @description A required Gateway dependency is temporarily unavailable. The request is safe to retry. */
8571
+ 503: {
8572
+ headers: {
8573
+ [name: string]: unknown;
8574
+ };
8575
+ content: {
8576
+ "application/problem+json": components["schemas"]["Problem"] & {
8577
+ /** @constant */
8578
+ status: 503;
8579
+ /**
8580
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8581
+ * @enum {string}
8582
+ */
8583
+ code: "merchant_fiscal_setup_unavailable";
8584
+ problems?: {
8585
+ /**
8586
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8587
+ * @enum {string}
8588
+ */
8589
+ code: "merchant_fiscal_setup_unavailable";
8590
+ }[];
8591
+ };
8592
+ };
8593
+ };
8594
+ };
8595
+ };
8596
+ issueMerchantBusinessSandboxCredential: {
8597
+ parameters: {
8598
+ query?: never;
8599
+ header: {
8600
+ "idempotency-key": string;
8601
+ };
8602
+ path?: never;
8603
+ cookie?: never;
8604
+ };
8605
+ requestBody?: never;
8606
+ responses: {
8607
+ /** @description The only response that carries the TesteCF credential; issuing again retires it. */
8608
+ 201: {
8609
+ headers: {
8610
+ [name: string]: unknown;
8611
+ };
8612
+ content: {
8613
+ "application/json": {
8614
+ /** @constant */
8615
+ object: "merchant_business_sandbox_credential";
8616
+ credential: string;
8617
+ /** Format: uri */
8618
+ fiscalOrigin: string;
8619
+ };
8620
+ };
8621
+ };
8622
+ /** @description The request could not be understood. */
8623
+ 400: {
8624
+ headers: {
8625
+ [name: string]: unknown;
8626
+ };
8627
+ content: {
8628
+ "application/problem+json": components["schemas"]["Problem"] & {
8629
+ /** @constant */
8630
+ status: 400;
8631
+ /**
8632
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8633
+ * @enum {string}
8634
+ */
8635
+ code: "parameter_invalid" | "parameter_missing";
8636
+ problems?: {
8637
+ /**
8638
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8639
+ * @enum {string}
8640
+ */
8641
+ code: "parameter_invalid" | "parameter_missing";
8642
+ }[];
8643
+ };
8644
+ };
8645
+ };
8646
+ /** @description The credential is missing, malformed, or no longer valid. */
8647
+ 401: {
8648
+ headers: {
8649
+ [name: string]: unknown;
8650
+ };
8651
+ content: {
8652
+ "application/problem+json": components["schemas"]["Problem"] & {
8653
+ /** @constant */
8654
+ status: 401;
8655
+ /**
8656
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8657
+ * @enum {string}
8658
+ */
8659
+ code: "api_key_missing" | "api_key_invalid" | "checkout_token_invalid" | "checkout_token_expired" | "merchant_session_missing";
8660
+ problems?: {
8661
+ /**
8662
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8663
+ * @enum {string}
8664
+ */
8665
+ code: "api_key_missing" | "api_key_invalid" | "checkout_token_invalid" | "checkout_token_expired" | "merchant_session_missing";
8666
+ }[];
8667
+ };
8668
+ };
8669
+ };
8670
+ /** @description The credential is valid but not permitted to perform this operation. */
8671
+ 403: {
8672
+ headers: {
8673
+ [name: string]: unknown;
8674
+ };
8675
+ content: {
8676
+ "application/problem+json": components["schemas"]["Problem"] & {
8677
+ /** @constant */
8678
+ status: 403;
8679
+ /**
8680
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8681
+ * @enum {string}
8682
+ */
8683
+ code: "operation_not_permitted";
8684
+ problems?: {
8685
+ /**
8686
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8687
+ * @enum {string}
8688
+ */
8689
+ code: "operation_not_permitted";
8690
+ }[];
8691
+ };
8692
+ };
8693
+ };
8694
+ /** @description No endpoint serves this method and path, or no resource with this identifier exists within the caller's scope. */
8695
+ 404: {
8696
+ headers: {
8697
+ [name: string]: unknown;
8698
+ };
8699
+ content: {
8700
+ "application/problem+json": components["schemas"]["Problem"] & {
8701
+ /** @constant */
8702
+ status: 404;
8703
+ /**
8704
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8705
+ * @enum {string}
8706
+ */
8707
+ code: "merchant_business_not_found";
8708
+ problems?: {
8709
+ /**
8710
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8711
+ * @enum {string}
8712
+ */
8713
+ code: "merchant_business_not_found";
8714
+ }[];
8715
+ };
8716
+ };
8717
+ };
8718
+ /** @description The request conflicts with the current state of the resource or with a previous request using the same Idempotency-Key. */
8719
+ 409: {
8720
+ headers: {
8721
+ [name: string]: unknown;
8722
+ };
8723
+ content: {
8724
+ "application/problem+json": components["schemas"]["Problem"] & {
8725
+ /** @constant */
8726
+ status: 409;
8727
+ /**
8728
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8729
+ * @enum {string}
8730
+ */
8731
+ code: "idempotency_key_reused" | "idempotency_request_in_progress" | "idempotency_key_expired" | "merchant_fiscal_setup_incomplete";
8732
+ problems?: {
8733
+ /**
8734
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8735
+ * @enum {string}
8736
+ */
8737
+ code: "idempotency_key_reused" | "idempotency_request_in_progress" | "idempotency_key_expired" | "merchant_fiscal_setup_incomplete";
8738
+ }[];
8739
+ };
8740
+ };
8741
+ };
8742
+ /** @description The request is well-formed but cannot be carried out. */
8743
+ 422: {
8744
+ headers: {
8745
+ [name: string]: unknown;
8746
+ };
8747
+ content: {
8748
+ "application/problem+json": components["schemas"]["Problem"] & {
8749
+ /** @constant */
8750
+ status: 422;
8751
+ /**
8752
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8753
+ * @enum {string}
8754
+ */
8755
+ code: "credential_storage_unavailable";
8756
+ problems?: {
8757
+ /**
8758
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8759
+ * @enum {string}
8760
+ */
8761
+ code: "credential_storage_unavailable";
8762
+ }[];
8763
+ };
8764
+ };
8765
+ };
8766
+ /** @description The gateway failed before reaching a payment outcome. Retry with the same Idempotency-Key. */
8767
+ 500: {
8768
+ headers: {
8769
+ [name: string]: unknown;
8770
+ };
8771
+ content: {
8772
+ "application/problem+json": components["schemas"]["Problem"] & {
8773
+ /** @constant */
8774
+ status: 500;
8775
+ /**
8776
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8777
+ * @enum {string}
8778
+ */
8779
+ code: "internal_error";
8780
+ problems?: {
8781
+ /**
8782
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8783
+ * @enum {string}
8784
+ */
8785
+ code: "internal_error";
8786
+ }[];
8787
+ };
8788
+ };
8789
+ };
8790
+ /** @description A required Gateway dependency is temporarily unavailable. The request is safe to retry. */
8791
+ 503: {
8792
+ headers: {
8793
+ [name: string]: unknown;
8794
+ };
8795
+ content: {
8796
+ "application/problem+json": components["schemas"]["Problem"] & {
8797
+ /** @constant */
8798
+ status: 503;
8799
+ /**
8800
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8801
+ * @enum {string}
8802
+ */
8803
+ code: "merchant_fiscal_setup_unavailable";
8804
+ problems?: {
8805
+ /**
8806
+ * @description Stable machine-readable code. Branch on this, never on `title`.
8807
+ * @enum {string}
8808
+ */
8809
+ code: "merchant_fiscal_setup_unavailable";
8810
+ }[];
8811
+ };
8812
+ };
8813
+ };
5836
8814
  };
5837
8815
  };
5838
- responses: never;
5839
- parameters: never;
5840
- requestBodies: never;
5841
- headers: never;
5842
- pathItems: never;
5843
- }
5844
- export type $defs = Record<string, never>;
5845
- export interface operations {
5846
8816
  listPayments: {
5847
8817
  parameters: {
5848
8818
  query?: {
@@ -13289,7 +16259,7 @@ export interface operations {
13289
16259
  * @description Normalized classification of an unresolved refund.
13290
16260
  * @enum {string}
13291
16261
  */
13292
- code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable";
16262
+ code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable" | "refund_provider_credentials_rejected";
13293
16263
  message: string;
13294
16264
  };
13295
16265
  };
@@ -13391,7 +16361,7 @@ export interface operations {
13391
16361
  * @description Normalized classification of an unresolved refund.
13392
16362
  * @enum {string}
13393
16363
  */
13394
- code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable";
16364
+ code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable" | "refund_provider_credentials_rejected";
13395
16365
  message: string;
13396
16366
  };
13397
16367
  };
@@ -13682,7 +16652,7 @@ export interface operations {
13682
16652
  * @description Normalized classification of an unresolved refund.
13683
16653
  * @enum {string}
13684
16654
  */
13685
- code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable";
16655
+ code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable" | "refund_provider_credentials_rejected";
13686
16656
  message: string;
13687
16657
  };
13688
16658
  }[];
@@ -13932,7 +16902,7 @@ export interface operations {
13932
16902
  * @description Normalized classification of an unresolved refund.
13933
16903
  * @enum {string}
13934
16904
  */
13935
- code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable";
16905
+ code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable" | "refund_provider_credentials_rejected";
13936
16906
  message: string;
13937
16907
  };
13938
16908
  };
@@ -14034,7 +17004,7 @@ export interface operations {
14034
17004
  * @description Normalized classification of an unresolved refund.
14035
17005
  * @enum {string}
14036
17006
  */
14037
- code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable";
17007
+ code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable" | "refund_provider_credentials_rejected";
14038
17008
  message: string;
14039
17009
  };
14040
17010
  };
@@ -14382,7 +17352,7 @@ export interface operations {
14382
17352
  * @description Normalized classification of an unresolved refund.
14383
17353
  * @enum {string}
14384
17354
  */
14385
- code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable";
17355
+ code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable" | "refund_provider_credentials_rejected";
14386
17356
  message: string;
14387
17357
  };
14388
17358
  };
@@ -14690,7 +17660,7 @@ export interface operations {
14690
17660
  * @description Normalized classification of an unresolved refund.
14691
17661
  * @enum {string}
14692
17662
  */
14693
- code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable";
17663
+ code: "provider_refund_capability_not_qualified" | "refund_recovery_exhausted" | "refund_provider_reference_unavailable" | "refund_provider_credentials_rejected";
14694
17664
  message: string;
14695
17665
  };
14696
17666
  };
@@ -17423,7 +20393,7 @@ export interface operations {
17423
20393
  };
17424
20394
  requestBody?: never;
17425
20395
  responses: {
17426
- /** @description A newly issued secret key. Store it securely; it is never returned again. */
20396
+ /** @description The replacement for the calling secret key. Store it securely; it is never returned again. */
17427
20397
  201: {
17428
20398
  headers: {
17429
20399
  [name: string]: unknown;
@@ -17434,12 +20404,19 @@ export interface operations {
17434
20404
  id: string;
17435
20405
  /** @constant */
17436
20406
  object: "api_key";
20407
+ /** @constant */
20408
+ kind: "secret_key";
20409
+ mode: "test" | "live";
20410
+ name: string | null;
17437
20411
  /** @description The new secret key. Returned only when it is issued. */
17438
20412
  secret: string;
17439
20413
  /** Format: date-time */
17440
20414
  createdAt: string;
17441
- /** @description When every key this rotation retired stops authenticating, or null when none was retired. */
17442
- retiredKeysExpireAt: string | null;
20415
+ /**
20416
+ * Format: date-time
20417
+ * @description When the calling key this rotation replaced stops authenticating.
20418
+ */
20419
+ retiredKeyExpiresAt: string;
17443
20420
  };
17444
20421
  };
17445
20422
  };
@@ -17528,13 +20505,13 @@ export interface operations {
17528
20505
  * @description Stable machine-readable code. Branch on this, never on `title`.
17529
20506
  * @enum {string}
17530
20507
  */
17531
- code: "idempotency_key_reused" | "idempotency_request_in_progress" | "idempotency_key_expired";
20508
+ code: "idempotency_key_reused" | "idempotency_request_in_progress" | "idempotency_key_expired" | "api_key_retired";
17532
20509
  problems?: {
17533
20510
  /**
17534
20511
  * @description Stable machine-readable code. Branch on this, never on `title`.
17535
20512
  * @enum {string}
17536
20513
  */
17537
- code: "idempotency_key_reused" | "idempotency_request_in_progress" | "idempotency_key_expired";
20514
+ code: "idempotency_key_reused" | "idempotency_request_in_progress" | "idempotency_key_expired" | "api_key_retired";
17538
20515
  }[];
17539
20516
  };
17540
20517
  };