Assembly is a powerful payments engine, custom-built for platforms and marketplaces. Removing compliance, fraud, risk, staffing, and operational headaches, Assembly helps you focus on what matters most; your business.
The main component objects of the API are Users, Accounts, Items and Fees. The following diagram shows the relationships between the component objects:
The Item represents the good, asset or service that is being purchased on your platform or marketplace and acts as the conduit for payment and disbursement of funds from, and to, your users.
Items can be configured as one of four payment types: Escrow, Express, Escrow Partial Release or Approve.
Items require two Users, a buyer and seller, and also the Fees that you want to charge the parties involved.
Once the Item is configured, actions facilitate the flow of funds from the buyer to the Trust accounts, and then from the Trust accounts to the seller and to your platform.
Assembly provides a mechanism for you to charge surcharges and/or success fees for each Item that is bought or sold on your platform:
- Buyer/Seller fees - These are often referred to as success fees and relate specifically to the good, asset or service being bought and sold.
- Payment Surcharge - These can be charged as a surcharge for the payment method being used by the buyer. For example, a Credit Card surcharge or an ACH surcharge.
- Disbursement Fee - These can be charged for international wire disbursements, and Fees can be charged for domestic ACH/Direct Credit, Realtime (NPP/OSKO) or BPAY disbursements.
Assembly takes care of collection and disbursement of the Fees when the Item funds are released.
Assembly is perfect for multi-party transactions. The parties involved in a typical transaction are the buyer, seller, your platform, and Assembly. Assembly also caters for transactions which include multiple buyers or multiple sellers, including brokers.
The users you need to create and manage are the buyers and sellers. Assembly uses a single object called a User to manage both roles. As such, a User can be a buyer in one transaction and a seller in another.
For a buyer to make a payment, they require either a Bank Account (Direct Debit/ACH), a Card Account (Credit/Debit Card) or a funded Wallet Account.
For a seller to receive funds, they require a Bank Account which also needs to be set as the User’s disbursement account.
- Bank Account - A Bank Account can be used as both a payment method and a disbursement method. Assembly supports international disbursements in many different currencies.
- Card Account - Card Accounts can be used as a payment method. Card details are stored in a secure vault and are tokenized for future payments.
- Wallet Account - Wallet Accounts can be funded by a Bank Account or from the proceeds of other transactions. As such, Wallet Accounts can be used as a payment method. Wallet Accounts are also the default disbursement account for all Users.
To give your platform as much flexibility as possible, Assembly supports international payments in addition to multiple transaction types unique to our API, including; Escrow, Escrow Partial Release, Express payments and Approve payments. We also support a wide range of currencies.
Pay-in and pay-out methods
You can offer your buyers the ability to pay via Credit & Debit Cards, Wire Transfer, ACH, Direct Debit, Digital Wallet, Realtime and BPAY. Sellers can receive their funds either via ACH, Realtime payments, or Wire Transfer (including international wire transfers).
Assembly provides the Dashboard for the easy creation and management of users, accounts, fees and transactions.
The Dashboard provides a simple interface to view and interact with the data and actions being processed. It provides a view of all of your users, the Items that link them together, fees, transactions, and configurations. It is powered by the Assembly API, meaning that every action can also be achieved via an API call.
As we continuously improve and develop new products and features, these will become available through the Dashboard. However, certain functionality may only be available through the API.