code: import stripe
  stripe.api_key = "sk_test_your_key"
  
  stripe.SetupIntent.create(
    payment_method_types=["card"],
  )
  '''Response {
    "id": "seti_1EuLW12eZvKYlo2CSSF0PlLO",
    "object": "setup_intent",
    "application": null,
    "cancellation_reason": null,
    "client_secret": "seti_1EuLW12eZvKYlo2CSSF0PlLO_secret_FP9pDHZrmtOHCWIKnuIZPW0VhtPEsaa",
    "created": 1562687161,
    "customer": null,
    "description": null,
    "flow_directions": null,
    "last_setup_error": null,
    "latest_attempt": null,
    "livemode": false,
    "mandate": null,
    "metadata": {},
    "next_action": null,
    "on_behalf_of": null,
    "payment_method": null,
    "payment_method_options": {
      "card": {
        "mandate_options": null,
        "network": null,
        "request_three_d_secure": "automatic"
      }
    },
    "payment_method_types": [
      "card"
    ],
    "redaction": null,
    "single_use_mandate": null,
    "status": "requires_payment_method",
    "usage": "off_session"
  }'''
nl: Create a SetupIntentCreates a SetupIntent object.
  After the SetupIntent is created, attach a payment method and confirm
  to collect any required permissions to charge the payment method later.Parameters confirm optional Set to true to attempt to confirm this SetupIntent immediately. This parameter defaults to false. If the payment method attached is a card, a return_url may be provided in case additional authentication is required. customer optional ID of the Customer this SetupIntent belongs to, if one exists.
  If present, the SetupIntent’s payment method will be attached to the Customer on successful setup. Payment methods attached to other Customers cannot be used with this SetupIntent. description optional An arbitrary string attached to the object. Often useful for displaying to users. metadata optional dictionary 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. payment_method optional ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent. payment_method_types optional The list of payment method types that this SetupIntent is allowed to set up.
  If this is not provided, defaults to [“card”].
  Valid payment method types include: acss_debit, au_becs_debit, bacs_debit, bancontact, blik, boleto, card, card_present, ideal, link, sepa_debit, sofort, and us_bank_account. usage optional enum Indicates how the payment method is intended to be used in the future. If not provided, this value defaults to off_session.Possible enum valueson_session Use on_session if you intend to only reuse the payment method when the customer is in your checkout flow.off_session Use off_session if your customer may or may not be in your checkout flow.More parametersExpand all  attach_to_self optional   flow_directions optional enum   mandate_data optional dictionary only when confirm=true   on_behalf_of optional Connect only   payment_method_data optional dictionary   payment_method_options optional dictionary   return_url optional only when confirm=true   single_use optional dictionary ReturnsReturns a SetupIntent object