Skip to main content

Must have

all_transactions

When it fires​

This event is triggered for non-mall programmes when transactions have been studied by the Spaycial enrichment pipeline. This webhook pushes all transactions belonging to members of the programme, in an array. It uses the same retry mechanism as every other webhook (see the Webhooks overview).

Payload fields​

FieldTypeDescription
eventStringThe name of the webhook event.
transactions[]ArrayThe transactions pushed by this call.
transactions[].iduuidThe id of the transaction.
transactions[].rawDataObjectRaw data, as transmitted by the bank.
transactions[].rawData.amountFloatThe amount of the transaction.
transactions[].rawData.labelStringThe raw transaction label from the bank.
transactions[].rawData.bankingStatementDateString, nullableThe date of the banking statement. Null for receipt transactions or if not provided by the bank.
transactions[].rawData.currencyStringThe currency of the transaction, three-letter format (for example EUR).
transactions[].rawData.transactionTypeString, nullableThe type of transaction.
transactions[].spaycialDataObjectSpaycial-specific information.
transactions[].spaycialData.customerIdStringSpaycial's member id.
transactions[].spaycialData.customerExternalIdStringYour member id.
transactions[].spaycialData.bankAccountIdString, nullableSpaycial's bank account id linked to this transaction. Cross-reference with accounts[].accountHash from bank_connections_update_v2 to identify joint accounts and deduplicate. Null for receipt transactions.
transactions[].spaycialData.receiptIdStringThe receipt id linked to this transaction, if there is one.
transactions[].spaycialData.shoppingHubIdStringProgramme id (Spaycial).
transactions[].spaycialData.shoppingHubExternalIdStringProgramme id in your system.
transactions[].spaycialData.enrichmentObjectEnriched data added by Spaycial.
transactions[].spaycialData.enrichment.purchaseDateStringThe date of the transaction.
transactions[].spaycialData.enrichment.merchantObject, nullableNull if not found by Spaycial.
transactions[].spaycialData.enrichment.merchant.idStringSpaycial's id of the merchant.
transactions[].spaycialData.enrichment.merchant.nameString, nullableThe name of the merchant.
transactions[].spaycialData.enrichment.merchant.typeString, nullableThe Google type of the merchant.
transactions[].spaycialData.enrichment.purchaseLocationObject, nullableNull if not found by Spaycial.
transactions[].spaycialData.enrichment.purchaseLocation.countryStringISO code of the purchase location country (for example PL for Poland).
transactions[].spaycialData.enrichment.purchaseLocation.cityStringName of the city where the purchase was made (for example Wroclaw).
transactions[].spaycialData.enrichment.purchaseLocation.pointOfSaleObject, nullableNull if not found by Spaycial.
transactions[].spaycialData.enrichment.purchaseLocation.pointOfSale.idStringSpaycial's id of the point of sale.
transactions[].spaycialData.enrichment.purchaseLocation.pointOfSale.externalIdStringThe external id of the point of sale.
transactions[].spaycialData.enrichment.purchaseLocation.pointOfSale.googlePlaceIdStringGoogle place id.
transactions[].spaycialData.enrichment.purchaseLocation.pointOfSale.longitudeFloatLongitude coordinate.
transactions[].spaycialData.enrichment.purchaseLocation.pointOfSale.latitudeFloatLatitude coordinate.
transactions[].spaycialData.enrichment.purchaseLocation.pointOfSale.nameString, nullableThe name of the point of sale.
transactions[].spaycialData.enrichment.purchaseLocation.pointOfSale.addressString, nullableThe formatted address of the point of sale.
transactions[].spaycialData.enrichment.timeOfPurchaseString, nullableThe date and time of the transaction.

Example​

{
"event": "all_transactions",
"transactions": [
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"rawData": {
"amount": 25.5,
"label": "ALDI MADRID",
"bankingStatementDate": "2025-11-05",
"currency": "EUR",
"transactionType": "shopping"
},
"spaycialData": {
"customerId": "1381fda2-9acb-4d1e-bdf5-29a80f54bb33",
"customerExternalId": "84",
"bankAccountId": "a1b2c3d4-e5f6-7890-abcd-000000000002",
"receiptId": null,
"shoppingHubId": "c4bde2eb-f77d-41a9-9ce5-a78f35abd659",
"shoppingHubExternalId": "sil",
"enrichment": {
"purchaseDate": "2025-11-05",
"merchant": {
"id": "e1a0d3ca-d15b-467d-9fdb-e34cc7b2240c",
"name": "ALDI",
"type": null
},
"purchaseLocation": {
"country": "ES",
"city": "Madrid",
"pointOfSale": {
"id": "e1a0d3ca-d15b-467d-9fdb-e34cc7b2240d",
"externalId": "17",
"googlePlaceId": "ChIJA5_uK0kpQg0RTo_iggAgVvo",
"longitude": -3.703528,
"latitude": 40.447365,
"name": "ALDI",
"address": "Gta. de Cuatro Caminos, 6, Tetuan, 28020 Madrid, Espagne"
}
},
"timeOfPurchase": null
}
}
}
]
}