public class

ZuoraModule

extends Object
java.lang.Object
   ↳ org.mule.modules.zuora.ZuoraModule
Known Direct Subclasses
Known Indirect Subclasses

Class Overview

Zuora is the leader in online recurring billing and payment solutions for SaaS and subscription businesses.

This connector provides full access to the Z-Commerce platform API.

Summary

Fields
private ZuoraClient<Exception> client The client to use.
private String endpoint Target URI to connect to
Public Constructors
ZuoraModule()
Public Methods
Map<String, Object> accountProfile(String accountId)
Retrieve an account profile

List<AmendResult> amend(List<AmendRequest> amendaments)
Amends subscriptions

synchronized void connect(String username, String password)
Connects to Zuora
List<SaveResult> create(ZObjectType type, List<Map<String, Object>> zobjects)
Batch creation of ZObjects

List<DeleteResult> delete(ZObjectType type, List<String> ids)
Batch delete of ZObjects

synchronized void disconnect()
Destroys the session
Iterable<ZObject> find(String zquery)
Lazily retrieves ZObject that match a given query, written in Zuora native query language

List<SaveResult> generate(ZObjectType type, List<Map<String, Object>> zobjects)
Batch creation of invoces for accounts

ZuoraClient<Exception> getClient()
String getEndpoint()
Map<String, Object> getInvoice(String invoiceId)
Retrieve a full invoice

String getSessionId()
User getUserInfo()
Answers user information

boolean isConnected()
Map<String, Object> productProfile(String productId)
Retrieve a product profile

void setClient(ZuoraClient<Exception> client)
void setEndpoint(String endpoint)
List<SubscribeResult> subscribe(List<SubscribeRequest> subscriptions)
Batch creation of ZObjects associated to Subscriptions

List<SaveResult> update(ZObjectType type, List<Map<String, Object>> zobjects)
Batch update of ZObjects

[Expand]
Inherited Methods
From class java.lang.Object

Fields

private ZuoraClient<Exception> client

The client to use. Mainly for mocking purposes

private String endpoint

Target URI to connect to

Public Constructors

public ZuoraModule ()

Public Methods

public Map<String, Object> accountProfile (String accountId)

Retrieve an account profile

Parameters
accountId The id of the account to retrieve an account profile for
Returns
  • the account, as a String-Object Map
Throws
Exception if request fails

public List<AmendResult> amend (List<AmendRequest> amendaments)

Amends subscriptions

Parameters
amendaments The list of amendaments to perform
Returns
Throws
Exception if amend fails

public synchronized void connect (String username, String password)

Connects to Zuora

Parameters
username Username to identify the user
password Password to authenticate the username
Throws
ConnectionException

public List<SaveResult> create (ZObjectType type, List<Map<String, Object>> zobjects)

Batch creation of ZObjects

Parameters
type The type of zobject passed
zobjects The zobjects to create
Returns
Throws
Exception If creation fails

public List<DeleteResult> delete (ZObjectType type, List<String> ids)

Batch delete of ZObjects

Parameters
type The type of ZObjects to delete
ids The list of ids to delete
Returns
Throws
Exception if deletion fails

public synchronized void disconnect ()

Destroys the session

public Iterable<ZObject> find (String zquery)

Lazily retrieves ZObject that match a given query, written in Zuora native query language

Parameters
zquery The query, using the SQL-Like Zuora Query Language
Returns
  • a ZObject iterable. ZObject returned by this operation may be instances of either static ZObject - like Account or Amendment -, if the object is a non-customizable Zuora entity, or ZObject, if the object is a customizable Zuora entity
Throws
Exception if find fails

public List<SaveResult> generate (ZObjectType type, List<Map<String, Object>> zobjects)

Batch creation of invoces for accounts

Parameters
type The type of zobject passed
zobjects The zobjects to generate, as a list of string-object maps . Zuora attribute names, unlike java beans, are CamelCase.
Returns
Throws
Exception if generation fails

public ZuoraClient<Exception> getClient ()

public String getEndpoint ()

public Map<String, Object> getInvoice (String invoiceId)

Retrieve a full invoice

Parameters
invoiceId The id of the account to retrieve an account profile for
Returns
  • the invoice, as a String-Object Map
Throws
Exception if request fails

public String getSessionId ()

public User getUserInfo ()

Answers user information

Returns
Throws
Exception if request fails

public boolean isConnected ()

public Map<String, Object> productProfile (String productId)

Retrieve a product profile

Parameters
productId The id of the product to retrieve a product profile for
Returns
  • the profile, as a String-Object Map
Throws
Exception if requesting product profile fails

public void setClient (ZuoraClient<Exception> client)

Parameters
client

public void setEndpoint (String endpoint)

Parameters
endpoint

public List<SubscribeResult> subscribe (List<SubscribeRequest> subscriptions)

Batch creation of ZObjects associated to Subscriptions

Parameters
subscriptions The list of subscriptions to perform
Returns
  • a subscription results list, one for each subscription
Throws
Exception If subscription fails

public List<SaveResult> update (ZObjectType type, List<Map<String, Object>> zobjects)

Batch update of ZObjects

Parameters
type The type of zobject passed
zobjects The zobjects to update, as a list of string-object maps . Zuora attribute names, unlike java beans, are CamelCase.
Returns
Throws
Exception If update fails