fix(api): drop localized card checks and require pix for brazil (#3203)

This commit is contained in:
Hampus
2026-10-04 18:03:14 +02:00
committed by GitHub
parent 5ca458dada
commit 12a407aca8
51 changed files with 1378 additions and 6651 deletions
-189
View File
@@ -13398,115 +13398,6 @@
}
}
},
"/stripe/checkout/subscription/preapproval": {
"post": {
"operationId": "create_localized_card_preapproval_session",
"summary": "Create localized card preapproval session",
"tags": ["Billing"],
"responses": {
"200": {
"description": "Success",
"content": {"application/json": {"schema": {"$ref": "#/components/schemas/UrlResponse"}}}
},
"400": {
"description": "Bad Request - The request was malformed or contained invalid data",
"content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}
},
"401": {
"description": "Unauthorized - Authentication is required or the token is invalid",
"content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}
},
"403": {
"description": "Forbidden - You do not have permission to perform this action",
"content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}
},
"429": {
"description": "Too Many Requests - You are being rate limited",
"content": {"application/json": {"schema": {"$ref": "#/components/schemas/ThrottledError"}}},
"headers": {
"Retry-After": {
"description": "Number of seconds to wait before retrying (only on 429)",
"schema": {"type": "integer"}
},
"X-RateLimit-Limit": {
"description": "The number of requests that can be made in the current window",
"schema": {"type": "integer"}
},
"X-RateLimit-Remaining": {
"description": "The number of remaining requests that can be made",
"schema": {"type": "integer"}
},
"X-RateLimit-Reset": {
"description": "Unix timestamp when the rate limit resets",
"schema": {"type": "integer"}
}
}
},
"500": {
"description": "Internal Server Error - An unexpected error occurred",
"content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}
}
},
"description": "Initiates a Stripe Checkout setup-mode session to preapprove a local card before continuing to paid localized checkout.",
"security": [{"sessionToken": []}],
"requestBody": {
"required": true,
"content": {"application/json": {"schema": {"$ref": "#/components/schemas/CreateCheckoutSessionRequest"}}}
}
}
},
"/stripe/checkout/subscription/preapproval/continue": {
"post": {
"operationId": "continue_localized_card_preapproval_session",
"summary": "Continue localized card preapproval session",
"tags": ["Billing"],
"responses": {
"200": {
"description": "Success",
"content": {
"application/json": {"schema": {"$ref": "#/components/schemas/LocalizedCardPreapprovalContinueResponse"}}
}
},
"400": {
"description": "Bad Request - The request was malformed or contained invalid data",
"content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}
},
"429": {
"description": "Too Many Requests - You are being rate limited",
"content": {"application/json": {"schema": {"$ref": "#/components/schemas/ThrottledError"}}},
"headers": {
"Retry-After": {
"description": "Number of seconds to wait before retrying (only on 429)",
"schema": {"type": "integer"}
},
"X-RateLimit-Limit": {
"description": "The number of requests that can be made in the current window",
"schema": {"type": "integer"}
},
"X-RateLimit-Remaining": {
"description": "The number of remaining requests that can be made",
"schema": {"type": "integer"}
},
"X-RateLimit-Reset": {
"description": "Unix timestamp when the rate limit resets",
"schema": {"type": "integer"}
}
}
},
"500": {
"description": "Internal Server Error - An unexpected error occurred",
"content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}
}
},
"description": "Checks the status of a localized card preapproval flow and returns the paid Stripe Checkout URL when it is ready.",
"requestBody": {
"required": true,
"content": {
"application/json": {"schema": {"$ref": "#/components/schemas/LocalizedCardPreapprovalContinueRequest"}}
}
}
}
},
"/stripe/webhook": {
"post": {
"operationId": "process_stripe_webhook",
@@ -25771,21 +25662,6 @@
"required": ["received"],
"additionalProperties": false
},
"LocalizedCardPreapprovalContinueRequest": {
"type": "object",
"properties": {
"token": {"description": "Continuation token for the localized card preapproval flow", "type": "string"}
},
"required": ["token"]
},
"LocalizedCardPreapprovalContinueResponse": {
"oneOf": [
{"$ref": "#/components/schemas/PendingLocalizedCardPreapprovalContinueResponse"},
{"$ref": "#/components/schemas/ReadyLocalizedCardPreapprovalContinueResponse"},
{"$ref": "#/components/schemas/RejectedLocalizedCardPreapprovalContinueResponse"},
{"$ref": "#/components/schemas/ExpiredLocalizedCardPreapprovalContinueResponse"}
]
},
"CreateCheckoutSessionRequest": {
"type": "object",
"properties": {
@@ -35251,71 +35127,6 @@
"type": "string"
},
"CheckoutPaymentMethodEnum": {"type": "string", "enum": ["card", "pix", "upi"]},
"ExpiredLocalizedCardPreapprovalContinueResponse": {
"type": "object",
"properties": {
"status": {
"type": "string",
"const": "expired",
"description": "The preapproval token has expired or is unknown"
}
},
"required": ["status"],
"additionalProperties": false
},
"RejectedLocalizedCardPreapprovalContinueResponse": {
"type": "object",
"properties": {
"status": {
"type": "string",
"const": "rejected",
"description": "The preapproval failed and the paid checkout should not continue"
},
"reason": {
"type": "string",
"enum": [
"country_mismatch",
"missing_customer",
"missing_payment_method",
"missing_setup_intent",
"payment_method_not_card",
"unknown"
],
"description": "The reason the preapproval was rejected"
},
"actual_country": {
"description": "The detected card issuing country when available",
"anyOf": [{"type": "string", "minLength": 2, "maxLength": 2}, {"type": "null"}]
}
},
"required": ["status", "reason"],
"additionalProperties": false
},
"ReadyLocalizedCardPreapprovalContinueResponse": {
"type": "object",
"properties": {
"status": {
"type": "string",
"const": "ready",
"description": "The preapproval succeeded and the paid checkout URL is ready"
},
"url": {"type": "string", "description": "The URL to redirect to"}
},
"required": ["status", "url"],
"additionalProperties": false
},
"PendingLocalizedCardPreapprovalContinueResponse": {
"type": "object",
"properties": {
"status": {
"type": "string",
"const": "pending",
"description": "The preapproval result is still being processed"
}
},
"required": ["status"],
"additionalProperties": false
},
"GifCategoryTagResponse": {
"type": "object",
"properties": {