Siirry sisältöön

API Reference

Kirjapro käyttää Supabase Edge Functions -arkkitehtuuria (Deno runtime).

https://<project-ref>.supabase.co/functions/v1/<function-name>

Useimmat endpointit vaativat JWT Bearer -tokenin.

Vaaditut headerit:

Authorization: Bearer <access_token>
Content-Type: application/json
apikey: <supabase_anon_key>

Lähettää verkkolaskun APIX-operaattorin kautta Finvoice 3.0 -muodossa.

OminaisuusArvo
EndpointPOST /functions/v1/send-einvoice-apix
AuthJWT Bearer token
Rate limit10 req/min per user

Lähettää verkkolaskun Maventa-operaattorin kautta.

OminaisuusArvo
EndpointPOST /functions/v1/send-einvoice-maventa
AuthJWT Bearer token
Rate limit10 req/min per user

Vastaanottaa toimitusilmoitukset APIX-operaattorilta.

OminaisuusArvo
EndpointPOST /functions/v1/apix-webhook
AuthHMAC-SHA256 signature
Rate limit100 req/min

Vastaanottaa toimitusilmoitukset Maventa-operaattorilta.

OminaisuusArvo
EndpointPOST /functions/v1/maventa-webhook
AuthWebhook secret
Rate limit100 req/min

Tarkistaa Maventa API -tunnusten toimivuuden.

OminaisuusArvo
EndpointPOST /functions/v1/validate-maventa-credentials
AuthJWT Bearer token
Rate limit5 req/min

Hakee vastaanottajan verkkolaskuosoitteen Maventan hakemistosta.

OminaisuusArvo
EndpointPOST /functions/v1/lookup-maventa-recipient
AuthJWT Bearer token
Rate limit10 req/min

Luo Stripe Checkout -session tilauksen päivittämiseen.

OminaisuusArvo
EndpointPOST /functions/v1/create-checkout-session
AuthJWT Bearer token
Rate limit5 req/min

Request:

{
"priceId": "price_xxx",
"companyId": "uuid",
"successUrl": "https://...",
"cancelUrl": "https://..."
}

Response:

{
"success": true,
"checkoutUrl": "https://checkout.stripe.com/...",
"sessionId": "cs_xxx"
}

Luo Stripe Customer Portal -session tilauksen hallintaan.

OminaisuusArvo
EndpointPOST /functions/v1/create-portal-session
AuthJWT Bearer token
Rate limit5 req/min

Luo Stripe-maksulinkki yksittäiselle laskulle. Asiakas voi maksaa laskun kortilla.

OminaisuusArvo
EndpointPOST /functions/v1/create-payment-link
AuthJWT Bearer token
Rate limit5 req/min
VaatiiYrittäjä-paketti tai ylempi

Request:

{
"companyId": "uuid",
"invoiceId": "uuid",
"amount": 1240.00,
"invoiceNumber": "2025-001",
"customerName": "Asiakas Oy"
}

Response:

{
"success": true,
"paymentUrl": "https://buy.stripe.com/...",
"paymentToken": "abc123..."
}

Tarkistaa Stripe-konfiguraation toimivuuden.

OminaisuusArvo
EndpointPOST /functions/v1/validate-stripe-config
AuthJWT Bearer token (admin/owner)
Rate limit5 req/min

Vastaanottaa Stripe-tapahtumat (checkout, subscription, invoice).

OminaisuusArvo
EndpointPOST /functions/v1/stripe-webhook
AuthStripe signature verification
Rate limitNone

Vastaanottaa korttimaksulinkkien maksutapahtumat.

OminaisuusArvo
EndpointPOST /functions/v1/stripe-invoice-webhook
AuthStripe signature verification
Rate limitNone

Aloittaa Open Banking -yhteyden muodostuksen.

OminaisuusArvo
EndpointPOST /functions/v1/enable-banking-auth
AuthJWT Bearer token
Rate limit5 req/min

Vastaanottaa pankin OAuth-paluukutsun.

OminaisuusArvo
EndpointGET /functions/v1/enable-banking-callback
AuthOAuth state parameter

Synkronoi pankkitapahtumat yhdistetystä tilistä.

OminaisuusArvo
EndpointPOST /functions/v1/enable-banking-sync
AuthJWT Bearer token
Rate limit5 req/min

Lähettää tiimikutsun sähköpostilla.

OminaisuusArvo
EndpointPOST /functions/v1/invite-member
AuthJWT Bearer token (admin/owner)
Rate limit10 req/min

Terveystarkistus.

OminaisuusArvo
EndpointGET /functions/v1/health
AuthNone
FunctionLimitWindow
send-einvoice-apix10 req1 min
send-einvoice-maventa10 req1 min
create-checkout-session5 req1 min
create-portal-session5 req1 min
create-payment-link5 req1 min
enable-banking-*5 req1 min
invite-member10 req1 min
apix-webhook100 req1 min
maventa-webhook100 req1 min
CodeMerkitys
400Bad Request - virheellinen pyyntö
401Unauthorized - autentikointi puuttuu
403Forbidden - ei oikeuksia
404Not Found - resurssia ei löydy
429Too Many Requests - rate limit ylitetty
500Internal Server Error - palvelinvirhe