com.wsl.modules

stripe-connector

Namespacehttp://www.mulesoft.org/schema/mule/stripe
Schema Locationhttp://www.mulesoft.org/schema/mule/stripe/current/mule-stripe.xsd  (View Schema)
Schema Version1.0
Minimum Mule Version3.2

Schema

<?xml version="1.0" encoding="UTF-8"?>

<xs:schema xmlns:ns2="http://www.mulesoft.org/schema/mule/devkit" xmlns:mule="http://www.mulesoft.org/schema/mule/core" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.mulesoft.org/schema/mule/stripe" attributeFormDefault="unqualified" elementFormDefault="qualified">
  <xs:import namespace="http://www.w3.org/XML/1998/namespace"></xs:import>
  <xs:import namespace="http://www.springframework.org/schema/beans" schemaLocation="http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"></xs:import>
  <xs:import namespace="http://www.mulesoft.org/schema/mule/core" schemaLocation="http://www.mulesoft.org/schema/mule/core/current/mule.xsd"></xs:import>
  <xs:element xmlns:mule="http://www.mulesoft.org/schema/mule/core" substitutionGroup="mule:abstract-extension" name="config-type">
    <xs:complexType>
      <xs:complexContent>
        <xs:extension base="mule:abstractExtensionType">
          <xs:annotation>
            <xs:documentation>Connection Management Strategy</xs:documentation>
          </xs:annotation>
          <xs:sequence>
            <xs:element type="mule:poolingProfileType" minOccurs="0" name="connection-pooling-profile">
              <xs:annotation>
                <xs:documentation>Characteristics of the connection pool.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" ref="mule:abstract-reconnection-strategy">
              <xs:annotation>
                <xs:documentation>Reconnection strategy that defines how Mule should handle a connection failure.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
          <xs:attribute type="xs:string" use="required" name="name">
            <xs:annotation>
              <xs:documentation>Give a name to this configuration so it can be later referenced by config-ref.</xs:documentation>
            </xs:annotation>
          </xs:attribute>
          <xs:attribute type="xs:string" use="optional" default="2015-03-24" name="apiVersion">
            <xs:annotation>
              <xs:documentation></xs:documentation>
            </xs:annotation>
          </xs:attribute>
          <xs:attribute type="xs:string" use="required" name="apiKey">
            <xs:annotation>
              <xs:documentation>Your Stripe API Key</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
  </xs:element>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CreateCustomerType" substitutionGroup="mule:abstract-message-processor" name="create-customer">
    <xs:annotation>
      <xs:documentation>Create a Customer</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateCustomerType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="metadata">
            <xs:annotation>
              <xs:documentation>A set of key/value pairs that you can attach to a customer object. It can be useful for storing additional information about the customer in a structured format.</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                          <xs:attribute type="xs:string" name="key"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute type="xs:string" use="optional" name="ref">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="accountBalance">
          <xs:annotation>
            <xs:documentation>An integer amount in cents that is the starting account balance for your customer. A negative amount represents a credit that will be used before attempting any charges to the customer’s card; a positive amount will be added to the next invoice.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="couponCode">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="description">
          <xs:annotation>
            <xs:documentation>An arbitrary string that you can attach to a customer object. It is displayed alongside the customer in the dashboard.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="email">
          <xs:annotation>
            <xs:documentation>Customer’s email address.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveCustomerType" substitutionGroup="mule:abstract-message-processor" name="retrieve-customer">
    <xs:annotation>
      <xs:documentation>Retrieve a Customer</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveCustomerType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The identifier of the customer to be retrieved.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="UpdateCustomerType" substitutionGroup="mule:abstract-message-processor" name="update-customer">
    <xs:annotation>
      <xs:documentation>Update a Customer. Updates the specified customer by setting the values of the parameters passed. Any parameters not provided will be left unchanged. For example, if you pass the card parameter, that becomes the customer's active card to be used for all charges in the future. When you update a customer to a new valid card: for each of the customer's current subscriptions, if the subscription is in the past_due state, then the latest unpaid, unclosed invoice for the subscription will be retried (note that this retry will not count as an automatic retry, and will not affect the next regularly scheduled payment for the invoice). (Note also that no invoices pertaining to subscriptions in the unpaid state, or invoices pertaining to canceled subscriptions, will be retried as a result of updating the customer's card.) This request accepts mostly the same arguments as the customer creation call.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="UpdateCustomerType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="metadata">
            <xs:annotation>
              <xs:documentation>A set of key/value pairs that you can attach to a customer object. It can be useful for storing additional information about the customer in a structured format.</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                          <xs:attribute type="xs:string" name="key"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute type="xs:string" use="optional" name="ref">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>the id of the Customer to update</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="accountBalance">
          <xs:annotation>
            <xs:documentation>An integer amount in cents that is the starting account balance for your customer. A negative amount represents a credit that will be used before attempting any charges to the customer’s card; a positive amount will be added to the next invoice.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="couponCode">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="description">
          <xs:annotation>
            <xs:documentation>An arbitrary string that you can attach to a customer object. It is displayed alongside the customer in the dashboard.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="email">
          <xs:annotation>
            <xs:documentation>Customer’s email address.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="sourceToken">
          <xs:annotation>
            <xs:documentation>A token for a given source</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="DeleteCustomerType" substitutionGroup="mule:abstract-message-processor" name="delete-customer">
    <xs:annotation>
      <xs:documentation>Delete a Customer</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="DeleteCustomerType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The identifier of the customer to be deleted.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="ListAllCustomersType" substitutionGroup="mule:abstract-message-processor" name="list-all-customers">
    <xs:annotation>
      <xs:documentation>List all Customers</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListAllCustomersType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="limit">
          <xs:annotation>
            <xs:documentation>A limit on the number of records to fetch in a batch</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="startingAfter">
          <xs:annotation>
            <xs:documentation>A cursor (id) for use in pagination.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="endingBefore">
          <xs:annotation>
            <xs:documentation>A cursor for use in pagination. ending_before is an object ID that defines your place in the list.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CreatePlanType" substitutionGroup="mule:abstract-message-processor" name="create-plan">
    <xs:annotation>
      <xs:documentation>Create a Plan</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreatePlanType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="metadata">
            <xs:annotation>
              <xs:documentation>A set of key/value pairs that you can attach to a plan object. It can be useful for storing additional information about the plan in a structured format.</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                          <xs:attribute type="xs:string" name="key"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute type="xs:string" use="optional" name="ref">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>Unique string of your choice that will be used to identify this plan when subscribing a customer. This could be an identifier like "gold" or a primary key from your own database.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="required" name="amount">
          <xs:annotation>
            <xs:documentation>A positive integer in cents (or 0 for a free plan) representing how much to charge (on a recurring basis).</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="currency">
          <xs:annotation>
            <xs:documentation>3-letter ISO code for currency.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="interval">
          <xs:annotation>
            <xs:documentation>Specifies billing frequency. Either day, week, month or year.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="1" name="intervalCount">
          <xs:annotation>
            <xs:documentation>The number of intervals between each subscription billing. For example, interval=month and interval_count=3 bills every 3 months. Maximum of one year interval allowed (1 year, 12 months, or 52 weeks).</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="planName">
          <xs:annotation>
            <xs:documentation>Name of the plan, to be displayed on invoices and in the web interface.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="trialPeriodDays">
          <xs:annotation>
            <xs:documentation>Specifies a trial period in (an integer number of) days. If you include a trial period, the customer won't be billed for the first time until the trial period ends. If the customer cancels before the trial period is over, she'll never be billed at all.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="statementDescriptor">
          <xs:annotation>
            <xs:documentation>An arbitrary string to be displayed on your customer's credit card statement. This may be up to22 characters.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrievePlanType" substitutionGroup="mule:abstract-message-processor" name="retrieve-plan">
    <xs:annotation>
      <xs:documentation>Retrieve a Plan</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrievePlanType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The id of the plan to retrieve</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="UpdatePlanType" substitutionGroup="mule:abstract-message-processor" name="update-plan">
    <xs:annotation>
      <xs:documentation>Update a Plan</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="UpdatePlanType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="metadata">
            <xs:annotation>
              <xs:documentation>A set of key/value pairs that you can attach to a plan object. It can be useful for storing additional information about the plan in a structured format.</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                          <xs:attribute type="xs:string" name="key"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute type="xs:string" use="optional" name="ref">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>of the plan to update</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="planName">
          <xs:annotation>
            <xs:documentation>Name of the plan, to be displayed on invoices and in the web interface.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="statementDescriptor">
          <xs:annotation>
            <xs:documentation>An arbitrary string to be displayed on your customer's credit card statement. This may be up to22 characters.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="DeletePlanType" substitutionGroup="mule:abstract-message-processor" name="delete-plan">
    <xs:annotation>
      <xs:documentation>Delete a Plan</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="DeletePlanType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The id of the plan to delete</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="ListAllPlansType" substitutionGroup="mule:abstract-message-processor" name="list-all-plans">
    <xs:annotation>
      <xs:documentation>List All Plans</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="TimeRangeObjectType">
    <xs:sequence></xs:sequence>
    <xs:attribute type="xs:string" use="optional" name="greaterThan">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="lessThan">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="lessThanOrEqualTo">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="greaterThanOrEqualTo">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="ListAllPlansParametersObjectType">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="created">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="TimeRangeObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute type="xs:string" use="optional" name="createdTimestamp">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="endingBefore">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" name="limit">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="startingAfter">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="ListAllPlansType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="list-all-plans-parameters">
            <xs:annotation>
              <xs:documentation>An object that wraps the parameters for List All Plans</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:complexContent>
                <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="ListAllPlansParametersObjectType"></xs:extension>
              </xs:complexContent>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CreateCouponType" substitutionGroup="mule:abstract-message-processor" name="create-coupon">
    <xs:annotation>
      <xs:documentation>Create a Coupon</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateCouponType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="metadata">
            <xs:annotation>
              <xs:documentation>A set of key/value pairs that you can attach to a coupon object. It can be useful for storing additional information about the coupon in a structured format.</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                          <xs:attribute type="xs:string" name="key"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute type="xs:string" use="optional" name="ref">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="id">
          <xs:annotation>
            <xs:documentation>Unique string of your choice that will be used to identify this coupon when applying it a customer. This is often a specific code you’ll give to your customer to use when signing up (e.g. FALL25OFF). 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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="duration">
          <xs:annotation>
            <xs:documentation>Specifies how long the discount will be in effect. Can be forever, once, or repeating.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="amountOff">
          <xs:annotation>
            <xs:documentation>A positive integer representing the amount to subtract from an invoice total (required if percent_off is not passed)</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="currency">
          <xs:annotation>
            <xs:documentation>Currency of the amount_off parameter (required if amount_off is passed)</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="durationInMonths">
          <xs:annotation>
            <xs:documentation>required only if duration is repeating If duration is repeating, a positive integer that specifies the number of months the discount will be in effect</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="maxRedemptions">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="percentOff">
          <xs:annotation>
            <xs:documentation>A positive integer between 1 and 100 that represents the discount the coupon will apply (required if amount_off is not passed)</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="redeemBy">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveCouponType" substitutionGroup="mule:abstract-message-processor" name="retrieve-coupon">
    <xs:annotation>
      <xs:documentation>Retrieve a Coupon</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveCouponType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The ID of the desired coupon.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="UpdateCouponType" substitutionGroup="mule:abstract-message-processor" name="update-coupon">
    <xs:annotation>
      <xs:documentation>Update a Coupon
Updates the metadata of a coupon. Other coupon details (currency, duration, amount_off) are, by design, not editable.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="UpdateCouponType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="metadata">
            <xs:annotation>
              <xs:documentation>A set of key/value pairs that you can attach to a coupon object. It can be useful for storing additional information about the coupon in a structured format.</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                          <xs:attribute type="xs:string" name="key"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute type="xs:string" use="optional" name="ref">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The ID of the coupon to be updated.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="DeleteCouponType" substitutionGroup="mule:abstract-message-processor" name="delete-coupon">
    <xs:annotation>
      <xs:documentation>Delete a Coupon</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="DeleteCouponType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The ID of the coupon to be deleted.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="ListAllCouponsType" substitutionGroup="mule:abstract-message-processor" name="list-all-coupons">
    <xs:annotation>
      <xs:documentation>List all Coupons</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListAllCouponsParametersObjectType">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="created">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="TimeRangeObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute type="xs:string" use="optional" name="createdTimestamp">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="endingBefore">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" name="limit">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="startingAfter">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="ListAllCouponsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="list-all-coupons-parameters">
            <xs:annotation>
              <xs:documentation>A wrapper class for the parameters</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:complexContent>
                <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="ListAllCouponsParametersObjectType"></xs:extension>
              </xs:complexContent>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveBalanceType" substitutionGroup="mule:abstract-message-processor" name="retrieve-balance">
    <xs:annotation>
      <xs:documentation>Retrieve the balance</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveBalanceType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveBalanceTransactionType" substitutionGroup="mule:abstract-message-processor" name="retrieve-balance-transaction">
    <xs:annotation>
      <xs:documentation>Retrieve a Balance Transaction</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveBalanceTransactionType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The id of the transaction</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="ListAllBalanceHistoryType" substitutionGroup="mule:abstract-message-processor" name="list-all-balance-history">
    <xs:annotation>
      <xs:documentation>List all Balance History</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListAllBalanceHistoryParametersObjectType">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="available-on">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="TimeRangeObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="created">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="TimeRangeObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute type="xs:string" use="optional" name="availableOnTimestamp">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="createdTimestamp">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="currency">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="endingBefore">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" name="limit">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="sourceId">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="startingAfter">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="transfer">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="type">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="ListAllBalanceHistoryType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="list-all-balance-history-parameters">
            <xs:annotation>
              <xs:documentation>Wrapper object for list all balance history parameters</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:complexContent>
                <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="ListAllBalanceHistoryParametersObjectType"></xs:extension>
              </xs:complexContent>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CreateCardType" substitutionGroup="mule:abstract-message-processor" name="create-card">
    <xs:annotation>
      <xs:documentation>Create a Card
Note that this is only available for Customers at this time, as Recipients (of Transfers) have been deprecated by Stripe.
Stripe Connect is the recommended means for transferring funds.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="SourceObjectType">
    <xs:sequence></xs:sequence>
    <xs:attribute type="xs:string" use="optional" name="number">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="expMonth">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="expYear">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="cvc">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="name">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="addressLine1">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="addressLine2">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="addressCity">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="addressState">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="addressZip">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="addressCountry">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="CreateCardType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="source">
            <xs:annotation>
              <xs:documentation>or a dictionary containing a user’s credit card details (with the options shown below). Whenever you create a new card for a customer, Stripe will automatically validate the card.</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:complexContent>
                <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="SourceObjectType"></xs:extension>
              </xs:complexContent>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="ownerId">
          <xs:annotation>
            <xs:documentation>the ID for the Customer or Recipient</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="sourceToken">
          <xs:annotation>
            <xs:documentation>The source can either be a token, like the ones returned by Stripe.js,</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveCardType" substitutionGroup="mule:abstract-message-processor" name="retrieve-card">
    <xs:annotation>
      <xs:documentation>Retrieve a Card
Note that this is only available for Customers at this time, as Recipients (of Transfers) have been deprecated by Stripe.
Stripe Connect is the recommended means for transferring funds.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveCardType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="ownerId">
          <xs:annotation>
            <xs:documentation>The ID of the owner of the card.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The ID of the card to be retrieved.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="UpdateCardType" substitutionGroup="mule:abstract-message-processor" name="update-card">
    <xs:annotation>
      <xs:documentation>Update a Card
Note that this is only available for Customers at this time, as Recipients (of Transfers) have been deprecated by Stripe.
Stripe Connect is the recommended means for transferring funds.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="UpdateCardType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="metadata">
            <xs:annotation>
              <xs:documentation>Arbitrary metadata to attach to the card</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                          <xs:attribute type="xs:string" name="key"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute type="xs:string" use="optional" name="ref">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="ownerId">
          <xs:annotation>
            <xs:documentation>The ID of the owner of the card.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The ID of the card to be updated.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="addressCity">
          <xs:annotation>
            <xs:documentation>The City component of the Card Address</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="addressCountry">
          <xs:annotation>
            <xs:documentation>The Country component of the Card Address</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="addressLine1">
          <xs:annotation>
            <xs:documentation>The Address, Line 1, component of the Card Address</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="addressLine2">
          <xs:annotation>
            <xs:documentation>The Address, Line 2, component of the Card Address</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="addressState">
          <xs:annotation>
            <xs:documentation>The State component of the Card Address</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="addressZip">
          <xs:annotation>
            <xs:documentation>The Zipcode component of the Card Address</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="expMonth">
          <xs:annotation>
            <xs:documentation>The Card's expiry month</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="expYear">
          <xs:annotation>
            <xs:documentation>The Card's expiry year</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="cardName">
          <xs:annotation>
            <xs:documentation>The name for the card</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="DeleteCardType" substitutionGroup="mule:abstract-message-processor" name="delete-card">
    <xs:annotation>
      <xs:documentation>Delete a Card</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="DeleteCardType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="ownerId">
          <xs:annotation>
            <xs:documentation>The ID of the owner of the card.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The ID of the card to be deleted.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="ListAllCustomerCardsType" substitutionGroup="mule:abstract-message-processor" name="list-all-customer-cards">
    <xs:annotation>
      <xs:documentation>List all Customer Cards
Note that this is only available for Customers at this time, as Recipients (of Transfers) have been deprecated by Stripe.
Stripe Connect is the recommended means for transferring funds.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListAllCustomerCardsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="ownerId">
          <xs:annotation>
            <xs:documentation>The ID of the customer whose cards will be retrieved</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="endingBefore">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="limit">
          <xs:annotation>
            <xs:documentation>A limit on the number of objects to be returned. Limit can range between 1 and 100 items.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="startingAfter">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CreateChargeType" substitutionGroup="mule:abstract-message-processor" name="create-charge">
    <xs:annotation>
      <xs:documentation>Create a Charge</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateChargeParametersObjectType">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="source">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="SourceObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="metadata">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:choice>
            <xs:sequence>
              <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                <xs:complexType>
                  <xs:simpleContent>
                    <xs:extension base="xs:string">
                      <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                      <xs:attribute type="xs:string" name="key"></xs:attribute>
                    </xs:extension>
                  </xs:simpleContent>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:sequence>
              <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
            </xs:sequence>
          </xs:choice>
          <xs:attribute type="xs:string" use="optional" name="ref">
            <xs:annotation>
              <xs:documentation>The reference object for this parameter</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="shipping">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:choice>
            <xs:sequence>
              <xs:element minOccurs="0" maxOccurs="unbounded" name="shipping">
                <xs:complexType>
                  <xs:simpleContent>
                    <xs:extension base="xs:string">
                      <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                      <xs:attribute type="xs:string" name="key"></xs:attribute>
                    </xs:extension>
                  </xs:simpleContent>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:sequence>
              <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
            </xs:sequence>
          </xs:choice>
          <xs:attribute type="xs:string" use="optional" name="ref">
            <xs:annotation>
              <xs:documentation>The reference object for this parameter</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" name="amount">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="currency">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="customerId">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="description">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="booleanType" use="optional" name="capture">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="statementDescriptor">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="destination">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="receiptEmail">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" name="applicationFee">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="CreateChargeType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="create-charge-parameters">
            <xs:annotation>
              <xs:documentation>Wrapper object for Create Charge Parameters</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:complexContent>
                <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="CreateChargeParametersObjectType"></xs:extension>
              </xs:complexContent>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveChargeType" substitutionGroup="mule:abstract-message-processor" name="retrieve-charge">
    <xs:annotation>
      <xs:documentation>Retrieve a Charge</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveChargeType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The identifier of the charge to be retrieved.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="UpdateChargeType" substitutionGroup="mule:abstract-message-processor" name="update-charge">
    <xs:annotation>
      <xs:documentation>Update a Charge
Updates the specified charge by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
This request accepts only the description, metadata, receipt_emailand fraud_details as arguments.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="UpdateChargeType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="metadata">
            <xs:annotation>
              <xs:documentation>A set of key/value pairs that you can attach to a charge object. It can be useful for storing additional information about the customer in a structured format. It's often a good idea to store an email address in metadata for tracking later.</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                          <xs:attribute type="xs:string" name="key"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute type="xs:string" use="optional" name="ref">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
          <xs:element minOccurs="0" maxOccurs="1" name="fraud-details">
            <xs:annotation>
              <xs:documentation>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. Note that you must refund a charge before setting the user_report to fraudulent. Stripe will use the information you send to improve our fraud detection algorithms.</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="unbounded" name="fraud-detail">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                          <xs:attribute type="xs:string" name="key"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute type="xs:string" use="optional" name="ref">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The id of the charge to update</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="description">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="receiptEmail">
          <xs:annotation>
            <xs:documentation>The email address to send this charge's receipt to. The receipt will not be sent until the charge is paid. If this charge is for a customer, the email address specified here will override the customer's email address. Receipts will not be sent for test mode charges. If receipt_email is specified for a charge in live mode, a receipt will be sent regardless of your email settings.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CaptureChargeType" substitutionGroup="mule:abstract-message-processor" name="capture-charge">
    <xs:annotation>
      <xs:documentation>Capture a Charge</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CaptureChargeType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The id of the charge to capture</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="amount">
          <xs:annotation>
            <xs:documentation>The amount to capture, which must be less than or equal to the original amount. Any additional amount will be automatically refunded.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="applicationFee">
          <xs:annotation>
            <xs:documentation>An application fee to add on to this charge. Can only be used with Stripe Connect.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="statementDescriptor">
          <xs:annotation>
            <xs:documentation>An arbitrary string to be displayed on your customer's credit card statement. This may be up to 22 characters. 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. The statement description may not include &lt;&gt;"' characters, and will appear on your customer's statement in capital letters. Non-ASCII characters are automatically stripped. While most banks display this information consistently, some may display it incorrectly or not at all.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="receiptEmail">
          <xs:annotation>
            <xs:documentation>The email the receipt should be sent to</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="ListAllChargesType" substitutionGroup="mule:abstract-message-processor" name="list-all-charges">
    <xs:annotation>
      <xs:documentation>List all Charges</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListAllChargesType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="created">
            <xs:annotation>
              <xs:documentation>... or it can be a dictionary with the following options: gt, gte, lt, lte</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:complexContent>
                <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="TimeRangeObjectType"></xs:extension>
              </xs:complexContent>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="createdTimestamp">
          <xs:annotation>
            <xs:documentation>A filter on the list based on the object created field. The value can be a string with an integer Unix timestamp,</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="customer">
          <xs:annotation>
            <xs:documentation>Only return charges for the customer specified by this customer ID.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="endingBefore">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="limit">
          <xs:annotation>
            <xs:documentation>A limit on the number of objects to be returned. Limit can range between 1 and 100 items.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="startingAfter">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CreateSubscriptionType" substitutionGroup="mule:abstract-message-processor" name="create-subscription">
    <xs:annotation>
      <xs:documentation>Create a Subscription</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateSubscriptionParametersObjectType">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="source">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="SourceObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="metadata">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:choice>
            <xs:sequence>
              <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                <xs:complexType>
                  <xs:simpleContent>
                    <xs:extension base="xs:string">
                      <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                      <xs:attribute type="xs:string" name="key"></xs:attribute>
                    </xs:extension>
                  </xs:simpleContent>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:sequence>
              <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
            </xs:sequence>
          </xs:choice>
          <xs:attribute type="xs:string" use="optional" name="ref">
            <xs:annotation>
              <xs:documentation>The reference object for this parameter</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute type="xs:string" use="optional" name="customerId">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="plan">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="coupon">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="trialEnd">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="sourceToken">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" name="quantity">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="doubleType" use="optional" name="applicationFeePercent">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="doubleType" use="optional" name="taxPercent">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="CreateSubscriptionType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="create-subscription-parameters">
            <xs:annotation>
              <xs:documentation>The Wrapped Subscription Parameters</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:complexContent>
                <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="CreateSubscriptionParametersObjectType"></xs:extension>
              </xs:complexContent>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveSubscriptionType" substitutionGroup="mule:abstract-message-processor" name="retrieve-subscription">
    <xs:annotation>
      <xs:documentation>Retrieve a Subscription</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveSubscriptionType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="customerId">
          <xs:annotation>
            <xs:documentation>The ID of the customer to create the subscription on</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="subscriptionId">
          <xs:annotation>
            <xs:documentation>ID of subscription to retrieve.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="UpdateSubscriptionType" substitutionGroup="mule:abstract-message-processor" name="update-subscription">
    <xs:annotation>
      <xs:documentation>Update a Subscription
Note that Stripe uses a specific policy around prorating changed subscriptions. If you want to use this endpoint, consider the documentation at https://stripe.com/docs/api/java#update_subscription closely.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="UpdateSubscriptionParametersObjectType">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="source">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="SourceObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="metadata">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:choice>
            <xs:sequence>
              <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                <xs:complexType>
                  <xs:simpleContent>
                    <xs:extension base="xs:string">
                      <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                      <xs:attribute type="xs:string" name="key"></xs:attribute>
                    </xs:extension>
                  </xs:simpleContent>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:sequence>
              <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
            </xs:sequence>
          </xs:choice>
          <xs:attribute type="xs:string" use="optional" name="ref">
            <xs:annotation>
              <xs:documentation>The reference object for this parameter</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute type="xs:string" use="optional" name="customerId">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="subscriptionId">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="plan">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="coupon">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="booleanType" use="optional" name="prorate">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="trialEnd">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="sourceToken">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" name="quantity">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="doubleType" use="optional" name="applicationFeePercent">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="doubleType" use="optional" name="taxPercent">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="UpdateSubscriptionType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="update-subscription-parameters">
            <xs:annotation>
              <xs:documentation>Wrapper for the complex Update Subscription Parameters</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:complexContent>
                <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="UpdateSubscriptionParametersObjectType"></xs:extension>
              </xs:complexContent>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CancelSubscriptionType" substitutionGroup="mule:abstract-message-processor" name="cancel-subscription">
    <xs:annotation>
      <xs:documentation>Cancel a Subscription</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CancelSubscriptionType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="customerId">
          <xs:annotation>
            <xs:documentation>The ID of the customer to cancel the subscription of</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="subscriptionId">
          <xs:annotation>
            <xs:documentation>ID of subscription to cancel.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="ListActiveSubscriptionsType" substitutionGroup="mule:abstract-message-processor" name="list-active-subscriptions">
    <xs:annotation>
      <xs:documentation>List Active Subscriptions</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListActiveSubscriptionsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="customerId">
          <xs:annotation>
            <xs:documentation>The ID of the customer whose subscriptions will be retrieved</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="endingBefore">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="limit">
          <xs:annotation>
            <xs:documentation>A limit on the number of objects to be returned. Limit can range between 1 and 100 items.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="startingAfter">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CreateRefundType" substitutionGroup="mule:abstract-message-processor" name="create-refund">
    <xs:annotation>
      <xs:documentation>Create a Refund
When you create a new refund, you must specify a charge to create it on.
Creating a new refund will refund a charge that has previously been created but not yet refunded. Funds will be refunded to the credit or debit card that was originally charged. The fees you were originally charged are also refunded.
You can optionally refund only part of a charge. You can do so as many times as you wish until the entire charge has been refunded.
Once entirely refunded, a charge can't be refunded again. This method will throw an error when called on an already-refunded charge, or when trying to refund more money than is left on a charge.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateRefundType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="metadata">
            <xs:annotation>
              <xs:documentation>A set of key/value pairs that you can attach to a refund object. It can be useful for storing additional information about the refund in a structured format. You can unset an individual key by setting its value to null and then saving. To clear all keys, set metadata to null, then save.</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                          <xs:attribute type="xs:string" name="key"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute type="xs:string" use="optional" name="ref">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The identifier of the charge to be refunded.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="amount">
          <xs:annotation>
            <xs:documentation>A positive integer in cents representing how much of this charge to refund. Can only refund up to the unrefunded amount remaining of the charge.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="booleanType" use="optional" default="false" name="refundApplicationFee">
          <xs:annotation>
            <xs:documentation>Boolean indicating whether the application fee should be refunded when refunding this charge. If a full charge refund is given, the full application fee will be refunded. Else, the application fee will be refunded with an amount proportional to the amount of the charge refunded. An application fee can only be refunded by the application that created the charge.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="reason">
          <xs:annotation>
            <xs:documentation>String indicating the reason for the refund. If set, possible values are duplicate, fraudulent, and requested_by_customer. Specifying fraudulent as the reason when you believe the charge to be fraudulent will help us improve our fraud detection algorithms.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveRefundType" substitutionGroup="mule:abstract-message-processor" name="retrieve-refund">
    <xs:annotation>
      <xs:documentation>Retrieve a Refund
By default, you can see the 10 most recent refunds stored directly on the charge object, but you can also retrieve details about a specific refund stored on the charge.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveRefundType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The identifier of the refund</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="chargeId">
          <xs:annotation>
            <xs:documentation>The identifier of the Charge refunded.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="UpdateRefundType" substitutionGroup="mule:abstract-message-processor" name="update-refund">
    <xs:annotation>
      <xs:documentation>Update a Refund
Updates the specified refund by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
This request only accepts metadata as an argument.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="UpdateRefundType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="metadata">
            <xs:annotation>
              <xs:documentation>A set of key/value pairs that you can attach to a refund object. It can be useful for storing additional information about the refund in a structured format.</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                          <xs:attribute type="xs:string" name="key"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute type="xs:string" use="optional" name="ref">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The identifier of the refund</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="chargeId">
          <xs:annotation>
            <xs:documentation>The identifier of the Charge refunded.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="ListAllRefundsType" substitutionGroup="mule:abstract-message-processor" name="list-all-refunds">
    <xs:annotation>
      <xs:documentation>List All Refunds
You can see a list of the refunds belonging to a specific charge. Note that the 10 most recent refunds are always available by default on the charge object. If you need more than those 10, you can use this API method and the limit and starting_after parameters to page through additional refunds.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListAllRefundsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="chargeId">
          <xs:annotation>
            <xs:documentation>The ID of the charge whose refunds will be retrieved.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="endingBefore">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="limit">
          <xs:annotation>
            <xs:documentation>A limit on the number of objects to be returned. Limit can range between 1 and 100 items.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="startingAfter">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CreateInvoiceType" substitutionGroup="mule:abstract-message-processor" name="create-invoice">
    <xs:annotation>
      <xs:documentation>Create an invoice
Invoices are statements of what a customer owes for a particular billing period, including subscriptions, invoice items, and any automatic proration adjustments if necessary.
Once an invoice is created, payment is automatically attempted. Note that the payment, while automatic, does not happen exactly at the time of invoice creation. If you have configured webhooks, the invoice will wait until one hour after the last webhook is successfully sent (or the last webhook times out after failing).
Any customer credit on the account is applied before determining how much is due for that invoice (the amount that will be actually charged). If the amount due for the invoice is less than 50 cents (the minimum for a charge), we add the amount to the customer's running account balance to be added to the next invoice. If this amount is negative, it will act as a credit to offset the next invoice. Note that the customer account balance does not include unpaid invoices; it only includes balances that need to be taken into account when calculating the amount due for the next invoice.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateInvoiceType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="metadata">
            <xs:annotation>
              <xs:documentation>Arbitrary key-value pairs to attach to the invoice</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                          <xs:attribute type="xs:string" name="key"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute type="xs:string" use="optional" name="ref">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="customerId">
          <xs:annotation>
            <xs:documentation>The customer to create the invoice for</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="applicationFee">
          <xs:annotation>
            <xs:documentation>A fee in cents that will be applied to the invoice and transferred to the application owner’s Stripe account.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="description">
          <xs:annotation>
            <xs:documentation>The invoice description</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="statementDescriptor">
          <xs:annotation>
            <xs:documentation>Extra information about a charge for the customer’s credit card statement.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="subscription">
          <xs:annotation>
            <xs:documentation>The ID of the subscription to invoice. If not set, the created invoice will include all pending invoice items for the customer. If set, the created invoice will exclude pending invoice items that pertain to other subscriptions.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="doubleType" use="optional" default="0.0" name="taxPercent">
          <xs:annotation>
            <xs:documentation>The percent tax rate applied to the invoice, represented as a decimal number.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveInvoiceType" substitutionGroup="mule:abstract-message-processor" name="retrieve-invoice">
    <xs:annotation>
      <xs:documentation>Retrieve an Invoice</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveInvoiceType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The identifier of the desired invoice</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveInvoiceLineItemsType" substitutionGroup="mule:abstract-message-processor" name="retrieve-invoice-line-items">
    <xs:annotation>
      <xs:documentation>Retrieve an invoice's line items
When retrieving an invoice, you'll get a lines property containing the total count of line items and the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of line items.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveInvoiceLineItemsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The id of the invoice containing the lines to be retrieved</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="customer">
          <xs:annotation>
            <xs:documentation>In the case of upcoming invoices, the customer of the upcoming invoice is required. In other cases it is ignored.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="endingBefore">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="limit">
          <xs:annotation>
            <xs:documentation>A limit on the number of objects to be returned. Limit can range between 1 and 100 items.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="startingAfter">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="subscription">
          <xs:annotation>
            <xs:documentation>In the case of upcoming invoices, the subscription of the upcoming invoice is optional. In other cases it is ignored.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveUpcomingInvoiceType" substitutionGroup="mule:abstract-message-processor" name="retrieve-upcoming-invoice">
    <xs:annotation>
      <xs:documentation>Retrieve an upcoming invoice
At any time, you can preview the upcoming invoice for a customer. This will show you all the charges that are pending, including subscription renewal charges, invoice item charges, etc. It will also show you any discount that is applicable to the customer.
Note that when you are viewing an upcoming invoice, you are simply viewing a preview -- the invoice has not yet been created. As such, the upcoming invoice will not show up in invoice listing calls, and you cannot use the API to pay or edit the invoice. If you want to change the amount that your customer will be billed, you can add, remove, or update pending invoice items, or update the customer's discount.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveUpcomingInvoiceType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="customerId">
          <xs:annotation>
            <xs:documentation>The identifier of the customer whose upcoming invoice you'd like to retrieve.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="subscription">
          <xs:annotation>
            <xs:documentation>The identifier of the subscription for which you'd like to retrieve the upcoming invoice. If not provided, you will retrieve the next upcoming invoice from among the customer's subscriptions.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="UpdateInvoiceType" substitutionGroup="mule:abstract-message-processor" name="update-invoice">
    <xs:annotation>
      <xs:documentation>Update an invoice</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="UpdateInvoiceType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="metadata">
            <xs:annotation>
              <xs:documentation>Arbitrary key-value pairs to attach to the invoice</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                          <xs:attribute type="xs:string" name="key"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute type="xs:string" use="optional" name="ref">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="invoiceId">
          <xs:annotation>
            <xs:documentation>The invoice to update</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="applicationFee">
          <xs:annotation>
            <xs:documentation>A fee in cents that will be applied to the invoice and transferred to the application owner’s Stripe account.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="booleanType" use="optional" default="false" name="closed">
          <xs:annotation>
            <xs:documentation>Boolean representing whether an invoice is closed or not. To close an invoice, pass true.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="description">
          <xs:annotation>
            <xs:documentation>The invoice description</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="booleanType" use="optional" default="false" name="forgiven">
          <xs:annotation>
            <xs:documentation>Boolean representing whether an invoice is forgiven or not. To forgive an invoice, pass true. Forgiving an invoice instructs us to update the subscription status as if the invoice were succcessfully paid. Once an invoice has been forgiven, it cannot be unforgiven or reopened.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="statementDescriptor">
          <xs:annotation>
            <xs:documentation>Extra information about a charge for the customer’s credit card statement.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="doubleType" use="optional" default="0.0" name="taxPercent">
          <xs:annotation>
            <xs:documentation>The percent tax rate applied to the invoice, represented as a decimal number.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="PayInvoiceType" substitutionGroup="mule:abstract-message-processor" name="pay-invoice">
    <xs:annotation>
      <xs:documentation>Pay an invoice</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="PayInvoiceType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>the invoice id</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveAllInvoicesType" substitutionGroup="mule:abstract-message-processor" name="retrieve-all-invoices">
    <xs:annotation>
      <xs:documentation>List all Invoices</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveAllInvoicesType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="date">
            <xs:annotation>
              <xs:documentation>or it can be a dictionary with the following options: gt, gte, lt, lte</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:complexContent>
                <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="TimeRangeObjectType"></xs:extension>
              </xs:complexContent>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="customerId">
          <xs:annotation>
            <xs:documentation>The id of the customer</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="dateTimestamp">
          <xs:annotation>
            <xs:documentation>A filter on the list based on the object date field. The value can be a string with an integer Unix timestamp,...</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="endingBefore">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="limit">
          <xs:annotation>
            <xs:documentation>A limit on the number of objects to be returned. Limit can range between 1 and 100 items.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="startingAfter">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveApplicationFeeType" substitutionGroup="mule:abstract-message-processor" name="retrieve-application-fee">
    <xs:annotation>
      <xs:documentation>Retrieve an Application Fee</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveApplicationFeeType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The identifier of the fee to be retrieved.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="ListAllApplicationFeesType" substitutionGroup="mule:abstract-message-processor" name="list-all-application-fees">
    <xs:annotation>
      <xs:documentation>List all Application Fees</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListAllApplicationFeesType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="created">
            <xs:annotation>
              <xs:documentation>or it can be a dictionary with the following options: gt, gte, lt, lte</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:complexContent>
                <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="TimeRangeObjectType"></xs:extension>
              </xs:complexContent>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="charge">
          <xs:annotation>
            <xs:documentation>Only return application fees for the charge specified by this charge ID.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="createdTimestamp">
          <xs:annotation>
            <xs:documentation>A filter on the list based on the created field. The value can be a string with an integer Unix timestamp,...</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="endingBefore">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="limit">
          <xs:annotation>
            <xs:documentation>A limit on the number of objects to be returned. Limit can range between 1 and 100 items.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="startingAfter">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CreateAccountType" substitutionGroup="mule:abstract-message-processor" name="create-account">
    <xs:annotation>
      <xs:documentation>Create an Account</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="BankAccountObjectType">
    <xs:sequence></xs:sequence>
    <xs:attribute type="xs:string" use="optional" name="country">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="currency">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="routingNumber">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="accountNumber">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="AddressObjectType">
    <xs:sequence></xs:sequence>
    <xs:attribute type="xs:string" use="optional" name="line1">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="line2">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="city">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="state">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="postalCode">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="country">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="DateOfBirthObjectType">
    <xs:sequence></xs:sequence>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" name="day">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" name="month">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" name="year">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="OwnerObjectType">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="address">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="AddressObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="dob">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="DateOfBirthObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute type="xs:string" use="optional" name="firstName">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="lastName">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="verificationDocumentId">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="LegalEntityObjectType">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="address">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="AddressObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="dob">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="DateOfBirthObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="personal-address">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="AddressObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="additional-owners">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" maxOccurs="unbounded" name="additional-owner">
              <xs:complexType>
                <xs:complexContent>
                  <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="OwnerObjectType">
                    <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                  </xs:extension>
                </xs:complexContent>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
          <xs:attribute type="xs:string" use="optional" name="ref">
            <xs:annotation>
              <xs:documentation>The reference object for this parameter</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute type="xs:string" use="optional" name="type">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="businessName">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="businessTaxId">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="businessVatId">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="firstName">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="lastName">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="personalIdNumber">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ssnLast4">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="verificationDocumentId">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="AcceptanceObjectType">
    <xs:sequence></xs:sequence>
    <xs:attribute type="xs:string" use="optional" name="date">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ip">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="userAgent">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="TransferScheduleObjectType">
    <xs:sequence></xs:sequence>
    <xs:attribute type="xs:string" use="optional" name="delayDays">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="interval">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="monthlyAnchor">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="weeklyAnchor">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="CreateAccountParametersObjectType">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="bank-account">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="BankAccountObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="legal-entity">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="LegalEntityObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="tos-acceptance">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="AcceptanceObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="transfer-schedule">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="TransferScheduleObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="metadata">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:choice>
            <xs:sequence>
              <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                <xs:complexType>
                  <xs:simpleContent>
                    <xs:extension base="xs:string">
                      <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                      <xs:attribute type="xs:string" name="key"></xs:attribute>
                    </xs:extension>
                  </xs:simpleContent>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:sequence>
              <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
            </xs:sequence>
          </xs:choice>
          <xs:attribute type="xs:string" use="optional" name="ref">
            <xs:annotation>
              <xs:documentation>The reference object for this parameter</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="booleanType" use="optional" name="managed">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="country">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="email">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="businessName">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="businessUrl">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="supportPhone">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="booleanType" use="optional" name="debitNegativeBalances">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="defaultCurrency">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="productDescription">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="statementDescriptor">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="CreateAccountType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="create-account-parameters">
            <xs:annotation>
              <xs:documentation>Wrapper for the complex parameter set</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:complexContent>
                <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="CreateAccountParametersObjectType"></xs:extension>
              </xs:complexContent>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveAccountType" substitutionGroup="mule:abstract-message-processor" name="retrieve-account">
    <xs:annotation>
      <xs:documentation>Retrieve an Account's Details</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveAccountType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The identifier of the account to be retrieved.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="UpdateAccountType" substitutionGroup="mule:abstract-message-processor" name="update-account">
    <xs:annotation>
      <xs:documentation>Update an Account
You may only update accounts that you manage. To update your own account, you can currently only do so via the dashboard.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="UpdateAccountParametersObjectType">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="bank-account">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="BankAccountObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="legal-entity">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="LegalEntityObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="tos-acceptance">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="AcceptanceObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="transfer-schedule">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:complexContent>
            <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="TransferScheduleObjectType"></xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="metadata">
        <xs:annotation>
          <xs:documentation></xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:choice>
            <xs:sequence>
              <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                <xs:complexType>
                  <xs:simpleContent>
                    <xs:extension base="xs:string">
                      <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                      <xs:attribute type="xs:string" name="key"></xs:attribute>
                    </xs:extension>
                  </xs:simpleContent>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:sequence>
              <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
            </xs:sequence>
          </xs:choice>
          <xs:attribute type="xs:string" use="optional" name="ref">
            <xs:annotation>
              <xs:documentation>The reference object for this parameter</xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute type="xs:string" use="optional" name="id">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="email">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="businessName">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="businessUrl">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="supportPhone">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="booleanType" use="optional" name="debitNegativeBalances">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="defaultCurrency">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="productDescription">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="statementDescriptor">
      <xs:annotation>
        <xs:documentation></xs:documentation>
      </xs:annotation>
    </xs:attribute>
    <xs:attribute type="xs:string" use="optional" name="ref">
      <xs:annotation>
        <xs:documentation>The reference object for this parameter</xs:documentation>
      </xs:annotation>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="UpdateAccountType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="update-account-parameters">
            <xs:annotation>
              <xs:documentation>Wrapper for the Update Account Parameters</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:complexContent>
                <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="UpdateAccountParametersObjectType"></xs:extension>
              </xs:complexContent>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CreateCardTokenType" substitutionGroup="mule:abstract-message-processor" name="create-card-token">
    <xs:annotation>
      <xs:documentation>Create a Card Token</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateCardTokenType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="card">
            <xs:annotation>
              <xs:documentation>... Otherwise, if you do not pass a customer, a Map containing a user's credit card details</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:complexContent>
                <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="SourceObjectType"></xs:extension>
              </xs:complexContent>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="cardId">
          <xs:annotation>
            <xs:documentation>The card this token will represent. If you also pass in a customer, the card must be the ID of a card belonging to the customer...</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="customer">
          <xs:annotation>
            <xs:documentation>For use with Stripe Connect only; this can only be used with an OAuth access token or Stripe-Account header.. For more details, see the shared customers documentation. A customer (owned by the application's account) to create a token for.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CreateBankAccountTokenType" substitutionGroup="mule:abstract-message-processor" name="create-bank-account-token">
    <xs:annotation>
      <xs:documentation>Create a Bank Account Token
Creates a single use token that wraps the details of a bank account. This token can be used in place of a bank account Map with any API method. These tokens can only be used once: by attaching them to a recipient.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateBankAccountTokenType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="bank-account">
            <xs:annotation>
              <xs:documentation>... Otherwise, if you do not pass a bank account ID, a Map containing a the account details</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:complexContent>
                <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="BankAccountObjectType"></xs:extension>
              </xs:complexContent>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="bankAccountId">
          <xs:annotation>
            <xs:documentation>The bank account's ID, or...</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveTokenType" substitutionGroup="mule:abstract-message-processor" name="retrieve-token">
    <xs:annotation>
      <xs:documentation>Retrieve a Token
Retrieves the token with the given ID</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveTokenType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The ID of the desired token</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveEventType" substitutionGroup="mule:abstract-message-processor" name="retrieve-event">
    <xs:annotation>
      <xs:documentation>Retrieve a Event
Retrieves the Event with the given ID</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveEventType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The ID of the desired event</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="ListAllEventsType" substitutionGroup="mule:abstract-message-processor" name="list-all-events">
    <xs:annotation>
      <xs:documentation>List All Events
List events, going back up to 30 days.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListAllEventsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="created">
            <xs:annotation>
              <xs:documentation>or it can be a dictionary with the following options: gt, gte, lt, lte</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:complexContent>
                <xs:extension xmlns="http://www.mulesoft.org/schema/mule/stripe" base="TimeRangeObjectType"></xs:extension>
              </xs:complexContent>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="createdTimestamp">
          <xs:annotation>
            <xs:documentation>A filter on the list based on the object created field. The value can be a string with an integer Unix timestamp</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="endingBefore">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="limit">
          <xs:annotation>
            <xs:documentation>A limit on the number of objects to be returned. Limit can range between 1 and 100 items.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="startingAfter">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="type">
          <xs:annotation>
            <xs:documentation>A string containing a specific event name, or group of events using * as a wildcard. The list will be filtered to include only events with a matching event property</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CreateApplicationFeeRefundType" substitutionGroup="mule:abstract-message-processor" name="create-application-fee-refund">
    <xs:annotation>
      <xs:documentation>Create an Application Fee Refund
Refunds an application fee that has previously been collected but not yet refunded. Funds will be refunded to the Stripe account that the fee was originally collected from.
You can optionally refund only part of an application fee. You can do so as many times as you wish until the entire fee has been refunded.
Once entirely refunded, an application fee can't be refunded again. This method will throw an error when called on an already-refunded application fee, or when trying to refund more money than is left on an application fee.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateApplicationFeeRefundType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The identifier of the application fee to be refunded.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="amount">
          <xs:annotation>
            <xs:documentation>A positive integer in cents representing how much of this fee to refund. Can only refund up to the unrefunded amount remaining of the fee.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveApplicationFeeRefundType" substitutionGroup="mule:abstract-message-processor" name="retrieve-application-fee-refund">
    <xs:annotation>
      <xs:documentation>Retrieve an Application Fee Refund
By default, you can see the 10 most recent refunds stored directly on the application fee object, but you can also retrieve details about a specific refund stored on the application fee.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveApplicationFeeRefundType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The ID of the refund to retrieve</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="fee">
          <xs:annotation>
            <xs:documentation>ID of the Application Fee refunded</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="UpdateApplicationFeeRefundType" substitutionGroup="mule:abstract-message-processor" name="update-application-fee-refund">
    <xs:annotation>
      <xs:documentation>Update an Application Fee Refund
Updates the specified application fee refund by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
This request only accepts metadata as an argument.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="UpdateApplicationFeeRefundType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="metadata">
            <xs:annotation>
              <xs:documentation>A set of key/value pairs that you can attach to a refund object. It can be useful for storing additional information about the refund in a structured format. You can unset an individual key by setting its value to null and then saving.</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                          <xs:attribute type="xs:string" name="key"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute type="xs:string" use="optional" name="ref">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The identifier of the refund.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="fee">
          <xs:annotation>
            <xs:documentation>The identifier of the Application Fee refunded</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="ListAllApplicationFeeRefundsType" substitutionGroup="mule:abstract-message-processor" name="list-all-application-fee-refunds">
    <xs:annotation>
      <xs:documentation>List All Application Fee Refunds
You can see a list of the refunds belonging to a specific application fee. Note that the 10 most recent refunds are always available by default on the application fee object. If you need more than those 10, you can use this API method and the limit and starting_after parameters to page through additional refunds</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListAllApplicationFeeRefundsType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The ID of the application fee whose refunds will be retrieved.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="endingBefore">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="limit">
          <xs:annotation>
            <xs:documentation>A limit on the number of objects to be returned. Limit can range between 1 and 100 items.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="startingAfter">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CreateBitcoinReceiverType" substitutionGroup="mule:abstract-message-processor" name="create-bitcoin-receiver">
    <xs:annotation>
      <xs:documentation>Create a BitCoin Receiver
Creates a Bitcoin receiver object that can be used to accept bitcoin payments from your customer. The receiver exposes a Bitcoin address and is created with a bitcoin to USD exchange rate that is valid for 10 minutes.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateBitcoinReceiverType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="metadata">
            <xs:annotation>
              <xs:documentation>A set of key/value pairs that you can attach to a customer object. It can be useful for storing additional information about the customer in a structured format.</xs:documentation>
            </xs:annotation>
            <xs:complexType>
              <xs:choice>
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="unbounded" name="metadatum">
                    <xs:complexType>
                      <xs:simpleContent>
                        <xs:extension base="xs:string">
                          <xs:attribute type="xs:string" use="optional" name="value-ref"></xs:attribute>
                          <xs:attribute type="xs:string" name="key"></xs:attribute>
                        </xs:extension>
                      </xs:simpleContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:sequence>
                  <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"></xs:any>
                </xs:sequence>
              </xs:choice>
              <xs:attribute type="xs:string" use="optional" name="ref">
                <xs:annotation>
                  <xs:documentation>The reference object for this parameter</xs:documentation>
                </xs:annotation>
              </xs:attribute>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="required" name="amount">
          <xs:annotation>
            <xs:documentation>The amount of currency that you will be paid</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" default="USD" name="currency">
          <xs:annotation>
            <xs:documentation>The currency to which the bitcoin will be converted. You will be paid out in this currency. Only USD is currently supported.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="email">
          <xs:annotation>
            <xs:documentation>The email address of the customer.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="description">
          <xs:annotation>
            <xs:documentation>A description of the receiver</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="booleanType" use="optional" default="false" name="refundMispayments">
          <xs:annotation>
            <xs:documentation>A flag that indicates whether you would like Stripe to automatically handle refunds for any mispayments to the receiver.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="RetrieveBitcoinReceiverType" substitutionGroup="mule:abstract-message-processor" name="retrieve-bitcoin-receiver">
    <xs:annotation>
      <xs:documentation>Retrieve a Bitcoin Receiver
Retrieves the Bitcoin receiver with the given ID.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="RetrieveBitcoinReceiverType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="id">
          <xs:annotation>
            <xs:documentation>The ID of the receiver to retrieve</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="ListAllBitcoinReceiversType" substitutionGroup="mule:abstract-message-processor" name="list-all-bitcoin-receivers">
    <xs:annotation>
      <xs:documentation>List All Bitcoin Receivers
Returns a list of your receivers. Receivers are returned sorted by creation date, with the most recently created receivers appearing first.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="ListAllBitcoinReceiversType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="active">
          <xs:annotation>
            <xs:documentation>Filter for active receivers.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="endingBefore">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="filled">
          <xs:annotation>
            <xs:documentation>Filter for filled receivers.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="integerType" use="optional" default="0" name="limit">
          <xs:annotation>
            <xs:documentation>A limit on the number of objects to be returned. Limit can range between 1 and 100 items.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="startingAfter">
          <xs:annotation>
            <xs:documentation>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.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="optional" name="uncapturedFunds">
          <xs:annotation>
            <xs:documentation>Filter for receivers with uncaptured funds.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element xmlns="http://www.mulesoft.org/schema/mule/stripe" xmlns:mule="http://www.mulesoft.org/schema/mule/core" type="CreateFileUploadType" substitutionGroup="mule:abstract-message-processor" name="create-file-upload">
    <xs:annotation>
      <xs:documentation>Create a file upload
To upload a file to Stripe, you'll need to send a request of type multipart/form-data. The request should contain the file you would like to upload, as well as the parameters for creating a file.</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:complexType name="CreateFileUploadType">
    <xs:complexContent>
      <xs:extension xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:abstractMessageProcessorType">
        <xs:attribute type="xs:string" use="required" name="config-ref">
          <xs:annotation>
            <xs:documentation>Specify which configuration to use for this invocation.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute type="xs:string" use="required" name="file">
          <xs:annotation>
            <xs:documentation>A file to upload. The file should follow the specifications of RFC 2388 (which defines file transfers for the multipart/form-data protocol).</xs:documentation>
          </xs:annotation>
        </xs:attribute>
        <xs:attribute xmlns="http://www.mulesoft.org/schema/mule/stripe" type="FilePurposeEnumType" use="required" name="purpose">
          <xs:annotation>
            <xs:documentation>The purpose of the uploaded file. Possible values are identity_document, dispute_evidence.</xs:documentation>
          </xs:annotation>
        </xs:attribute>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:simpleType name="FilePurposeEnumType">
    <xs:annotation>
      <xs:documentation>Represents the two options for a file purpose</xs:documentation>
    </xs:annotation>
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="IDENTITY_DOCUMENT">
            <xs:annotation>
              <xs:documentation></xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value="DISPUTE_EVIDENCE">
            <xs:annotation>
              <xs:documentation></xs:documentation>
            </xs:annotation>
          </xs:enumeration>
        </xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:propertyPlaceholderType"></xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="OnNoTokenPolicyEnumType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="EXCEPTION"></xs:enumeration>
          <xs:enumeration value="STOP_FLOW"></xs:enumeration>
        </xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:propertyPlaceholderType"></xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="integerType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:integer"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:propertyPlaceholderType"></xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="decimalType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:decimal"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:propertyPlaceholderType"></xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="floatType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:float"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:propertyPlaceholderType"></xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="doubleType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:double"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:propertyPlaceholderType"></xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="dateTimeType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:dateTime"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:propertyPlaceholderType"></xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="longType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:long"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:propertyPlaceholderType"></xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="byteType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:byte"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:propertyPlaceholderType"></xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="booleanType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:boolean"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:propertyPlaceholderType"></xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="anyUriType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:anyURI"></xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:propertyPlaceholderType"></xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
  <xs:simpleType name="charType">
    <xs:union>
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:minLength value="1"></xs:minLength>
          <xs:maxLength value="1"></xs:maxLength>
        </xs:restriction>
      </xs:simpleType>
      <xs:simpleType>
        <xs:restriction xmlns:mule="http://www.mulesoft.org/schema/mule/core" base="mule:propertyPlaceholderType"></xs:restriction>
      </xs:simpleType>
    </xs:union>
  </xs:simpleType>
</xs:schema>