Skip to main content

Errors and HTTP responses

Blink Payment utilises standard HTTP response codes to signify the outcome of an API request. Here's a general overview:

  • Codes in the 2xx range signify success.
  • Codes in the 4xx range represent errors based on the information given, like missing a necessary parameter, request conflicts, or unauthorised access.
  • Codes in the 5xx range point to issues with Blink Payment's servers. These instances are uncommon.

Certain 4xx errors, which can be programmatically addressed, come with an error code that briefly describes the reported error.

HTTP response code meanings

HTTP Response CodesNameDescription
200OKEverything worked as expected.
201CreatedNew response created.
400Bad RequestOften due to missing a required parameter.
401UnauthorizedNo valid API key provided.
402Request failedThe parameters were valid but the request failed.
403ForbiddenThe API key doesn't have permissions to perform the request.
404Not FoundThe requested resource doesn't exist.
409ConflictConflicts with another request (perhaps using the same key).
429Too Many RequestsToo many requests hit the API too quickly.
500Bad RequestSomething went wrong.

Generic messages

CodeTitleMessageNotes
201SuccessSuccessAccess token is created
201SuccessSuccessPayment Intent is created
400Validation errorApi key is requiredIf API key is not present, the create token request will return this status
400Validation errorSecret key is requiredIf secret key is not present, create token request will return this status
400Validation errorAmount is requiredIf proper amount is not present, create intent request will return this status
CC - 1 (min amount)
DD - 1.01(min amount)
OB - 0.01(min amount)
400Validation errorReturn url is requiredIf return url is not present, create intent request will return this status
400Validation errorNotification url is requiredIf notification url is not present, create intent request will return this status
400Validation errorPayment type is requiredIf payment type is not present, create intent request will return this status
Supported payment types - credit-card, direct-debit, open-banking
Allowed payment types of merchant account are returned in create token request
400Validation errorCurrency is requiredIf currency is not present, then create intent request will return this status
Supported currency - three digit ISO formatted code
Default currency - GBP
400Validation errorPayment Intent is requiredIf payment intent is not present, this status will be returned
401Authorisation errorPayment Intent has expiredIf the payment intent is created before 30 minutes or it has been used for one payment type already, then this status will be returned
401Authorisation errorUnauthorised requestIf the passed access_token in header, is invalid, then this status will be returned
401Authorisation errorAccess Token expiredIf the access_token is created before 30 minutes, then this status will be returned
403Authorisation errorForbidden requestIf Blink API status is not active in merchant account, then this status will be returned

Card payments

CodeTitleMessageNotes
200CapturedPayment successfulIf payment is successfully processed through credit card, then this status will be returned
200AcceptedPayment successful and acceptedIf payment is captured and received, then this status will be returned
200SuccessRerun successfullyIf rerun request successfully completed then this status will be returned.
200SuccessCaptured successfullyIf transaction is captured successfully before predefined delay capture duration, then this status is returned.
400Validation errorPayment Token is requiredIf payment token is not present, credit cards request will return this status
400Validation errorDevice timezone is requiredIf 3DS authentication is enabled, device timezone is needed for Credit Cards request
400Validation errorDevice capabilities is requiredIf 3DS authentication is enabled, device capabilities is needed for Credit Cards request
400Validation errorDevice screen resolution is requiredIf 3DS authentication is enabled, device screen resolution is needed for Credit Cards request
400Validation errorDevice accept language is requiredIf 3DS authentication is enabled, device accept language is needed for Credit Cards request
400Validation errorRemote address is requiredIf 3DS authentication is enabled, remote address is needed for Credit Cards request
400Validation errorCustomer name is requiredIf customer name is not present, this status will be returned
400Validation errorCustomer email is requiredIf customer email is not present, this status will be returned
400Validation errorTransaction must be in approved stateFor Captures Request, transaction must be in approved status
400Validation errorTransaction must be preauth type or with delay capture detailsFor Captures Request, transaction type must be preauth or with delay capture details
400Validation errorAmount is requiredFor Captures Request, if transaction type is “verify”, then amount is required.
5003DS authentication required3DS authentication requiredIf any of the 3DS related details are missing, then this status will be returned
500FinishedMissing CardcvvIf CVV details is not provided during card payment, then this status will be returned
500FinishedAuthentication Rejected By Issuer - Cardholder Not Enrolled In ServiceIf 3DS authentication is rejected, then this status will be returned
500Finished3DS declinedIf 3DS is declined while authenticating, then this status will be returned
500RejectedPayment rejectedif after capturing the payment if it’s rejected due to any issue, then this status will be returned

Open banking

CodeTitleMessageNotes
200SuccessSuccessIf payment is successful, then this status will be returned
400Validation errorCustomer name is requiredIf customer name is not present, this status will be returned
400Validation errorCustomer email is requiredIf customer email is not present, this status will be returned
500FailedFailedIf payment is not successful, then this status will be returned

Direct debit

CodeTitleMessageNotes
200Pending SubmissionPending SubmissionIf payment is successful, then this status will be returned
400Validation errorGiven name is required if company name is not presentIf given name is not present in the absence of company name, Direct Debits request will return this status
400Validation errorFamily name is required if company name is not presentFamily name and given name, both are required in the absence of company name in Direct Debits request
400Validation errorCompany name is required if given name and family name are not presentIf company name is not present along with given name and first name, Direct Debits request will return this status
400Validation errorEmail address is requiredIf email is not present, Direct Debits request will return this status
400Validation errorAccount holder name is requiredIf account holder name is not present, Direct Debits request will return this status
400Validation errorBranch code is requiredIf branch code is not present, Direct Debits request will return this status
400Validation errorAccount number is requiredIf account number is not present, Direct Debits request will return this status
401Authorisation errorDirect debit is not enabled to this merchant accountIf merchant’s Gocardless account is not connected with their blink account, then this status will be returned
CodeTitleMessageNotes
200SuccessPaylink details fetchedIf paylink details are fetched successfully then this status will be returned.
200SuccessPaylink details updatedIf paylink details are updated successfully then this status will be returned.
200SuccessPaylink notification sentIf paylink notification is sent successfully then this status will be returned.
201SuccessPaylink createdIf paylink url is created, then this status will be returned.
204SuccessPaylink deletedIf paylink is successfully deleted, then this status will be returned.
400Validation errorEmail or mobile number is requiredEmail or mobile number is required while creating any paylink resource.
400Validation errorStatus can be changed for unpaid paylinks onlyPaylink can be updated only if it’s status is unpaid.
400Validation errorOnly email, mobile number or reminder details can be updated for any paylinkThe following details can be updated for any unpaid paylink: email, mobile number, reminder.
400Validation errorStatus can only be changed to cancelledUnpaid paylink can only be changed to “cancelled” status.
400Validation errorReminder interval and frequency are requiredIf reminder details need to be updated for any unpaid paylink, then both reminder interval and frequency are required.
400Validation errorPaid paylink cannot be deletedAny paid paylink cannot be deleted.
400Validation errorSend sms or Send email must be trueAny of the following attribute must be true for Paylink Notification request: send_sms, send_email.
400Validation errorNotification can only be sent if status is Payment attempted or UnpaidPaylink Notification request will be sent only if the status is Unpaid or Payment attempted.
401Authorisation errorUnauthorised accessIf invalid merchant details are passed, then this status will be returned.
404Data not foundInvalid requestIf invalid paylink id is passed, then this status will be returned.