# Down Payment Link Retrieval POST /partner/v3/shops/:shopUuid/contracts/:contractUuid/payment-link The down payment transfer is done via a redirect to the payment system. The link to the payment system can be retrieved via POST /payment-link. The link to which the customer is to be redirected is in the response to the request, redirectUrl parameter. After the transfer is done, the customer is redirected back to the URL the partner indicates in the body of the request. As the next step, the customer is to be redirected to the payment system (redirectUrl from the response) to complete the down payment transfer. The return URL sent in the body of the request should end with a status variable, for example - "returnUrl": "https://inbank.ee/session/:uuid/downpayment?status={status}". When redirecting the customer back, the payment system will fill that variable with one of the following values: - SUCCESS - the down payment has been made and the contract will be activated. If the flow includes partner approval, the partner can now approve the contract and the contract will then be activated. - FAILED - the down payment was not successful. The page the customer is redirected to can prompt to attempt the down payment once more. Note that initiating a new payment via POST /payment-link is needed for each attempt to make a down payment. - UNKNOWN - the status of the down payment is unconfirmed at the moment. In this case the down payment can yet succeed or fail. The page the customer is redirected to can inform that the down payment is yet to be verified. In case of the UNKNOWN status, the partner system needs to check at reasonable intervals if the down payment has been confirmed. This can be done using the GET /contracts/:contractUuid API request. The response to this API request will contain the processStatus parameter: - Until the down payment is confirmed, the processStatus will remain in waiting_for_downpayment. Note that if the contract remains in the processStatus of waiting_for_downpayment after the redirect with status UNKNOWN for more than 24 hours, we recommend contacting either Inbank or the customer. - Once the down payment has been confirmed, the processStatus will change to activated, or waiting_for_partner_confirmation if the flow includes partner approval. Endpoint: POST /partner/v3/shops/{shopUuid}/contracts/{contractUuid}/payment-link Security: bearerAuth ## Path parameters: - `shopUuid` (string, required) The unique identifier of the shop. Example: "a93f1f44-d5dd-4469-bfcc-c1de9e969213" - `contractUuid` (string, required) The unique identifier of the contract. Example: "788ec8c4-c497-470b-8505-2303f151d427" ## Request fields (application/json): - `returnUrl` (string, required) The URL to which the customer is to be redirected back after the down payment transfer. Example: "https://inbank.ee/session/:uuid/downpayment?status={status}" ## Response 201 fields (application/json): - `redirectUrl` (string) Bank redirect url. Example: "https://igw-demo.every-pay.com/lp/zag/N2y" - `paymentMethods` (array) Payment link. - `paymentMethods.[0]` (object) - `paymentMethods.[0].displayName` (string) Display name. Example: "Luminor Bank AS; ema" - `paymentMethods.[0].redirectUrl` (string) Redirect url. Example: "https://igw-demo.every-pay.com/lp/id6/wfS?method_source=luminor" - `paymentMethods.[0].logoUrl` (string) Logo url. Example: "https://igw-demo.every-pay.com/assets/payment_methods/luminor-028.svg" - `paymentMethods.[1]` (object) - `paymentMethods.[2]` (object) ## Response 401 fields (application/json): - `message` (string) Unauthorized Example: "unauthorized" ## Response 403 fields (application/json): - `message` (string) Unauthorized access Example: "User is not authorized to access this resource with an explicit deny" ## Response 404 fields (application/json): - `message` (string) Not found ## Response 422 fields (application/json): - `message` (string) Unprocessable Entity ## Response 500 fields (application/json): - `message` (string) Internal server error Example: "internal_server_error"