Collect payments
If you’re looking to collect funds from other accounts, this guide covers the flow for your use case. Some examples of this scenario include:
- A subscription-based platform collecting payments from their users
- A utility service charging their customers for a monthly usage fee
- A supplier collecting payments from a business
Note that this use case is only available for businesses accounts. For the purposes of this guide, we’ll use an example where you will be building a hypothetical utility bill payment platform. The key players in this scenario are:
- The utility company (the account collecting funds)
- The customer (the account being charged)
Get your access token
To get started, you’ll need to:
- Create a Moov account
- Get your API keys
- Generate an access token
Set up the account collecting funds
Start by creating a Moov account for the utility company. Request the collect-funds
capability for the utility company’s account. Capabilities.
The capabilities endpoint will let you know what information about the utility company you’ll need to provide Moov before we enable the collect-funds
capability.
You can use the Moov wallet to collect payments. Every eligible Moov account automatically comes with a Moov wallet, so you won’t need to do any additional setup to collect funds to your Moov wallet.
Set up the account to collect from
Add a Moov account for the customer and request the transfers
capability for their account.
The capabilities endpoint will let you know what information about the customer you’ll need to provide Moov before we enable the transfer
capability.
Add a bank account for the customer. The customer must complete the micro-deposit verification process before you can pull funds from their account.
Once an external bank account has been verified and the transfers
capability has been enabled, Moov will automatically generate payment methods that can be used in the transfer.
Initiate the transfer
Once you’ve set up the utility company and the customer’s accounts, you’re ready to collect a payment. First, you can get a list of the available payment methods from the transfer options endpoint. When collecting a payment using ACH, you will always use a payment method of type ach-debit-collect
for the transfer source. Transfer options will also provide available payment methods for disbursement of the collected funds. For example, the utility company’s Moov wallet.
Once you’ve selected the payment methods for the transaction, you can initiate a transfer between the two accounts, using the payment method IDs for the wallet and bank account you got earlier in the transfer options request.
What’s next
Feel free to explore Moov.js, our in-browser JavaScript SDK. Or, if you’re interested in other use cases, you can dive into our guides: