Welcome to the DisburseCloud API documentation, your comprehensive guide to simplifying financial transactions and optimizing your business operations. Whether you're a developer looking to integrate our API into your applications or a business owner seeking to streamline your financial processes, this documentation has everything you need to get started.
Explore our seamless integration capabilities, empowering developers to incorporate DisburseCloud into their existing systems effortlessly while ensuring minimal disruption to business operations.
Discover our extensive toolkit, equipping you with the necessary tools to manage every aspect of your financial transactions, from handling payments to verifying user identities and maintaining the security of your operations.
Learn how DisburseCloud is tailored to meet the specific needs of various financial services, including automated payments, real-time transaction tracking, and user credential management, ensuring your applications are optimized for efficiency.
Understand the benefits of our dual environments for testing and production, providing developers with a sandbox environment to experiment with new features before deploying them to production, ensuring a reliable and scalable infrastructure for your operations.
Experience the scalability of our infrastructure, designed to support your growing business needs seamlessly, whether you're a startup or a large enterprise.
With the DisburseCloud API documentation as your guide, you can streamline your financial processes, enhance security, and improve overall efficiency, empowering you to focus on what matters most—growing your business.
At DisburseCloud, safeguarding the security and integrity of financial transactions is our top priority. Our API employs robust authentication mechanisms, and one central component of our security framework is the authentication endpoint. This endpoint serves as the primary method for user authentication, ensuring secure access to our API's powerful functionality.
When you submit your credentials to our authentication endpoint, you initiate a secure authentication process. Upon successful authentication, the system grants you an access token, also known as a Bearer token. This token is essential for authorizing subsequent API calls, allowing you to securely interact with our endpoints.
Generating your Bearer tokens is a simple process. After authentication, you'll receive a personalized token with a validity period of 3600 seconds. You can obtain this token programmatically via API calls.
Protecting your Bearer tokens is crucial to maintain the security of your account and financial data. Store your tokens securely and avoid exposing them publicly or embedding them directly in your application code. Instead, use trusted methods like environment variables or a secure vault solution.
To access our API services, include your Bearer token in the Authorization header of your API requests. This ensures uninterrupted and secure interaction with our endpoints, allowing you to leverage our API's functionality with confidence.
By following these personalized guidelines and leveraging your Bearer token, you can confidently access the DisburseCloud API, knowing that your financial transactions are secure and confidential.
The Authentication section provides APIs for user authentication and authorization within the DisburseCloud ecosystem. These APIs ensure secure access to DisburseCloud services and protect sensitive financial data.
This endpoint acts as the gateway for user authentication using provided credentials. Upon successful authentication, an access token (Bearer token) is issued, which must be included in the Authorization header for authentication in all subsequent endpoint calls.
This token, obtained in the response body, is vital for accessing other endpoints securely. Tokens expire after 3600 seconds, so ensure timely renewal for uninterrupted access.
Authorization: Bearer {{access_token obtained in response body}}
Authentication to obtain an access_token
is done using Basic Authentication with the Company TIN as the username
and User API key as the password
.
To obtain the API Key:
For a Multi-Company user, it is crucial to include the CompanyApiKey
in the header.
This key uniquely identifies the specific company being accessed through the API and is essential for proper authentication and authorization.
CompanyApiKey: {{your company's api key}}
{- "access_token": "string",
- "token_type": "string",
- "expires_in": 36000
}
The Funding section provides a set of APIs that enable businesses to conveniently and securely add funds to their DisburseCloud accounts. These APIs offer flexible integration options, allowing businesses to seamlessly manage their account balances and ensure uninterrupted disbursements to recipients.
The Funding section empowers businesses to manage their DisburseCloud accounts effectively, facilitating seamless funding processes and ensuring the uninterrupted flow of disbursements to recipients.
This endpoint enables you to add funds to your company's account on DisburseCloud. It's important to note that the debited amount will be deducted from the bank account you provided during the DisburseCloud signup process.
CompanyApiKey | string The Company API Key is a unique authentication credential provided by DisburseCloud to each registered company. This key serves as a secure identifier for the company's access to DisburseCloud services and resources. |
payment_method required | string Enum: "ACH" "WireTransfer" The payment method you want to choose for "Add Funds". |
description required | string Description or note you want to add to the paymnet. |
large_disbursement required | boolean Indicates whether fund is for adding "funds" to facilitate the large disbursement or not. |
amount required | number <double> The monetary value you intend to contribute to the company's balance. |
{- "payment_method": "ACH",
- "description": "string",
- "large_disbursement": true,
- "amount": 2
}
The Disbursement section offers a comprehensive suite of APIs tailored to streamline the distribution of funds to recipients. Developers and businesses can take advantage of these APIs to simplify disbursement workflows, ensuring swift and secure transactions. Key features include robust tools for initiating disbursements, tracking transaction statuses in real-time, and managing recipient information seamlessly.
With user-friendly integration options and powerful capabilities, the Disbursement section empowers developers and businesses to optimize financial processes, driving efficiency and customer satisfaction.
This endpoint empowers users to distribute funds to recipients. You have the flexibility to designate authorization parties who must approve individual disbursements before they are executed. If the provided details are accurate, DisburseCloud will proceed to release funds to the specified payees. With DisburseCloud, users can access a range of payment options such as ACH, Virtual Card, Instant Deposit, Digital Check, Postal Check, Venmo, and PayPal. Additionally, you can customize the payment options available for selection by users through this API call.
large_disbursment: The Large Disbursement process is designed to provide a faster and more flexible funding option for clients who need to make significant disbursements that exceed their current account balance. This process allows clients to wire funds directly to DisburseCloud, bypassing the standard ACH process which can take up to three days.
1. Initiating a Large Disbursement:
2. Wiring Funds:
3. Categorizing Funds:
4. Processing the Disbursement:
5. Ensuring Smooth Operations:
6. Tracking and Reporting:
This process is particularly beneficial for clients who need to make urgent or large payments and prefer to avoid the delays associated with traditional funding methods. The Large Disbursement process ensures that clients can maintain a smooth and continuous flow of transactions without disrupting their operational balance.
authorization_parties: The Authorization Parties (Additional Payees) feature in DisburseCloud ensures that all necessary parties endorse a disbursement before the final payee can select their preferred payment modality. This system is analogous to the traditional multi-party check endorsement process, but it is designed to work seamlessly across all payment modalities offered by DisburseCloud. Here’s a detailed breakdown of how the process works:
1. Notification to the Payee:
2. Portal Access for Payee:
3. Entering Contact Information:
4. Notification to Additional Payees:
5. Digital Endorsement by Additional Payees:
6. Final Notification to Payee:
7. Selecting the Payment Modality:
8. Completion of Disbursement:
This multi-step process ensures that all necessary parties are informed and have provided their consent before a disbursement is finalized. By incorporating additional payee endorsements into the digital workflow, DisburseCloud provides a robust and secure method to manage complex disbursement requirements, enhancing both security and user satisfaction.
CompanyApiKey | string The Company API Key is a unique authentication credential provided by DisburseCloud to each registered company. This key serves as a secure identifier for the company's access to DisburseCloud services and resources. |
Create disbursement
disbursement_uuid required | string The unique identifier for the disbursement |
large_disbursement required | boolean Indicates whether the disbursement is large |
required | Array of objects (Payee) List of payees involved in the disbursement |
Array of objects (AuthorizationParty) List of authorization parties involved in the disbursement |
{- "disbursement_uuid": "disbursement-1",
- "large_disbursement": false,
- "authorization_parties": [
- {
- "party_uuid": "auth-party-1",
- "party_type": "INDIVIDUAL",
- "title": "Policy holder",
- "Company_name": "",
- "email": "auth_party@example.com",
- "first_name": "James",
- "last_name": "McGill",
- "phone": "0000000000"
}, - {
- "party_uuid": "auth-party-2",
- "party_type": "INDIVIDUAL",
- "Company_name": "",
- "title": "Policy holder",
- "email": "auth_party2@example.com",
- "first_name": "Thomas",
- "last_name": "Shelby",
- "phone": "0000000000"
}
], - "payees": [
- {
- "payee_type_id": 1,
- "amount": 20,
- "payee_uuid": "payee-1",
- "email": "payee_1@example.com",
- "first_name": "John",
- "last_name": "Doe",
- "address_one": "123 Main Street",
- "address_two": "",
- "city": "Payee city",
- "state": "FL",
- "zip_code": "33052",
- "phone": "0000000000",
- "delivery_options": {
- "email": true,
- "sms": false
}, - "allowed_payment_method_ids": [
- 1,
- 4,
- 5,
- 6,
- 7
], - "permission_required_from": [
- "auth-party-1",
- "auth-party-2"
], - "field_values": [
- {
- "name": "insurer_first_name",
- "value": "Gustavo"
}, - {
- "name": "insurer_last_name",
- "value": "Fring"
}, - {
- "name": "policy_no",
- "value": "Policy-1"
}
], - "payment_method_settings": {
- "check_postage_type": "FSO"
}
}
]
}
{- "disbursement_uuid": "disbursement-test-132",
- "payor_email": "payor@example.com",
- "authorization_parties": [
- {
- "party_uuid": "auth-party-1",
- "title": "Policy holder",
- "email": "auth_party@example.com",
- "first_name": "James",
- "last_name": "McGill",
- "phone": "0000000000"
}
], - "payees": [
- {
- "payee_uuid": "payee-test-1",
- "amount": 20,
- "email": "payee_1@gmail.com",
- "first_name": "John",
- "last_name": "Doe",
- "address_one": "123 Main Street",
- "address_two": "",
- "city": "Payee city",
- "state": "FL",
- "zip_code": "33052",
- "phone": "0000000000",
- "delivery_options": {
- "email": true,
- "sms": false
}, - "allowed_payment_method_ids": [
- 1,
- 4,
- 5,
- 6
], - "permission_required_from": [
- "auth-party-1",
- "auth-party-2"
], - "status": "PendingAuthorizationPartiesPermission",
- "payee_type_id": 1,
- "field_values": [
- {
- "name": "insurer_first_name",
- "value": "Gustavo"
}
]
}
], - "created_at": "2023-01-20 01:08:33"
}
This endpoint enables users to cancel a created disbursement for a specific payee by providing the disbursement uuid and the payee uuid of the disbursement to be cancelled.
disbursement_uuid required | string The disbursement uuid of the disbursement you want to cancel. |
payee_uuid required | string The payee uuid of the payee you want to cancel the disbursement for. |
CompanyApiKey | string The Company API Key is a unique authentication credential provided by DisburseCloud to each registered company. This key serves as a secure identifier for the company's access to DisburseCloud services and resources. |
{- "name": "VALIDATION_ERROR",
- "message": "Provides an explanation for the error's cause.",
- "details": [
- {
- "Issue": "The description of the error",
- "Field": "The name of the field that has the error.",
- "Location": "header"
}
]
}
This endpoint allows users to fetch comprehensive details pertaining to a specific disbursement, including transaction status, recipient information, transaction amount, and any associated metadata.
disbursement_uuid required | string The disbursement uuid of the disbursement you want the details for. |
CompanyApiKey | string The Company API Key is a unique authentication credential provided by DisburseCloud to each registered company. This key serves as a secure identifier for the company's access to DisburseCloud services and resources. |
{- "disbursement_uuid": "disbursement-test-132",
- "payor_email": "payor@example.com",
- "authorization_parties": [
- {
- "party_uuid": "auth-party-1",
- "title": "Policy holder",
- "email": "auth_party@example.com",
- "first_name": "James",
- "last_name": "McGill",
- "phone": "0000000000"
}
], - "payees": [
- {
- "payee_uuid": "payee-test-1",
- "amount": 20,
- "email": "payee_1@gmail.com",
- "first_name": "John",
- "last_name": "Doe",
- "address_one": "123 Main Street",
- "address_two": "",
- "city": "Payee city",
- "state": "FL",
- "zip_code": "33052",
- "phone": "0000000000",
- "delivery_options": {
- "email": true,
- "sms": false
}, - "allowed_payment_method_ids": [
- 1,
- 4,
- 5,
- 6
], - "permission_required_from": [
- "auth-party-1",
- "auth-party-2"
], - "status": "PendingAuthorizationPartiesPermission",
- "payee_type_id": 1,
- "field_values": [
- {
- "name": "insurer_first_name",
- "value": "Gustavo"
}
]
}
], - "created_at": "2023-01-20 01:08:33"
}
This endpoint is utilized to retrieve comprehensive details regarding a disbursement's payee. This includes pertinent information such as the payee's name, contact details, payment status, and any associated metadata.
disbursement_uuid required | string The disbursement uuid of the disbursement you want the details for. |
payee_uuid required | string The specific payee’s payee_uuid of whom you want the details for. |
CompanyApiKey | string The Company API Key is a unique authentication credential provided by DisburseCloud to each registered company. This key serves as a secure identifier for the company's access to DisburseCloud services and resources. |
{- "payee_type_id": 1,
- "amount": 20,
- "payee_uuid": "payee-1",
- "email": "payee_1@gmail.com",
- "first_name": "John",
- "last_name": "Doe",
- "address_one": "123 Main Street",
- "address_two": "",
- "city": "Payee city",
- "state": "FL",
- "zip_code": "33052",
- "phone": "0000000000",
- "delivery_options": {
- "email": true,
- "sms": false
}, - "allowed_payment_method_ids": [
- 1,
- 4,
- 5,
- 6
], - "permission_required_from": [
- "auth-party-1",
- "auth-party-2"
], - "field_values": [
- {
- "name": "insurer_first_name",
- "value": "Gustavo"
}
]
}
This endpoint allows users to resend the email notification to a specific payee associated with a particular disbursement. Users can trigger the reissuance of the email notification to ensure timely communication regarding the disbursement.
disbursement_uuid required | string The disbursement uuid of the disbursement you want the details for. |
payee_uuid required | string The specific payee’s payee_uuid of whom you want the details for. |
CompanyApiKey | string The Company API Key is a unique authentication credential provided by DisburseCloud to each registered company. This key serves as a secure identifier for the company's access to DisburseCloud services and resources. |
{- "name": "VALIDATION_ERROR",
- "message": "Provides an explanation for the error's cause.",
- "details": [
- {
- "Issue": "The description of the error",
- "Field": "The name of the field that has the error.",
- "Location": "header"
}
]
}
The endpoint enables users to access transaction details for a specific payee within a designated disbursement. It allows retrieval of information such as transaction status, amount, date, and associated metadata, facilitating efficient tracking and management of individual transactions.
disbursement_uuid required | string The disbursement uuid of the disbursement you want the details for. |
payee_uuid required | string The specific payee’s payee_uuid of whom you want the details for. |
CompanyApiKey | string The Company API Key is a unique authentication credential provided by DisburseCloud to each registered company. This key serves as a secure identifier for the company's access to DisburseCloud services and resources. |
{ }
This endpoint is specifically designed to retrieve all signed documents related to a payee's disbursement. By utilizing this endpoint, users can access a comprehensive collection of all documents that have been signed and associated with the payee's disbursement. This includes various documents such as Auth party agreements, ACH authorizations, payee contracts, and other legal paperwork necessary for the disbursement process. The endpoint provides a convenient and efficient way to access all the necessary signed documents in one place, streamlining the disbursement process and ensuring that all required documentation is easily
Create disbursement
disbursement_uuid required | string The disbursement uuid of the disbursement you want the details for. |
payee_uuid required | string The specific payee’s payee_uuid of whom you want the details for. |
{- "disbursement_uuid": "string",
- "payee_uuid": "string"
}
{- "DocumentName": "string",
- "SignedBy": "string",
- "SignedOn": "string",
- "DocumentLink": "string"
}
This API facilitates the uploading of diverse document types pertinent to payee disbursement processes. Document categories supported encompass After Payee Authentication, ACH Authorization, Authorization Party Approval, and Custom documents.
CompanyApiKey | string The Company API Key is a unique authentication credential provided by DisburseCloud to each registered company. This key serves as a secure identifier for the company's access to DisburseCloud services and resources. |
doc_type_id required | integer An identifier denoting the type of document. Permissible values range from 1 to 4, representing different document categories as follows:
|
name required | string A unique name for the document |
is_sign_required | boolean Specifies whether the document requires a signature. Set to |
one_time_use | boolean Indicates whether the custom document is for one-time use only. Set to |
pdf_base64 required | string The base64-encoded representation of the PDF document to be uploaded. Ensure that the PDF content is encoded properly for successful document upload |
{- "doc_type_id": 0,
- "name": "string",
- "is_sign_required": true,
- "one_time_use": true,
- "pdf_base64": "string"
}
{- "document_uuid": "string"
}
Webhooks are essential in modern payment systems for real-time communication and automation. They work by sending HTTP POST requests from the payment service to a predefined URL when specific events, like transactions or refunds, occur.
Webhooks can be accessed by
There are two types of events: Disbursements and Simple Payments.
Disbursements are for tracking multiple payments to a single item, such as a “Claim.” For example, a claim may involve multiple “Payees” (claimants) under one Disbursement UUID. Additional features include:
Simple Payments are straightforward. You enter the recipient's name, contact information, and an optional “memo.” The recipient is then sent a link to choose their preferred payment method.
{
webhookTrigger : {
payload : {
PaymentMethodId : 2,
EventDateTime : "2024-06-07T17:20:03.2098669Z",
EventTypeId : 2,
ZBCustPayeeFeeID : "3832361000004325001",
DisbursementPayee : {
Zip : null,
IsProcessed : false,
Email : "looper@icloud.com",
RegisteredPayeeId : null,
CreatedAt : "0001-01-01T00:00:00",
DisbursementStatusId : 0,
PaymentMethodSettings : null,
AuthParties : null,
IsUserUnreadNotePresent : false,
AllowedPaymentMethodIds : null,
Phone : "5207053334",
AddressTwo : null,
DeliveryOptions : null,
Status : null,
CustomDocuments : null,
FirstName : "Larry",
Amount : 0,
NumberOfUnreadNotes : 0,
BussinessName : null,
IssueDate : "0001-01-01T00:00:00",
PermissionRequiredFrom : null,
City : null,
IsAuthorizedByAuthParties : false,
UpdatedAt : "0001-01-01T00:00:00",
AddressOne : null,
PayeeStatusId : 0,
CustomFields : null,
PayeeUUID : null,
Transaction : null,
DisbursementId : 0,
State : null,
FullName : null,
TranscardToken : null,
PayeeTypeId : 0,
Id : 0,
LastName : "LOOPER",
DocumentsCount : 0,
CompanyLogoUrl : null
},
ZDAccountID : "446867000000661725",
PaymentMethodName : "CheckPayment",
ZBCustomerClaimID : "3832361000004323001",
CompanyName : " Auto MGA, LLC",
DisbursementPayeeUUID : "AZ0076047M",
PaymentType : "DISBURSEMENT",
ZBFboAcctID : "3832361000004324011",
ZBPaidThruID : "3832361000004325011",
SimplePaymentUUID : null,
EventReason : "Disbursement status changed!",
DDAId : null,
Amount : 245.44,
BilledAmount : 245.44,
PaymentMethodPayorFee : 1.76,
DocumentLink : null,
ZBPayPalAcctID : "3832361000004396007",
SimplePaymentPayee : null,
PaymentMethodPayeeFee : 0,
DisburseCloudFee : 0,
CheckImgURL : null,
CompanyTin : "83-1222222",
ZBChartofaccountID : "3832361000004326001",
EventTypeName : "DISBURSEMENT.PROCESSING",
ZBCustPayorFeeID : "3832361000004324001",
DisbursementUUID : "83011134",
DisbursementUrl : null
}
}
}
This section provides definitions for some important parameters.
Id | CODE | Postage Type |
---|---|---|
1 | FC | USPS First Class |
2 | PR | USPS Priority |
4 | PRS | USPS Priority + Sig Conf |
5 | SC | Fedex 2 Day |
6 | FSO | Fedex Standard Overnight * |
8 | USPSIDAY | USPS Priority Express |
9 | USPSCERT | USPS Certified Mail |
13 | FPO | Fedex Priority Overnight * |
14 | FFO | Fedex First Overnight * |
15 | FSD | Fedex Saturday Delivery * |
This parameter defines the type of payee you are sending the disbursement to. The value ranges from 1 to 4. Following is the explanation of all the payee type ids
Id | Payee Type |
---|---|
1 | ONE_TIMER |
2 | VENDOR |
3 | AGENCY |
4 | NAMED_INSURED |
The parameter specifies the payment methods that are acceptable for processing a transaction. We have payment method ids from 1 to 7. These ids map to the following payment methods:
Id | Payment Methods |
---|---|
1 | ACH |
2 | POSTAL CHECK |
3 | VIRTUAL CARD |
4 | INSTANT DEPOSIT |
5 | DIGITAL CHECK |
6 | VENMO |
7 | PAYPAL |