{"openapi":"3.0.0","info":{"description":"Payment processing","version":[{"name":"v1","value":"v1"}]},"servers":[{"description":"Payment processing","url":"https://api.apirails.com/stripe"}],"paths":{"/v1/coupons":{"post":{"tags":["Coupons"],"parameters":[],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/coupons/create","api_endpoint":"https://api.stripe.com/v1/coupons"},"summary":"Create a coupon","description":"Create a coupon","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"amount_off":{"type":"number","description":"A positive integer representing the amount to subtract from an invoice total (required if percent_off is not passed)"},"applies_to":{"type":"object","description":"A hash containing directions for what this Coupon will apply discounts to.","properties":{"products":{"type":"array","description":"An array of Product IDs that this Coupon will apply to."}}},"currency":{"type":"string","description":"Three-letter ISO code for the currency of the amount_off parameter (required if amount_off is passed)"},"currency_options":{"type":"object","description":"Coupons defined in each available currency option (only supported if amount_off is passed). Each key must be a three-letter ISO currency code and a supported currency.","properties":{"amount_off":{"type":"number","description":"A positive integer representing the amount to subtract from an invoice total.","required":true}}},"duration":{"type":"enum","description":"Specifies how long the discount will be in effect if used on a subscription","enum":["once","repeating","forever"]},"duration_in_months":{"type":"number","description":"Required only if duration is repeating in which case it must be a positive integer that specifies the number of months the discount will be in effect."},"id":{"type":"string","description":"Unique string of your choice that will be used to identify this coupon when applying it to a customer. If you don’t want to specify a particular code; you can leave the ID blank and we’ll generate a random code for you."},"max_redemptions":{"type":"number","description":"A positive integer specifying the number of times the coupon can be redeemed before it’s no longer valid. For example; you might have a 50% off coupon that the first 20 readers of your blog can use."},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"name":{"type":"string","description":"Name of the coupon displayed to customers on for instance invoices; or receipts. By default the id is shown if name is not set."},"percent_off":{"type":"number","description":"A positive float larger than 0; and smaller or equal to 100; that represents the discount the coupon will apply (required if amount_off is not passed)."},"redeem_by":{"type":"number","description":"Unix timestamp specifying the last time at which the coupon can be redeemed. After the redeem_by date; the coupon can no longer be applied to new customers."}}},"example":{"amount_off":"","applies_to":{},"currency":"","currency_options":{},"duration":"","duration_in_months":"","id":"","max_redemptions":"","metadata":{},"name":"","percent_off":"","redeem_by":""}}}}},"get":{"tags":["Coupons"],"parameters":[{"name":"created","in":"query","description":"A filter on the list based on the object created field. The value can be a string with an integer Unix timestamp.","schema":{"type":"object","example":""}},{"name":"ending_before","in":"query","description":"A cursor for use in pagination. ending_before is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with obj_bar, your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list.","schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"A limit on the number of objects to be returned. Limit can range between 1 and 100; and the default is 10.","schema":{"type":"number","example":""}},{"name":"starting_after","in":"query","description":"A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; ending with obj_foo; your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list.","schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/coupons/list","api_endpoint":"https://api.stripe.com/v1/coupons"},"summary":"List all coupons","description":"List all coupons","security":[{"bearerAuth":[]}]}},"/v1/coupons/:id":{"get":{"tags":["Coupons"],"parameters":[{"name":"id","in":"path","description":"Coupons ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/coupons/retrieve","api_endpoint":"https://api.stripe.com/v1/coupons/:id"},"summary":"Retrieve a coupon","description":"Retrieve a coupon","security":[{"bearerAuth":[]}]},"post":{"tags":["Coupons"],"parameters":[{"name":"id","in":"path","description":"Coupons ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/coupons/update","api_endpoint":"https://api.stripe.com/v1/coupons/:id"},"summary":"Update a coupon","description":"Update a coupon","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"currency_options":{"type":"object","description":"Coupons defined in each available currency option (only supported if amount_off is passed). Each key must be a three-letter ISO currency code and a supported currency.","properties":{"amount_off":{"type":"number","description":"A positive integer representing the amount to subtract from an invoice total.","required":true}}},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"name":{"type":"string","description":"Name of the coupon displayed to customers on; for instance invoices; or receipts. By default the id is shown if name is not set."}}},"example":{"currency_options":{},"metadata":{},"name":""}}}}},"delete":{"tags":["Coupons"],"parameters":[{"name":"id","in":"path","description":"Coupons ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/coupons/delete","api_endpoint":"https://api.stripe.com/v1/coupons/:id"},"summary":"Delete a coupon","description":"Delete a coupon","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v1/customers/:id/discount":{"delete":{"tags":["Discounts"],"parameters":[{"name":"id","in":"path","description":"Customer code ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/discounts/delete","api_endpoint":"https://api.stripe.com/v1/customers/:id/discount"},"summary":"Delete a customer discount","description":"Delete a customer discount","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v1/subscriptions/:id/discount":{"delete":{"tags":["Discounts"],"parameters":[{"name":"id","in":"path","description":"Subscription code ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/discounts/subscription_delete","api_endpoint":"https://api.stripe.com/v1/subscriptions/:id/discount"},"summary":"Delete a subscription discount","description":"Delete a subscription discount","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v1/prices":{"post":{"tags":["Prices"],"parameters":[],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/prices/create","api_endpoint":"https://api.stripe.com/v1/prices"},"summary":"Create a price","description":"Create a price","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"active":{"type":"boolean","description":"Whether the price can be used for new purchases","enum":[true,false]},"billing_scheme":{"type":"string","description":"Describes how to compute the price per period. Either per_unit or tiered. per_unit indicates that the fixed amount (specified in unit_amount or unit_amount_decimal) will be charged per unit in quantity (for prices with usage_type=licensed) or per unit of total usage (for prices with usage_type=metered). tiered indicates that the unit pricing will be computed using a tiering strategy as defined using the tiers and tiers_mode attributes."},"currency":{"type":"string","description":"Three-letter ISO currency code; in lowercase. Must be a supported currency.","required":true},"currency_options":{"type":"object","description":"Prices defined in each available currency option. Each key must be a three-letter ISO currency code and a supported currency. For example; to define your price in eur; pass the fields below in the eur key of currency_options.","properties":{"unit_amount":{"type":"number","description":"A positive integer in the smallest currency unit (or 0 for a free price) representing how much to charge."},"unit_amount_decimal":{"type":"string","description":"Same as unit_amount but accepts a decimal value in the smallest currency unit with at most 12 decimal places."},"tax_behavior":{"type":"enum","description":"Specifies whether the price is considered inclusive of taxes or exclusive of taxes.","enum":["exclusive","inclusive","unspecified"]},"custom_unit_amount":{"type":"object","description":"Provides configuration for the amount to be adjusted by the customer."},"tiers":{"type":"array","description":"Each element represents a pricing tier. Requires billing_scheme to be set to tiered."}}},"custom_unit_amount":{"type":"object","description":"When set; provides configuration for the amount to be adjusted by the customer during Checkout Sessions and Payment Links.","properties":{"enabled":{"type":"boolean","description":"Pass in true to enable custom_unit_amount, otherwise omit.","required":true},"maximum":{"type":"number","description":"The maximum unit amount the customer can specify for this item."},"minimum":{"type":"number","description":"The minimum unit amount the customer can specify for this item. Must be at least the minimum charge amount."},"preset":{"type":"number","description":"The starting unit amount which can be updated by the customer."}}},"lookup_key":{"type":"string","description":"A lookup key used to retrieve prices dynamically from a static string. This may be up to 200 characters."},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"nickname":{"type":"string","description":"A brief description of the price; hidden from customers."},"product":{"type":"string","description":"The ID of the product that this price will belong to.","required":true},"product_data":{"type":"string","description":"These fields can be used to create a new product that this price will belong to.","required":true},"recurring":{"type":"object","description":"The recurring components of a price such as interval and usage_type.","properties":{"interval":{"type":"enum","description":"Specifies billing frequency. One of day, week, month, or year.","required":true,"enum":["day","week","month","year"]},"interval_count":{"type":"number","description":"The number of intervals between subscription billings. Default is 1."},"usage_type":{"type":"enum","description":"Configures how the quantity per period should be determined. One of metered or licensed.","enum":["metered","licensed"]},"aggregate_usage":{"type":"enum","description":"Specifies a usage aggregation strategy for metered billing. One of last_during_period, last_ever, max, or sum.","enum":["last_during_period","last_ever","max","sum"]}}},"tax_behavioroptional":{"type":"string","description":"Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of inclusive; exclusive; or unspecified. Once specified as either inclusive or exclusive; it cannot be changed."},"tiers":{"type":"number","description":"Each element represents a pricing tier. This parameter requires billing_scheme to be set to tiered. See also the documentation for billing_scheme.","required":true},"tiers_mode":{"type":"string","description":"Defines if the tiering price should be graduated or volume based. In volume-based tiering; the maximum quantity within a period determines the per unit price; in graduated tiering pricing can successively change as the quantity grows.","required":true},"transfer_lookup_key":{"type":"boolean","description":"If set to true will atomically remove the lookup key from the existing price and assign it to this price.","enum":[true,false]},"transform_quantity":{"type":"object","description":"Apply a transformation to the reported usage or set quantity before computing the billed price. Cannot be combined with tiers.","properties":{"divide_by":{"type":"number","description":"Divide usage by this number.","required":true},"round":{"type":"enum","description":"Rounding behavior. One of up, down, or half_up.","required":true,"enum":["up","down","half_up"]}}},"unit_amount":{"type":"number","description":"A positive integer in cents (or 0 for a free price) representing how much to charge. One of unit_amount or custom_unit_amount is required; unless billing_scheme=tiered.","required":true},"unit_amount_decimal":{"type":"number","description":"Same as unit_amount; but accepts a decimal value in cents with at most 12 decimal places. Only one of unit_amount and unit_amount_decimal can be set."}}},"example":{"active":"","billing_scheme":"","currency":"","currency_options":{},"custom_unit_amount":{},"lookup_key":"","metadata":{},"nickname":"","product":"","product_data":"","recurring":{},"tax_behavioroptional":"","tiers":"","tiers_mode":"","transfer_lookup_key":"","transform_quantity":{},"unit_amount":"","unit_amount_decimal":""}}}}},"get":{"tags":["Prices"],"parameters":[{"name":"type","in":"query","description":"Only return prices of type recurring or one_time.","schema":{"type":"number","example":""}},{"name":"active","in":"query","description":"Only return prices that are active or inactive (e.g. pass false to list all inactive prices).","schema":{"type":"boolean","example":"","items":{"type":"string","enum":[true,false]}}},{"name":"created","in":"query","description":"A filter on the list based on the object created field. The value can be a string with an integer Unix timestamp.","schema":{"type":"string","example":""}},{"name":"currency","in":"query","description":"Only return prices for the given currency.","schema":{"type":"string","example":""}},{"name":"ending_before","in":"query","description":"A cursor for use in pagination. ending_before is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; starting with obj_bar; your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list.","schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"A limit on the number of objects to be returned. Limit can range between 1 and 100; and the default is 10.","schema":{"type":"number","example":""}},{"name":"lookup_keys","in":"query","description":"Only return the price with these lookup_keys; if any exist.","schema":{"type":"number","example":""}},{"name":"product","in":"query","description":"Only return prices for the given product.","schema":{"type":"number","example":""}},{"name":"recurring","in":"query","description":"Only return prices with these recurring fields.","schema":{"type":"number","example":""}},{"name":"starting_after","in":"query","description":"A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; ending with obj_foo; your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list.","schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/prices/list","api_endpoint":"https://api.stripe.com/v1/prices"},"summary":"List all prices","description":"List all prices","security":[{"bearerAuth":[]}]}},"/v1/prices/:id":{"get":{"tags":["Prices"],"parameters":[{"name":"id","in":"path","description":"Prices ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/prices/retrieve","api_endpoint":"https://api.stripe.com/v1/prices/:id"},"summary":"Retrieve a price","description":"Retrieve a price","security":[{"bearerAuth":[]}]},"post":{"tags":["Prices"],"parameters":[{"name":"id","in":"path","description":"Prices ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/prices/update","api_endpoint":"https://api.stripe.com/v1/prices/:id"},"summary":"Update a price","description":"Update a price","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"active":{"type":"boolean","description":"Whether the price can be used for new purchases","enum":[true,false]},"currency_options":{"type":"string","description":"Prices defined in each available currency option. Each key must be a three-letter ISO currency code and a supported currency. For example; to define your price in eur; pass the fields below in the eur key of currency_options."},"lookup_key":{"type":"string","description":"A lookup key used to retrieve prices dynamically from a static string. This may be up to 200 characters."},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"nickname":{"type":"string","description":"A brief description of the price; hidden from customers."},"tax_behavior":{"type":"string","description":"Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of inclusive exclusive or unspecified. Once specified as either inclusive or exclusive; it cannot be changed."},"transfer_lookup_key":{"type":"boolean","description":"If set to true; will atomically remove the lookup key from the existing price; and assign it to this price.","enum":[true,false]}}},"example":{"active":"","currency_options":"","lookup_key":"","metadata":{},"nickname":"","tax_behavior":"","transfer_lookup_key":""}}}}}},"/v1/prices/search":{"get":{"tags":["Prices"],"parameters":[{"name":"limit","in":"query","description":"A limit on the number of objects to be returned. Limit can range between 1 and 100; and the default is 10.","schema":{"type":"number","example":""}},{"name":"page","in":"query","description":"A cursor for pagination across multiple pages of results. Don’t include this parameter on the first call. Use the next_page value returned in a previous response to request subsequent results.","schema":{"type":"string","example":""}},{"name":"query","in":"query","description":"The search query string. See search query language and the list of supported query fields for prices.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/prices/search","api_endpoint":"https://api.stripe.com/v1/prices/search"},"summary":"Search prices","description":"Search prices","security":[{"bearerAuth":[]}]}},"/v1/products":{"post":{"tags":["Product"],"parameters":[],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/products/create","api_endpoint":"https://api.stripe.com/v1/products"},"summary":"Create a product","description":"Create a product","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"active":{"type":"boolean","description":"Whether the product is currently available for purchase","enum":[true,false]},"description":{"type":"string","description":"The product’s description; meant to be displayable to the customer. Use this field to optionally store a long form explanation of the product being sold for your own rendering purposes."},"id":{"type":"string","description":"An identifier will be randomly generated by Stripe. You can optionally override this ID but the ID must be unique across all products in your Stripe account."},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"name":{"type":"string","description":"The product’s name; meant to be displayable to the customer."}}},"example":{"active":"","description":"","id":"","metadata":{},"name":""}}}}},"get":{"tags":["Product"],"parameters":[{"name":"active","in":"query","description":"Only return products that are active or inactive (e.g. pass false to list all inactive products).","schema":{"type":"boolean","example":"","items":{"type":"string","enum":[true,false]}}},{"name":"created","in":"query","description":"A filter on the list based on the object created field. The value can be a string with an integer Unix timestamp.","schema":{"type":"string","example":""}},{"name":"ending_before","in":"query","description":"A cursor for use in pagination. ending_before is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; starting with obj_bar; your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list.","schema":{"type":"string","example":""}},{"name":"ids","in":"query","description":"Only return products with the given IDs. Cannot be used with starting_after or ending_before.","schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"A limit on the number of objects to be returned. Limit can range between 1 and 100; and the default is 10.","schema":{"type":"number","example":""}},{"name":"shippable","in":"query","description":"Only return products that can be shipped (i.e. physical and not digital products).","schema":{"type":"string","example":""}},{"name":"starting_after","in":"query","description":"A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; ending with obj_foo; your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list.","schema":{"type":"string","example":""}},{"name":"url","in":"query","description":"Only return products with the given url.","schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/products/list","api_endpoint":"https://api.stripe.com/v1/products"},"summary":"List all products","description":"List all products","security":[{"bearerAuth":[]}]}},"/v1/products/:id":{"get":{"tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Products ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/products/retrieve","api_endpoint":"https://api.stripe.com/v1/products/:id"},"summary":"Retrieve a product","description":"Retrieve a product","security":[{"bearerAuth":[]}]},"post":{"tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Products ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/products/update","api_endpoint":"https://api.stripe.com/v1/products/:id"},"summary":"Update a product","description":"Update a product","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"active":{"type":"string","description":"Whether the product is available for purchase."},"default_price":{"type":"string","description":"The ID of the Price object that is the default price for this product."},"description":{"type":"string","description":"The product’s description; meant to be displayable to the customer. Use this field to optionally store a long form explanation of the product being sold for your own rendering purposes."},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"name":{"type":"string","description":"The product’s name; meant to be displayable to the customer."}}},"example":{"active":"","default_price":"","description":"","metadata":{},"name":""}}}}},"delete":{"tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Products ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/products/delete","api_endpoint":"https://api.stripe.com/v1/products/:id"},"summary":"Delete a product","description":"Delete a product","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v1/products/search":{"get":{"tags":["Product"],"parameters":[{"name":"limit","in":"query","description":"A limit on the number of objects to be returned. Limit can range between 1 and 100; and the default is 10.","schema":{"type":"number","example":""}},{"name":"page","in":"query","description":"A cursor for pagination across multiple pages of results. Don’t include this parameter on the first call. Use the next_page value returned in a previous response to request subsequent results.","schema":{"type":"string","example":""}},{"name":"query","in":"query","description":"The search query string. See search query language and the list of supported query fields for products.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/products/search","api_endpoint":"https://api.stripe.com/v1/products/search"},"summary":"Search products","description":"Search products","security":[{"bearerAuth":[]}]}},"/v1/promotion_codes":{"post":{"tags":["Promotion Code"],"parameters":[],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/promotion_codes/create","api_endpoint":"https://api.stripe.com/v1/promotion_codes"},"summary":"Create a promotion code","description":"Create a promotion code","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"active":{"type":"boolean","description":"Whether the promotion code is currently active.","enum":[true,false]},"code":{"type":"string","description":"The customer-facing code. Regardless of case; this code must be unique across all active promotion codes for a specific customer. If left blank; we will generate one automatically."},"coupon":{"type":"string","description":"The coupon for this promotion code.","required":true},"customer":{"type":"string","description":"The customer that this promotion code can be used by. If not set; the promotion code can be used by all customers."},"expires_at":{"type":"number","description":"The timestamp at which this promotion code will expire. If the coupon has specified a redeems_by; then this value cannot be after the coupon’s redeems_by."},"max_redemptions":{"type":"number","description":"A positive integer specifying the number of times the promotion code can be redeemed. If the coupon has specified a max_redemptions; then this value cannot be greater than the coupon’s max_redemptions."},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"restrictions":{"type":"object","description":"Settings that restrict the redemption of the promotion code.","properties":{"first_time_transaction":{"type":"boolean","description":"Whether the Promotion Code should only be redeemed for Customers without any successful payments or invoices."},"minimum_amount":{"type":"number","description":"Minimum amount required to redeem this Promotion Code (e.g., a purchase must be $100 or more to work)."},"minimum_amount_currency":{"type":"string","description":"Three-letter ISO code for minimum_amount."},"currency_options":{"type":"object","description":"Promotion codes defined in each available currency option."}}}}},"example":{"active":"","code":"","coupon":"","customer":"","expires_at":"","max_redemptions":"","metadata":{},"restrictions":{}}}}}},"get":{"tags":["Promotion Code"],"parameters":[],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/promotion_codes/list","api_endpoint":"https://api.stripe.com/v1/promotion_codes"},"summary":"List all promotion codes","description":"List all promotion codes","security":[{"bearerAuth":[]}]}},"/v1/promotion_codes/:id":{"post":{"tags":["Promotion Code"],"parameters":[{"name":"id","in":"path","description":"Promotion code ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/promotion_codes/update","api_endpoint":"https://api.stripe.com/v1/promotion_codes/:id"},"summary":"Update a promotion code","description":"Update a promotion code","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"active":{"type":"boolean","description":"Whether the promotion code is currently active. A promotion code can only be reactivated when the coupon is still valid and the promotion code is otherwise redeemable.","enum":[true,false]},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"restrictions":{"type":"object","description":"Settings that restrict the redemption of the promotion code.","properties":{"first_time_transaction":{"type":"boolean","description":"Whether the Promotion Code should only be redeemed for Customers without any successful payments or invoices."},"minimum_amount":{"type":"number","description":"Minimum amount required to redeem this Promotion Code (e.g., a purchase must be $100 or more to work)."},"minimum_amount_currency":{"type":"string","description":"Three-letter ISO code for minimum_amount."},"currency_options":{"type":"object","description":"Promotion codes defined in each available currency option."}}}}},"example":{"active":"","metadata":{},"restrictions":{}}}}}},"get":{"tags":["Promotion Code"],"parameters":[{"name":"id","in":"path","description":"Promotion code ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/promotion_codes/retrieve","api_endpoint":"https://api.stripe.com/v1/promotion_codes/:id"},"summary":"Retrieve a promotion code","description":"Retrieve a promotion code","security":[{"bearerAuth":[]}]}},"/v1/sources":{"post":{"tags":["Source"],"parameters":[],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/sources/create","api_endpoint":"https://api.stripe.com/v1/sources"},"summary":"Create a source","description":"Create a source","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"type":{"type":"string","description":"The type of the source to create. Required unless customer and original_source are specified (see the Cloning card Sources guide)","required":true},"amount":{"type":"number","description":"Amount associated with the source. This is the amount for which the source will be chargeable once ready. Required for single_use sources. Not supported for receiver type sources, where charge amount may not be specified until funds land."},"currency":{"type":"enum","description":"Three-letter ISO code for the currency associated with the source. This is the currency for which the source will be chargeable once ready."},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"owner":{"type":"object","description":"Information about the owner of the payment instrument that may be used or required by particular source types.","properties":{"owner.address":{"type":"object","description":"Owner’s address."},"owner.email":{"type":"string","description":"Owner’s email address."},"owner.name":{"type":"string","description":"Owner’s full name."},"owner.phone":{"type":"string","description":"Owner’s phone number."}}},"redirect":{"type":"object","description":"Parameters required for the redirect flow. Required if the source is authenticated by a redirect (flow is redirect).","properties":{"redirect.return_url":{"type":"string","description":"The URL you provide to redirect the customer back to you after they authenticated their payment. It can use your application URI scheme in the context of a mobile application."}}},"statement_descriptor":{"type":"string","description":"An arbitrary string to be displayed on your customer’s statement. As an example, if your website is RunClub and the item you’re charging for is a race ticket, you may want to specify a statement_descriptor of RunClub 5K race ticket. While many payment types will display this information, some may not display it at all."}}},"example":{"type":"","amount":"","currency":"","metadata":{},"owner":{},"redirect":{},"statement_descriptor":""}}}}}},"/v1/sources/:id":{"get":{"tags":["Source"],"parameters":[{"name":"id","in":"path","description":"Sources ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/sources/retrieve","api_endpoint":"https://api.stripe.com/v1/sources/:id"},"summary":"Retrieve a source","description":"Retrieve a source","security":[{"bearerAuth":[]}]},"post":{"tags":["Source"],"parameters":[{"name":"id","in":"path","description":"Sources ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/sources/update","api_endpoint":"https://api.stripe.com/v1/sources/:id"},"summary":"Update a source","description":"Update a source","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v1/charges":{"post":{"tags":["Charges"],"parameters":[],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/charges/create","api_endpoint":"https://api.stripe.com/v1/charges"},"summary":"Create a charge","description":"Create a charge","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"amount":{"type":"number","description":"Amount intended to be collected by this payment. A positive integer representing how much to charge in the smallest currency unit (e.g. 100 cents to charge $1.00 or 100 to charge ¥100 a zero-decimal currency). The minimum amount is $0.50 US or equivalent in charge currency. The amount value supports up to eight digits (e.g. a value of 99999999 for a USD charge of $999999.99)","required":true},"currency":{"type":"string","description":"Three-letter ISO currency code; in lowercase. Must be a supported currency\ncustomer","required":true,"enum":["string"]},"description":{"type":"string","description":"An arbitrary string which you can attach to a Charge object. It is displayed when in the web interface alongside the charge. Note that if you use Stripe to send automatic email receipts to your customers; your receipt emails will include the description of the charge(s) that they are describing"},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"receipt_email":{"type":"string","description":"The email address to which this charge’s receipt will be sent. The receipt will not be sent until the charge is paid; and no receipts will be sent for test mode charges. If this charge is for a Customer; the email address specified here will override the customer’s email address. If receipt_email is specified for a charge in live mode; a receipt will be sent regardless of your email settings"},"shipping":{"type":"string","description":"Shipping information for the charge. Helps prevent fraud on charges for physical goods"},"source":{"type":"string","description":"A payment source to be charged. This can be the ID of a card (i.e. credit or debit card); a bank account; a source; a token; or a connected account. For certain sources—namely; cards; bank accounts; and attached sources—you must also pass the ID of the associated customer"},"statement_descriptor":{"type":"string","description":"For card charges use statement_descriptor_suffix instead. Otherwise; you can use this value as the complete description of a charge on your customers’ statements. Must contain at least one letter; maximum 22 characters'"},"statement_descriptor_suffix":{"type":"string","description":"Provides information about the charge that customers see on their statements. Concatenated with the prefix (shortened descriptor) or statement descriptor that’s set on the account to form the complete statement descriptor. Maximum 22 characters for the concatenated descriptor."}}},"example":{"amount":"","currency":"","description":"","metadata":{},"receipt_email":"","shipping":"","source":"","statement_descriptor":"","statement_descriptor_suffix":""}}}}},"get":{"tags":["Charges"],"parameters":[{"name":"created","in":"query","description":"A filter on the list based on the object created field.","schema":{"type":"string","example":""}},{"name":"customer","in":"query","description":"Only return charges for the customer specified by this customer ID.","schema":{"type":"string","example":""}},{"name":"ending_before","in":"query","description":"A cursor for use in pagination. ending_before is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; starting with obj_bar; your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list.","schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"A limit on the number of objects to be returned. Limit can range between 1 and 100; and the default is 10.","schema":{"type":"number","example":""}},{"name":"payment_intent","in":"query","description":"Only return charges that were created by the PaymentIntent specified by this PaymentIntent ID.","schema":{"type":"string","example":""}},{"name":"starting_after","in":"query","description":"A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list.","schema":{"type":"string","example":""}},{"name":"transfer_group","in":"query","description":"Only return charges for this transfer group.","schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/charges#list_charges","api_endpoint":"https://api.stripe.com/v1/charges"},"summary":"List all charges","description":"List all charges","security":[{"bearerAuth":[]}]}},"/v1/charges/:id":{"get":{"tags":["Charges"],"parameters":[{"name":"id","in":"path","description":"Charges ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/charges/retrieve","api_endpoint":"https://api.stripe.com/v1/charges/:id"},"summary":"Retrieve a charge","description":"Retrieve a charge","security":[{"bearerAuth":[]}]},"post":{"tags":["Charges"],"parameters":[{"name":"id","in":"path","description":"Charges ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/charges/update#update_charge","api_endpoint":"https://api.stripe.com/v1/charges/:id"},"summary":"Update a charge","description":"Update a charge","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"customer":{"type":"string","description":"The ID of an existing customer that will be associated with this request. This field may only be updated if there is no existing associated customer with this charge."},"description":{"type":"string","description":"An arbitrary string which you can attach to a charge object. It is displayed when in the web interface alongside the charge. Note that if you use Stripe to send automatic email receipts to your customers; your receipt emails will include the description of the charge(s) that they are describing."},"fraud_details":{"type":"srring","description":"A set of key-value pairs you can attach to a charge giving information about its riskiness. If you believe a charge is fraudulent include a user_report key with a value of fraudulent. If you believe a charge is safe; include a user_report key with a value of safe. Stripe will use the information you send to improve our fraud detection algorithms."},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"ransfer_group":{"type":"string","description":"A string that identifies this transaction as part of a group. transfer_group may only be provided if it has not been set. See the Connect documentation for details."},"receipt_email":{"type":"string","description":"This is the email address that the receipt for this charge will be sent to. If this field is updated; then a new email receipt will be sent to the updated address."},"shipping":{"type":"string","description":"Shipping information for the charge. Helps prevent fraud on charges for physical goods."}}},"example":{"customer":"","description":"","fraud_details":"","metadata":{},"ransfer_group":"","receipt_email":"","shipping":""}}}}}},"/v1/charges/:id/capture":{"post":{"tags":["Charges"],"parameters":[{"name":"id","in":"path","description":"Charges ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/charges/capture#capture_charge","api_endpoint":"https://api.stripe.com/v1/charges/:id/capture"},"summary":"Capture a charge","description":"Capture a charge","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"amount":{"type":"number","description":"The amount to capture which must be less than or equal to the original amount. Any additional amount will be automatically refunded."},"application_fee_amount":{"type":"string","description":"An application fee amount to add on to this charge which must be less than or equal to the original amount."},"ransfer_group":{"type":"string","description":"A string that identifies this transaction as part of a group. transfer_group may only be provided if it has not been set. See the Connect documentation for details."},"receipt_email":{"type":"string","description":"The email address to send this charge’s receipt to. This will override the previously-specified email address for this charge; if one was set. Receipts will not be sent in test mode."},"statement_descriptor":{"type":"string","description":"For card charges use statement_descriptor_suffix instead. Otherwise; you can use this value as the complete description of a charge on your customers’ statements. Must contain at least one letter maximum 22 characters."},"statement_descriptor_suffix":{"type":"string","description":"Provides information about the charge that customers see on their statements. Concatenated with the prefix (shortened descriptor) or statement descriptor that’s set on the account to form the complete statement descriptor. Maximum 22 characters for the concatenated descriptor."},"transfer_data optional":{"type":"string","description":"An optional dictionary including the account to automatically transfer to as part of a destination charge. See the Connect documentation for details."}}},"example":{"amount":"","application_fee_amount":"","ransfer_group":"","receipt_email":"","statement_descriptor":"","statement_descriptor_suffix":"","transfer_data optional":""}}}}}},"/v1/charges/search":{"get":{"tags":["Charges"],"parameters":[{"name":"limit","in":"query","description":"A limit on the number of objects to be returned. Limit can range between 1 and 100; and the default is 10.","schema":{"type":"number","example":""}},{"name":"query","in":"query","description":"The search query string. See search query language and the list of supported query fields for charges.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/charges/search#search_charges","api_endpoint":"https://api.stripe.com/v1/charges/search"},"summary":"Search charges","description":"Search charges","security":[{"bearerAuth":[]}]}},"/v1/customers":{"post":{"tags":["Customers"],"parameters":[],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/customers/create#create_customer","api_endpoint":"https://api.stripe.com/v1/customers"},"summary":"Create a customer","description":"Create a customer","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"address optional":{"type":"string","description":"The customer’s address."},"balance":{"type":"number","description":"An integer amount in cents that represents the customer’s current balance; which affect the customer’s future invoices. A negative amount represents a credit that decreases the amount due on an invoice; a positive amount increases the amount due on an invoice."},"cash_balance":{"type":"string","description":"Balance information and default balance settings for this customer."},"coupon":{"type":"string","description":"If you provide a coupon code the customer will have a discount applied on all recurring charges. Charges you create through the API will not have the discount."},"description":{"type":"string","description":"An arbitrary string that you can attach to a customer object. It is displayed alongside the customer in the dashboard."},"email":{"type":"string","description":"Customer’s email address. It’s displayed alongside the customer in your dashboard and can be useful for searching and tracking. This may be up to 512 characters."},"invoice_prefix":{"type":"number","description":"The prefix for the customer used to generate unique invoice numbers. Must be 3–12 uppercase letters or numbers."},"invoice_settings":{"type":"string","description":"Default invoice settings for this customer."},"name":{"type":"string","description":"The customer’s full name or business name."},"next_invoice_sequence":{"type":"number","description":"The sequence to be used on the customer’s next invoice. Defaults to 1."},"payment_method":{"type":"string","description":"The ID of the PaymentMethod to attach to the customer."},"phone":{"type":"number","description":"The customer’s phone number."},"preferred_locales":{"type":"number","description":"Customer’s preferred languages ordered by preference."},"promotion_code":{"type":"string","description":"The API ID of a promotion code to apply to the customer. The customer will have a discount applied on all recurring payments. Charges you create through the API will not have the discount."},"shipping":{"type":"string","description":"The customer’s shipping information. Appears on invoices emailed to this customer."},"source":{"type":"string","description":"When using payment sources created via the Token or Sources APIs; passing source will create a new source object; make it the new customer default source; and delete the old customer default if one exists. If you want to add additional sources instead of replacing the existing default; use the card creation API. Whenever you attach a card to a customer; Stripe will automatically validate the card."},"tax":{"type":"string","description":"Tax details about the customer."},"tax_exempt":{"type":"string","description":"The customer’s tax exemption. One of - none; exempt; reverse."},"tax_id_data":{"type":"string","description":"The customer’s tax IDs."}}},"example":{"address optional":"","balance":"","cash_balance":"","coupon":"","description":"","email":"","invoice_prefix":"","invoice_settings":"","name":"","next_invoice_sequence":"","payment_method":"","phone":"","preferred_locales":"","promotion_code":"","shipping":"","source":"","tax":"","tax_exempt":"","tax_id_data":""}}}}},"get":{"tags":["Customers"],"parameters":[{"name":"created","in":"query","description":"A filter on the list based on the object created field","schema":{"type":"string","example":""}},{"name":"email","in":"query","description":"A case-sensitive filter on the list based on the customer’s email field. The value must be a string","schema":{"type":"string","example":""}},{"name":"ending_before","in":"query","description":"A cursor for use in pagination. ending_before is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; starting with obj_bar; your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list.","schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"A limit on the number of objects to be returned. Limit can range between 1 and 100; and the default is 10.","schema":{"type":"number","example":""}},{"name":"starting_after","in":"query","description":"A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list.","schema":{"type":"string","example":""}},{"name":"test_clock","in":"query","description":"Provides a list of customers that are associated with the specified test clock. The response will not include customers with test clocks if this parameter is not set.","schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/customers/list#list_customers","api_endpoint":"https://api.stripe.com/v1/customers"},"summary":"List all customers","description":"List all customers","security":[{"bearerAuth":[]}]}},"/v1/customers/:id":{"get":{"tags":["Customers"],"parameters":[{"name":"id","in":"path","description":"Customer ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/customers/retrieve#retrieve_customer","api_endpoint":"https://api.stripe.com/v1/customers/:id"},"summary":"Retrieve a customer","description":"Retrieve a customer","security":[{"bearerAuth":[]}]},"post":{"tags":["Customers"],"parameters":[{"name":"id","in":"path","description":"Customer ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/customers/update#update_customer","api_endpoint":"https://api.stripe.com/v1/customers/:id"},"summary":"Update a customer","description":"Update a customer","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"address":{"type":"string","description":"The customer’s address.description","enum":["string"]},"balance":{"type":"number","description":"An integer amount in cents that represents the customer’s current balance; which affect the customer’s future invoices. A negative amount represents a credit that decreases the amount due on an invoice; a positive amount increases the amount due on an invoice."},"cash_balance":{"type":"string","description":"Balance information and default balance settings for this customer."},"coupon":{"type":"string","description":"If you provide a coupon code; the customer will have a discount applied on all recurring charges. Charges you create through the API will not have the discount."},"default_source":{"type":"string","description":"f you are using payment methods created via the PaymentMethods API see the invoice_settings.default_payment_method parameter.Provide the ID of a payment source already attached to this customer to make it this customer’s default payment source.If you want to add a new payment source and make it the default see the source property."},"email":{"type":"string","description":"Customer’s email address. It’s displayed alongside the customer in your dashboard and can be useful for searching and tracking. This may be up to 512 characters."},"invoice_prefix":{"type":"number","description":"The prefix for the customer used to generate unique invoice numbers. Must be 3–12 uppercase letters or numbers."},"invoice_settings":{"type":"string","description":"Default invoice settings for this customer."},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"name":{"type":"string","description":"The customer’s full name or business name."},"next_invoice_sequence":{"type":"number","description":"The sequence to be used on the customer’s next invoice. Defaults to 1."},"phone":{"type":"number","description":"The customer’s phone number."},"preferred_locales":{"type":"string","description":"Customer’s preferred languages; ordered by preference."},"promotion_code":{"type":"string","description":"The API ID of a promotion code to apply to the customer. The customer will have a discount applied on all recurring payments. Charges you create through the API will not have the discount."},"shipping":{"type":"string","description":"The customer’s shipping information. Appears on invoices emailed to this customer."},"source":{"type":"string","description":"When using payment sources created via the Token or Sources APIs passing source will create a new source object; make it the new customer default source and delete the old customer default if one exists. If you want to add additional sources instead of replacing the existing default; use the card creation API. Whenever you attach a card to a customer Stripe will automatically validate the card."},"tax":{"type":"string","description":"Tax details about the customer."},"tax_exempt":{"type":"string","description":"The customer’s tax exemption. One  - none;exempt; reverse."}}},"example":{"address":"","balance":"","cash_balance":"","coupon":"","default_source":"","email":"","invoice_prefix":"","invoice_settings":"","metadata":{},"name":"","next_invoice_sequence":"","phone":"","preferred_locales":"","promotion_code":"","shipping":"","source":"","tax":"","tax_exempt":""}}}}},"delete":{"tags":["Customers"],"parameters":[{"name":"id","in":"path","description":"Customer ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/customers/delete#delete_customer","api_endpoint":"https://api.stripe.com/v1/customers/:id"},"summary":"Delete a customer","description":"Delete a customer","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v1/customers/search":{"get":{"tags":["Customers"],"parameters":[{"name":"limit","in":"query","description":"A limit on the number of objects to be returned. Limit can range between 1 and 100; and the default is 10.","schema":{"type":"number","example":""}},{"name":"page","in":"query","description":"A cursor for pagination across multiple pages of results. Don’t include this parameter on the first call. Use the next_page value returned in a previous response to request subsequent results.","schema":{"type":"string","example":""}},{"name":"query","in":"query","description":"The search query string. See search query language and the list of supported query fields for customers.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/customers/search#search_customers","api_endpoint":"https://api.stripe.com/v1/customers/search"},"summary":"Search customers","description":"Search customers","security":[{"bearerAuth":[]}]}},"/v1/webhook_endpoints":{"post":{"tags":["Webhook Endpoints"],"parameters":[],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/webhook_endpoints/create?lang=node","api_endpoint":"https://api.stripe.com/v1/webhook_endpoints"},"summary":"Create a webhook endpoint","description":"Create a webhook endpoint","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"api_version":{"type":"string","description":"Events sent to this endpoint will be generated with this Stripe Version instead of your account’s default Stripe Version."},"connect":{"type":"boolean","description":"Whether this endpoint should receive events from connected accounts (true), or from your account (false). Defaults to false.","enum":[true,false]},"description":{"type":"string","description":"An optional description of what the webhook is used for."},"enabled_events":{"type":"string","description":"The list of events to enable for this endpoint. You may specify [’*’] to enable all events; except those that require explicit selection.","required":true},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"url":{"type":"string","description":"The URL of the webhook endpoint.","required":true}}},"example":{"api_version":"","connect":"","description":"","enabled_events":"","metadata":{},"url":""}}}}},"get":{"tags":["Webhook Endpoints"],"parameters":[{"name":"ending_before","in":"query","description":"A cursor for use in pagination. ending_before is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; starting with obj_bar; your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list.","schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"A limit on the number of objects to be returned. Limit can range between 1 and 100; and the default is 10.","schema":{"type":"number","example":""}},{"name":"starting_after","in":"query","description":"A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; ending with obj_foo; your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list.","schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/webhook_endpoints/list?lang=node","api_endpoint":"https://api.stripe.com/v1/webhook_endpoints"},"summary":"List all webhook endpoints","description":"List all webhook endpoints","security":[{"bearerAuth":[]}]}},"/v1/webhook_endpoints/:id":{"get":{"tags":["Webhook Endpoints"],"parameters":[{"name":"id","in":"path","description":"Webhook endpoint ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/webhook_endpoints/retrieve?lang=node","api_endpoint":"https://api.stripe.com/v1/webhook_endpoints/:id"},"summary":"Retrieve a webhook endpoint","description":"Retrieve a webhook endpoint","security":[{"bearerAuth":[]}]},"post":{"tags":["Webhook Endpoints"],"parameters":[{"name":"id","in":"path","description":"Webhook endpoint ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/webhook_endpoints/update?lang=node","api_endpoint":"https://api.stripe.com/v1/webhook_endpoints/:id"},"summary":"Update a webhook endpoint","description":"Update a webhook endpoint","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"description":{"type":"string","description":"An optional description of what the webhook is used for."},"disabled":{"type":"boolean","description":"Disable the webhook endpoint if set to true.","enum":[true,false]},"enabled_events":{"type":"string","description":"The list of events to enable for this endpoint. You may specify [’*’] to enable all events; except those that require explicit selection."},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"url":{"type":"string","description":"The URL of the webhook endpoint."}}},"example":{"description":"","disabled":"","enabled_events":"","metadata":{},"url":""}}}}},"delete":{"tags":["Webhook Endpoints"],"parameters":[{"name":"id","in":"path","description":"Webhook endpoint ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/webhook_endpoints/delete?lang=node","api_endpoint":"https://api.stripe.com/v1/webhook_endpoints/:id"},"summary":"Delete a webhook endpoint","description":"Delete a webhook endpoint","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v1/balance":{"get":{"tags":["Balance"],"parameters":[],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/balance","api_endpoint":"https://api.stripe.com/v1/balance"},"summary":"Retrieve balance","description":"Retrieves the current account balance, based on the authentication that was used to make the request. For a sample request, see Accounting for negative balances.","security":[{"bearerAuth":[]}]}},"/v1/checkout/sessions":{"post":{"tags":["Checkout"],"parameters":[],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/checkout/sessions/create","api_endpoint":"https://api.stripe.com/v1/checkout/sessions"},"summary":"Create a Session","description":"Create a Session","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"after_expiration":{"type":"string","description":"Configure actions after a Checkout Session has expired."},"allow_promotion_codes":{"type":"string","description":"Enables user redeemable promotion codes."},"automatic_tax":{"type":"string","description":"Settings for automatic tax lookup for this session and resulting payments; invoices and subscriptions."},"billing_address_collection":{"type":"string","description":"Specify whether Checkout should collect the customer’s billing address."},"cancel_url":{"type":"string","description":"If set; Checkout displays a back button and customers will be directed to this URL if they decide to cancel payment and return to your website."},"client_reference_id":{"type":"string","description":"A unique string to reference the Checkout Session. This can be a customer ID; a cart ID; or similar; and can be used to reconcile the session with your internal systems."},"consent_collection":{"type":"string","description":"Configure fields for the Checkout Session to gather active consent from customers."},"currency":{"type":"number","description":"Three-letter ISO currency code; in lowercase. Must be a supported currency."},"custom_text":{"type":"string","description":"Display additional text for your customers using custom text."},"customer":{"type":"string","description":"ID of an existing Customer; if one exists. In payment mode the customer’s most recent card payment method will be used to prefill the email name; card details; and billing address on the Checkout page. In subscription mode; the customer’s default payment method will be used if it’s a card; and otherwise the most recent card will be used. A valid billing address; billing name and billing email are required on the payment method for Checkout to prefill the customer’s card details.If the Customer already has a valid email set; the email will be prefilled and not editable in Checkout. If the Customer does not have a valid email; Checkout will set the email entered during the session on the Customer.If blank for Checkout Sessions in payment or subscription mode; Checkout will create a new Customer object based on information provided during the payment flow.You can set payment_intent_data.setup_future_usage to have Checkout automatically attach the payment method to the Customer you pass in for future reuse."},"customer_creation":{"type":"string","description":"Configure whether a Checkout Session creates a Customer during Session confirmation.When a Customer is not created; you can still retrieve email; address; and other customer data entered in Checkout with customer_details.Sessions that don’t create Customers instead are grouped by guest customers in the Dashboard. Promotion codes limited to first time customers will return invalid for these Sessions.Can only be set in payment and setup mode.\ncustomer_update","enum":["string"]},"customer_email":{"type":"string","description":"If provided this value will be used when the Customer object is created. If not provided; customers will be asked to enter their email address. Use this parameter to prefill customer data if you already have an email on file. To access information about the customer once a session is complete use the customer field."},"discounts":{"type":"string","description":"The coupon or promotion code to apply to this Session. Currently; only up to one may be specified."},"expires_at":{"type":"string","description":"The Epoch time in seconds at which the Checkout Session will expire. It can be anywhere from 30 minutes to 24 hours after Checkout Session creation. By default; this value is 24 hours from creation."},"invoice_creation":{"type":"string","description":"Generate a post-purchase Invoice for one-time payments."},"line_items":{"type":"string","description":"A list of items the customer is purchasing. Use this parameter to pass one-time or recurring Prices.For payment mode there is a maximum of 100 line items; however it is recommended to consolidate line items if there are more than a few dozen.For subscription mode there is a maximum of 20 line items with recurring Prices and 20 line items with one-time Prices. Line items with one-time Prices will be on the initial invoice only."},"locale":{"type":"string","description":"The IETF language tag of the locale Checkout is displayed in. If blank or auto; the browser’s locale is used."},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"mode":{"type":"string","description":"The mode of the Checkout Session. Pass subscription if the Checkout Session includes at least one recurring item.","required":true},"payment_intent_data":{"type":"string","description":"A subset of parameters to be passed to PaymentIntent creation for Checkout Sessions in payment mode."},"payment_method_collection":{"type":"string","description":"Specify whether Checkout should collect a payment method. When set to if_required; Checkout will not collect a payment method when the total due for the session is 0. This may occur if the Checkout Session includes a free trial or a discount.Can only be set in subscription mode."},"payment_method_options":{"type":"string","description":"Payment-method-specific configuration."},"payment_method_types":{"type":"string","description":"A list of the types of payment methods (e.g. card) this Checkout Session can accept.In payment and subscription mode you can omit this attribute to manage your payment methods from the Stripe Dashboard. It is required in setup mode.Read more about the supported payment methods and their requirements in our payment method details guide.If multiple payment methods are passed; Checkout will dynamically reorder them to prioritize the most relevant payment methods based on the customer’s location and other characteristics."},"phone_number_collection":{"type":"string","description":"Controls phone number collection settings for the session.We recommend that you review your privacy policy and check with your legal contacts before using this feature. Learn more about collecting phone numbers with Checkout."},"setup_intent_data":{"type":"string","description":"A subset of parameters to be passed to SetupIntent creation for Checkout Sessions in setup mode."},"shipping_address_collection":{"type":"string","description":"When set; provides configuration for Checkout to collect a shipping address from a customer."},"shipping_options":{"type":"string","description":"The shipping rate options to apply to this Session."},"submit_type optional":{"type":"string","description":"Describes the type of transaction being performed by Checkout in order to customize relevant text on the page; such as the submit button. submit_type can only be specified on Checkout Sessions in payment mode; but not Checkout Sessions in subscription or setup mode."},"subscription_data":{"type":"string","description":"A subset of parameters to be passed to subscription creation for Checkout Sessions in subscription mode."},"success_url":{"type":"string","description":"The URL to which Stripe should send customers when payment or setup is complete. If you’d like to use information from the successful Checkout Session on your page; read the guide on customizing your success page.","required":true},"tax_id_collection":{"type":"string","description":"Controls tax ID collection settings for the session."}}},"example":{"after_expiration":"","allow_promotion_codes":"","automatic_tax":"","billing_address_collection":"","cancel_url":"","client_reference_id":"","consent_collection":"","currency":"","custom_text":"","customer":"","customer_creation":"","customer_email":"","discounts":"","expires_at":"","invoice_creation":"","line_items":"","locale":"","metadata":{},"mode":"","payment_intent_data":"","payment_method_collection":"","payment_method_options":"","payment_method_types":"","phone_number_collection":"","setup_intent_data":"","shipping_address_collection":"","shipping_options":"","submit_type optional":"","subscription_data":"","success_url":"","tax_id_collection":""}}}}},"get":{"tags":["Checkout"],"parameters":[{"name":"created","in":"query","description":"Only return Checkout Sessions that were created during the given date interval.","schema":{"type":"string","example":""}},{"name":"customer","in":"query","description":"Only return the Checkout Sessions for the Customer specified.","schema":{"type":"string","example":""}},{"name":"customer_details","in":"query","description":"Only return the Checkout Sessions for the Customer details specified.","schema":{"type":"string","example":""}},{"name":"ending_before","in":"query","description":"A cursor for use in pagination. ending_before is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; starting with obj_bar; your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list.","schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"A limit on the number of objects to be returned. Limit can range between 1 and 100","schema":{"type":"number","example":""}},{"name":"payment_intent","in":"query","description":"Only return the Checkout Session for the PaymentIntent specified.","schema":{"type":"string","example":""}},{"name":"payment_link","in":"query","description":"Only return the Checkout Sessions for the Payment Link specified.","schema":{"type":"string","example":""}},{"name":"starting_after","in":"query","description":"A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; ending with obj_foo; your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list.","schema":{"type":"string","example":""}},{"name":"status","in":"query","description":"Only return the Checkout Sessions matching the given status.","schema":{"type":"enum","example":"","items":{"type":"string","enum":["complete","expired","open"]}}},{"name":"subscription","in":"query","description":"Only return the Checkout Session for the subscription specified.","schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/checkout/sessions/list","api_endpoint":"https://api.stripe.com/v1/checkout/sessions"},"summary":"List all Checkout Sessions","description":"List all Checkout Sessions","security":[{"bearerAuth":[]}]}},"/v1/checkout/sessions/:id/expire":{"post":{"tags":["Checkout"],"parameters":[{"name":"id","in":"path","description":"Checkout ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/checkout/sessions/expire","api_endpoint":"https://api.stripe.com/v1/checkout/sessions/:id/expire"},"summary":"Expire a Session","description":"Expire a Session","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/v1/checkout/sessions/:id":{"get":{"tags":["Checkout"],"parameters":[{"name":"id","in":"path","description":"Checkout ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/checkout/sessions/retrieve","api_endpoint":"https://api.stripe.com/v1/checkout/sessions/:id"},"summary":"Retrieve a Session","description":"Retrieve a Session","security":[{"bearerAuth":[]}]}},"/v1/checkout/sessions/:id/line_items":{"get":{"tags":["Checkout"],"parameters":[{"name":"id","in":"path","description":"Checkout ID","required":true,"schema":{"type":"string","example":""}},{"name":"ending_before","in":"query","description":"A cursor for use in pagination. ending_before is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; starting with obj_bar; your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list.","schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"A limit on the number of objects to be returned. Limit can range between 1 and 100; and the default is 10.","schema":{"type":"number","example":""}},{"name":"starting_after","in":"query","description":"A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; ending with obj_foo; your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list.","schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/checkout/sessions/line_items","api_endpoint":"https://api.stripe.com/v1/checkout/sessions/:id/line_items"},"summary":"Retrieve a Checkout Session's line items","description":"Retrieve a Checkout Session's line items","security":[{"bearerAuth":[]}]}},"/v1/payment_links":{"post":{"tags":["Payment Link"],"parameters":[],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/payment_links/payment_links/create?lang=node","api_endpoint":"https://api.stripe.com/v1/payment_links"},"summary":"Create a payment link","description":"Create a payment link","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"after_completion":{"type":"string","description":"Behavior after the purchase is complete."},"allow_promotion_codes":{"type":"string","description":"Enables user redeemable promotion codes."},"application_fee_amount":{"type":"string","description":"The amount of the application fee (if any) that will be requested to be applied to the payment and transferred to the application owner’s Stripe account. Can only be applied when there are no line items with recurring prices."},"application_fee_percent":{"type":"number","description":"A non-negative decimal between 0 and 100"},"automatic_tax":{"type":"string","description":"Configuration for automatic tax collection."},"billing_address_collection":{"type":"string","description":"Configuration for collecting the customer’s billing address."},"consent_collection":{"type":"string","description":"Configure fields to gather active consent from customers."},"currency":{"type":"string","description":"Three-letter ISO currency code; in lowercase. Must be a supported currency and supported by each line item’s price."},"custom_text":{"type":"string","description":"Display additional text for your customers using custom text."},"customer_creation":{"type":"string","description":"Configures whether checkout sessions created by this payment link create a Customer."},"line_items":{"type":"string","description":"The line items representing what is being sold. Each line item represents an item being sold. Up to 20 line items are supported.","required":true},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata. Metadata associated with this Payment Link will automatically be copied to checkout sessions created by this payment link.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"on_behalf_of":{"type":"string","description":"The account on behalf of which to charge."},"payment_intent_data":{"type":"string","description":"A subset of parameters to be passed to PaymentIntent creation for Checkout Sessions in payment mode."},"payment_method_collection":{"type":"string","description":"Specify whether Checkout should collect a payment method. When set to if_required; Checkout will not collect a payment method when the total due for the session is 0.This may occur if the Checkout Session includes a free trial or a discount."},"payment_method_types":{"type":"string","description":"The list of payment method types that customers can use."},"phone_number_collection":{"type":"number","description":"Controls phone number collection settings during checkout.We recommend that you review your privacy policy and check with your legal contacts."},"shipping_address_collection":{"type":"string","description":"Configuration for collecting the customer’s shipping address."},"shipping_options":{"type":"string","description":"The shipping rate options to apply to checkout sessions created by this payment link."},"submit_type":{"type":"string","description":"Describes the type of transaction being performed in order to customize relevant text on the page such as the submit button. Changing this value will also affect the hostname in the url property (example","enum":["donate.stripe.com)."]},"subscription_data":{"type":"string","description":"When creating a subscription the specified configuration data will be used. There must be at least one line item with a recurring price to use subscription_data."},"tax_id_collection":{"type":"string","description":"Controls tax ID collection during checkout."},"transfer_data":{"type":"string","description":"The account (if any) the payments will be attributed to for tax reporting; and where funds from each payment will be transferred to."}}},"example":{"after_completion":"","allow_promotion_codes":"","application_fee_amount":"","application_fee_percent":"","automatic_tax":"","billing_address_collection":"","consent_collection":"","currency":"","custom_text":"","customer_creation":"","line_items":"","metadata":{},"on_behalf_of":"","payment_intent_data":"","payment_method_collection":"","payment_method_types":"","phone_number_collection":"","shipping_address_collection":"","shipping_options":"","submit_type":"","subscription_data":"","tax_id_collection":"","transfer_data":""}}}}},"get":{"tags":["Payment Link"],"parameters":[{"name":"active","in":"query","description":"Only return payment links that are active or inactive (e.g. pass false to list all inactive payment links).","schema":{"type":"boolean","example":"","items":{"type":"string","enum":[true,false]}}},{"name":"ending_before","in":"query","description":"A cursor for use in pagination. ending_before is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; starting with obj_bar; your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list.","schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"A limit on the number of objects to be returned. Limit can range between 1 and 100; and the default is 10.","schema":{"type":"number","example":""}},{"name":"starting_after","in":"query","description":"A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; ending with obj_foo; your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list.","schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/payment_links/payment_links/list?lang=node","api_endpoint":"https://api.stripe.com/v1/payment_links"},"summary":"List all payment links","description":"List all payment links","security":[{"bearerAuth":[]}]}},"/v1/payment_links/:id":{"get":{"tags":["Payment Link"],"parameters":[{"name":"id","in":"path","description":"Payment link ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/payment_links/payment_links/retrieve?lang=node","api_endpoint":"https://api.stripe.com/v1/payment_links/:id"},"summary":"Retrieve payment link","description":"Retrieve payment link","security":[{"bearerAuth":[]}]},"post":{"tags":["Payment Link"],"parameters":[{"name":"id","in":"path","description":"Payment link ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/payment_links/payment_links/update?lang=node","api_endpoint":"https://api.stripe.com/v1/payment_links/:id"},"summary":"Update a payment link","description":"Update a payment link","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"active":{"type":"boolean","description":"Whether the payment link’s url is active. If false; customers visiting the URL will be shown a page saying that the link has been deactivated.","enum":[true,false]},"after_completion":{"type":"string","description":"Behavior after the purchase is complete."},"allow_promotion_codes":{"type":"string","description":"Enables user redeemable promotion codes."},"automatic_tax":{"type":"string","description":"Configuration for automatic tax collection."},"billing_address_collection":{"type":"string","description":"Configuration for collecting the customer’s billing address."},"custom_text":{"type":"string","description":"Display additional text for your customers using custom text."},"customer_creation":{"type":"string","description":"Configures whether checkout sessions created by this payment link create a Customer."},"line_items":{"type":"string","description":"The line items representing what is being sold. Each line item represents an item being sold. Up to 20 line items are supported."},"metadata":{"type":"object","description":"Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata. Metadata associated with this Payment Link will automatically be copied to checkout sessions created by this payment link.","properties":{"key":{"type":"string","description":"A key for the metadata entry. Must be at most 500 characters."},"value":{"type":"string","description":"A value for the metadata entry. Must be at most 500 characters."}}},"payment_method_collection":{"type":"string","description":"Specify whether Checkout should collect a payment method. When set to if_required; Checkout will not collect a payment method when the total due for the session is 0.This may occur if the Checkout Session includes a free trial or a discount."},"payment_method_types":{"type":"string","description":"The list of payment method types that customers can use. Pass an empty string to enable automatic payment methods that use your payment method settings."},"shipping_address_collection":{"type":"string","description":"Configuration for collecting the customer’s shipping address."}}},"example":{"active":"","after_completion":"","allow_promotion_codes":"","automatic_tax":"","billing_address_collection":"","custom_text":"","customer_creation":"","line_items":"","metadata":{},"payment_method_collection":"","payment_method_types":"","shipping_address_collection":""}}}}}},"/v1/payment_links/:id/line_items":{"get":{"tags":["Payment Link"],"parameters":[{"name":"id","in":"path","description":"Payment link ID","required":true,"schema":{"type":"string","example":""}},{"name":"ending_before","in":"query","description":"A cursor for use in pagination. ending_before is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; starting with obj_bar; your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list.","schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"A limit on the number of objects to be returned. Limit can range between 1 and 100; and the default is 10.","schema":{"type":"number","example":""}},{"name":"starting_after","in":"query","description":"A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance","schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/payment_links/line_items?lang=node","api_endpoint":"https://api.stripe.com/v1/payment_links/:id/line_items"},"summary":"Retrieve a payment link's line items","description":"Retrieve a payment link's line items","security":[{"bearerAuth":[]}]}},"/v1/balance_transactions/:id":{"get":{"tags":["Balance Transactions"],"parameters":[{"name":"id","in":"path","description":"Transaction ID","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/balance_transactions/retrieve","api_endpoint":"https://api.stripe.com/v1/balance_transactions/:id"},"summary":"Retrieve a balance transaction","description":"Retrieves the balance transaction with the given ID.","security":[{"bearerAuth":[]}]}},"/v1/balance_transactions":{"get":{"tags":["Balance Transactions"],"parameters":[{"name":"type","in":"query","description":"Only returns transactions of the given type. One of - adjustment; advance; advance_funding; anticipation_repayment; application_fee; application_fee_refund; charge; connect_collection_transfer; contribution; issuing_authorization_hold; issuing_authorization_release; issuing_dispute; issuing_transaction; payment; payment_failure_refund; payment_refund; payout; payout_cancel; payout_failure; refund; refund_failure; reserve_transaction; reserved_funds; stripe_fee; stripe_fx_fee; tax_fee; topup; topup_reversal transfer; transfer_cancel; transfer_failure; or transfer_refund","schema":{"type":"string","example":""}},{"name":"created","in":"query","description":"A filter on the list based on the object created field. The value can be a string with an integer Unix timestamp; or it can be a dictionary with the following options","schema":{"type":"string","example":""}},{"name":"currency","in":"query","description":"Only return transactions in a certain currency. Three-letter ISO currency code in lowercase. Must be a supported currency","schema":{"type":"string","example":""}},{"name":"ending_before","in":"query","description":"A cursor for use in pagination. ending_before is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; starting with obj_bar; your subsequent call can include ending_before=obj_bar in order to fetch the previous page of the list","schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"A limit on the number of objects to be returned. Limit can range between 1 and 100; and the default is 10","schema":{"type":"number","example":""}},{"name":"payout","in":"query","description":"For automatic Stripe payouts only; only returns transactions that were paid out on the specified payout ID","schema":{"type":"string","example":""}},{"name":"source","in":"query","description":"Only returns the original transaction","schema":{"type":"string","example":""}},{"name":"starting_after","in":"query","description":"A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance; if you make a list request and receive 100 objects; ending with obj_foo; your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list","schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://stripe.com/docs/api/balance_transactions/list","api_endpoint":"https://api.stripe.com/v1/balance_transactions"},"summary":"List all balance transactions","description":"Returns a list of transactions that have contributed to the Stripe account balance (e.g., charges, transfers, and so forth). The transactions are returned in sorted order, with the most recent transactions appearing first.","security":[{"bearerAuth":[]}]}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer"}}},"security":[{"bearerAuth":[]}]}