Met de Payhawk Developer API stem je jouw Payhawk-ervaring nog verder af op de specifieke behoeften van jouw bedrijf.
Authenticeren bij de Payhawk Developer API
Authenticatie wordt uitgevoerd door de API-sleutel als verzoekheader aan elk verzoek toe te voegen.
Sla de API-sleutel veilig op.
Haal de API-sleutel als volgt op:
Log in op het Payhawk-webportaal.
Ga naar Instellingen > Integraties > API-sleutels.
Verzoekbeperkingen en -limieten
De Payhawk Developer API is beperkt tot 15 verzoeken per seconde, wat te zien is in de geretourneerde ratelimit
headers van elk API-verzoek.
Webhooks
Webhooks bieden een krachtige tool voor realtime integratie. Je systeem kan automatisch op de hoogte worden gebracht als er binnen Payhawk een actie wordt uitgevoerd:
Kopieer de Account-ID van je Payhawk account. De sleutel zie je in de URL van de portal, bijvoorbeeld
https://portal.payhawk.com/?account=payhawk_demo_6fc0db9a
.Zorg ervoor dat de API-sleutel is ingeschakeld. Om de sleutel op te halen, ga je naar Instellingen > Integraties > API-sleutels.
Ga naar de Payhawk Developer Portal op https://developers.payhawk.com/#/Webhook%20Subscriptions.
Ga naar Webhook-abonnementen.
Maak een webhook aan via Webhook-abonnement aanmaken. Klik op uitproberen om het volledige verzoek weer te geven: https://api.payhawk.io/api/v3/accounts/payhawk_demo_6fc0db9a/webhooks:
EventType
- De volledige lijst met events staat onder NewWebhookSubscription > EventType. Gebruik bijvoorbeeld de eventexpense.created
om meldingen te ontvangen als er nieuwe uitgaven worden aangemaakt.Callback URL
- Dit is de URL waarnaar de webhook wordt verzonden.
Controleer of de webhook is aangemaakt met
GET
webhook-abonnementen.
Uitgavengegevens opvragen
Uitgavengegevens opvragen met de Payhawk Developer API:
Kopieer de Account-ID van je Payhawk-account. De sleutel is te zien in de URL van de portal, bijvoorbeeld
https://portal.payhawk.com/?account=payhawk_demo_6fc0db9a
.Zorg ervoor dat de API-sleutel is ingeschakeld. Haal de sleutel op via Instellingen > Integraties > API-sleutels.
Ga naar Uitgaven op https://developers.payhawk.com/#/Expenses/get_api_v3_accounts__accountId__expenses.
Gebruik het
GET
-verzoek. Klik op uitproberen om het volledige verzoek weer te geven: https://api.payhawk.io/api/v3/accounts/payhawk_demo_6fc0db9a/expense.s.
Paginagrootte en verzoekgrootte
De paginagrootte is 1000 per verzoek. De resultaten ondersteunen echter paginering en Skip
en Take
-parameters: https://api.payhawk.io/api/v3/accounts/payhawk_demo_6fc0db9a/expenses?%24skip=1000&%24take=1000%27.
Filters
Filters kunnen met behulp van de voorbeelden worden opgebouwd. Ga als volgt te werk om ze te combineren:
{
"status": {
"$equal": "draft"
}
},
{
"supplier.name": {
"$contains": "Payhawk"
}
},
De volledige lijst met filtereigenschappen is beschikbaar in het type IExpenseFilter
.
De filters worden vervolgens als een Queryparameter gecodeerd en aan de URL gekoppeld. De bovenstaande filter vertaalt zich bijvoorbeeld naar:
https://api.payhawk.io/api/v3/accounts/payhawk_demo_6fc0db9a/expenses?%24filter=%7B%0A%20%20%22%24and%22%3A%20%5B%0A%20%20%20%20%7B%0A%20%20%20%20%20%20%22status%22%3A%20%7B%0A%20%20%20%20%20%20%20%20%22%24equal%22%3A%20%22draft%22%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20%22supplier.name%22%3A%20%7B%0A%20%20%20%20%20%20%20%20%22%24contains%22%3A%20%22Payhawk%22%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%5D%0A%7D&%24
Sorteren en ordenen
OrderBy
volgt dezelfde conventie in de querystring:
{
"createdAt": "asc"
}
vertaalt naar orderBy=%5B%7B%22createdAt%22%3A%22asc%22%7D%5D&%24
.
Je vindt de volledige lijst met sorteeropties in de eigenschap IExpenseOrderBy
.
Aanpasbare velden beheren
De aanpasbare velden in Payhawk kunnen worden ingesteld vanuit het Payhawk-webportaal. Er zijn echter gebruikssituaties waarin een extern systeem deze velden moet bijwerken of beheren. Denk hierbij aan het beheren van Grootboekcodes of Projectnummers van een externe ERP of tijdregistratiesoftware.
Kopieer de Account-ID van je Payhawk account. De sleutel zie je in de URL van de portal, bijvoorbeeld
https://portal.payhawk.com/?account=payhawk_demo_6fc0db9a
.Zorg ervoor dat de API-sleutel is ingeschakeld. Haal de sleutel op via Instellingen > Integraties > API-sleutels.
Ga naar de sectie aangepaste velden in de Developer Portal op https://developers.payhawk.com/#/Custom%20Fields/get_api_v3_accounts__accountId__custom_fields.
Je kunt met de aanpasbare velden de volgende acties uitvoeren:
Een aanpasbaar veld aanmaken, bijwerken of verwijderen.
Een aanpasbaar veldwaarde aanmaken, bijwerken of verwijderen.
Een aanpasbaar veldbeheerder aanmaken, bijwerken of verwijderen.
De ID van een aanpasbaar veld wordt automatisch gegenereerd. Deze geef je als volgt weer:
Ga naar Instellingen > Uitgavenvelden.
Scroll omlaag naar het gewenste aanpasbare veld en klik op een aangemaakt aangepast veld of vanuit het
GET
aangepast veldverzoek.
Als een aanpasbaar veld wordt verwijderd, worden de bestaande uitgaven waaraan dat aangepaste veld is gekoppeld niet bijgewerkt.
De factuur van een uitgave ophalen
Het bestand vind je onder Onkosten > Document en bestanden array.
Kopieer de Account-ID van je Payhawk account. De sleutel zie je in de URL van de portal, bijvoorbeeld
https://portal.payhawk.com/?account=payhawk_demo_6fc0db9a
.Zorg ervoor dat de API-sleutel is ingeschakeld. Haal de sleutel op via Instellingen > Integraties > API-sleutels.
Open de Developer Portal en controleer de sectie Uitgaven op https://developers.payhawk.com/#/Expenses.
Gebruik de eindpunten
GET Expenses
(voor veel uitgaven) ofGET Expense
(voor één uitgave) en zoek de bestanden-array:"document": {
"documentDate": "2024-02-15T12:53:50.809Z",
"dueDate": "2024-02-15T12:53:50.809Z",
"serviceDate": "2024-02-15T12:53:50.809Z",
"documentNumber": "string",
"documentType": "receipt",
"files": [
{
"id": "string",
"url": "string",
"contentType": "string"
}
]
}De reden dat de geretourneerde waarde een array is, is dat je bij Payhawk twee of meer documenten aan een uitgave kunt koppelen.
Eigenschappen of verborgen verwijzingen toevoegen aan uitgaven
Een dergelijke eigenschap heet externalLinks
. ExternalLinks
kan worden gebruikt om een verwijzing op te slaan naar een eigenschap die is opgeslagen op het externe systeem.
De eigenschap
externalLinks
is niet zichtbaar in de UI en bevat twee eigenschappen -title
enurl
.Bij een standaardintegratie kan het voorkomen dat deze eigenschap niet leeg is.
De eigenschap externalLinks
gebruik je als volgt:
Kopieer de Account-ID van je Payhawk-account. De sleutel zie je in de URL van de portal, bijvoorbeeld
https://portal.payhawk.com/?account=payhawk_demo_6fc0db9a
.Zorg ervoor dat de API-sleutel is ingeschakeld. Haal de sleutel op via Instellingen > Integraties > API-sleutels.
Gebruik het verzoek
Update
om de eigenschapexternalLinks
bij te werken: https://developers.payhawk.com/#/Expenses/patch_api_v3_accounts__accountId__expenses__expenseId_.
Uitgaven aanmaken
Je kunt met de Payhawk Developer API geen uitgave aanmaken.
Voor kaarttransacties worden uitgaven automatisch aangemaakt als de kaart wordt gebruikt.
Voor bankoverschrijvingen gebruik je de Postvak betaalbewijzen-functionaliteit om facturen te versturen en nieuwe uitgaven per bankoverschrijving aan te maken. Degene die de uitgave aanmaakt is de verzender van de e-mail.