code: @NonNull
      public static SourceParams createAlipayReusableParams(
              @NonNull String currency,
              @Nullable String name,
              @Nullable String email,
              @NonNull String returnUrl) {
          final SourceParams params = new SourceParams()
                  .setType(Source.ALIPAY)
                  .setCurrency(currency)
                  .setRedirect(createSimpleMap(FIELD_RETURN_URL, returnUrl))
                  .setUsage(Source.REUSABLE);
  
          final AbstractMap<String, Object> ownerMap = new HashMap<>();
          ownerMap.put(FIELD_NAME, name);
          ownerMap.put(FIELD_EMAIL, email);
          removeNullAndEmptyParams(ownerMap);
          if (ownerMap.keySet().size() > 0) {
              params.setOwner(ownerMap);
          }
  
          return params;
      }
docs: Create parameters necessary for creating a reusable Alipay source.
  
  @param currency The currency of the payment. Must be the default currency for your country.
  Can be aud, cad, eur, gbp, hkd, jpy, nzd, sgd, or usd. Users in Denmark,
  Norway, Sweden, or Switzerland must use eur.
  @param name The name of the account holder (optional).
  @param email The email address of the account holder (optional).
  @param returnUrl The URL the customer should be redirected to after the authorization
  process.
  @return a {@link SourceParams} that can be used to create an Alipay reusable source
  
  @see <a href="https://stripe.com/docs/sources/alipay">https://stripe.com/docs/sources/alipay</a>