Transactions

The Transactions API allows you to initiate transfers, query transaction history, retrieve specific transactions, look up bank details by IBAN, and download account statements.

Get transactions by Account

get
/api/v1/transactions

Retrieves a paginated list of transactions for a specified account within a date range.

Authorizations
Query parameters
account_uuidstring · uuidRequired

Universally Unique Identifier (UUID) as defined by RFC 4122.

Example: e1f8a3b1-7d6c-4e9a-9b2e-3f8d1a9c5f2gPattern: ^[a-zA-Z0-9]{8}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{12}$
date_fromstring · date-timeRequired

Start date for the filter period (YYYY-MM-DD).

Example: 2025-04-01
date_tostring · date-timeRequired

End date for the filter period (YYYY-MM-DD).

Example: 2025-04-27
per_pageinteger · min: 1 · max: 100Optional

Number of items to return per page in a paginated response.

Default: 15
pageinteger · min: 1Optional

The current page number for paginated results.

Default: 1
directionstring · enumOptional

Sort direction for the transaction list.

Default: descPossible values:
sortstring · enumOptional

Field to sort the transaction list by.

Default: created_atPossible values:
Responses
200

A paginated list of transactions matching the criteria.

application/json
get
/api/v1/transactions
GET /api/v1/transactions?account_uuid=e1f8a3b1-7d6c-4e9a-9b2e-3f8d1a9c5f2g&date_from=2025-04-01&date_to=2025-04-27 HTTP/1.1
Host: public-api.gurupay.eu
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "account": {
    "uuid": "e1f8a3b1-7d6c-4e9a-9b2e-3f8d1a9c5f2g"
  },
  "transactions": [
    {
      "uuid": "a1b2c3d4-e5f6-7890-1234-567890abcdef",
      "parent_transaction_uuid": "a1b2c3d4-e5f6-7890-1234-567890abcdef",
      "status": "pending",
      "operation_date": "2025-04-27",
      "operation_date_time": "2025-04-27T10:30:00Z",
      "operation_date_unix": 1745821800,
      "amount": 1234.56,
      "currency": "EUR",
      "payment_type": "SEPA",
      "transaction_type": "payment",
      "payment_urgency": "NORMAL",
      "payment_details": "Invoice #INV-123 Payment",
      "payment_code": "SALARY",
      "end_to_end_ident": "E2E-XYZ789",
      "direction": "CREDIT",
      "document_number": "DOC-456",
      "created_at": 1745820000,
      "payer": {
        "name": "John Doe",
        "iban": "DE89 3704 0044 0532 0130 00",
        "address": "123 Main St, Anytown",
        "country_code": "DE",
        "agency_id": "DEUTDEFF",
        "agency_name": "Deutsche Bank",
        "agency_address": "Taunusanlage 12, Frankfurt",
        "ultimate": {
          "name": "Ultimate Payer Corp"
        }
      },
      "recipient": {
        "name": "Jane Smith",
        "iban": "FR76 3000 6000 0112 3456 7890 189",
        "address": "456 Oak Ave, Otherville",
        "country_code": "FR",
        "agency_id": "SOGEFRPP",
        "agency_name": "Société Générale",
        "agency_address": "29 Boulevard Haussmann, Paris",
        "ultimate": {
          "name": "Ultimate Recipient Inc"
        }
      },
      "verification_of_payee": "MATCH"
    }
  ]
}

Create a new transaction

post
/api/v1/transactions

Create a new transaction

Authorizations
Query parameters
account_uuidstring · uuidRequired

Universally Unique Identifier (UUID) as defined by RFC 4122.

Example: e1f8a3b1-7d6c-4e9a-9b2e-3f8d1a9c5f2gPattern: ^[a-zA-Z0-9]{8}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{12}$
Header parameters
X-Request-IDstring · uuidOptional

A unique identifier for the request. This header can be used for tracking and idempotency control, ensuring the same request is not processed multiple times.

Body

Data required to initiate a new transaction.

account_uuidstring · uuidRequired

The UUID of the source account for the transaction.

Example: d8f7b4a0-6e3c-4b5a-8d1e-2f7c9a8b4e1f
amountnumber · floatRequired

