# CIT Sale request Endpoint: POST /cit-sale Version: 1.2 Security: X-Api-Key ## Query parameters: - `mode` (string) Enum: "SYNC", "ASYNC" ## Header parameters: - `X-Idempotency-Key` (string) The system supports the query deduplication mechanism. Any system-wide merchant's request after the first one with the same will return an error. For example, if you have retrying mechanism for payouts and you want to avoid double sending, you can put header with value payout_{your_payout_id} ## Request fields (application/json): - `payment_token_id` (string, required) Token from original payment - `payment_method` (string, required) - `merchant_payment_id` (string) field, might be used as a reference from the merchant side - `merchant_customer_id` (string, required) - `email` (string, required) - `amount` (string, required) can't be zero for SALE | MIT_SALE - `language` (string) only for SALE | AUTHORIZE | RECURRING - `country_code` (string, required) Country Code (ISO 3166-2) - `currency_code` (string, required) Currency code (ISO 4217) - `forced_3d` (boolean) If needs to initiate 3d secure from merchant side. - `success_url` (string) only for SALE | AUTHORIZE | RECURRING - `failure_url` (string) only for SALE | AUTHORIZE | RECURRING - `shop_name` (string) Shop name - `shop_url` (string) Shop URL with protocol HTTP or HTTPS - `products` (array, required) Expected at least 1 product - `payment_form_override` (object) [Customizing Payment Form Appearance.](/openapi/override-theme/customizing-payment-form-appearance) All these parameters will override existing configuration in Upgate back office if any - `payment_form_override.color` (string) [Override the color](/openapi/override-theme/customizing-payment-form-appearance) for the payment form. - `payment_form_override.theme_type` (string) [Override the theme](/openapi/override-theme/themes) for the payment form. Enum: "LIGHT", "DARK", "BROWSER" - `payment_form_override.theme_variables` (object) [Override CSS variables](/openapi/override-theme/variables) for the payment form. - `payment_form_override.theme_rules` (object) [Override CSS rules](/openapi/override-theme/rules) for the payment form. ## Response 400 fields (application/json): - `errors` (array) - `errors.error_code` (string, required) Enum: "INVALID_REQUEST_PARAMETER", "INVALID_REQUEST", "INTERNAL_ERROR", "TOO_MANY_REQUESTS", "NOT_FOUND" - `errors.error_message` (string, required) ## Response 401 fields (application/json): - `errors` (array) - `errors.error_code` (string, required) Enum: "INVALID_REQUEST_PARAMETER", "INVALID_REQUEST", "INTERNAL_ERROR", "TOO_MANY_REQUESTS", "NOT_FOUND" - `errors.error_message` (string, required) ## Response 429 fields (application/json): - `errors` (array) - `errors.error_code` (string, required) Enum: "INVALID_REQUEST_PARAMETER", "INVALID_REQUEST", "INTERNAL_ERROR", "TOO_MANY_REQUESTS", "NOT_FOUND" - `errors.error_message` (string, required) ## Response 500 fields (application/json): - `errors` (array) - `errors.error_code` (string, required) Enum: "INVALID_REQUEST_PARAMETER", "INVALID_REQUEST", "INTERNAL_ERROR", "TOO_MANY_REQUESTS", "NOT_FOUND" - `errors.error_message` (string, required)