List inbound ACH transfers
curl --request GET \
--url https://api.getlemma.com/v0/inbound-ach-transfers \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.getlemma.com/v0/inbound-ach-transfers"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.getlemma.com/v0/inbound-ach-transfers', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.getlemma.com/v0/inbound-ach-transfers",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.getlemma.com/v0/inbound-ach-transfers"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.getlemma.com/v0/inbound-ach-transfers")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getlemma.com/v0/inbound-ach-transfers")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "inbound_ach_transfer_Wp5mRx3nKv8bTh2d",
"account_id": "account_Rv4nBt8xKw2pMh6s",
"amount": 12500,
"status": "accepted",
"standard_entry_class_code": "corporate_credit_or_debit",
"effective_date": "2026-05-01",
"automatically_resolves_at": "2026-05-02T00:00:00Z",
"originator_company_name": "Acme Insurance",
"originator_company_entry_description": "HCCLAIMPMT",
"trace_number": "021000021000001",
"transaction_id": "transaction_Ab5cDx3nKv8bTh2d",
"settled_at": null,
"accepted_at": "2026-05-01T12:00:00Z",
"declined": null,
"returned": null
}
],
"has_next": false,
"cursor": null
}
Inbound ACH transfers
List inbound ACH transfers
Retrieve a paginated list of inbound ACH transfers, optionally filtered by account.
GET
/
v0
/
inbound-ach-transfers
List inbound ACH transfers
curl --request GET \
--url https://api.getlemma.com/v0/inbound-ach-transfers \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.getlemma.com/v0/inbound-ach-transfers"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.getlemma.com/v0/inbound-ach-transfers', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.getlemma.com/v0/inbound-ach-transfers",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.getlemma.com/v0/inbound-ach-transfers"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.getlemma.com/v0/inbound-ach-transfers")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getlemma.com/v0/inbound-ach-transfers")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "inbound_ach_transfer_Wp5mRx3nKv8bTh2d",
"account_id": "account_Rv4nBt8xKw2pMh6s",
"amount": 12500,
"status": "accepted",
"standard_entry_class_code": "corporate_credit_or_debit",
"effective_date": "2026-05-01",
"automatically_resolves_at": "2026-05-02T00:00:00Z",
"originator_company_name": "Acme Insurance",
"originator_company_entry_description": "HCCLAIMPMT",
"trace_number": "021000021000001",
"transaction_id": "transaction_Ab5cDx3nKv8bTh2d",
"settled_at": null,
"accepted_at": "2026-05-01T12:00:00Z",
"declined": null,
"returned": null
}
],
"has_next": false,
"cursor": null
}
Returns inbound ACH transfers ordered by most recent first. Results are paginated.
Query parameters
string
Filter inbound ACH transfers to a specific bank account, prefixed with
account_. You can find account IDs using the List bank
accounts endpoint. Omit to list inbound
ACH transfers across every account you can access.integer
default:"10"
The number of inbound ACH transfers to return. Maximum is 100.
string
Cursor from the previous response. Omit to fetch from the beginning.
Response
object[]
The list of inbound ACH transfer objects for the requested page.
Show Inbound ACH transfer object
Show Inbound ACH transfer object
string
Unique identifier for the inbound ACH transfer.
string
The Lemma account the transfer moves money into or out of.
integer
The transfer amount in cents. A positive amount indicates a credit pushed
into the account. A negative amount indicates a debit pulled from the
account.
string
Current status of the inbound ACH transfer.
Show possible values
Show possible values
-
pending— awaiting action, will resolve automatically if none is taken. -
declined— we declined the transfer. -
accepted— the transfer was accepted. -
returned— the transfer was returned.
string
The Standard Entry Class code for the transfer.
string
The date the transfer is effective.
string
The name of the company or person that sent the transfer.
string
A description of the transfer set by the originator.
string
A 15 digit number set by the sending bank; used with the amount and date to
identify the transfer.
string | null
The settled transaction, once the transfer posts.
object | null
object | null
string[]
The raw freeform addenda lines carried by the transfer (for example the
835/837
TRN and REF claim-payment segments), in the order the payer sent
them. To reconcile a healthcare claim payment, match the TRN carried here
against the TRN in your 835 ERA. Present only when the transfer includes
addenda.boolean
Whether more inbound ACH transfers exist after this page.
string | null
Pass this value as
cursor on the next request to fetch the following page.
null when this is the last page.{
"data": [
{
"id": "inbound_ach_transfer_Wp5mRx3nKv8bTh2d",
"account_id": "account_Rv4nBt8xKw2pMh6s",
"amount": 12500,
"status": "accepted",
"standard_entry_class_code": "corporate_credit_or_debit",
"effective_date": "2026-05-01",
"automatically_resolves_at": "2026-05-02T00:00:00Z",
"originator_company_name": "Acme Insurance",
"originator_company_entry_description": "HCCLAIMPMT",
"trace_number": "021000021000001",
"transaction_id": "transaction_Ab5cDx3nKv8bTh2d",
"settled_at": null,
"accepted_at": "2026-05-01T12:00:00Z",
"declined": null,
"returned": null
}
],
"has_next": false,
"cursor": null
}
⌘I