The monetary amount of the transaction. Must be greater than 0 and have a maximum of two decimal places.

Example: 199.99
payment_detailsstring | nullableOptional

Unstructured payment details or remittance information. Mandatory via validation rules if 'payment_code' is not provided.

Example: Payment for invoice #ABC-123
payment_codestring | nullableOptional

Structured payment code (e.g., Purpose Code). Mandatory via validation rules if 'payment_details' is not provided.

Example: RENT
end_to_end_identstring | nullableOptional

Optional End-to-End payment identifier for tracking.

Example: E2E-REF-001
payment_typestring · enum | nullableOptional

Indicates the type of payment. If not specified, SEPA will be selected by default. Accepted values: swift, sepa.

Example: SEPAPossible values:
Responses
201

Transaction Created Successfully. Returns the Transaction Resource.

application/json
post
/api/v1/transactions
POST /api/v1/transactions?account_uuid=e1f8a3b1-7d6c-4e9a-9b2e-3f8d1a9c5f2g HTTP/1.1
Host: public-api.gurupay.eu
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 555

{
  "account_uuid": "d8f7b4a0-6e3c-4b5a-8d1e-2f7c9a8b4e1f",
  "amount": 199.99,
  "payer": {
    "ultimate": {
      "name": "Ultimate Payer Company"
    }
  },
  "recipient": {
    "name": "Alice Recipient",
    "iban": "GB29 NWBK 6016 1331 9268 19",
    "address": "1 Financial Square, London",
    "country_code": "GB",
    "ultimate": {
      "name": "Ultimate Beneficiary Ltd."
    },
    "bank": {
      "bic": "NWBKGB2LXXX",
      "name": "National Westminster Bank",
      "address": "250 Bishopsgate, London",
      "country_code": "GB"
    }
  },
  "payment_details": "Payment for invoice #ABC-123",
  "payment_code": "RENT",
  "end_to_end_ident": "E2E-REF-001",
  "payment_type": "SEPA"
}
{
  "uuid": "a1b2c3d4-e5f6-7890-1234-567890abcdef",
  "parent_transaction_uuid": "a1b2c3d4-e5f6-7890-1234-567890abcdef",
  "status": "pending",
  "operation_date": "2025-04-27",
  "operation_date_time": "2025-04-27T10:30:00Z",
  "operation_date_unix": 1745821800,
  "amount": 1234.56,
  "currency": "EUR",
  "payment_type": "SEPA",
  "transaction_type": "payment",
  "payment_urgency": "NORMAL",
  "payment_details": "Invoice #INV-123 Payment",
  "payment_code": "SALARY",
  "end_to_end_ident": "E2E-XYZ789",
  "direction": "CREDIT",
  "document_number": "DOC-456",
  "created_at": 1745820000,
  "payer": {
    "name": "John Doe",
    "iban": "DE89 3704 0044 0532 0130 00",
    "address": "123 Main St, Anytown",
    "country_code": "DE",
    "agency_id": "DEUTDEFF",
    "agency_name": "Deutsche Bank",
    "agency_address": "Taunusanlage 12, Frankfurt",
    "ultimate": {
      "name": "Ultimate Payer Corp"
    }
  },
  "recipient": {
    "name": "Jane Smith",
    "iban": "FR76 3000 6000 0112 3456 7890 189",
    "address": "456 Oak Ave, Otherville",
    "country_code": "FR",
    "agency_id": "SOGEFRPP",
    "agency_name": "Société Générale",
    "agency_address": "29 Boulevard Haussmann, Paris",
    "ultimate": {
      "name": "Ultimate Recipient Inc"
    }
  },
  "verification_of_payee": "MATCH"
}

Get specific transaction by UUID

get
/api/v1/transactions/{uuid}

Retrieves the details of a specific transaction by its UUID, scoped to an account.

Authorizations
Path parameters
uuidstring · uuidRequired

Universally Unique Identifier (UUID) as defined by RFC 4122.

Example: e1f8a3b1-7d6c-4e9a-9b2e-3f8d1a9c5f2gPattern: ^[a-zA-Z0-9]{8}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{12}$
Query parameters
account_uuidstring · uuidRequired

