Sometimes a payment can fail. This may be due to technical issues — for example, if the payment attempt times out — or because the donor has declined the payment.
This guide explains the most common error codes and statuses for subscriptions, payments, and payment methods.
The descriptions and states are provided in English, but with short descriptions. For example, it might look like this:
In this example, the error code is 300002 with the description Payment has failed to charge. This could mean the card has been blocked because it was lost or stolen. If the code or description is unclear, you can find the error code and a detailed explanation in the lists below. In this case, the payment’s status would change to Failed.
Not all error codes and states are listed here. If you need further information, please refer to our API documentation or your integrator. In most cases, error codes will be translated in your integration to your CRM system.
A Short Introduction to the Terminology
Just like fundraising, payment systems have their own specific “lingo”. To understand error codes and payment/subscription states, here’s an introduction to some of the terminology. If anything is still “all Greek” to you, don’t hesitate to contact our support team.
Debtor = The donor/member from whom the payment is to be collected.
Creditor = Your organisation.
System = OnlineFundraising’s payment engine.
Gateway = The selected payment gateway, such as Betalingsservice, MobilePay, NETS, Bambora, etc.
Error Codes = The payment has failed. The error code states the reason for the failure and where it occurred (system or gateway).
Cancel Codes = The donor or the creditor — that is, your organisation — has rejected the payment. The cancel code states who and how.
Subscriptions
Subscriptions can be set up with or without payment required.
For donations, payment is rarely mandatory — you typically wouldn’t send a reminder if a donor declines.
For some membership types, however, payment may be required, especially if it includes a benefit defined by your statutes. In such cases, you may want the option to send a reminder.
The subscription’s final status depends on whether payment is required when it is declined.
| Code | Description | Explanation | State |
|---|---|---|---|
| 100001 | Subscription has no active Payment Method, but Payments are required by the Agreement. | No active payment method, but payment is required — subscription remains active so you can send reminders. | Active |
| 100002 | Subscription has no active Payment Method, and Payments are not required. | No active payment method and payment not required — subscription is inactive. | Inactive |
| 100003 | Subscription Payment Method not found at the time of scheduling. | At the scheduled payment time, no payment method was found — subscription closed. | Inactive |
| 100101 | Cancelled by Debtor | Subscription stopped by donor or member. | Inactive |
| 100102 | Cancelled by Creditor in either UI or API integration. | Subscription stopped by you in the user interface or via integration. | Inactive |
| 100103 | Expired due to the defined expiresAfterDate. | Subscription expired due to set expiry date. | Inactive |
| 100104 | Cancelled by System at the time of charge. Due to the Payment Method being cancelled at payment gateway. | System closed the subscription because the payment method was closed at the gateway. | Inactive |
Payment method
When a donor (or you) sets up a subscription, a valid payment method must be registered.
Errors can occur at this stage — for example, if incorrect details are entered or if the donor exits partway through.
Even after setup, issues can arise, such as an expired card.
Here are the most common error codes and statuses for payments and payment methods:
| Code | Description | Explanation | State |
|---|---|---|---|
| 200001 | Payment Method signup failed | Donor entered incorrect details, e.g. personal/company ID or bank account number. | Failed |
| 200002 | Payment Method was rejected during sign up | Donor rejected the payment method during setup — e.g. in MobilePay app. | Rejected |
| 200003 | Payment Method signup expired | Donor didn’t approve the request in time. | Session Expired |
| 200004 | Payment Method has expired | Payment method expired — e.g. card expired. | Expired |
| 200005 | Payment Method has failed | Gateway error with no option to reactivate or retry. | Failed |
| 300001 | Payment Method is temporarily unavailable | Technical error or no response from gateway — e.g. insufficient funds, incorrect PIN entry, or account lock. For cards, retries are attempted over 7 days. | AwaitingRetry |
| 300002 | Payment has failed to charge | Card may be stolen, lost, or blocked. For SMS payment, phone may be off. Can also cover unknown gateway errors. | Failed |
| 300003 | Payment has expired | One-off payment (donation) wasn’t approved in time. | Session Expired |
| 300004 | Payment was rejected by Debtor | Donor rejected the payment in their bank or mobile app | Rejected |
| 300005 | Payment was rejected by Gateway | For example, your agreement with the gateway has expired. | Rejected |
| 300006 | Payment has failed to charge | Payment method was not active at the time of the scheduled charge. | Failed |
| 300101 | Cancelled by Creditor in either UI or API integration. | Rejected by you in the user interface or via your integration. | Cancelled |
