Error codes and response statuses
A complete list of HTTP codes, transaction statuses, validation errors and API response codes for dpay.pl.
HTTP response codes
| Code | Meaning | Description |
|---|---|---|
200 | Success | Request processed successfully |
400 | Bad request | Data validation error (e.g. invalid checksum, missing fields) |
401 | Unauthorized | Missing or invalid credentials |
403 | Forbidden | No permission to access the resource (errorcode: err01) |
404 | Not found | Resource does not exist (e.g. err-payment-not-found) |
500 | Server error | Internal server error (err-internal-server-error) |
Response formats
Success response (payment registration)
{
"error": false,
"msg": "https://secure.dpay.pl/transfer@pay@A75AEBB4-4B89-4834-AD43-EF442C133769",
"status": true,
"transactionId": "A75AEBB4-4B89-4834-AD43-EF442C133769"
}
Transaction error response (e.g. canceled)
{
"error": true,
"msg": "Transaction canceled",
"status": false,
"transactionId": "42191111-A7AE-392E-8C09-7965C1DC6B0B"
}
Validation error (HTTP 400)
Returned for merchant-side errors (invalid checksum, disabled channel, incorrect amount):
{
"status": "failed",
"message": "Payment registration failed",
"errors": ["Invalid checksum"]
}
Error response with code (403)
{
"error": true,
"errorcode": "err01",
"message": "Access denied",
"status": false
}
Card response - success
{
"success": true,
"status": "success",
"message": {
"redirectText": "",
"redirectType": "SUCCESS"
}
}
Card response - 3D Secure required
{
"success": true,
"status": "success",
"message": {
"redirectText": "PGZvcm0gbWV0aG9kPSJQT1NUIi4uLg==",
"redirectType": "FORM"
}
}
BLIK response - error
{
"error": true,
"msg": "Transaction canceled",
"status": false,
"transactionId": "42191111-A7AE-392E-8C09-7965C1DC6B0B",
"additionalInfo": {
"error": "ER_WRONG_TICKET",
"error_description": null
}
}
Transaction statuses
The status field in the TransactionResponse:
| Status | Description |
|---|---|
created | Transaction created, awaiting payment |
processing | Payment is being processed |
paid | Payment completed successfully |
canceled | Transaction canceled |
Payout statuses
The state field in the WithdrawDetailsResponse:
| Value | Status | Description |
|---|---|---|
0 | Pending | Payout is awaiting processing |
1 | Completed | Payout has been processed |
-1 | Error | Payout failed |
Payment registration errors
Messages returned in the msg field when error: true:
| Message | Cause | Solution |
|---|---|---|
Invalid checksum | Invalid checksum | Check the field order and Hash key. Format: sha256(service|hash|value|url_success|url_fail|url_ipn) |
Service not found | Unknown service name | Check the service field in the dpay.pl panel |
Invalid value | Invalid amount | Use the decimal point format (e.g. "29.99") |
Invalid URL | Invalid URL | Make sure the URLs start with https:// |
BLIK error codes
The additionalInfo.error field in the BLIK Level 0 payment response:
| Code | Description | Solution |
|---|---|---|
ER_WRONG_TICKET | Invalid BLIK code | Ask the customer to generate a new code in their banking app |
Card response codes
The message.redirectType field in the CardPaymentResponse:
| Value | Meaning | Action |
|---|---|---|
SUCCESS | Payment completed | Redirect the customer to the success page |
FORM | 3D Secure required | Display the 3DS form from redirectText (Base64 encoded) |
DCB error codes
DCB registration errors
| Message | Cause | Solution |
|---|---|---|
Invalid GUID | Invalid GUID identifier | Check the GUID in the dpay.pl panel |
Invalid value | Invalid amount | Provide the amount in grosz (cents) as a string (e.g. "1023" = 10.23 PLN) |
DCB not available | Carrier does not support DCB | Suggest an alternative payment method to the customer |
Limit exceeded | Customer limit exceeded | Inform the customer about the carrier limit |
DCB payment statuses
| Value | Status | Description |
|---|---|---|
1 | PAID | Payment completed |
0 | PENDING | Payment awaiting confirmation |
-1 | REJECTED | Payment rejected |
2 | REFUNDED | Payment refunded |
DCB verification statuses
| Value | Status | Description |
|---|---|---|
1 | VERIFIED | Number verified |
0 | NOT_VERIFIED | Number not verified |
-1 | BLOCKED | Number blocked |
-2 | REQUIRES_CONTACT | Contact with support required |
SMS code statuses
| Value | Status | Description |
|---|---|---|
1 | USED | Code used |
0 | PENDING | Code awaiting use |
-1 | REJECTED | Code rejected |