Universally Unique Identifier (UUID) as defined by RFC 4122.

Example: e1f8a3b1-7d6c-4e9a-9b2e-3f8d1a9c5f2gPattern: ^[a-zA-Z0-9]{8}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{12}$
Responses
200

Successful retrieval of the transaction details.

application/json
get
/api/v1/transactions/{uuid}
GET /api/v1/transactions/{uuid}?account_uuid=e1f8a3b1-7d6c-4e9a-9b2e-3f8d1a9c5f2g HTTP/1.1
Host: public-api.gurupay.eu
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "uuid": "a1b2c3d4-e5f6-7890-1234-567890abcdef",
  "parent_transaction_uuid": "a1b2c3d4-e5f6-7890-1234-567890abcdef",
  "status": "pending",
  "operation_date": "2025-04-27",
  "operation_date_time": "2025-04-27T10:30:00Z",
  "operation_date_unix": 1745821800,
  "amount": 1234.56,
  "currency": "EUR",
  "payment_type": "SEPA",
  "transaction_type": "payment",
  "payment_urgency": "NORMAL",
  "payment_details": "Invoice #INV-123 Payment",
  "payment_code": "SALARY",
  "end_to_end_ident": "E2E-XYZ789",
  "direction": "CREDIT",
  "document_number": "DOC-456",
  "created_at": 1745820000,
  "payer": {
    "name": "John Doe",
    "iban": "DE89 3704 0044 0532 0130 00",
    "address": "123 Main St, Anytown",
    "country_code": "DE",
    "agency_id": "DEUTDEFF",
    "agency_name": "Deutsche Bank",
    "agency_address": "Taunusanlage 12, Frankfurt",
    "ultimate": {
      "name": "Ultimate Payer Corp"
    }
  },
  "recipient": {
    "name": "Jane Smith",
    "iban": "FR76 3000 6000 0112 3456 7890 189",
    "address": "456 Oak Ave, Otherville",
    "country_code": "FR",
    "agency_id": "SOGEFRPP",
    "agency_name": "Société Générale",
    "agency_address": "29 Boulevard Haussmann, Paris",
    "ultimate": {
      "name": "Ultimate Recipient Inc"
    }
  },
  "verification_of_payee": "MATCH"
}

Get bank details by IBAN

get
/api/v1/transactions/iban-details

Retrieves bank details (like BIC, bank name) based on a provided IBAN.

Authorizations
Query parameters
ibanstringRequired

The International Bank Account Number (IBAN) to look up.

Example: LT89370400440532014200
Responses
200

Successfully retrieved IBAN details.

application/json
get
/api/v1/transactions/iban-details
GET /api/v1/transactions/iban-details?iban=LT89370400440532014200 HTTP/1.1
Host: public-api.gurupay.eu
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "iban": "LT347044060007958239",
  "is_valid": true,
  "bank_bic": "CBVILT2XXXX",
  "bank_name": "AB SEB"
}

Download account statement

get
/api/v1/transactions/statements

Downloads an account statement for the specified period in the requested format. Supported formats:

  • CSV

  • XML

  • PDF

  • XLSX

Authorizations
Query parameters
account_uuidstring · uuidRequired

Universally Unique Identifier (UUID) as defined by RFC 4122.

Example: e1f8a3b1-7d6c-4e9a-9b2e-3f8d1a9c5f2gPattern: ^[a-zA-Z0-9]{8}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{12}$
date_fromstring · dateRequired

Start date for the statement period (YYYY-MM-DD).

Example: 2025-04-01
date_tostring · dateRequired

End date for the statement period (YYYY-MM-DD).

Example: 2025-04-27
formatstring · enumRequired

The desired file format for the statement.

Default: XLSXPossible values:
Responses
200

Successful download of the statement file in the requested format.

Responsestring · binary

PDF Statement File

get
/api/v1/transactions/statements
GET /api/v1/transactions/statements?account_uuid=e1f8a3b1-7d6c-4e9a-9b2e-3f8d1a9c5f2g&date_from=2025-04-01&date_to=2025-04-27&format=XLSX HTTP/1.1
Host: public-api.gurupay.eu
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
binary

Last updated

Was this helpful?