ChapaChapa Docs

All Transfers

Get all your transfers with Chapa

This section describes how to get all your transfers with Chapa.

Endpoint: https://api.chapa.co/v1/transfers
Method: GET
Authorization: Pass your secret key as a bearer token in the request header to authorize this call.

cURL
JavaScript
PHP
Python

Successful Response

The API returns a paginated list of all your transfers:

{
  "message": "Transfer details fetched",
  "status": "success",
  "meta": {
    "current_page": 1,
    "first_page_url": "https://api.chapa.co/v1/transfers?page=1",
    "last_page": 16,
    "last_page_url": "https://api.chapa.co/v1/transfers?page=16",
    "next_page_url": "https://api.chapa.co/v1/transfers?page=2",
    "path": "https://api.chapa.co/v1/transfers?page=1",
    "per_page": 10,
    "prev_page_url": null,
    "to": 10,
    "total": 159,
    "error": []
  },
  "data": [
    {
      "account_name": "suz",
      "account_number": "1",
      "currency": "ETB",
      "amount": 1,
      "charge": 0,
      "transfer_type": "bank",
      "chapa_reference": "7039636706566",
      "bank_code": 656,
      "bank_name": "Awash Bank",
      "bank_reference": null,
      "status": "failed/cancelled",
      "reference": null,
      "created_at": "2022-10-24T14:46:56.000000Z",
      "updated_at": "2023-08-07T10:49:59.000000Z"
    },
    {
      "account_name": "Kidus Yared",
      "account_number": "1000180831502",
      "currency": "ETB",
      "amount": 10,
      "charge": 0,
      "transfer_type": "bank",
      "chapa_reference": "703963635595",
      "bank_code": 946,
      "bank_name": "Commercial Bank of Ethiopia (CBE)",
      "bank_reference": null,
      "status": "failed/cancelled",
      "reference": "703963635595",
      "created_at": "2023-05-02T07:58:26.000000Z",
      "updated_at": "2023-10-10T09:20:45.000000Z"
    },
    {
      "account_name": "Kidus Yared",
      "account_number": "1000180831502",
      "currency": "ETB",
      "amount": 5,
      "charge": 0,
      "transfer_type": "bank",
      "chapa_reference": "7039636781315",
      "bank_code": 946,
      "bank_name": "Commercial Bank of Ethiopia (CBE)",
      "bank_reference": "FT23240M6PV5",
      "status": "success",
      "reference": null,
      "created_at": "2023-08-27T16:48:55.000000Z",
      "updated_at": "2023-08-27T16:56:04.000000Z"
    }
  ]
}

Response Parameters

ParameterTypeDescription
messagestringResponse message
statusstringStatus of the request (success/failed)
metaobjectPagination metadata
meta.current_pagenumberCurrent page number
meta.first_page_urlstringURL to first page
meta.last_pagenumberTotal number of pages
meta.last_page_urlstringURL to last page
meta.next_page_urlstring|nullURL to next page (if available)
meta.pathstringBase path for pagination
meta.per_pagenumberNumber of items per page
meta.prev_page_urlstring|nullURL to previous page (if available)
meta.tonumberLast item number on current page
meta.totalnumberTotal number of transfers
dataarrayArray of transfer objects
account_namestringRecipient account name
account_numberstringRecipient account number
currencystringCurrency code (ETB, USD)
amountnumberTransfer amount
chargenumberTransfer fee
transfer_typestringType of transfer (bank, wallet)
chapa_referencestringChapa's internal reference ID
bank_codenumberBank code
bank_namestringBank name
bank_referencestring|nullBank transaction reference (if available)
statusstringTransfer status (success, failed/cancelled, pending)
referencestring|nullYour transaction reference (if provided)
created_atstringTimestamp when transfer was created
updated_atstringTimestamp when transfer was last updated

Failed Response

{
  "message": "Invalid API Key or User doesn't exist",
  "status": "failed",
  "data": null
}

Refer to our Error Codes page for all responses for this request.

Query Parameters

You can use the following query parameters to filter and paginate results:

  • batch_id: Filter transfers by batch ID (useful for bulk transfers)
  • page: Page number for pagination (default: 1)
  • per_page: Number of items per page (default: 10)

Example: Filter by Batch ID

import requests

url = "https://api.chapa.co/v1/transfers?batch_id=1"
headers = {
  'Authorization': 'Bearer CHASECK-xxxxxxxxxxxxxxxx'
}
response = requests.get(url, headers=headers)
print(response.text)

Pagination

The response includes pagination information to help you navigate through multiple pages of transfers. Use the next_page_url and prev_page_url fields to fetch additional pages.

Use Cases

  • Transaction History: View all your transfer history
  • Bulk Transfer Status: Check status of transfers from a bulk transfer batch using batch_id
  • Reconciliation: Reconcile transfers with your records
  • Reporting: Generate reports on transfer activity

Next Steps

On this page