Outgoing ACH Debit

Tutorial: Outgoing ACH Debit:

  • Description: A customer within the MBanq Cloud system initiates a request to transfer funds from an external account.
  • Example Situation: A customer wants to make a payment for a purchase using funds from their external bank account. They authorize the transfer of funds from their account to the recipient's account through the MBanq Cloud platform.

📘

API Reference for Outgoing ACH Debit:

  1. The customer, who is part of the MBanq Cloud system, initiates a request to move funds from an external account.
  2. MBanq Cloud, acting as the Originating Depository Financial Institution (ODFI), debits the requested amount from the customer's account within their system.
  3. MBanq Cloud creates an ACH file containing the payment details, including the customer's account information and the debit amount.
  4. The ACH file is transmitted to the ACH Operator for processing and clearing.
  5. The ACH Operator forwards the ACH file to the Receiving Depository Financial Institution (RDFI) associated with the external account.
  6. The RDFI processes the ACH file and debits the funds from the customer's external account, transferring them to MBanq Cloud as the originator.

Tutorial: Outgoing ACH Transaction

In this tutorial, we will guide you through the process of initiating an outgoing ACH transaction using the MBanq Cloud Platform. The steps involved are as follows:

  1. Initiate Transfer: Use the following cURL command to initiate the ACH transfer from your system (NeoBank System) to pull funds from an external account. You can include a reference field as a memo for additional information.
curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer YOUR_API_KEY" -d '{
	"type": "DEBIT",
	"dateFormat": "YYYY-MM-DD",
	"paymentType": "ACH",
	"amount": 5,
	"reference": [
		"12345678"
	],
	"creditor": {
		"identifier": "ACCOUNT:9000971111673"
	},
	"debtor": {
		"identifier": "ACH://062000019/12104288",
		"name": "Saman Tipputhynhean",
		"address": [
			"17 Robert Lane",
			"line2",
			"lineN"
		],
		"country": "US",
		"agent": {
			"name": "BANK OF AMERICA",
			"identifier": "051000017",
			"address": [
				"17 Robert Lane",
				"line2",
				"lineN"
			]
		}
	},
	"reference": [
		"12345678"
	]
}' https://api.cloud.mbanq.com/v1/transfers

The response will include the created transfer details.

  1. Notification - Scheduled: Set up a webhook subscription to receive notifications about the transfer. Subscribe to the following event:
  • ENTITY: TRANSFER
  • ACTION: CREATE, EXECUTE
  1. Notification - Processing: During the cutoff time, when the transfer is being processed and the transfer file is being built for the Fed network, your system (NeoBank System) will receive a webhook notification. Subscribe to the following event:
  • ENTITY: TRANSFER
  • ACTION: MARK_AS_PROCESSING
  1. Notification - Failed: When the system receives a notification from the Fed network that the transfer has failed, your system (NeoBank System) will receive a webhook notification. Subscribe to the following event:
  • ENTITY: TRANSFER
  • ACTION: MARK_AS_FAIL

At this point, you can use the received payload to query more information about the transfer using the Retrieve a Transfer API. For example, to retrieve the details of a specific transfer (ID: 10405), use the following cURL command:

curl -H "Content-Type: application/json" -H "Authorization: Bearer YOUR_API_KEY" https://api.cloud.mbanq.com/v1/transfers/10405

This will return the complete details of the transfer, including status, error codes, and additional information.

Please note that in the cURL commands, you need to replace YOUR_API_KEY with your actual API key for authentication and authorization.