Payment Initiation#
These endpoints allow TPP to initiate a payment from one of the payment accounts of a Holvi customer.
After initiating a payment, the customer must complete the payment verification process
by performing Strong Customer Authentication (SCA) on their phone. You can poll the
payment state, upon verification the state will change to verified
.
Note
All these endpoints require authentication, see the authentication documentation for the full list of headers required for these endpoints.
POST /api/v2/payment-initiation/
#
Example request:
POST /api/v2/payment-initiation/ HTTP/1.1
Accept: application/json
Authorization: Bearer testJWTAccessToken
{
"payment_account": "b06d5478-0954-451a-a1e0-f1eeb25336be",
"amount": "100.00",
"unstructured_reference": "Concert ticket",
"counterparty": {
"name": "Jean Sibelius",
"account_identifier": "FI7979977991294922",
"bic": "HOLVFIHH"
}
}
Example response:
HTTP/1.1 201 CREATED
Vary: Accept
Content-Type: application/json
{
"uuid": "b923d102-127e-449a-a216-960836a229c5",
"amount": "100.00",
"currency": "EUR",
"method": "sepa",
"booking_date": null,
"due_date": null,
"execution_at": null,
"state": "unverified",
"direction": "out",
"is_credit": null,
"structured_reference": "",
"unstructured_reference": "Concert ticket",
"end_to_end_id": "",
"counterparty": {
"name": "Jean Sibelius",
"bic": "HOLVFIHH",
"account_identifier": "FI7979977991294922",
"account_identifier_type": "iban"
}
}
Parameters:
<json>
counterparty
: Payment receiver<date>
due_date
: ISO 8601 date string<string>
payment_account
: Payment account UUID<string>
unstructured_reference
: Max length of 140 characters<string>
end_to_end_id
: (optional) Max length of 36 characters
Request Headers:
Host
: Must bepsd2.holvi.com
Date
: Must follow the format described in section 7.1.1.1 of RFC 7231Digest
: See authentication documentation for more detailsSignature
: See authentication documentation for more detailsX-Holvi-Client-Id
: Client ID provided by HolviX-Holvi-Client-Secret
: Client secret provided by HolviAuthorization
: JWT token to authenticate
Status Codes:
201
: No error401
: Unsuccessful authentication