---
updatedAt: 2026-08-06T16:59:56.000Z
agentTools:
  siteIndex: https://developers.pismo.io/llms.txt
  projectIndex: https://developers.pismo.io/pismo-docs/llms.txt
---

# List BACS direct credit transactions [beta]

List BACS direct credit transactions for an account.

This endpoint takes an account token - an access token encoded with a Pismo account ID.  The account is parsed from the token.


# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "Payment rails - BACS payments",
    "description": "BACS payments system API",
    "contact": {
      "name": "API Support",
      "url": "https://developers.pismo.io/support/"
    },
    "license": {
      "name": "Copyright Pismo"
    },
    "version": "1.0"
  },
  "servers": [
    {
      "url": "https://sandbox.pismolabs.io/bacs",
      "description": "Sandbox API server for testing."
    }
  ],
  "tags": [
    {
      "name": "BACS direct credit"
    }
  ],
  "components": {
    "parameters": {
      "afterIdQuery": {
        "name": "afterId",
        "in": "query",
        "description": "Pagination cursor. Pass this field as a query parameter to get the next page.",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 2000
        }
      },
      "authHeader": {
        "name": "Authorization",
        "in": "header",
        "schema": {
          "type": "string"
        },
        "description": "Account token - access token encoded with a Pismo account ID. Tokens can expire quickly, which can result in a <b>401 Unauthorized</b> message\n",
        "required": true
      },
      "beginDateQuery": {
        "name": "beginDate",
        "in": "query",
        "description": "Return records created on or after this date/time (RFC3339).",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 40,
          "example": "2026-08-01T00:00:00Z"
        }
      },
      "endDateQuery": {
        "name": "endDate",
        "in": "query",
        "description": "Return records created on or before this date/time (RFC3339).",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 40,
          "example": "2026-08-31T23:59:59Z"
        }
      },
      "idQuery": {
        "name": "id",
        "in": "query",
        "description": "Transaction or mandate ID filter",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 36
        }
      },
      "pageSizeQuery": {
        "name": "pageSize",
        "in": "query",
        "description": "Maximum number of items to return per page. Default is `10`.",
        "required": false,
        "schema": {
          "type": "integer",
          "format": "int64",
          "minimum": 1,
          "maximum": 100,
          "default": 10,
          "example": 50
        }
      },
      "reqTrackingIdHeader": {
        "name": "x-cid",
        "in": "header",
        "schema": {
          "type": "string"
        },
        "description": "Request tracking ID. If not provided, a random UUID is generated.\n",
        "required": false
      },
      "transactionStatusQuery": {
        "name": "status",
        "in": "query",
        "description": "Transaction status filter",
        "required": false,
        "schema": {
          "type": "string",
          "enum": [
            "CREATED",
            "PROCESSING",
            "SETTLED",
            "CANCELLED",
            "HOLD"
          ]
        }
      },
      "transactionTypeQuery": {
        "name": "transactionType",
        "in": "query",
        "description": "Direct debit transaction type filter",
        "required": false,
        "schema": {
          "type": "string",
          "enum": [
            "DIRECTDEBIT_INBOUND",
            "DIRECTDEBIT_OUTBOUND",
            "DIRECTDEBIT_IN_RETURN",
            "DIRECTDEBIT_OUT_RETURN",
            "DIRECTDEBIT_IN_REVERSAL",
            "DIRECTDEBIT_OUT_REVERSAL"
          ]
        }
      }
    },
    "schemas": {
      "accountId": {
        "type": "integer",
        "description": "Account ID",
        "example": 12345678
      },
      "afterId": {
        "type": "string",
        "description": "Pagination cursor to pass as query parameter to get the next page\n",
        "example": "019e92ec-3362-7c54-9d17-89f5542a06e4"
      },
      "amount": {
        "type": "number",
        "description": "Transaction amount.",
        "example": 600
      },
      "createdAtDateTime": {
        "type": "string",
        "format": "date-time",
        "description": "Created at date-time. RFC 3339 format",
        "example": "2026-08-05T10:15:00Z"
      },
      "currencyCode": {
        "type": "integer",
        "description": "ISO 4217 numeric currency code",
        "example": 826
      },
      "customer.DetailMessage": {
        "type": "object",
        "properties": {
          "external": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/customer.ExternalMessage"
            }
          },
          "parameters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/customer.ParameterMessage"
            }
          },
          "payload": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/customer.PayloadMessage"
            }
          }
        }
      },
      "customer.Error": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "Error's code.",
            "example": "EPT0001"
          },
          "details": {
            "$ref": "#/components/schemas/customer.DetailMessage"
          },
          "message": {
            "type": "string",
            "description": "Error's message.",
            "example": "User not found"
          }
        }
      },
      "customer.ExternalMessage": {
        "type": "object",
        "required": [
          "code",
          "message"
        ],
        "properties": {
          "code": {
            "type": "string",
            "description": "Code",
            "example": "PBE315"
          },
          "message": {
            "type": "string",
            "description": "Message",
            "example": "Generic error"
          }
        }
      },
      "customer.ParameterMessage": {
        "type": "object",
        "required": [
          "field",
          "message"
        ],
        "properties": {
          "field": {
            "type": "string",
            "description": "Field",
            "example": "Query parameter"
          },
          "message": {
            "type": "string",
            "description": "Message",
            "example": "Generic error"
          }
        }
      },
      "customer.PayloadMessage": {
        "type": "object",
        "required": [
          "field",
          "message"
        ],
        "properties": {
          "field": {
            "type": "string",
            "description": "Field",
            "example": "Entity.field"
          },
          "message": {
            "type": "string",
            "description": "Message",
            "example": "Generic error"
          }
        }
      },
      "listing.Transaction": {
        "type": "object",
        "description": "A BACS transaction record returned by the list endpoints.",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/transactionId"
          },
          "org_id": {
            "$ref": "#/components/schemas/orgId"
          },
          "account_id": {
            "$ref": "#/components/schemas/accountId"
          },
          "transaction_type": {
            "$ref": "#/components/schemas/transactionType"
          },
          "reference": {
            "$ref": "#/components/schemas/reference"
          },
          "mandate_id": {
            "$ref": "#/components/schemas/mandateId"
          },
          "payment_scheme": {
            "$ref": "#/components/schemas/paymentScheme"
          },
          "transaction_status": {
            "$ref": "#/components/schemas/status"
          },
          "amount": {
            "$ref": "#/components/schemas/amount"
          },
          "currency_code": {
            "$ref": "#/components/schemas/currencyCode"
          },
          "processing_date": {
            "$ref": "#/components/schemas/processingDate"
          },
          "return_reason": {
            "$ref": "#/components/schemas/returnReason"
          },
          "return_code": {
            "$ref": "#/components/schemas/returnCode"
          },
          "return_origin": {
            "$ref": "#/components/schemas/returnOrigin"
          },
          "original_transaction_id": {
            "$ref": "#/components/schemas/originalTransactionId"
          },
          "created_at": {
            "$ref": "#/components/schemas/createdAtDateTime"
          },
          "updated_at": {
            "$ref": "#/components/schemas/updatedAtDateTime"
          }
        }
      },
      "listing.TransactionListResponse": {
        "type": "object",
        "description": "Paginated list of BACS transactions.",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/listing.Transaction"
            }
          },
          "next_page": {
            "$ref": "#/components/schemas/nextPage"
          },
          "after_id": {
            "$ref": "#/components/schemas/afterId"
          }
        }
      },
      "mandateId": {
        "type": "string",
        "description": "Form3-assigned mandate ID",
        "example": "b254bb5e-6f1a-4c2b-9c1e-2f0a6d3e8c11"
      },
      "nextPage": {
        "type": "boolean",
        "description": "Are there more results?",
        "example": true
      },
      "orgId": {
        "type": "string",
        "description": "Organization/tenant ID",
        "example": "TN-KGIOODJD...1000"
      },
      "originalTransactionId": {
        "type": "string",
        "description": "Original transaction ID",
        "example": "08ec4cf7-2d74-5453-80e0-e940ac8fc219"
      },
      "paymentScheme": {
        "type": "string",
        "description": "Payment scheme",
        "enum": [
          "BACS"
        ],
        "example": "BACS"
      },
      "processingDate": {
        "type": "string",
        "description": "Processing date. Format = yyyy-mm-dd",
        "example": "2026-08-10"
      },
      "reference": {
        "type": "string",
        "description": "Reference note",
        "example": "Weekly money for Mom"
      },
      "returnCode": {
        "type": "string",
        "description": "ARUDD (Automated Return of Unpaid Direct Debit) return code:\n  * `0` - Refer to payer\n  * `1` - Instruction cancelled\n  * `2` - Payer deceased\n  * `3` - Account transferred\n  * `4` - Advance notice disputed\n  * `5` - No account\n  * `6` - No instruction\n  * `7` - Amount differs\n  * `8` - Amount not due\n  * `9` - Presentation overdue\n  * `A` - Originator differs\n  * `B` - Account closed\n",
        "enum": [
          "0",
          "1",
          "2",
          "3",
          "4",
          "5",
          "6",
          "7",
          "8",
          "9",
          "A",
          "B"
        ],
        "example": "A"
      },
      "returnOrigin": {
        "type": "string",
        "description": "Indicates whether the client or the system initiates the return\n  * `CLIENT`—The client initiates the return via this endpoint\n  * `SYSTEM`—The system initiates the return automatically\n",
        "enum": [
          "CLIENT",
          "SYSTEM"
        ],
        "example": "SYSTEM"
      },
      "returnReason": {
        "type": "string",
        "description": "The reason for the return.\n  * `account_closed` — The beneficiary account is no longer active.\n  * `account_currency_mismatch` — The payment currency does not match the account currency.\n  * `other` — A reason that the other specific codes do not cover.\n  * `cancelled_by_payer`— The payer requests cancellation of the payment.\n",
        "enum": [
          "account_closed",
          "account_currency_mismatch",
          "cancelled_by_payer",
          "other"
        ],
        "example": "account_closed"
      },
      "status": {
        "type": "string",
        "description": "- `CREATED` - Payment has been created and is pending processing<br />\n- `PROCESSING` - P2P balance was impacted and waiting for provider confirmation. For cashin, the transaction means the money will be credited on the next Working Day<br />\n- `SETTLED` - Transaction completed processing and is settled<br />\n- `CANCELLED` - Something went wrong and the transaction is cancelled. Refer to `reason` for more details<br />\n- `HOLD` - The payment is on hold, pending further review<br />\n",
        "enum": [
          "CREATED",
          "PROCESSING",
          "SETTLED",
          "CANCELLED",
          "HOLD"
        ],
        "example": "PROCESSING"
      },
      "transactionId": {
        "type": "string",
        "description": "Transaction ID",
        "example": "019e92ec-3362-7c54-9d17-89f5542a06e4"
      },
      "transactionType": {
        "type": "string",
        "description": "Transaction type",
        "enum": [
          "DIRECTCREDIT_INBOUND",
          "DIRECTCREDIT_OUTBOUND",
          "DIRECTCREDIT_REVERSAL",
          "DIRECTCREDIT_OUTBOUND_REVERSAL",
          "DIRECTCREDIT_IN_RETURN",
          "DIRECTCREDIT_OUT_RETURN",
          "DIRECTDEBIT_OUTBOUND",
          "DIRECTDEBIT_OUT_RETURN"
        ],
        "example": "DIRECTCREDIT_OUTBOUND"
      },
      "updatedAtDateTime": {
        "type": "string",
        "format": "date-time",
        "description": "Updated at date-time. RFC 3339 format",
        "example": "2026-08-05T10:15:00Z"
      }
    }
  },
  "paths": {
    "/v1/payments/bacs/directcredit": {
      "get": {
        "summary": "List BACS direct credit transactions [beta]",
        "description": "List BACS direct credit transactions for an account.\n\nThis endpoint takes an account token - an access token encoded with a Pismo account ID.  The account is parsed from the token.\n",
        "operationId": "get-bacs-directcredit-list",
        "tags": [
          "BACS direct credit"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/authHeader"
          },
          {
            "$ref": "#/components/parameters/reqTrackingIdHeader"
          },
          {
            "$ref": "#/components/parameters/idQuery"
          },
          {
            "$ref": "#/components/parameters/transactionStatusQuery"
          },
          {
            "$ref": "#/components/parameters/transactionTypeQuery"
          },
          {
            "$ref": "#/components/parameters/beginDateQuery"
          },
          {
            "$ref": "#/components/parameters/endDateQuery"
          },
          {
            "$ref": "#/components/parameters/afterIdQuery"
          },
          {
            "$ref": "#/components/parameters/pageSizeQuery"
          }
        ],
        "responses": {
          "200": {
            "description": "Paginated list of direct credit transactions",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/listing.TransactionListResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/customer.Error"
                },
                "examples": {
                  "EBACS0004": {
                    "summary": "Validation Error",
                    "value": {
                      "code": "EBACS0004",
                      "message": "Validation error"
                    }
                  }
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/customer.Error"
                },
                "examples": {
                  "EBACS0002": {
                    "summary": "Missing Tenant Header",
                    "value": {
                      "code": "EBACS0002",
                      "message": "Missing required header: 'x-tenant'"
                    }
                  },
                  "EBACS0085": {
                    "summary": "Missing Account Id",
                    "value": {
                      "code": "EBACS0085",
                      "message": "Missing required account-id"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal Server Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/customer.Error"
                },
                "examples": {
                  "EBACS0023": {
                    "summary": "Transaction Database Error",
                    "value": {
                      "code": "EBACS0023",
                      "message": "Transaction database error"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}
```