### Pagination Example - GET Request
Source: https://docs.atlar.com/docs/api
Demonstrates how to use the 'limit' and 'token' query parameters to paginate through resource collections. The response includes 'items', 'nextToken', 'token', and 'limit'.
```HTTP
GET /financial-data/v2/transactions?limit=20
GET /financial-data/v2/transactions?limit=20&token={TOKEN}
```
--------------------------------
### Routing Identifier Object Examples
Source: https://docs.atlar.com/reference/get_payments-v2-counterparties-id-1
Provides examples of how to structure a Routing Identifier object. This includes specifying the type (e.g., BIC, US_ABA) and the corresponding number. It also shows an example of an invalid routing identifier.
```json
{
"RoutingIdentifier": {
"type": "object",
"properties": {
"type": {
"$ref": "#/components/schemas/RoutingIdentifierType"
},
"number": {
"type": "string",
"description": "The form of the routing number depends on `type`. E.g. for `BIC` the value should be an 8 or 11 character BIC/SWIFT code. For `GB_DSC` (UK domestic routing) the value should be a six digit sort code.",
"minLength": 1,
"maxLength": 255
},
"invalid": {
"type": "boolean",
"description": "Will be `true` if the routing identifier is invalid according to Atlar validation rules.",
"readOnly": true
},
"constraints": {
"$ref": "#/components/schemas/RoutingConstraints"
}
},
"required": [
"type",
"number"
],
"examples": [
{
"type": "BIC",
"number": "BUKBGB22"
},
{
"type": "US_ABA",
"number": 123456789
},
{
"type": "DE_BLZ",
"number": 12345678
},
{
"type": "SE_SBA",
"number": 9960
},
{
"type": "BIC",
"number": 123,
"invalid": true
}
]
}
}
```
--------------------------------
### WebhookRequestPayload_ResourceEvent_CreditTransfer_Approval Example
Source: https://docs.atlar.com/reference/post_payments-v2beta-direct-debit-batches-id-reject
An example of a webhook payload for a credit transfer event where the status is FULLY_APPROVED.
```APIDOC
## WebhookRequestPayload_ResourceEvent_CreditTransfer_Approval Example
### Description
This example demonstrates a webhook payload for a `credit_transfers` resource when a credit transfer has been `FULLY_APPROVED`.
### Request Example
```json
{
"resource": "credit_transfers",
"event": {
"id": 3,
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"entityId": "76992987-48fc-4b03-b609-ea6fdc3045b4",
"type": "UPDATED",
"name": "FULLY_APPROVED",
"timestamp": "2022-05-04T18:47:32.213842599Z",
"originator": "ATLAR",
"message": "Automatically approved"
},
"entity": {
"id": "76992987-48fc-4b03-b609-ea6fdc3045b4"
},
"apiVersion": 2
}
```
```
--------------------------------
### Credit Transfer Approval Webhook Example
Source: https://docs.atlar.com/reference/get_payments-v2-regulatory-reporting-codes
An example of an EventWebhookPayload for a credit transfer that has been fully approved. This demonstrates the structure of the payload for a specific event type and resource.
```json
{
"resource": "credit_transfers",
"event": {
"id": 3,
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"entityId": "76992987-48fc-4b03-b609-ea6fdc3045b4",
"type": "UPDATED",
"name": "FULLY_APPROVED",
"timestamp": "2022-05-04T18:47:32.213842599Z",
"originator": "ATLAR"
},
"entity": {
"id": "76992987-48fc-4b03-b609-ea6fdc3045b4",
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"createdAt": "2022-05-04T18:47:32.213842599Z",
"status": "FULLY_APPROVED",
"amount": {
"currency": "EUR",
"value": "100.00"
},
"reference": "INV-12345",
"creditorAccount": {
"iban": "NL91 ABNA 0123 4567 89"
},
"debtorAccount": {
"id": "a1b2c3d4-e5f6-7890-1234-567890abcdef"
},
"fx": {
"rate": "1.10",
"fromCurrency": "USD",
"toCurrency": "EUR"
},
"scheduledFor": "2022-05-05"
},
"apiVersion": 2
}
```
--------------------------------
### Credit Transfer Event Example
Source: https://docs.atlar.com/reference/get_financial-data-v2-pending-transactions-1
Example payload for a credit transfer event webhook.
```APIDOC
## WebhookRequestPayload_ResourceEvent_CreditTransfer_Approval
### Description
This example demonstrates the payload structure for a webhook notification when a credit transfer is fully approved.
### Request Example
```json
{
"resource": "credit_transfers",
"event": {
"id": 3,
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"entityId": "76992987-48fc-4b03-b609-ea6fdc3045b4",
"type": "UPDATED",
"name": "FULLY_APPROVED",
"timestamp": "2022-05-04T18:47:32.213842599Z",
"originator": "ATLAR",
"message": "Automatically approved"
},
"entity": {
"id": "76992987-48fc-4b03-b609-ea6fdc3045b4",
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"amount": {
"currency": "EUR",
"value": 1502,
"stringValue": "15.02"
},
"date": "2022-05-07",
"scheme": "SCT",
"status": "APPROVED",
"reference": "ref-2022-05-03-001",
"source": {
"id": "ac1963d7-fff9-4783-aa1d-92acb7b21a19",
"type": "ACCOUNT",
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"market": "DE",
"currency": "EUR",
"identifiers": [
{
"market": "DE",
"type": "IBAN",
"number": "DE89370400440532013000"
}
]
},
"sourceHolder": {
"name": "Example Company Name"
}
}
}
```
```
--------------------------------
### Credit Transfer Approval Webhook Example
Source: https://docs.atlar.com/reference/get_payments-v2-counterparties-1
An example of an EventWebhookPayload for a credit transfer that has been fully approved. This demonstrates the structure of the 'entity' and 'event' fields for such an event.
```json
{
"resource": "credit_transfers",
"event": {
"id": 3,
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"entityId": "76992987-48fc-4b03-b609-ea6fdc3045b4",
"type": "UPDATED",
"name": "FULLY_APPROVED",
"timestamp": "2022-05-04T18:47:32.213842599Z",
"originator": "ATLAR",
"message": "Automatically approved"
},
"entity": {
"id": "76992987-48fc-4b03-b609-ea6fdc3045b4",
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"amount": {
"currency": "EUR",
"value": 1502,
"stringValue": "15.02"
},
"date": "2022-05-07",
"scheme": "SCT",
"status": "APPROVED",
"reference": "ref-2022-05-03-001",
"source": {
"id": "ac1963d7-fff9-4783-aa1d-92acb7b21a19",
"type": "ACCOUNT",
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"market": "DE",
"currency": "EUR",
"identifiers": [
{
"market": "DE",
"type": "IBAN",
"number": "DE89370400440532013000"
}
]
},
"sourceHolder": {
"id": "ec079994-619c-42e9-ac06-b50d4beea2e4",
"type": "ENTITY",
"legalName": "Example Company GmbH"
},
"destinationHolder": {
"id": "c151b61e-33cc-4f89-ac8d-328f9efa59e9",
"type": "COUNTERPARTY",
"legalName": "Max Müller",
"address": {
"country": "DE",
"city": "Berlin",
"postalCode": "10557"
}
},
"destination": {
"id": "eac1d236-2904-4b01-8e85-a4ef3a73c353",
"type": "EXTERNAL_ACCOUNT",
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"market": "DE",
"identifiers": [
{
"market": "DE",
"type": "IBAN",
"number": "DE75512108001245126199"
}
],
"routing": [
{
"type": "BIC",
"number": "SOGEDEFFXXX"
}
]
},
"approvalSteps": [
{
"approver": {
"id": "ec079994-619c-42e9-ac06-b50d4beea2e4",
"type": "ENTITY",
"legalName": "Example Company GmbH"
},
"status": "APPROVED",
"timestamp": "2022-05-04T18:47:32.213842599Z"
}
]
}
}
```
--------------------------------
### Direct Debit Batch CSV Example
Source: https://docs.atlar.com/docs/batch-payments
This example demonstrates the CSV format for direct debit batches, including required and optional fields like currency, amount, date, scheme, and identifiers. It also shows how to include metadata fields.
```csv
amount.currency,amount.stringValue,date,scheme,reference,externalId,source.type,source.id,destination.type,destination.id,categoryPurpose,chargeBearer,metadata.comment,metadata.batch-id
EUR,100.00,2025-01-01,SDD_CORE,Minimal SDD CORE request,,EXTERNAL_ACCOUNT,f3da4d77-af13-4e2d-8c33-34440f1580bc,ACCOUNT,d1753050-ee88-44b0-9452-770fc4ae3991,,,Monthly subscription payment,batch-2025-01
SEK,250.50,2025-01-15,AUTOGIRO,Invoice payment 123,,EXTERNAL_ACCOUNT,ca3e14a4-88d1-4df5-a4d8-e6193075d8bc,ACCOUNT,1f28296b-5b83-4be7-a91a-35885b6e4863,,,Recurring payment,batch-2025-01
```
--------------------------------
### Webhook Signature Validation (Go Example)
Source: https://docs.atlar.com/docs/webhooks
This section provides a Go code example for validating webhook signatures. It demonstrates how to decode the base64 key, decode the hex signature, and compute the HMAC-SHA256 hash of the payload and timestamp to verify the signature.
```APIDOC
## Webhook Signature Validation (Go Example)
### Description
This Go function `signatureIsValid` validates incoming webhook signatures. It ensures the authenticity and integrity of the webhook payload by comparing a computed HMAC-SHA256 hash with the provided signature header.
### Method
N/A (This is a server-side validation function, not an API endpoint)
### Endpoint
N/A
### Parameters
#### Path Parameters
N/A
#### Query Parameters
N/A
#### Request Body
N/A
### Request Example
```go
func signatureIsValid(sigHeader, tsHeader, payload, base64Key string) (bool, error) {
key, err := base64.StdEncoding.DecodeString(base64Key)
if err != nil {
return false, fmt.Errorf("failed to decode key, %w", err)
}
sig, err := hex.DecodeString(sigHeader)
if err != nil {
return false, nil
}
mac := hmac.New(sha256.New, key)
mac.Write([]byte(payload + "." + tsHeader))
return hmac.Equal(mac.Sum(nil), sig), nil
}
```
### Response
#### Success Response (200)
N/A (This is a function returning boolean and error)
#### Response Example
```json
{
"isValid": true,
"error": null
}
```
### Additional Notes
- More examples in various languages (Go, Java, JavaScript, Python) are available at [https://github.com/atlar-tech/atlar-webhook-examples](https://github.com/atlar-tech/atlar-webhook-examples).
- Ensure you use the correct `Webhook-Signature`, `Webhook-Request-Timestamp`, `Body`, and `Key (base64)` values for testing.
```
--------------------------------
### Error Response Example (JSON)
Source: https://docs.atlar.com/reference/get_connectivity-v2beta-connections-1
This example shows the structure of a 'BadRequest' error response from the Atlar API. It typically includes a status code and a descriptive message.
```json
{
"status": 400,
"message": "There is some problem with the data you submitted."
}
```
--------------------------------
### Account Identifier Schema Example
Source: https://docs.atlar.com/reference/get_financial-data-v2-accounts-1
Demonstrates the structure and possible values for an Account Identifier, which can represent different types of account numbers across various markets. It includes examples for IBAN and NUMBER types, with and without an invalid flag.
```json
{
"type": "IBAN",
"market": "DE",
"number": "DE75512108001245126199"
}
{
"type": "NUMBER",
"market": "GB",
"number": 12345678
}
{
"type": "NUMBER",
"market": "SE",
"number": 6114517182351
}
{
"type": "IBAN",
"market": "DE",
"number": 123,
"invalid": true
}
```
--------------------------------
### Define Account Identifier Examples
Source: https://docs.atlar.com/reference/get_financial-data-v2-accounts-id-1
Provides examples of various account identifier objects, including IBAN and standard account numbers, mapped to specific market codes. These structures are used to validate account details during resource creation.
```json
[
{
"type": "IBAN",
"market": "DE",
"number": "DE75512108001245126199"
},
{
"type": "NUMBER",
"market": "GB",
"number": 12345678
}
]
```
--------------------------------
### Account Identifier Structure and Examples
Source: https://docs.atlar.com/reference/post_payments-v2-mandates-id-cancel-1
Defines the structure for account identifiers, supporting types like IBAN and NUMBER. It includes validation rules and provides examples for different markets and identifier types.
```json
{
"type": {
"type": "string",
"description": "Type of the account identifier.",
"enum": [
"IBAN",
"NUMBER"
]
},
"market": {
"type": "string",
"description": "Two-letter ISO 3166-1 alpha2 country code.",
"example": "DE",
"minLength": 2,
"maxLength": 2,
"pattern": "^[A-Z]{2,2}$"
},
"number": {
"oneOf": [
{
"type": "string"
},
{
"type": "integer"
}
],
"description": "The unformatted identifier itself. For type `NUMBER` the structure of the account number is country-specific.",
"minLength": 1,
"maxLength": 255
},
"invalid": {
"type": "boolean",
"description": "Will be `true` if the account identifier is invalid according to Atlar account identifier validation rules.",
"readOnly": true
}
},
"required": [
"type",
"market",
"number"
],
"examples": [
{
"type": "IBAN",
"market": "DE",
"number": "DE75512108001245126199"
},
{
"type": "NUMBER",
"market": "GB",
"number": 12345678
},
{
"type": "NUMBER",
"market": "SE",
"number": 6114517182351
},
{
"type": "IBAN",
"market": "DE",
"number": 123,
"invalid": true
}
]
```
--------------------------------
### Not Found Response Example
Source: https://docs.atlar.com/reference/get_payments-v2-credit-transfers-id-events-1
An example of a 'Not Found' response from the Atlar API, typically returned when a requested resource does not exist. It follows the standard ErrorResponse schema.
```json
{
"description": "Resource not found.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ErrorResponse"
},
"example": {
"status": 404,
"message": "Resource not found."
}
}
}
}
```
--------------------------------
### Metadata Example (JSON)
Source: https://docs.atlar.com/reference/get_analytics-v2beta-forecasted-transactions-id
Illustrates the structure for metadata, a key-value pair container for additional information, with constraints on the number of entries and key/value lengths.
```json
{
"my_metadata_key": "2a9a79b9-601c-449b-aa05-432f41dbbc4a"
}
```
--------------------------------
### Account Identifier Examples (JSON)
Source: https://docs.atlar.com/reference/get_analytics-v2beta-forecasted-transactions-id
Demonstrates various valid and invalid account identifier structures, including IBAN and NUMBER types, with specified markets and potential invalidation flags.
```json
{
"type": "IBAN",
"market": "DE",
"number": "DE75512108001245126199"
}
```
```json
{
"type": "NUMBER",
"market": "GB",
"number": "12345678"
}
```
```json
{
"type": "NUMBER",
"market": "SE",
"number": "6114517182351"
}
```
```json
{
"type": "IBAN",
"market": "DE",
"number": "123",
"invalid": true
}
```
--------------------------------
### POST /connectivity/v2beta/connections/{connectionId}/instructions
Source: https://docs.atlar.com/docs/erp-integration-via-atlar-api
Uploads a raw ISO 20022 pain.001 file to a specific bank connection for processing.
```APIDOC
## POST /connectivity/v2beta/connections/{connectionId}/instructions
### Description
Forwards a raw pain.001 payment file directly to the bank. Atlar acts as a pass-through and does not modify the file content or provide visibility into individual payments.
### Method
POST
### Endpoint
/connectivity/v2beta/connections/{connectionId}/instructions
### Parameters
#### Path Parameters
- **connectionId** (string) - Required - The unique identifier of the bank connection.
#### Request Body
- **file_content** (string) - Required - The raw ISO 20022 pain.001 XML content.
### Request Example
{
"file_content": "..."
}
### Response
#### Success Response (200)
- **id** (string) - The unique identifier for the file upload instruction.
- **status** (string) - The current status of the file transmission.
#### Response Example
{
"id": "instr_123456789",
"status": "submitted"
}
```
--------------------------------
### Credit Transfer Event Webhook Example
Source: https://docs.atlar.com/reference/get_payments-v2-credit-transfers-id-events-1
An example payload for a webhook notification concerning a credit transfer event. This specific example shows an 'UPDATED' event with the status 'FULLY_APPROVED'.
```json
{
"resource": "credit_transfers",
"event": {
"id": 3,
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"entityId": "76992987-48fc-4b03-b609-ea6fdc3045b4",
"type": "UPDATED",
"name": "FULLY_APPROVED",
"timestamp": "2022-05-04T18:47:32.213842599Z",
"originator": "ATLAR",
"message": "Automatically approved"
},
"entity": {
"id": "76992987-48fc-4b03-b609-ea6fdc3045b4",
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"amount": {
"currency": "EUR",
"value": 1502,
"stringValue": "15.02"
},
"date": "2022-05-07",
"scheme": "SCT",
"status": "APPROVED",
"reference": "ref-2022-05-03-001",
"source": {
"id": "ac1963d7-fff9-4783-aa1d-92acb7b21a19",
"type": "ACCOUNT",
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"market": "DE",
"currency": "EUR",
"identifiers": [
{
"market": "DE",
"type": "IBAN",
"number": "DE89370400440532013000"
}
]
},
"sourceHolder": {
"id": "ec079994-619c-42e9-ac06-b50d4beea2e4",
"type": "ENTITY",
"legalName": "Example Company GmbH"
},
"destinationHolder": {
"id": "c151b61e-33cc-4f89-ac8d-328f9efa59e9",
"type": "COUNTERPARTY",
"legalName": "Max Müller",
"address": {
"country": "DE",
"city": "Berlin",
"postalCode": "10557"
}
},
"destination": {
"id": "eac1d236-2904-4b01-8e85-a4ef3a73c353",
"type": "EXTERNAL_ACCOUNT",
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"market": "DE",
"identifiers": [
{
"market": "DE",
"type": "IBAN",
"number": "DE75512108001245126199"
}
],
"routing": [
}
}
},
"apiVersion": 2
}
```
--------------------------------
### Going Live with Webhooks
Source: https://docs.atlar.com/docs/webhooks
Instructions on the verification process required before Atlar begins sending webhook calls to your endpoint.
```APIDOC
## Going Live
### Description
This section details the final steps required to activate Atlar webhooks for your application.
### Verification Process
Before Atlar can start sending webhook calls to your configured endpoint, the webhook configuration must be verified. To complete this verification process, please contact [support@atlar.com](mailto:support@atlar.com). Please note that any modification to the webhook `url` will reset the `verified` status to `false`, requiring re-verification.
### Method
N/A
### Endpoint
N/A
### Parameters
N/A
### Request Example
N/A
### Response
N/A
```
--------------------------------
### Example Credit Transfer Webhook Payload
Source: https://docs.atlar.com/reference/patch_payments-v2-external-accounts-id-1
An example of a webhook payload for a credit transfer event, specifically when the event is 'FULLY_APPROVED'. This example demonstrates the structure of the `resource`, `event`, and `entity` fields within an `EventWebhookPayload`.
```json
{
"examples": {
"WebhookRequestPayload_ResourceEvent_CreditTransfer_Approval": {
"summary": "Credit transfer event",
"value": {
"resource": "credit_transfers",
"event": {
"id": 3,
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"entityId": "76992987-48fc-4b03-b609-ea6fdc3045b4",
"type": "UPDATED",
"name": "FULLY_APPROVED",
"timestamp": "2022-05-04T18:47:32.213842599Z",
"originator": "ATLAR",
"message": "Automatically approved"
},
"entity": {
"id": "76992987-48fc-4b03-b609-ea6fdc3045b4"
}
}
}
}
}
```
--------------------------------
### Example JSON Data Structure for Account and Approval
Source: https://docs.atlar.com/reference/get_financial-data-v2-accounts-id-balances-1
This JSON snippet illustrates the structure for an account, including its identifiers and routing information, along with details of an approval step within a workflow. It shows how market, type, and number are used for identification and routing.
```json
{
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"market": "DE",
"identifiers": [
{
"market": "DE",
"type": "IBAN",
"number": "DE75512108001245126199"
}
],
"routing": [
{
"type": "BIC",
"number": "SOGEDEFFXXX"
}
]
},
"approvalSteps": [
{
"id": "52699442-e06f-4cda-b2a8-cdeca08ff9d3",
"approvalChainId": "ac0141ba-c0be-46ed-8542-7313355bab27",
"status": "APPROVED",
"autoApproved": false,
"approver": {
"id": "266f4e96-c614-465e-a1a9-1736a7c20bab",
"username": "owner@example.com"
},
"requiredRoleIds": [
"ee4e4acd-9ff0-445f-9cf5-f09350ba15b6"
],
"updated": "2022-05-04T18:47:32.213842599Z"
}
],
"attachedTransactions": [],
"version": 3,
"etag": "version:3",
"created": "2022-05-04T18:31:12.889104898Z",
"updated": "2022-05-04T18:47:32.213842599Z"
}
```
--------------------------------
### Webhook Request Payload Example: Credit Transfer Approval
Source: https://docs.atlar.com/reference/post_payments-v2-credit-transfer-batches-id-approve-1
An example of a webhook payload for a credit transfer event where the status is 'FULLY_APPROVED'.
```APIDOC
## Webhook Request Payload Example: Credit Transfer Approval
### Description
This example demonstrates the structure of a webhook payload for a `credit_transfers` resource when a credit transfer is `FULLY_APPROVED`.
### Request Body Example
```json
{
"resource": "credit_transfers",
"event": {
"id": 3,
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"entityId": "76992987-48fc-4b03-b609-ea6fdc3045b4",
"type": "UPDATED",
"name": "FULLY_APPROVED",
"timestamp": "2022-05-04T18:47:32.213842599Z",
"originator": "ATLAR",
"message": "Automatically approved"
},
"entity": {
"id": "76992987-48fc-4b03-b609-ea6fdc3045b4"
},
"apiVersion": 2
}
```
```
--------------------------------
### CSV Example: Mixed Batch Payment Functionality
Source: https://docs.atlar.com/docs/credit-transfer-batches
This comprehensive CSV example showcases a mix of batch payment functionalities. It includes inlining destination account details, referencing existing accounts by ID, specifying routing information (sort code, BIC, ABA), and utilizing optional fields like externalId and metadata.
```csv
amount.currency,amount.stringValue,date,scheme,reference,externalId,source.type,source.id,destination.type,destination.id,destination.market,destination.holder.legalName,destination.identifier.type,destination.identifier.market,destination.identifier.number,destination.bic,destination.routing.type,destination.routing.number,metadata.comment,metadata.my-id
SEK,12.34,2024-02-20,SE_GIRO,invoice-no.119,,ACCOUNT,d73067c3-5427-40b5-b63b-76f89acb5a72,INLINE,,SE,anders andersson,SE_BANKGIRO,SE,12345678,,,,,
DKK,51.35,2024-02-20,DK_A2A,invoice-no.120,,ACCOUNT,57f6dcce-a4f9-4fc7-b496-182c4df0a60c,ACCOUNT,eb2ba9c1-ec7d-43e2-8724-9c85af870308,,,,,,,,,,
EUR,2.00,2024-02-20,SCT,invoice-no.121,,ACCOUNT,d89b7f42-62b9-47d2-8969-0743f32ebc0d,EXTERNAL_ACCOUNT,31380a97-f54b-4ae3-8f7e-3541c2914db6,,,,,,,,,,
GBP,531.42,2024-02-20,GB_CT_FPS,invoice-no.122,,ACCOUNT,5755d02f-0937-492b-adf3-c045cc4e0fa9,INLINE,,GB,John Doe,NUMBER,GB,12345678,,GB_DSC,123456,this is the payment for xyz,21743612948719284
USD,123.45,2024-02-20,CROSS_BORDER,invoice-no.123,,ACCOUNT,5755d02f-0937-492b-adf3-c045cc4e0fa9,INLINE,,US,John Smith,NUMBER,US,123456789012,BOFAUS3NXXX,US_ABA,123456789,"use the metadata fields, to set anything you would like",129572198421
```
--------------------------------
### National Identifier Example (JSON)
Source: https://docs.atlar.com/reference/get_analytics-v2beta-forecasted-transactions-id
Shows an example of a national identifier, specifying its type (CIVIC or COMPANY), market, and the identifier number itself.
```json
{
"type": "CIVIC",
"market": "DE",
"number": "2012121212"
}
```
--------------------------------
### Example Credit Transfer Event Webhook
Source: https://docs.atlar.com/reference/get_payments-v2-credit-transfers-1
An example payload for a credit transfer event webhook, specifically when a credit transfer is fully approved.
```APIDOC
## Example: Credit Transfer Event (Fully Approved)
### Description
This example demonstrates the structure of a webhook payload when a credit transfer event occurs, specifically the `FULLY_APPROVED` event.
### Request Example
```json
{
"resource": "credit_transfers",
"event": {
"id": 3,
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"entityId": "76992987-48fc-4b03-b609-ea6fdc3045b4",
"type": "UPDATED",
"name": "FULLY_APPROVED",
"timestamp": "2022-05-04T18:47:32.213842599Z",
"originator": "ATLAR",
"message": "Automatically approved"
},
"entity": {
"id": "76992987-48fc-4b03-b609-ea6fdc3045b4",
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"amount": {
"currency": "EUR",
"value": 1502,
"stringValue": "15.02"
},
"date": "2022-05-07",
"scheme": "SCT",
"status": "APPROVED",
"reference": "ref-2022-05-03-001",
"source": {
"id": "ac1963d7-fff9-4783-aa1d-92acb7b21a19",
"type": "ACCOUNT",
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"market": "DE",
"currency": "EUR",
"identifiers": [
{
"market": "DE",
"type": "IBAN",
"number": "DE89370400440532013000"
}
]
}
},
"apiVersion": 2
}
```
```
--------------------------------
### Create Counterparty with External Account (Bash)
Source: https://docs.atlar.com/docs/getting-started
This command creates a new counterparty with an associated external bank account. It requires the Atlar API access key and secret for authentication. The response includes an `external_account` ID that is crucial for initiating payments.
```bash
curl 'https://api.atlar.com/payments/v2/counterparties' \
-u 'ACCESS_KEY:SECRET' \
-H 'Content-Type: application/json' \
-d '{
"legalName": "Max Müller",
"alias": "Customer #123",
"partyType": "INDIVIDUAL",
"accounts": [{"market": "DE",
"identifiers": [{"market": "DE",
"type": "IBAN",
"number": "DE75512108001245126199"}]}]}
'
```
--------------------------------
### Credit Transfer Event Webhook Example
Source: https://docs.atlar.com/reference/get_payments-v2beta-credit-transfer-batches-1
An example payload for a webhook event related to a credit transfer, showing resource, event ID, and entity details.
```APIDOC
## Credit Transfer Event Webhook Example
### Description
This example demonstrates the structure of a webhook payload when an event occurs on a `credit_transfers` resource.
### Request Body Example
```json
{
"resource": "credit_transfers",
"event": {
"id": 3
},
"entity": { ... },
"apiVersion": 2
}
```
```
--------------------------------
### Create SEPA Credit Transfer (Bash)
Source: https://docs.atlar.com/docs/getting-started
This command initiates a SEPA Credit Transfer (SCT). It requires the source account ID, the destination external account ID, the amount, currency, desired date, and a reference. Authentication with your Atlar API access key and secret is necessary.
```bash
curl 'https://api.atlar.com/payments/v2/credit-transfers' \
-u 'ACCESS_KEY:SECRET' \
-H 'Content-Type: application/json' \
-d '{
"amount": {"currency": "EUR",
"value": 2500},
"date": "yyyy-mm-dd",
"scheme": "SCT",
"source": {"type": "ACCOUNT",
"id": ""},
"destination": {"type": "EXTERNAL_ACCOUNT",
"id": ""},
"reference": "payout-12345"
}'
```
--------------------------------
### GET /resources (List Pattern)
Source: https://docs.atlar.com/reference/get_financial-data-v2-transactions-id-events
Standard pattern for retrieving paginated lists of resources with support for limit and token-based navigation.
```APIDOC
## GET /resources
### Description
Retrieves a paginated list of resources. Use the `limit` query parameter to control page size and the `token` parameter to fetch subsequent pages.
### Method
GET
### Endpoint
/resources
### Parameters
#### Query Parameters
- **limit** (integer) - Optional - Number of items to return (1-500, default 100).
- **token** (string) - Optional - Pagination token returned from a previous response to fetch the next page.
### Response
#### Success Response (200)
- **items** (array) - A list of resources.
- **nextToken** (string) - Token for the next page. Empty if no more resources.
- **token** (string) - The token used for this request.
- **limit** (integer) - The page limit applied.
#### Response Example
{
"items": [],
"nextToken": "eyIxIjogIlRoaXMgaXMgYSBkdW1teSBwYWdpbmF0aW9uIHRva2VuLiJ9",
"token": "",
"limit": 100
}
```
--------------------------------
### Example JSON Data Structure for Account Information
Source: https://docs.atlar.com/reference/get_connectivity-v2beta-connections-cid-reports-id-content-1
This snippet shows a JSON structure representing account details, including market, identifiers (like IBAN), and routing information (like BIC). It also includes details about approval steps, transaction history, and versioning.
```json
{
"market": "DE",
"identifiers": [
{
"market": "DE",
"type": "IBAN",
"number": "DE75512108001245126199"
}
],
"routing": [
{
"type": "BIC",
"number": "SOGEDEFFXXX"
}
]
},
"approvalSteps": [
{
"id": "52699442-e06f-4cda-b2a8-cdeca08ff9d3",
"approvalChainId": "ac0141ba-c0be-46ed-8542-7313355bab27",
"status": "APPROVED",
"autoApproved": false,
"approver": {
"id": "266f4e96-c614-465e-a1a9-1736a7c20bab",
"username": "owner@example.com"
},
"requiredRoleIds": [
"ee4e4acd-9ff0-445f-9cf5-f09350ba15b6"
],
"updated": "2022-05-04T18:47:32.213842599Z"
}
],
"attachedTransactions": [],
"version": 3,
"etag": "version:3",
"created": "2022-05-04T18:31:12.889104898Z",
"updated": "2022-05-04T18:47:32.213842599Z"
}
```
--------------------------------
### GET /financial-data/v2beta/portfolios/{id}
Source: https://docs.atlar.com/reference/post_resourceevent-1
Retrieves a specific portfolio by its ID. This endpoint allows you to get detailed information about a user's investment portfolio.
```APIDOC
## GET /financial-data/v2beta/portfolios/{id}
### Description
Get portfolio.
### Method
GET
### Endpoint
/financial-data/v2beta/portfolios/{id}
### Parameters
#### Path Parameters
- **id** (string) - Required - Account ID
### Request Example
```json
{
"example": ""
}
```
### Response
#### Success Response (200)
- **Portfolio** (object) - An portfolio.
#### Response Example
```json
{
"example": ""
}
```
```
--------------------------------
### CSV Example: Inline Destination Account
Source: https://docs.atlar.com/docs/credit-transfer-batches
This CSV example demonstrates how to inline destination account information directly into a batch payment file. It includes fields for amount, date, scheme, reference, source account, and detailed destination account information like legal name, identifier type/market/number, and BIC.
```csv
amount.currency,amount.stringValue,date,scheme,reference,source.type,source.id,destination.type,destination.market,destination.holder.legalName,destination.identifier.type,destination.identifier.market,destination.identifier.number,destination.bic
USD,123.45,2024-01-23,CROSS_BORDER,invoice-no.205,ACCOUNT,d89b7f42-62b9-47d2-8969-0743f32ebc0d,INLINE,US,John Smith,NUMBER,US,123456789012,CHASUS33XXX
```
--------------------------------
### Credit Transfer Approval Webhook Payload Example
Source: https://docs.atlar.com/reference/get_financial-data-v2-accounts-1
This JSON payload represents an example of a webhook event triggered when a credit transfer is approved. It details the resource, event, and entity information.
```json
{
"summary": "Credit transfer event",
"value": {
"resource": "credit_transfers",
"event": {
"id": 3,
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"entityId": "76992987-48fc-4b03-b609-ea6fdc3045b4",
"type": "UPDATED",
"name": "FULLY_APPROVED",
"timestamp": "2022-05-04T18:47:32.213842599Z",
"originator": "ATLAR",
"message": "Automatically approved"
},
"entity": {
"id": "76992987-48fc-4b03-b609-ea6fdc3045b4",
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"amount": {
"currency": "EUR",
"value": 1502,
"stringValue": "15.02"
},
"date": "2022-05-07",
"scheme": "SCT",
"status": "APPROVED",
"reference": "ref-2022-05-03-001",
"source": {
"id": "ac1963d7-fff9-4783-aa1d-92acb7b21a19",
"type": "ACCOUNT",
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"market": "DE",
"currency": "EUR",
"identifiers": [
{
"market": "DE",
"type": "IBAN",
"number": "DE89370400440532013000"
}
]
},
"sourceHolder": {
"id": "ec079994-619c-42e9-ac06-b50d4beea2e4",
"type": "ENTITY",
"legalName": "Example Company GmbH"
},
"destinationHolder": {
"id": "c151b61e-33cc-4f89-ac8d-328f9efa59e9",
"type": "COUNTERPARTY",
"legalName": "Max Müller",
"address": {
"country": "DE",
"city": "Berlin",
"postalCode": "10557"
}
},
"destination": {
"id": "eac1d236-2904-4b01-8e85-a4ef3a73c353",
"type": "EXTERNAL_ACCOUNT",
"organizationId": "0160f6ab-5741-49e1-af46-9138927e547e",
"market": "DE",
"identifiers": [
{
"market": "DE",
"type": "IBAN",
"number": "DE75512108001245126199"
}
],
"routing": [
{
"type": "BIC",
"number": "SOGEDEFFXXX"
}
]
},
"approvalSteps": [
{
"id": "52699442-e06f-4cda-b2a8-cdeca08ff9d3",
"approvalChainId": "ac0141ba-c0be-46ed-8542-7313355bab27",
"status": "APPROVED",
"autoApproved": false,
"approver": {
"id": "266f4e96-c614-465e-a1a9-1736a7c20bab",
"username": "owner@example.com"
},
"requiredRoleIds": [
"ee4e4acd-9ff0-445f-9cf5-f09350ba15b6"
],
"updated": "2022-05-04T18:47:32.213842599Z"
}
],
"attachedTransactions": [],
"version": 3,
"etag": "version:3",
"created": "2022-05-04T18:31:12.889104898Z",
"updated": "2022-05-04T18:47:32.213842599Z"
},
"apiVersion": 2
}
}
```