aboutsummaryrefslogtreecommitdiff
path: root/gnu-taler-error-codes
diff options
context:
space:
mode:
Diffstat (limited to 'gnu-taler-error-codes')
-rw-r--r--gnu-taler-error-codes/Makefile7
-rw-r--r--gnu-taler-error-codes/registry.rec2672
2 files changed, 2669 insertions, 10 deletions
diff --git a/gnu-taler-error-codes/Makefile b/gnu-taler-error-codes/Makefile
index b95669f..4601f61 100644
--- a/gnu-taler-error-codes/Makefile
+++ b/gnu-taler-error-codes/Makefile
@@ -15,8 +15,11 @@ prep:
15combined.tmp: registry.rec prep 15combined.tmp: registry.rec prep
16 recsel -t TalerErrorCode -j HttpStatus -p Description,Name,Value,HttpStatus,HttpStatus.Value,HttpStatus.Identifier ../http-status-codes/registry.rec registry.rec > $@ 16 recsel -t TalerErrorCode -j HttpStatus -p Description,Name,Value,HttpStatus,HttpStatus.Value,HttpStatus.Identifier ../http-status-codes/registry.rec registry.rec > $@
17 17
18taler-error-codes.h.tmp: combined.tmp h.template 18combined-indents.tmp: combined.tmp
19 ../format.sh h.template < combined.tmp > $@ 19 sed 's/\+ /\+ * /g' combined.tmp > combined-indents.tmp
20
21taler-error-codes.h.tmp: combined-indents.tmp h.template
22 ../format.sh h.template < combined-indents.tmp > $@
20 23
21taler-error-codes.h: h.header taler-error-codes.h.tmp h.footer 24taler-error-codes.h: h.header taler-error-codes.h.tmp h.footer
22 cat $^ > $@ 25 cat $^ > $@
diff --git a/gnu-taler-error-codes/registry.rec b/gnu-taler-error-codes/registry.rec
index a3c52db..9f2d195 100644
--- a/gnu-taler-error-codes/registry.rec
+++ b/gnu-taler-error-codes/registry.rec
@@ -8,7 +8,7 @@
8%constraint: ( Value < 100 ) || ( Value > 999 ) 8%constraint: ( Value < 100 ) || ( Value > 999 )
9%type: Value ValueRange_t 9%type: Value ValueRange_t
10%mandatory: Value 10%mandatory: Value
11%typedef: Description_t regexp /^[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_-][abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_\(\)\. -]*$/ 11%typedef: Description_t regexp /^[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_-].*$/
12%type: Description Description_t 12%type: Description Description_t
13%mandatory: Description 13%mandatory: Description
14%typedef: Name_t regexp /^[ABCDEFGHIJKLMNOPQRSTUVWXYZ_][ABCDEFGHIJKLMNOPQRSTUVWXYZ_0123456789]*$/ 14%typedef: Name_t regexp /^[ABCDEFGHIJKLMNOPQRSTUVWXYZ_][ABCDEFGHIJKLMNOPQRSTUVWXYZ_0123456789]*$/
@@ -23,15 +23,2671 @@
23 23
24Value: 0 24Value: 0
25Name: NONE 25Name: NONE
26Description: No error (success). 26Description: Special code to indicate no error (or no "code" present).
27HttpStatus: 0 27HttpStatus: 0
28 28
29Value: 1 29Value: 1
30Name: TEST 30Name: INVALID
31Description: Testing 31Description: Special code to indicate that a non-integer error code was returned in
32HttpStatus: 200 32+ the JSON response.
33HttpStatus: 0
33 34
34Value: 2 35Value: 2
35Name: TEST2 36Name: INVALID_RESPONSE
36Description: Invalid 37Description: The response we got from the server was not even in JSON format.
37HttpStatus: 199 38HttpStatus: 0
39
40Value: 3
41Name: NOT_IMPLEMENTED
42Description: Generic implementation error: this function was not yet implemented.
43HttpStatus: 0
44
45Value: 4
46Name: EXCHANGE_BAD_CONFIGURATION
47Description: Exchange is badly configured and thus cannot operate.
48HttpStatus: 0
49
50Value: 5
51Name: INTERNAL_INVARIANT_FAILURE
52Description: Internal assertion error.
53HttpStatus: 0
54
55Value: 6
56Name: TIMEOUT
57Description: Operation timed out.
58HttpStatus: 0
59
60Value: 7
61Name: JSON_ALLOCATION_FAILURE
62Description: Exchange failed to allocate memory for building JSON reply.
63HttpStatus: 0
64
65Value: 8
66Name: METHOD_INVALID
67Description: HTTP method invalid for this URL.
68HttpStatus: 0
69
70Value: 9
71Name: OPERATION_INVALID
72Description: Operation specified invalid for this URL (resulting in a "NOT FOUND"
73+ for the overall response).
74HttpStatus: 0
75
76Value: 10
77Name: ENDPOINT_UNKNOWN
78Description: There is no endpoint defined for the URL provided by the client
79+ (returned together with a #MHD_HTTP_NOT_FOUND status code).
80HttpStatus: 404
81
82Value: 11
83Name: URI_TOO_LONG
84Description: The URI is longer than the longest URI the HTTP server is willing to
85+ parse. Returned together with an HTTP status code of
86+ #MHD_HTTP_URI_TOO_LONG.
87HttpStatus: 414
88
89Value: 12
90Name: WRONG_NUMBER_OF_SEGMENTS
91Description: The number of segments included in the URI does not match the number
92+ of segments expected by the endpoint. (returned together with a
93+ #MHD_HTTP_NOT_FOUND status code).
94HttpStatus: 404
95
96Value: 13
97Name: HOLE_IN_WIRE_FEE_STRUCTURE
98Description: The start and end-times in the wire fee structure leave a hole. This
99+ is not allowed. Generated as an error on the client-side.
100HttpStatus: 0
101
102Value: 14
103Name: VERSION_MALFORMED
104Description: The version string given does not follow the expected
105+ CURRENT:REVISION:AGE Format. Generated as an error on the client
106+ side.
107HttpStatus: 0
108
109Value: 15
110Name: CLIENT_INTERNAL_FAILURE
111Description: The client-side experienced an internal failure. Generated as an error
112+ on the client side.
113HttpStatus: 0
114
115Value: 1001
116Name: DB_SETUP_FAILED
117Description: The exchange failed to even just initialize its connection to the
118+ database. This response is provided with HTTP status code
119+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
120HttpStatus: 500
121
122Value: 1002
123Name: DB_START_FAILED
124Description: The exchange encountered an error event to just start the database
125+ transaction. This response is provided with HTTP status code
126+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
127HttpStatus: 500
128
129Value: 1003
130Name: DB_COMMIT_FAILED_HARD
131Description: The exchange encountered an error event to commit the database
132+ transaction (hard, unrecoverable error). This response is provided
133+ with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
134HttpStatus: 500
135
136Value: 1004
137Name: DB_COMMIT_FAILED_ON_RETRY
138Description: The exchange encountered an error event to commit the database
139+ transaction, even after repeatedly retrying it there was always a
140+ conflicting transaction. (This indicates a repeated serialization
141+ error; should only happen if some client maliciously tries to create
142+ conflicting concurrent transactions.) This response is provided with
143+ HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
144HttpStatus: 500
145
146Value: 1005
147Name: PARSER_OUT_OF_MEMORY
148Description: The exchange had insufficient memory to parse the request. This
149+ response is provided with HTTP status code
150+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
151HttpStatus: 500
152
153Value: 1006
154Name: JSON_INVALID
155Description: The JSON in the client's request to the exchange was malformed.
156+ (Generic parse error). This response is provided with HTTP status code
157+ #MHD_HTTP_BAD_REQUEST.
158HttpStatus: 400
159
160Value: 1007
161Name: JSON_INVALID_WITH_DETAILS
162Description: The JSON in the client's request to the exchange was malformed.
163+ Details about the location of the parse error are provided. This
164+ response is provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
165HttpStatus: 400
166
167Value: 1008
168Name: PARAMETER_MISSING
169Description: A required parameter in the request to the exchange was missing. This
170+ response is provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
171HttpStatus: 400
172
173Value: 1009
174Name: PARAMETER_MALFORMED
175Description: A parameter in the request to the exchange was malformed. This
176+ response is provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
177HttpStatus: 400
178
179Value: 1010
180Name: COIN_HISTORY_DB_ERROR_INSUFFICIENT_FUNDS
181Description: The exchange failed to obtain the transaction history of the given
182+ coin from the database while generating an insufficient funds errors.
183+ This can happen during /deposit or /recoup requests. This response is
184+ provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
185HttpStatus: 500
186
187Value: 1011
188Name: INTERNAL_LOGIC_ERROR
189Description: Internal logic error. Some server-side function failed that really
190+ should not. This response is provided with HTTP status code
191+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
192HttpStatus: 500
193
194Value: 1012
195Name: PAYTO_WRONG_METHOD
196Description: The method specified in a payto:// URI is not one we expected.
197HttpStatus: 0
198
199Value: 1013
200Name: PAYTO_MALFORMED
201Description: The payto:// URI is malformed.
202HttpStatus: 0
203
204Value: 1014
205Name: DB_COIN_HISTORY_STORE_ERROR
206Description: We failed to update the database of known coins.
207HttpStatus: 0
208
209Value: 1050
210Name: COINS_INVALID_COIN_PUB
211Description: The public key of given to a /coins/ handler was malformed.
212HttpStatus: 0
213
214Value: 1051
215Name: RESERVES_INVALID_RESERVE_PUB
216Description: The reserve key of given to a /reserves/ handler was malformed.
217HttpStatus: 0
218
219Value: 1052
220Name: TRANSFERS_INVALID_WTID
221Description: The public key of given to a /transfers/ handler was malformed.
222HttpStatus: 0
223
224Value: 1053
225Name: DEPOSITS_INVALID_H_WIRE
226Description: The wire hash of given to a /deposits/ handler was malformed.
227HttpStatus: 0
228
229Value: 1054
230Name: DEPOSITS_INVALID_MERCHANT_PUB
231Description: The merchant key of given to a /deposits/ handler was malformed.
232HttpStatus: 0
233
234Value: 1055
235Name: DEPOSITS_INVALID_H_CONTRACT_TERMS
236Description: The hash of the contract terms given to a /deposits/ handler was
237+ malformed.
238HttpStatus: 0
239
240Value: 1056
241Name: DEPOSITS_INVALID_COIN_PUB
242Description: The coin public key of given to a /deposits/ handler was malformed.
243HttpStatus: 0
244
245Value: 1057
246Name: DEPOSITS_INVALID_BODY_BY_EXCHANGE
247Description: The body returned by the exchange for a /deposits/ request was
248+ malformed. Error created client-side.
249HttpStatus: 0
250
251Value: 1058
252Name: DEPOSITS_INVALID_SIGNATURE_BY_EXCHANGE
253Description: The signature returned by the exchange in a /deposits/ request was
254+ malformed. Error created client-side.
255HttpStatus: 0
256
257Value: 1100
258Name: WITHDRAW_INSUFFICIENT_FUNDS
259Description: The given reserve does not have sufficient funds to admit the
260+ requested withdraw operation at this time. The response includes the
261+ current "balance" of the reserve as well as the transaction "history"
262+ that lead to this balance. This response is provided with HTTP status
263+ code #MHD_HTTP_CONFLICT.
264HttpStatus: 409
265
266Value: 1101
267Name: WITHDRAW_RESERVE_UNKNOWN
268Description: The exchange has no information about the "reserve_pub" that was
269+ given. This response is provided with HTTP status code
270+ #MHD_HTTP_NOT_FOUND.
271HttpStatus: 404
272
273Value: 1102
274Name: WITHDRAW_AMOUNT_FEE_OVERFLOW
275Description: The amount to withdraw together with the fee exceeds the numeric range
276+ for Taler amounts. This is not a client failure, as the coin value
277+ and fees come from the exchange's configuration. This response is
278+ provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
279HttpStatus: 500
280
281Value: 1103
282Name: AMOUNT_DEPOSITS_OVERFLOW
283Description: All of the deposited amounts into this reserve total up to a value
284+ that is too big for the numeric range for Taler amounts. This is not a
285+ client failure, as the transaction history comes from the exchange's
286+ configuration. This response is provided with HTTP status code
287+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
288HttpStatus: 500
289
290Value: 1104
291Name: WITHDRAW_HISTORIC_DENOMINATION_KEY_NOT_FOUND
292Description: For one of the historic withdrawals from this reserve, the exchange
293+ could not find the denomination key. This is not a client failure, as
294+ the transaction history comes from the exchange's configuration. This
295+ response is provided with HTTP status code
296+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
297HttpStatus: 500
298
299Value: 1105
300Name: WITHDRAW_AMOUNT_WITHDRAWALS_OVERFLOW
301Description: All of the withdrawals from reserve total up to a value that is too
302+ big for the numeric range for Taler amounts. This is not a client
303+ failure, as the transaction history comes from the exchange's
304+ configuration. This response is provided with HTTP status code
305+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
306HttpStatus: 500
307
308Value: 1106
309Name: WITHDRAW_RESERVE_WITHOUT_WIRE_TRANSFER
310Description: The exchange somehow knows about this reserve, but there seem to have
311+ been no wire transfers made. This is not a client failure, as this is
312+ a database consistency issue of the exchange. This response is
313+ provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
314HttpStatus: 500
315
316Value: 1107
317Name: WITHDRAW_SIGNATURE_FAILED
318Description: The exchange failed to create the signature using the denomination
319+ key. This response is provided with HTTP status code
320+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
321HttpStatus: 500
322
323Value: 1108
324Name: WITHDRAW_DB_STORE_ERROR
325Description: The exchange failed to store the withdraw operation in its database.
326+ This response is provided with HTTP status code
327+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
328HttpStatus: 500
329
330Value: 1109
331Name: WITHDRAW_DB_FETCH_ERROR
332Description: The exchange failed to check against historic withdraw data from
333+ database (as part of ensuring the idempotency of the operation). This
334+ response is provided with HTTP status code
335+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
336HttpStatus: 500
337
338Value: 1110
339Name: WITHDRAW_DENOMINATION_KEY_NOT_FOUND
340Description: The exchange is not aware of the denomination key the wallet requested
341+ for the withdrawal. This response is provided with HTTP status code
342+ #MHD_HTTP_NOT_FOUND.
343HttpStatus: 404
344
345Value: 1111
346Name: WITHDRAW_RESERVE_SIGNATURE_INVALID
347Description: The signature of the reserve is not valid. This response is provided
348+ with HTTP status code #MHD_HTTP_BAD_REQUEST.
349HttpStatus: 400
350
351Value: 1112
352Name: WITHDRAW_HISTORY_DB_ERROR_INSUFFICIENT_FUNDS
353Description: When computing the reserve history, we ended up with a negative
354+ overall balance, which should be impossible. This response is provided
355+ with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
356HttpStatus: 500
357
358Value: 1113
359Name: WITHDRAW_RESERVE_HISTORY_IMPOSSIBLE
360Description: When computing the reserve history, we ended up with a negative
361+ overall balance, which should be impossible. This response is provided
362+ with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
363HttpStatus: 500
364
365Value: 1114
366Name: WITHDRAW_VALIDITY_IN_FUTURE
367Description: Validity period of the coin to be withdrawn is in the future.
368+ Returned with an HTTP status of #MHD_HTTP_PRECONDITION_FAILED.
369HttpStatus: 412
370
371Value: 1115
372Name: WITHDRAW_VALIDITY_IN_PAST
373Description: Withdraw period of the coin to be withdrawn is in the past. Returned
374+ with an HTTP status of #MHD_HTTP_GONE.
375HttpStatus: 410
376
377Value: 1116
378Name: DENOMINATION_KEY_LOST
379Description: Withdraw period of the coin to be withdrawn is in the past. Returned
380+ with an HTTP status of #MHD_HTTP_GONE.
381HttpStatus: 410
382
383Value: 1117
384Name: WITHDRAW_RESERVE_BALANCE_CORRUPT
385Description: The exchange's database entry with the reserve balance summary is
386+ inconsistent with its own history of the reserve. Returned with an
387+ HTTP status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
388HttpStatus: 500
389
390Value: 1118
391Name: WITHDRAW_REPLY_MALFORMED
392Description: The exchange responded with a reply that did not satsify the protocol.
393+ This error is not used in the protocol but created client-side.
394HttpStatus: 0
395
396Value: 1119
397Name: WITHDRAW_UNBLIND_FAILURE
398Description: The client failed to unblind the blind signature. This error is not
399+ used in the protocol but created client-side.
400HttpStatus: 0
401
402Value: 1150
403Name: RESERVE_STATUS_DB_ERROR
404Description: The exchange failed to obtain the transaction history of the given
405+ reserve from the database. This response is provided with HTTP status
406+ code #MHD_HTTP_INTERNAL_SERVER_ERROR.
407HttpStatus: 500
408
409Value: 1151
410Name: RESERVE_STATUS_UNKNOWN
411Description: The reserve status was requested using a unknown key, to be returned
412+ with 404 Not Found.
413HttpStatus: 0
414
415Value: 1152
416Name: RESERVE_STATUS_REPLY_MALFORMED
417Description: The exchange responded with a reply that did not satsify the protocol.
418+ This error is not used in the protocol but created client-side.
419HttpStatus: 0
420
421Value: 1200
422Name: DEPOSIT_INSUFFICIENT_FUNDS
423Description: The respective coin did not have sufficient residual value for the
424+ /deposit operation (i.e. due to double spending). The "history" in the
425+ respose provides the transaction history of the coin proving this
426+ fact. This response is provided with HTTP status code
427+ #MHD_HTTP_CONFLICT.
428HttpStatus: 409
429
430Value: 1201
431Name: DEPOSIT_HISTORY_DB_ERROR
432Description: The exchange failed to obtain the transaction history of the given
433+ coin from the database (this does not happen merely because the coin
434+ is seen by the exchange for the first time). This response is provided
435+ with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
436HttpStatus: 500
437
438Value: 1202
439Name: DEPOSIT_STORE_DB_ERROR
440Description: The exchange failed to store the /depost information in the database.
441+ This response is provided with HTTP status code
442+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
443HttpStatus: 500
444
445Value: 1203
446Name: DEPOSIT_DB_DENOMINATION_KEY_UNKNOWN
447Description: The exchange database is unaware of the denomination key that signed
448+ the coin (however, the exchange process is; this is not supposed to
449+ happen; it can happen if someone decides to purge the DB behind the
450+ back of the exchange process). Hence the deposit is being refused.
451+ This response is provided with HTTP status code
452+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
453HttpStatus: 500
454
455Value: 1204
456Name: DEPOSIT_DENOMINATION_KEY_UNKNOWN
457Description: The exchange was trying to lookup the denomination key for the purpose
458+ of a DEPOSIT operation. However, the denomination key is unavailable
459+ for that purpose. This can be because it is entirely unknown to the
460+ exchange or not in the validity period for the deposit operation.
461+ Hence the deposit is being refused. This response is provided with
462+ HTTP status code #MHD_HTTP_NOT_FOUND.
463HttpStatus: 404
464
465Value: 1205
466Name: DEPOSIT_COIN_SIGNATURE_INVALID
467Description: The signature made by the coin over the deposit permission is not
468+ valid. This response is provided with HTTP status code
469+ #MHD_HTTP_BAD_REQUEST.
470HttpStatus: 400
471
472Value: 1206
473Name: DEPOSIT_DENOMINATION_SIGNATURE_INVALID
474Description: The signature of the denomination key over the coin is not valid. This
475+ response is provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
476HttpStatus: 400
477
478Value: 1207
479Name: DEPOSIT_NEGATIVE_VALUE_AFTER_FEE
480Description: The stated value of the coin after the deposit fee is subtracted would
481+ be negative. This response is provided with HTTP status code
482+ #MHD_HTTP_BAD_REQUEST.
483HttpStatus: 400
484
485Value: 1208
486Name: DEPOSIT_REFUND_DEADLINE_AFTER_WIRE_DEADLINE
487Description: The stated refund deadline is after the wire deadline. This response
488+ is provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
489HttpStatus: 400
490
491Value: 1209
492Name: DEPOSIT_INVALID_WIRE_FORMAT_TYPE
493Description: The exchange does not recognize the validity of or support the given
494+ wire format type. This response is provided with HTTP status code
495+ #MHD_HTTP_BAD_REQUEST.
496HttpStatus: 400
497
498Value: 1210
499Name: DEPOSIT_INVALID_WIRE_FORMAT_JSON
500Description: The exchange failed to canonicalize and hash the given wire format.
501+ For example, the merchant failed to provide the "salt" or a valid
502+ payto:// URI in the wire details. Note that while the exchange will
503+ do some basic sanity checking on the wire details, it cannot warrant
504+ that the banking system will ultimately be able to route to the
505+ specified address, even if this check passed. This response is
506+ provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
507HttpStatus: 400
508
509Value: 1211
510Name: DEPOSIT_INVALID_WIRE_FORMAT_CONTRACT_HASH_CONFLICT
511Description: The hash of the given wire address does not match the hash specified
512+ in the proposal data. This response is provided with HTTP status code
513+ #MHD_HTTP_BAD_REQUEST.
514HttpStatus: 400
515
516Value: 1213
517Name: DEPOSIT_INVALID_WIRE_FORMAT_ACCOUNT_NUMBER
518Description: The exchange detected that the given account number is invalid for the
519+ selected wire format type. This response is provided with HTTP status
520+ code #MHD_HTTP_BAD_REQUEST.
521HttpStatus: 400
522
523Value: 1218
524Name: DEPOSIT_INVALID_TIMESTAMP
525Description: Timestamp included in deposit permission is intolerably far off with
526+ respect to the clock of the exchange.
527HttpStatus: 0
528
529Value: 1219
530Name: DEPOSIT_DENOMINATION_VALIDITY_IN_FUTURE
531Description: Validity period of the denomination key is in the future. Returned
532+ with an HTTP status of #MHD_HTTP_PRECONDITION_FAILED.
533HttpStatus: 412
534
535Value: 1220
536Name: DEPOSIT_DENOMINATION_EXPIRED
537Description: Denomination key of the coin is past the deposit deadline. Returned
538+ with an HTTP status of #MHD_HTTP_GONE.
539HttpStatus: 410
540
541Value: 1221
542Name: DEPOSIT_INVALID_SIGNATURE_BY_EXCHANGE
543Description: The signature provided by the exchange is not valid. Error created
544+ client-side.
545HttpStatus: 0
546
547Value: 1222
548Name: DEPOSIT_CURRENCY_MISMATCH
549Description: The currency specified for the deposit is different from the currency
550+ of the coin. This response is provided with HTTP status code
551+ #MHD_HTTP_PRECONDITION_FAILED.
552HttpStatus: 412
553
554Value: 1300
555Name: MELT_INSUFFICIENT_FUNDS
556Description: The respective coin did not have sufficient residual value for the
557+ /refresh/melt operation. The "history" in this response provdes the
558+ "residual_value" of the coin, which may be less than its
559+ "original_value". This response is provided with HTTP status code
560+ #MHD_HTTP_CONFLICT.
561HttpStatus: 409
562
563Value: 1301
564Name: MELT_DENOMINATION_KEY_NOT_FOUND
565Description: The respective coin did not have sufficient residual value for the
566+ /refresh/melt operation. The "history" in this response provdes the
567+ "residual_value" of the coin, which may be less than its
568+ "original_value". This response is provided with HTTP status code
569+ #MHD_HTTP_CONFLICT.
570HttpStatus: 409
571
572Value: 1302
573Name: MELT_COIN_HISTORY_COMPUTATION_FAILED
574Description: The exchange had an internal error reconstructing the transaction
575+ history of the coin that was being melted. This response is provided
576+ with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
577HttpStatus: 500
578
579Value: 1303
580Name: MELT_DB_FETCH_ERROR
581Description: The exchange failed to check against historic melt data from database
582+ (as part of ensuring the idempotency of the operation). This response
583+ is provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
584HttpStatus: 500
585
586Value: 1304
587Name: MELT_DB_STORE_SESSION_ERROR
588Description: The exchange failed to store session data in the database. This
589+ response is provided with HTTP status code
590+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
591HttpStatus: 500
592
593Value: 1305
594Name: MELT_FEES_EXCEED_CONTRIBUTION
595Description: The exchange encountered melt fees exceeding the melted coin's
596+ contribution. This response is provided with HTTP status code
597+ #MHD_HTTP_BAD_REQUEST.
598HttpStatus: 400
599
600Value: 1306
601Name: MELT_DENOMINATION_SIGNATURE_INVALID
602Description: The denomination key signature on the melted coin is invalid. This
603+ response is provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
604HttpStatus: 400
605
606Value: 1307
607Name: MELT_COIN_SIGNATURE_INVALID
608Description: The signature made with the coin to be melted is invalid. This
609+ response is provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
610HttpStatus: 400
611
612Value: 1308
613Name: MELT_HISTORY_DB_ERROR_INSUFFICIENT_FUNDS
614Description: The exchange failed to obtain the transaction history of the given
615+ coin from the database while generating an insufficient funds errors.
616+ This response is provided with HTTP status code
617+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
618HttpStatus: 500
619
620Value: 1309
621Name: MELT_COIN_EXPIRED_NO_ZOMBIE
622Description: The denomination of the given coin has past its expiration date and it
623+ is also not a valid zombie (that is, was not refreshed with the fresh
624+ coin being subjected to recoup).
625HttpStatus: 0
626
627Value: 1310
628Name: MELT_INVALID_SIGNATURE_BY_EXCHANGE
629Description: The signature returned by the exchange in a melt request was
630+ malformed. Error created client-side.
631HttpStatus: 0
632
633Value: 1311
634Name: MELT_CURRENCY_MISMATCH
635Description: The currency specified for the melt amount is different from the
636+ currency of the coin. This response is provided with HTTP status code
637+ #MHD_HTTP_PRECONDITION_FAILED.
638HttpStatus: 412
639
640Value: 1351
641Name: REFRESH_RECOUP_DENOMINATION_KEY_NOT_FOUND
642Description: The exchange is unaware of the denomination key that was used to sign
643+ the melted zombie coin. This response is provided with HTTP status
644+ code #MHD_HTTP_NOT_FOUND.
645HttpStatus: 404
646
647Value: 1352
648Name: REFRESH_RECOUP_DENOMINATION_VALIDITY_IN_FUTURE
649Description: Validity period of the denomination key is in the future. Returned
650+ with an HTTP status of #MHD_HTTP_PRECONDITION_FAILED.
651HttpStatus: 412
652
653Value: 1353
654Name: REFRESH_RECOUP_DENOMINATION_EXPIRED
655Description: Denomination key of the coin is past the deposit deadline. Returned
656+ with an HTTP status of #MHD_HTTP_GONE.
657HttpStatus: 410
658
659Value: 1354
660Name: REFRESH_ZOMBIE_DENOMINATION_EXPIRED
661Description: Denomination key of the coin is past the deposit deadline. Returned
662+ with an HTTP status of #MHD_HTTP_GONE.
663HttpStatus: 410
664
665Value: 1370
666Name: REVEAL_COMMITMENT_VIOLATION
667Description: The provided transfer keys do not match up with the original
668+ commitment. Information about the original commitment is included in
669+ the response. This response is provided with HTTP status code
670+ #MHD_HTTP_CONFLICT.
671HttpStatus: 409
672
673Value: 1371
674Name: REVEAL_SIGNING_ERROR
675Description: Failed to produce the blinded signatures over the coins to be
676+ returned. This response is provided with HTTP status code
677+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
678HttpStatus: 500
679
680Value: 1372
681Name: REVEAL_SESSION_UNKNOWN
682Description: The exchange is unaware of the refresh session specified in the
683+ request. This response is provided with HTTP status code
684+ #MHD_HTTP_BAD_REQUEST.
685HttpStatus: 400
686
687Value: 1373
688Name: REVEAL_DB_FETCH_SESSION_ERROR
689Description: The exchange failed to retrieve valid session data from the database.
690+ This response is provided with HTTP status code
691+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
692HttpStatus: 500
693
694Value: 1374
695Name: REVEAL_DB_FETCH_REVEAL_ERROR
696Description: The exchange failed to retrieve previously revealed data from the
697+ database. This response is provided with HTTP status code
698+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
699HttpStatus: 500
700
701Value: 1375
702Name: REVEAL_DB_COMMIT_ERROR
703Description: The exchange failed to retrieve commitment data from the database.
704+ This response is provided with HTTP status code
705+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
706HttpStatus: 500
707
708Value: 1376
709Name: REVEAL_CNC_TRANSFER_ARRAY_SIZE_INVALID
710Description: The size of the cut-and-choose dimension of the private transfer keys
711+ request does not match #TALER_CNC_KAPPA - 1. This response is provided
712+ with HTTP status code #MHD_HTTP_BAD_REQUEST.
713HttpStatus: 400
714
715Value: 1377
716Name: REVEAL_NEW_DENOMS_ARRAY_SIZE_EXCESSIVE
717Description: The number of coins to be created in refresh exceeds the limits of the
718+ exchange. private transfer keys request does not match
719+ #TALER_CNC_KAPPA - 1. This response is provided with HTTP status code
720+ #MHD_HTTP_BAD_REQUEST.
721HttpStatus: 400
722
723Value: 1378
724Name: REVEAL_NEW_DENOMS_ARRAY_SIZE_MISMATCH
725Description: The number of envelopes given does not match the number of
726+ denomination keys given. This response is provided with HTTP status
727+ code #MHD_HTTP_BAD_REQUEST.
728HttpStatus: 400
729
730Value: 1379
731Name: REVEAL_COST_CALCULATION_OVERFLOW
732Description: The exchange encountered a numeric overflow totaling up the cost for
733+ the refresh operation. This response is provided with HTTP status
734+ code #MHD_HTTP_INTERNAL_SERVER_ERROR.
735HttpStatus: 500
736
737Value: 1380
738Name: REVEAL_AMOUNT_INSUFFICIENT
739Description: The exchange's cost calculation shows that the melt amount is below
740+ the costs of the transaction. This response is provided with HTTP
741+ status code #MHD_HTTP_BAD_REQUEST.
742HttpStatus: 400
743
744Value: 1381
745Name: REVEAL_FRESH_DENOMINATION_KEY_NOT_FOUND
746Description: The exchange is unaware of the denomination key that was requested for
747+ one of the fresh coins. This response is provided with HTTP status
748+ code #MHD_HTTP_BAD_REQUEST.
749HttpStatus: 400
750
751Value: 1382
752Name: REVEAL_LINK_SIGNATURE_INVALID
753Description: The signature made with the coin over the link data is invalid. This
754+ response is provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
755HttpStatus: 400
756
757Value: 1383
758Name: REVEAL_KEYS_MISSING
759Description: The exchange failed to generate the signature as it could not find the
760+ signing key for the denomination. This response is provided with HTTP
761+ status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
762HttpStatus: 500
763
764Value: 1384
765Name: REVEAL_INVALID_RCH
766Description: The refresh session hash given to a /refreshes/ handler was malformed.
767HttpStatus: 0
768
769Value: 1385
770Name: REVEAL_REPLY_MALFORMED
771Description: The exchange responded with a reply that did not satsify the protocol.
772+ This error is not used in the protocol but created client-side.
773HttpStatus: 0
774
775Value: 1400
776Name: LINK_COIN_UNKNOWN
777Description: The coin specified in the link request is unknown to the exchange.
778+ This response is provided with HTTP status code #MHD_HTTP_NOT_FOUND.
779HttpStatus: 404
780
781Value: 1401
782Name: LINK_REPLY_MALFORMED
783Description: The exchange responded with a reply that did not satsify the protocol.
784+ This error is not used in the protocol but created client-side.
785HttpStatus: 0
786
787Value: 1500
788Name: REFUND_COIN_NOT_FOUND
789Description: The exchange knows literally nothing about the coin we were asked to
790+ refund. But without a transaction history, we cannot issue a refund.
791+ This is kind-of OK, the owner should just refresh it directly without
792+ executing the refund. This response is provided with HTTP status code
793+ #MHD_HTTP_NOT_FOUND.
794HttpStatus: 404
795
796Value: 1501
797Name: REFUND_CONFLICT
798Description: We could not process the refund request as the coin's transaction
799+ history does not permit the requested refund at this time. The
800+ "history" in the response proves this. This response is provided with
801+ HTTP status code #MHD_HTTP_CONFLICT.
802HttpStatus: 409
803
804Value: 1503
805Name: REFUND_DEPOSIT_NOT_FOUND
806Description: The exchange knows about the coin we were asked to refund, but not
807+ about the specific /deposit operation. Hence, we cannot issue a
808+ refund (as we do not know if this merchant public key is authorized to
809+ do a refund). This response is provided with HTTP status code
810+ #MHD_HTTP_NOT_FOUND.
811HttpStatus: 404
812
813Value: 1504
814Name: REFUND_CURRENCY_MISMATCH
815Description: The currency specified for the refund is different from the currency
816+ of the coin. This response is provided with HTTP status code
817+ #MHD_HTTP_BAD_REQUEST.
818HttpStatus: 400
819
820Value: 1505
821Name: REFUND_DB_INCONSISTENT
822Description: When we tried to check if we already paid out the coin, the exchange's
823+ database suddenly disagreed with data it previously provided (internal
824+ inconsistency). This response is provided with HTTP status code
825+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
826HttpStatus: 500
827
828Value: 1506
829Name: REFUND_MERCHANT_ALREADY_PAID
830Description: The exchange can no longer refund the customer/coin as the money was
831+ already transferred (paid out) to the merchant. (It should be past the
832+ refund deadline.) This response is provided with HTTP status code
833+ #MHD_HTTP_GONE.
834HttpStatus: 410
835
836Value: 1507
837Name: REFUND_INSUFFICIENT_FUNDS
838Description: The amount the exchange was asked to refund exceeds (with fees) the
839+ total amount of the deposit (including fees). This response is
840+ provided with HTTP status code #MHD_HTTP_PRECONDITION_FAILED.
841HttpStatus: 412
842
843Value: 1508
844Name: REFUND_DENOMINATION_KEY_NOT_FOUND
845Description: The exchange failed to recover information about the denomination key
846+ of the refunded coin (even though it recognizes the key). Hence it
847+ could not check the fee strucutre. This response is provided with HTTP
848+ status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
849HttpStatus: 500
850
851Value: 1509
852Name: REFUND_FEE_TOO_LOW
853Description: The refund fee specified for the request is lower than the refund fee
854+ charged by the exchange for the given denomination key of the refunded
855+ coin. This response is provided with HTTP status code
856+ #MHD_HTTP_BAD_REQUEST.
857HttpStatus: 400
858
859Value: 1510
860Name: REFUND_STORE_DB_ERROR
861Description: The exchange failed to store the refund information to its database.
862+ This response is provided with HTTP status code
863+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
864HttpStatus: 500
865
866Value: 1511
867Name: REFUND_FEE_CURRENCY_MISMATCH
868Description: The refund fee is specified in a different currency than the refund
869+ amount. This response is provided with HTTP status code
870+ #MHD_HTTP_BAD_REQUEST.
871HttpStatus: 400
872
873Value: 1512
874Name: REFUND_FEE_ABOVE_AMOUNT
875Description: The refunded amount is smaller than the refund fee, which would result
876+ in a negative refund. This response is provided with HTTP status code
877+ #MHD_HTTP_BAD_REQUEST.
878HttpStatus: 400
879
880Value: 1513
881Name: REFUND_MERCHANT_SIGNATURE_INVALID
882Description: The signature of the merchant is invalid. This response is provided
883+ with HTTP status code #MHD_HTTP_BAD_REQUEST.
884HttpStatus: 400
885
886Value: 1514
887Name: REFUND_MERCHANT_SIGNING_FAILED
888Description: Merchant backend failed to create the refund confirmation signature.
889+ This response is provided with HTTP status code
890+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
891HttpStatus: 500
892
893Value: 1515
894Name: REFUND_INVALID_SIGNATURE_BY_EXCHANGE
895Description: The signature returned by the exchange in a refund request was
896+ malformed. Error created client-side.
897HttpStatus: 0
898
899Value: 1600
900Name: ADMIN_ADD_INCOMING_WIREFORMAT_UNSUPPORTED
901Description: The wire format specified in the "sender_account_details" is not
902+ understood or not supported by this exchange. Returned with an HTTP
903+ status code of #MHD_HTTP_NOT_FOUND. (As we did not find an
904+ interpretation of the wire format.)
905HttpStatus: 404
906
907Value: 1601
908Name: ADMIN_ADD_INCOMING_CURRENCY_UNSUPPORTED
909Description: The currency specified in the "amount" parameter is not supported by
910+ this exhange. Returned with an HTTP status code of
911+ #MHD_HTTP_BAD_REQUEST.
912HttpStatus: 400
913
914Value: 1602
915Name: ADMIN_ADD_INCOMING_DB_STORE
916Description: The exchange failed to store information about the incoming transfer
917+ in its database. This response is provided with HTTP status code
918+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
919HttpStatus: 500
920
921Value: 1700
922Name: TRANSFERS_GET_DB_FETCH_FAILED
923Description: The exchange encountered an error (that is not about not finding the
924+ wire transfer) trying to lookup a wire transfer identifier in the
925+ database. This response is provided with HTTP status code
926+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
927HttpStatus: 500
928
929Value: 1701
930Name: TRANSFERS_GET_DB_INCONSISTENT
931Description: The exchange found internally inconsistent data when resolving a wire
932+ transfer identifier in the database. This response is provided with
933+ HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
934HttpStatus: 500
935
936Value: 1702
937Name: TRANSFERS_GET_WTID_NOT_FOUND
938Description: The exchange did not find information about the specified wire
939+ transfer identifier in the database. This response is provided with
940+ HTTP status code #MHD_HTTP_NOT_FOUND.
941HttpStatus: 404
942
943Value: 1703
944Name: TRANSFERS_GET_WIRE_FEE_NOT_FOUND
945Description: The exchange did not find information about the wire transfer fees it
946+ charged. This response is provided with HTTP status code
947+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
948HttpStatus: 500
949
950Value: 1704
951Name: TRANSFERS_GET_WIRE_FEE_INCONSISTENT
952Description: The exchange found a wire fee that was above the total transfer value
953+ (and thus could not have been charged). This response is provided with
954+ HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
955HttpStatus: 500
956
957Value: 1705
958Name: TRANSFERS_GET_REPLY_MALFORMED
959Description: The exchange responded with a reply that did not satsify the protocol.
960+ This error is not used in the protocol but created client-side.
961HttpStatus: 0
962
963Value: 1800
964Name: DEPOSITS_GET_DB_FEE_INCONSISTENT
965Description: The exchange found internally inconsistent fee data when resolving a
966+ transaction in the database. This response is provided with HTTP
967+ status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
968HttpStatus: 500
969
970Value: 1801
971Name: DEPOSITS_GET_DB_FETCH_FAILED
972Description: The exchange encountered an error (that is not about not finding the
973+ transaction) trying to lookup a transaction in the database. This
974+ response is provided with HTTP status code
975+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
976HttpStatus: 500
977
978Value: 1802
979Name: DEPOSITS_GET_NOT_FOUND
980Description: The exchange did not find information about the specified transaction
981+ in the database. This response is provided with HTTP status code
982+ #MHD_HTTP_NOT_FOUND.
983HttpStatus: 404
984
985Value: 1803
986Name: DEPOSITS_GET_WTID_RESOLUTION_ERROR
987Description: The exchange failed to identify the wire transfer of the transaction
988+ (or information about the plan that it was supposed to still happen in
989+ the future). This response is provided with HTTP status code
990+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
991HttpStatus: 500
992
993Value: 1804
994Name: DEPOSITS_GET_MERCHANT_SIGNATURE_INVALID
995Description: The signature of the merchant is invalid. This response is provided
996+ with HTTP status code #MHD_HTTP_BAD_REQUEST.
997HttpStatus: 400
998
999Value: 1850
1000Name: RECOUP_DENOMINATION_KEY_UNKNOWN
1001Description: The given denomination key is not in the "recoup" set of the exchange
1002+ right now. This response is provided with an HTTP status code of
1003+ #MHD_HTTP_NOT_FOUND.
1004HttpStatus: 404
1005
1006Value: 1851
1007Name: RECOUP_SIGNATURE_INVALID
1008Description: The given coin signature is invalid for the request. This response is
1009+ provided with an HTTP status code of #MHD_HTTP_FORBIDDEN.
1010HttpStatus: 403
1011
1012Value: 1852
1013Name: RECOUP_DENOMINATION_SIGNATURE_INVALID
1014Description: The signature of the denomination key over the coin is not valid. This
1015+ response is provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
1016HttpStatus: 400
1017
1018Value: 1853
1019Name: RECOUP_DB_FETCH_FAILED
1020Description: The exchange failed to access its own database about reserves. This
1021+ response is provided with HTTP status code
1022+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1023HttpStatus: 500
1024
1025Value: 1854
1026Name: RECOUP_WITHDRAW_NOT_FOUND
1027Description: The exchange could not find the corresponding withdraw operation. The
1028+ request is denied. This response is provided with an HTTP status code
1029+ of #MHD_HTTP_NOT_FOUND.
1030HttpStatus: 404
1031
1032Value: 1855
1033Name: RECOUP_HISTORY_DB_ERROR
1034Description: The exchange obtained an internally inconsistent transaction history
1035+ for the given coin. This response is provided with HTTP status code
1036+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1037HttpStatus: 500
1038
1039Value: 1856
1040Name: RECOUP_DB_PUT_FAILED
1041Description: The exchange failed to store information about the recoup to be
1042+ performed in the database. This response is provided with HTTP status
1043+ code #MHD_HTTP_INTERNAL_SERVER_ERROR.
1044HttpStatus: 500
1045
1046Value: 1857
1047Name: RECOUP_COIN_BALANCE_ZERO
1048Description: The coin's remaining balance is zero. The request is denied. This
1049+ response is provided with an HTTP status code of #MHD_HTTP_FORBIDDEN.
1050HttpStatus: 403
1051
1052Value: 1858
1053Name: RECOUP_BLINDING_FAILED
1054Description: The exchange failed to reproduce the coin's blinding. This response is
1055+ provided with an HTTP status code of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1056HttpStatus: 500
1057
1058Value: 1859
1059Name: RECOUP_COIN_BALANCE_NEGATIVE
1060Description: The coin's remaining balance is zero. The request is denied. This
1061+ response is provided with an HTTP status code of
1062+ #MHD_HTTP_INTERNAL_SERVER_ERROR
1063HttpStatus: 500
1064
1065Value: 1860
1066Name: RECOUP_DENOMINATION_VALIDITY_IN_FUTURE
1067Description: Validity period of the denomination key is in the future. Returned
1068+ with an HTTP status of #MHD_HTTP_PRECONDITION_FAILED.
1069HttpStatus: 412
1070
1071Value: 1861
1072Name: RECOUP_REPLY_MALFORMED
1073Description: The exchange responded with a reply that did not satsify the protocol.
1074+ This error is not used in the protocol but created client-side.
1075HttpStatus: 0
1076
1077Value: 1900
1078Name: KEYS_HAVE_NOT_NUMERIC
1079Description: The "have" parameter was not a natural number. This response is
1080+ provied with an HTTP status code of #MHD_HTTP_BAD_REQUEST.
1081HttpStatus: 400
1082
1083Value: 1901
1084Name: KEYS_MISSING
1085Description: We currently cannot find any keys. This response is provied with an
1086+ HTTP status code of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1087HttpStatus: 500
1088
1089Value: 1902
1090Name: KEYS_TIMETRAVEL_FORBIDDEN
1091Description: This exchange does not allow clients to request /keys for times other
1092+ than the current (exchange) time. This response is provied with an
1093+ HTTP status code of #MHD_HTTP_FORBIDDEN.
1094HttpStatus: 403
1095
1096Value: 1903
1097Name: KEYS_INVALID
1098Description: The keys response was malformed. This error is generated client-side.
1099HttpStatus: 0
1100
1101Value: 2000
1102Name: INSTANCE_UNKNOWN
1103Description: The backend could not find the merchant instance specified in the
1104+ request. This response is provided with HTTP status code
1105+ #MHD_HTTP_NOT_FOUND.
1106HttpStatus: 404
1107
1108Value: 2002
1109Name: PROPOSAL_INSTANCE_CONFIGURATION_LACKS_WIRE
1110Description: The backend lacks a wire transfer method configuration option for the
1111+ given instance.
1112HttpStatus: 0
1113
1114Value: 2100
1115Name: PAY_MERCHANT_INVALID_RESPONSE
1116Description: The merchant failed to provide a meaningful response to a /pay
1117+ request. This error is created client-side.
1118HttpStatus: 0
1119
1120Value: 2101
1121Name: PAY_EXCHANGE_FAILED
1122Description: The exchange failed to provide a meaningful response to a /deposit
1123+ request. This response is provided with HTTP status code
1124+ #MHD_HTTP_FAILED_DEPENDENCY, or #MHD_HTTP_CONFLICT in case the
1125+ exchange reports #TALER_EC_DEPOSIT_INSUFFICIENT_FUNDS (aka double
1126+ spending).
1127HttpStatus: 424
1128HttpStatus: 409
1129
1130Value: 2102
1131Name: PAY_DB_STORE_PAY_ERROR
1132Description: The merchant failed to commit the exchanges' response to a /deposit
1133+ request to its database. This response is provided with HTTP status
1134+ code #MHD_HTTP_INTERNAL_SERVER_ERROR.
1135HttpStatus: 500
1136
1137Value: 2103
1138Name: PAY_EXCHANGE_REJECTED
1139Description: The specified exchange is not supported/trusted by this merchant.
1140+ This response is provided with HTTP status code
1141+ #MHD_HTTP_PRECONDITION_FAILED.
1142HttpStatus: 412
1143
1144Value: 2104
1145Name: PAY_DENOMINATION_KEY_NOT_FOUND
1146Description: The denomination key used for payment is not listed among the
1147+ denomination keys of the exchange. This response is provided with
1148+ HTTP status code #MHD_HTTP_BAD_REQUEST.
1149HttpStatus: 400
1150
1151Value: 2105
1152Name: PAY_DENOMINATION_KEY_AUDITOR_FAILURE
1153Description: The denomination key used for payment is not audited by an auditor
1154+ approved by the merchant. This response is provided with HTTP status
1155+ code #MHD_HTTP_BAD_REQUEST.
1156HttpStatus: 400
1157
1158Value: 2106
1159Name: PAY_AMOUNT_OVERFLOW
1160Description: There was an integer overflow totaling up the amounts or deposit fees
1161+ in the payment. This response is provided with HTTP status code
1162+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1163HttpStatus: 500
1164
1165Value: 2107
1166Name: PAY_FEES_EXCEED_PAYMENT
1167Description: The deposit fees exceed the total value of the payment. This response
1168+ is provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
1169HttpStatus: 400
1170
1171Value: 2108
1172Name: PAY_PAYMENT_INSUFFICIENT_DUE_TO_FEES
1173Description: After considering deposit and wire fees, the payment is insufficient
1174+ to satisfy the required amount for the contract. The client should
1175+ revisit the logic used to calculate fees it must cover. This response
1176+ is provided with HTTP status code #MHD_HTTP_ACCEPTED.
1177HttpStatus: 202
1178
1179Value: 2109
1180Name: PAY_PAYMENT_INSUFFICIENT
1181Description: Even if we do not consider deposit and wire fees, the payment is
1182+ insufficient to satisfy the required amount for the contract. This
1183+ response is provided with HTTP status code #MHD_HTTP_ACCEPTED.
1184HttpStatus: 202
1185
1186Value: 2110
1187Name: PAY_COIN_SIGNATURE_INVALID
1188Description: The signature over the contract of one of the coins was invalid. This
1189+ response is provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
1190HttpStatus: 400
1191
1192Value: 2111
1193Name: PAY_EXCHANGE_TIMEOUT
1194Description: We failed to contact the exchange for the /pay request. This response
1195+ is provided with HTTP status code #MHD_HTTP_REQUEST_TIMEOUT.
1196HttpStatus: 408
1197
1198Value: 2112
1199Name: PAY_EXCHANGE_LOOKUP_FAILED
1200Description: When we tried to find information about the exchange to issue the
1201+ deposit, we failed. This usually only happens if the merchant backend
1202+ is somehow unable to get its own HTTP client logic to work. This
1203+ response is provided with HTTP status code
1204+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1205HttpStatus: 500
1206
1207Value: 2114
1208Name: PAY_REFUND_DEADLINE_PAST_WIRE_TRANSFER_DEADLINE
1209Description: The refund deadline in the contract is after the transfer deadline.
1210+ This response is provided with HTTP status code
1211+ #MHD_HTTP_INTERNAL_SERVER_ERROR as this should have been caught when
1212+ the offer was first setup.
1213HttpStatus: 500
1214
1215Value: 2115
1216Name: PAY_COINS_ARRAY_EMPTY
1217Description: The request fails to provide coins for the payment. This response is
1218+ provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
1219HttpStatus: 400
1220
1221Value: 2116
1222Name: PAY_DB_FETCH_PAY_ERROR
1223Description: The merchant failed to fetch the contract terms from the merchant's
1224+ database. This response is provided with HTTP status code
1225+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1226HttpStatus: 500
1227
1228Value: 2117
1229Name: PAY_DB_FETCH_TRANSACTION_ERROR
1230Description: The merchant failed to fetch the merchant's previous state with
1231+ respect to transactions from its database. This response is provided
1232+ with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
1233HttpStatus: 500
1234
1235Value: 2119
1236Name: PAY_DB_STORE_TRANSACTION_ERROR
1237Description: The merchant failed to store the merchant's state with respect to the
1238+ transaction in its database. This response is provided with HTTP
1239+ status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
1240HttpStatus: 500
1241
1242Value: 2120
1243Name: PAY_EXCHANGE_KEYS_FAILURE
1244Description: The exchange failed to provide a valid response to the merchant's
1245+ /keys request. This response is provided with HTTP status code
1246+ #MHD_HTTP_FAILED_DEPENDENCY.
1247HttpStatus: 424
1248
1249Value: 2121
1250Name: PAY_OFFER_EXPIRED
1251Description: The payment is too late, the offer has expired. This response is
1252+ provided with HTTP status code #MHD_HTTP_GONE.
1253HttpStatus: 410
1254
1255Value: 2122
1256Name: PAY_MERCHANT_FIELD_MISSING
1257Description: The "merchant" field is missing in the proposal data. This response is
1258+ provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
1259HttpStatus: 400
1260
1261Value: 2123
1262Name: PAY_FAILED_COMPUTE_PROPOSAL_HASH
1263Description: Failed computing a hash code (likely server out-of-memory). This
1264+ response is provided with HTTP status code
1265+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1266HttpStatus: 500
1267
1268Value: 2124
1269Name: PAY_WIRE_HASH_UNKNOWN
1270Description: Failed to locate merchant's account information matching the wire hash
1271+ given in the proposal. This response is provided with HTTP status code
1272+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1273HttpStatus: 500
1274
1275Value: 2125
1276Name: PAY_WIRE_FEE_CURRENCY_MISMATCH
1277Description: We got different currencies for the wire fee and the maximum wire fee.
1278+ This response is provided with HTTP status code of
1279+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1280HttpStatus: 500
1281
1282Value: 2127
1283Name: PAY_WRONG_INSTANCE
1284Description: A unknown merchant public key was included in the payment. That
1285+ happens typically when the wallet sends the payment to the wrong
1286+ merchant instance. This response is provided with an HTTP status code
1287+ of #MHD_HTTP_NOT_FOUND.
1288HttpStatus: 404
1289
1290Value: 2128
1291Name: PAY_EXCHANGE_HAS_NO_KEYS
1292Description: The exchange failed to give us a response when we asked for /keys.
1293+ This response is provided with HTTP status code
1294+ #MHD_HTTP_FAILED_DEPENDENCY.
1295HttpStatus: 424
1296
1297Value: 2129
1298Name: PAY_DENOMINATION_DEPOSIT_EXPIRED
1299Description: The deposit time for the denomination has expired. This response is
1300+ provided with HTTP status code #MHD_HTTP_GONE.
1301HttpStatus: 410
1302
1303Value: 2130
1304Name: PAY_PROPOSAL_NOT_FOUND
1305Description: The proposal is not known to the backend. This response is provided
1306+ with an HTTP status code of #MHD_HTTP_NOT_FOUND.
1307HttpStatus: 404
1308
1309Value: 2131
1310Name: PAY_EXCHANGE_WIRE_FEE_ADDITION_FAILED
1311Description: The exchange of the deposited coin charges a wire fee that could not
1312+ be added to the total (total amount too high). This response is
1313+ provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
1314HttpStatus: 500
1315
1316Value: 2132
1317Name: PAY_REFUNDED
1318Description: The contract was not fully paid because of refunds. Note that clients
1319+ MAY treat this as paid if, for example, contracts must be executed
1320+ despite of refunds. This response is provided with HTTP status code
1321+ #MHD_HTTP_PAYMENT_REQUIRED.
1322HttpStatus: 402
1323
1324Value: 2133
1325Name: PAY_REFUNDS_EXCEED_PAYMENTS
1326Description: According to our database, we have refunded more than we were paid
1327+ (which should not be possible). This response is provided with HTTP
1328+ status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
1329HttpStatus: 500
1330
1331Value: 2134
1332Name: PAY_ABORT_REFUND_REFUSED_PAYMENT_COMPLETE
1333Description: Legacy stuff. Remove me with protocol v1. This response is provided
1334+ with HTTP status code #MHD_HTTP_PREREQUISITE.
1335HttpStatus: 0
1336
1337Value: 2150
1338Name: ABORT_EXCHANGE_KEYS_FAILURE
1339Description: The merchant failed to contact the exchange. This response is provided
1340+ with HTTP status code of #MHD_HTTP_FAILED_DEPENDENCY.
1341HttpStatus: 424
1342
1343Value: 2151
1344Name: ABORT_EXCHANGE_REFUND_FAILED
1345Description: The merchant failed to send the exchange the refund request. This
1346+ response is provided with HTTP status code of
1347+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1348HttpStatus: 500
1349
1350Value: 2152
1351Name: ABORT_EXCHANGE_LOOKUP_FAILED
1352Description: The merchant failed to find the exchange to process the lookup. This
1353+ response is provided with HTTP status code of
1354+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1355HttpStatus: 500
1356
1357Value: 2153
1358Name: ABORT_DB_STORE_ABORT_ERROR
1359Description: The merchant failed to store the abort request in its database. This
1360+ response is provided with HTTP status code of
1361+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1362HttpStatus: 500
1363
1364Value: 2154
1365Name: ABORT_DB_STORE_TRANSACTION_ERROR
1366Description: The merchant failed to repeatedly serialize the transaction. This
1367+ response is provided with HTTP status code of
1368+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1369HttpStatus: 500
1370
1371Value: 2155
1372Name: ABORT_DB_FETCH_TRANSACTION_ERROR
1373Description: The merchant failed in the lookup part of the transaction. This
1374+ response is provided with HTTP status code of
1375+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1376HttpStatus: 500
1377
1378Value: 2156
1379Name: ABORT_CONTRACT_NOT_FOUND
1380Description: The merchant could not find the contract. This response is provided
1381+ with HTTP status code of #MHD_HTTP_NOT_FOUND.
1382HttpStatus: 404
1383
1384Value: 2157
1385Name: ABORT_REFUND_REFUSED_PAYMENT_COMPLETE
1386Description: The payment was already completed and thus cannot be aborted anymore.
1387+ This response is provided with HTTP status code of
1388+ #MHD_HTTP_PRECONDITION_FAILED.
1389HttpStatus: 412
1390
1391Value: 2158
1392Name: ABORT_CONTRACT_HASH_MISSMATCH
1393Description: The hash provided by the wallet does not match the order. This
1394+ response is provided with HTTP status code of #MHD_HTTP_FORBIDDEN.
1395HttpStatus: 403
1396
1397Value: 2159
1398Name: ABORT_COINS_ARRAY_EMPTY
1399Description: The array of coins cannot be empty. This response is provided with
1400+ HTTP status code of #MHD_HTTP_BAD_REQUEST.
1401HttpStatus: 400
1402
1403Value: 2160
1404Name: ABORT_EXCHANGE_TIMEOUT
1405Description: The merchant experienced a timeout processing the request. This
1406+ response is provided with HTTP status code of
1407+ #MHD_HTTP_REQUEST_TIMEOUT.
1408HttpStatus: 408
1409
1410Value: 2200
1411Name: HISTORY_TIMESTAMP_OVERFLOW
1412Description: Integer overflow with specified timestamp argument detected. This
1413+ response is provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
1414HttpStatus: 400
1415
1416Value: 2201
1417Name: HISTORY_DB_FETCH_ERROR
1418Description: Failed to retrieve history from merchant database. This response is
1419+ provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
1420HttpStatus: 500
1421
1422Value: 2250
1423Name: POLL_PAYMENT_CONTRACT_NOT_FOUND
1424Description: The backend could not find the contract specified in the request.
1425+ This response is provided with HTTP status code #MHD_HTTP_NOT_FOUND.
1426HttpStatus: 404
1427
1428Value: 2251
1429Name: POLL_PAYMENT_REPLY_MALFORMED
1430Description: The response provided by the merchant backend was malformed. This
1431+ error is created client-side.
1432HttpStatus: 0
1433
1434Value: 2300
1435Name: TRACK_TRANSACTION_EXCHANGE_TIMEOUT
1436Description: We failed to contact the exchange for the /track/transaction request.
1437+ This response is provided with HTTP status code
1438+ #MHD_HTTP_SERVICE_UNAVAILABLE.
1439HttpStatus: 503
1440
1441Value: 2301
1442Name: TRACK_TRANSACTION_EXCHANGE_KEYS_FAILURE
1443Description: We failed to get a valid /keys response from the exchange for the
1444+ /track/transaction request. This response is provided with HTTP
1445+ status code #MHD_HTTP_FAILED_DEPENDENCY.
1446HttpStatus: 424
1447
1448Value: 2302
1449Name: TRACK_TRANSACTION_TRANSACTION_UNKNOWN
1450Description: The backend could not find the transaction specified in the request.
1451+ This response is provided with HTTP status code #MHD_HTTP_NOT_FOUND.
1452HttpStatus: 404
1453
1454Value: 2303
1455Name: TRACK_TRANSACTION_DB_FETCH_TRANSACTION_ERROR
1456Description: The backend had a database access error trying to retrieve transaction
1457+ data from its database. The response is provided with HTTP status code
1458+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1459HttpStatus: 500
1460
1461Value: 2304
1462Name: TRACK_TRANSACTION_DB_FETCH_PAYMENT_ERROR
1463Description: The backend had a database access error trying to retrieve payment
1464+ data from its database. The response is provided with HTTP status code
1465+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1466HttpStatus: 500
1467
1468Value: 2305
1469Name: TRACK_TRANSACTION_DB_NO_DEPOSITS_ERROR
1470Description: The backend found no applicable deposits in the database. This is odd,
1471+ as we know about the transaction, but not about deposits we made for
1472+ the transaction. The response is provided with HTTP status code
1473+ #MHD_HTTP_NOT_FOUND.
1474HttpStatus: 404
1475
1476Value: 2306
1477Name: TRACK_TRANSACTION_COIN_TRACE_ERROR
1478Description: We failed to obtain a wire transfer identifier for one of the coins in
1479+ the transaction. The response is provided with HTTP status code
1480+ #MHD_HTTP_FAILED_DEPENDENCY if the exchange had a hard error, or
1481+ #MHD_HTTP_ACCEPTED if the exchange signaled that the transfer was in
1482+ progress.
1483HttpStatus: 424
1484HttpStatus: 202
1485
1486Value: 2307
1487Name: TRACK_TRANSACTION_WIRE_TRANSFER_TRACE_ERROR
1488Description: We failed to obtain the full wire transfer identifier for the transfer
1489+ one of the coins was aggregated into. The response is provided with
1490+ HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
1491HttpStatus: 424
1492
1493Value: 2308
1494Name: TRACK_TRANSACTION_CONFLICTING_REPORTS
1495Description: We got conflicting reports from the exhange with respect to which
1496+ transfers are included in which aggregate. The response is provided
1497+ with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
1498HttpStatus: 424
1499
1500Value: 2350
1501Name: GET_TRANSFERS_DB_FETCH_ERROR
1502Description: We did failed to retrieve information from our database. The response
1503+ is provided with an HTTP status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1504HttpStatus: 500
1505
1506Value: 2400
1507Name: POST_TRANSFERS_EXCHANGE_TIMEOUT
1508Description: We failed to contact the exchange for the /track/transfer request.
1509+ This response is provided with HTTP status code
1510+ #MHD_HTTP_SERVICE_UNAVAILABLE.
1511HttpStatus: 503
1512
1513Value: 2401
1514Name: POST_TRANSFERS_EXCHANGE_KEYS_FAILURE
1515Description: We failed to obtain an acceptable /keys response from the exchange for
1516+ the /track/transfer request. This response is provided with HTTP
1517+ status code #MHD_HTTP_FAILED_DEPENDENCY.
1518HttpStatus: 424
1519
1520Value: 2402
1521Name: POST_TRANSFERS_DB_STORE_COIN_ERROR
1522Description: We failed to persist coin wire transfer information in our merchant
1523+ database. The response is provided with HTTP status code
1524+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1525HttpStatus: 500
1526
1527Value: 2403
1528Name: POST_TRANSFERS_REQUEST_ERROR
1529Description: We internally failed to execute the /track/transfer request. The
1530+ response is provided with HTTP status code
1531+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1532HttpStatus: 500
1533
1534Value: 2404
1535Name: POST_TRANSFERS_DB_STORE_TRANSFER_ERROR
1536Description: We failed to persist wire transfer information in our merchant
1537+ database. The response is provided with HTTP status code
1538+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1539HttpStatus: 500
1540
1541Value: 2405
1542Name: POST_TRANSFERS_EXCHANGE_ERROR
1543Description: The exchange returned an error from /track/transfer. The response is
1544+ provided with HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
1545HttpStatus: 424
1546
1547Value: 2406
1548Name: POST_TRANSFERS_DB_FETCH_DEPOSIT_ERROR
1549Description: We failed to fetch deposit information from our merchant database. The
1550+ response is provided with HTTP status code
1551+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1552HttpStatus: 500
1553
1554Value: 2407
1555Name: POST_TRANSFERS_DB_INTERNAL_LOGIC_ERROR
1556Description: We encountered an internal logic error. The response is provided with
1557+ HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
1558HttpStatus: 500
1559
1560Value: 2408
1561Name: POST_TRANSFERS_CONFLICTING_REPORTS
1562Description: The exchange gave conflicting information about a coin which has been
1563+ wire transferred. The response is provided with HTTP status code
1564+ #MHD_HTTP_FAILED_DEPENDENCY.
1565HttpStatus: 424
1566
1567Value: 2409
1568Name: POST_TRANSFERS_JSON_RESPONSE_ERROR
1569Description: The merchant backend had problems in creating the JSON response.
1570HttpStatus: 0
1571
1572Value: 2410
1573Name: POST_TRANSFERS_JSON_BAD_WIRE_FEE
1574Description: The exchange charged a different wire fee than what it originally
1575+ advertised, and it is higher. The response is provided with an HTTP
1576+ status of #MHD_HTTP_FAILED_DEPENDENCY.
1577HttpStatus: 424
1578
1579Value: 2411
1580Name: POST_TRANSFERS_ACCOUNT_NOT_FOUND
1581Description: We did not find the account that the transfer was made to. The
1582+ response is provided with an HTTP status of #MHD_HTTP_NOT_FOUND.
1583HttpStatus: 404
1584
1585Value: 2412
1586Name: POST_TRANSFERS_DB_STORE_ERROR
1587Description: We did failed to store information in our database. The response is
1588+ provided with an HTTP status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1589HttpStatus: 500
1590
1591Value: 2413
1592Name: POST_TRANSFERS_DB_LOOKUP_ERROR
1593Description: We did failed to retrieve information from our database. The response
1594+ is provided with an HTTP status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1595HttpStatus: 500
1596
1597Value: 2450
1598Name: POST_INSTANCES_ALREADY_EXISTS
1599Description: The merchant backend cannot create an instance under the given
1600+ identifier as one already exists. Use PATCH to modify the existing
1601+ entry. The response is provied with an HTTP status of
1602+ #MHD_HTTP_CONFLICT.
1603HttpStatus: 409
1604
1605Value: 2451
1606Name: POST_INSTANCES_BAD_PAYTO_URIS
1607Description: The merchant backend cannot create an instance because the specified
1608+ bank accounts are somehow invalid. The response is provied with an
1609+ HTTP status of #MHD_HTTP_BAD_REQUEST.
1610HttpStatus: 400
1611
1612Value: 2452
1613Name: POST_INSTANCES_DB_START_ERROR
1614Description: The merchant backend cannot create an instance because it failed to
1615+ start the database transaction. The response is provied with an HTTP
1616+ status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1617HttpStatus: 500
1618
1619Value: 2453
1620Name: POST_INSTANCES_DB_COMMIT_ERROR
1621Description: The merchant backend cannot create an instance because it failed to
1622+ commit the database transaction. The response is provied with an HTTP
1623+ status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1624HttpStatus: 500
1625
1626Value: 2454
1627Name: DELETE_INSTANCES_ID_DB_HARD_FAILURE
1628Description: The merchant backend cannot delete an instance because it failed to
1629+ commit the database transaction. The response is provied with an HTTP
1630+ status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1631HttpStatus: 500
1632
1633Value: 2455
1634Name: DELETE_INSTANCES_ID_NO_SUCH_INSTANCE
1635Description: The merchant backend cannot delete the data because it already does
1636+ not exist. The response is provied with an HTTP status of
1637+ #MHD_HTTP_NOT_FOUND.
1638HttpStatus: 404
1639
1640Value: 2456
1641Name: PATCH_INSTANCES_BAD_PAYTO_URIS
1642Description: The merchant backend cannot update an instance because the specified
1643+ bank accounts are somehow invalid. The response is provied with an
1644+ HTTP status of #MHD_HTTP_BAD_REQUEST.
1645HttpStatus: 400
1646
1647Value: 2457
1648Name: PATCH_INSTANCES_DB_START_ERROR
1649Description: The merchant backend cannot patch an instance because it failed to
1650+ start the database transaction. The response is provied with an HTTP
1651+ status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1652HttpStatus: 500
1653
1654Value: 2458
1655Name: PATCH_INSTANCES_DB_COMMIT_ERROR
1656Description: The merchant backend cannot patch an instance because it failed to
1657+ commit the database transaction. The response is provied with an HTTP
1658+ status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1659HttpStatus: 500
1660
1661Value: 2500
1662Name: MAP_IN_UNMATCHED_HASH
1663Description: The hash provided in the request of /map/in does not match the
1664+ contract sent alongside in the same request.
1665HttpStatus: 0
1666
1667Value: 2501
1668Name: PROPOSAL_STORE_DB_ERROR
1669Description: The backend encountered an error while trying to store the
1670+ h_contract_terms into the database. The response is provided with HTTP
1671+ status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
1672HttpStatus: 500
1673
1674Value: 2502
1675Name: PROPOSAL_LOOKUP_DB_ERROR
1676Description: The backend encountered an error while trying to retrieve the proposal
1677+ data from database. Likely to be an internal error. The response is
1678+ provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
1679HttpStatus: 500
1680
1681Value: 2503
1682Name: PROPOSAL_LOOKUP_NOT_FOUND
1683Description: The proposal being looked up is not found on this merchant. Returned
1684+ with an HTTP status code of #MHD_HTTP_NOT_FOUND
1685HttpStatus: 404
1686
1687Value: 2504
1688Name: PROPOSAL_NO_LOCALTIME
1689Description: The proposal had no timestamp and the backend failed to obtain the
1690+ local time. Likely to be an internal error. The response is provided
1691+ with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
1692HttpStatus: 500
1693
1694Value: 2505
1695Name: PROPOSAL_ORDER_PARSE_ERROR
1696Description: The order provided to the backend could not be parsed, some required
1697+ fields were missing or ill-formed. Returned with an HTTP status code
1698+ #MHD_HTTP_BAD_REQUEST.
1699HttpStatus: 400
1700
1701Value: 2506
1702Name: PROPOSAL_STORE_DB_ERROR_HARD
1703Description: The backend encountered an error while trying to find the existing
1704+ proposal in the database. The response is provided with HTTP status
1705+ code #MHD_HTTP_INTERNAL_SERVER_ERROR.
1706HttpStatus: 500
1707
1708Value: 2507
1709Name: PROPOSAL_STORE_DB_ERROR_SOFT
1710Description: The backend encountered an error while trying to find the existing
1711+ proposal in the database. The response is provided with HTTP status
1712+ code #MHD_HTTP_INTERNAL_SERVER_ERROR.
1713HttpStatus: 500
1714
1715Value: 2508
1716Name: PROPOSAL_STORE_DB_ERROR_ALREADY_EXISTS
1717Description: The backend encountered an error: the proposal already exists. The
1718+ response is provided with HTTP status code
1719+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1720HttpStatus: 500
1721
1722Value: 2509
1723Name: PROPOSAL_ORDER_BAD_CURRENCY
1724Description: The order provided to the backend uses an amount in a currency that
1725+ does not match the backend's configuration. Returned with HTTP status
1726+ code #MHD_HTTP_BAD_REQUEST.
1727HttpStatus: 400
1728
1729Value: 2510
1730Name: PROPOSAL_REPLY_MALFORMED
1731Description: The response provided by the merchant backend was malformed. This
1732+ error is created client-side.
1733HttpStatus: 0
1734
1735Value: 2511
1736Name: ORDERS_DELETE_NO_SUCH_ORDER
1737Description: The order provided to the backend could not be deleted, it is not
1738+ known. Returned with an HTTP status code #MHD_HTTP_NOT_FOUND.
1739HttpStatus: 404
1740
1741Value: 2512
1742Name: ORDERS_DELETE_AWAITING_PAYMENT
1743Description: The order provided to the backend could not be deleted, our offer is
1744+ still valid and awaiting payment. Returned with an HTTP status code
1745+ #MHD_HTTP_CONFLICT.
1746HttpStatus: 409
1747
1748Value: 2513
1749Name: ORDERS_DELETE_DB_HARD_FAILURE
1750Description: The order provided to the backend could not be deleted, due to a
1751+ database error. Returned with an HTTP status code
1752+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1753HttpStatus: 500
1754
1755Value: 2514
1756Name: ORDERS_LOOKUP_PRODUCT_DB_HARD_FAILURE
1757Description: The order provided to the backend could not be completed, due to a
1758+ database error trying to fetch product inventory data. Returned with
1759+ an HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
1760HttpStatus: 500
1761
1762Value: 2515
1763Name: ORDERS_LOOKUP_PRODUCT_DB_SOFT_FAILURE
1764Description: The order provided to the backend could not be completed, due to a
1765+ database serialization error (which should be impossible) trying to
1766+ fetch product inventory data. Returned with an HTTP status code
1767+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1768HttpStatus: 500
1769
1770Value: 2516
1771Name: ORDERS_LOOKUP_PRODUCT_NOT_FOUND
1772Description: The order provided to the backend could not be completed, because a
1773+ product to be completed via inventory data is not actually in our
1774+ inventory. Returned with an HTTP status code #MHD_HTTP_NOT_FOUND.
1775HttpStatus: 404
1776
1777Value: 2517
1778Name: ORDERS_GET_DB_LOOKUP_ERROR
1779Description: We could not obtain a list of all orders because of a database
1780+ failure. Returned with an HTTP status code
1781+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1782HttpStatus: 500
1783
1784Value: 2518
1785Name: ORDERS_CLAIM_HARD_DB_ERROR
1786Description: We could not claim the order because of a database failure. Returned
1787+ with an HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
1788HttpStatus: 500
1789
1790Value: 2519
1791Name: ORDERS_CLAIM_SOFT_DB_ERROR
1792Description: We could not claim the order because of a database serialization
1793+ failure. Returned with an HTTP status code
1794+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1795HttpStatus: 500
1796
1797Value: 2520
1798Name: ORDERS_CLAIM_NOT_FOUND
1799Description: We could not claim the order because the backend is unaware of it.
1800+ Returned with an HTTP status code #MHD_HTTP_NOT_FOUND.
1801HttpStatus: 404
1802
1803Value: 2521
1804Name: ORDERS_ALREADY_CLAIMED
1805Description: We could not claim the order because someone else claimed it first.
1806+ Returned with an HTTP status code #MHD_HTTP_CONFLICT.
1807HttpStatus: 409
1808
1809Value: 2550
1810Name: GET_PRODUCTS_DB_LOOKUP_ERROR
1811Description: The merchant backend failed to lookup the products. The response is
1812+ provied with an HTTP status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1813HttpStatus: 500
1814
1815Value: 2551
1816Name: PRODUCTS_POST_DB_START_ERROR
1817Description: The merchant backend failed to start the transaction. The response is
1818+ provied with an HTTP status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1819HttpStatus: 500
1820
1821Value: 2552
1822Name: PRODUCTS_POST_CONFLICT_PRODUCT_EXISTS
1823Description: The product ID exists. The response is provied with an HTTP status of
1824+ #MHD_HTTP_CONFLICT.
1825HttpStatus: 409
1826
1827Value: 2553
1828Name: PRODUCTS_POST_DB_COMMIT_SOFT_ERROR
1829Description: The merchant backend failed to serialize the transaction. The response
1830+ is provied with an HTTP status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1831HttpStatus: 500
1832
1833Value: 2554
1834Name: PRODUCTS_POST_DB_COMMIT_HARD_ERROR
1835Description: The merchant backend failed to commit the transaction. The response is
1836+ provied with an HTTP status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1837HttpStatus: 500
1838
1839Value: 2555
1840Name: PRODUCTS_PATCH_DB_COMMIT_HARD_ERROR
1841Description: The merchant backend failed to commit the transaction. The response is
1842+ provied with an HTTP status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1843HttpStatus: 500
1844
1845Value: 2556
1846Name: PRODUCTS_PATCH_UNKNOWN_PRODUCT
1847Description: The merchant backend did not find the product to be updated. The
1848+ response is provied with an HTTP status of #MHD_HTTP_NOT_FOUND.
1849HttpStatus: 404
1850
1851Value: 2557
1852Name: PRODUCTS_PATCH_TOTAL_LOST_REDUCED
1853Description: The update would have reduced the total amount of product lost, which
1854+ is not allowed. The response is provied with an HTTP status of
1855+ #MHD_HTTP_CONFLICT.
1856HttpStatus: 409
1857
1858Value: 2558
1859Name: PRODUCTS_PATCH_TOTAL_LOST_EXCEEDS_STOCKS
1860Description: The update would have mean that more stocks were lost than what
1861+ remains from total inventory after sales, which is not allowed. The
1862+ response is provied with an HTTP status of #MHD_HTTP_CONFLICT.
1863HttpStatus: 409
1864
1865Value: 2559
1866Name: PRODUCTS_PATCH_TOTAL_STOCKED_REDUCED
1867Description: The update would have reduced the total amount of product in stock,
1868+ which is not allowed. The response is provied with an HTTP status of
1869+ #MHD_HTTP_CONFLICT.
1870HttpStatus: 409
1871
1872Value: 2560
1873Name: PRODUCTS_LOCK_INSUFFICIENT_STOCKS
1874Description: The lock request is for more products than we have left (unlocked) in
1875+ stock. The response is provied with an HTTP status of
1876+ #MHD_HTTP_CONFLICT.
1877HttpStatus: 409
1878
1879Value: 2561
1880Name: PRODUCTS_LOCK_UNKNOWN_PRODUCT
1881Description: The lock request is for an unknown product. The response is provied
1882+ with an HTTP status of #MHD_HTTP_NOT_FOUND.
1883HttpStatus: 404
1884
1885Value: 2562
1886Name: PRODUCTS_DELETE_DB_HARD_FAILURE
1887Description: The deletion request resulted in a hard database error. The response
1888+ is provied with an HTTP status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1889HttpStatus: 500
1890
1891Value: 2563
1892Name: PRODUCTS_DELETE_NO_SUCH_PRODUCT
1893Description: The deletion request was for a product unknown to the backend. The
1894+ response is provied with an HTTP status of #MHD_HTTP_NOT_FOUND.
1895HttpStatus: 404
1896
1897Value: 2564
1898Name: PRODUCTS_DELETE_CONFLICTING_LOCK
1899Description: The deletion request is for a product that is locked. The response is
1900+ provied with an HTTP status of #MHD_HTTP_CONFLICT.
1901HttpStatus: 409
1902
1903Value: 2600
1904Name: REFUND_LOOKUP_INVALID_RESPONSE
1905Description: The merchant returned a malformed response. Error created client-side.
1906HttpStatus: 0
1907
1908Value: 2601
1909Name: REFUND_ORDER_ID_UNKNOWN
1910Description: The frontend gave an unknown order id to issue the refund to.
1911HttpStatus: 0
1912
1913Value: 2602
1914Name: REFUND_INCONSISTENT_AMOUNT
1915Description: The amount to be refunded is inconsistent: either is lower than the
1916+ previous amount being awarded, or it is too big to be paid back. In
1917+ this second case, the fault stays on the business dept. side. Returned
1918+ with an HTTP status of #MHD_HTTP_CONFLICT.
1919HttpStatus: 409
1920
1921Value: 2603
1922Name: REFUND_LOOKUP_DB_ERROR
1923Description: The backend encountered an error while trying to retrieve the payment
1924+ data from database. Likely to be an internal error.
1925HttpStatus: 0
1926
1927Value: 2604
1928Name: REFUND_MERCHANT_DB_COMMIT_ERROR
1929Description: The backend encountered an error while trying to retrieve the payment
1930+ data from database. Likely to be an internal error.
1931HttpStatus: 0
1932
1933Value: 2605
1934Name: PAY_DB_STORE_PAYMENTS_ERROR
1935Description: Payments are stored in a single db transaction; this error indicates
1936+ that one db operation within that transaction failed. This might
1937+ involve storing of coins or other related db operations, like
1938+ starting/committing the db transaction or marking a contract as paid.
1939HttpStatus: 0
1940
1941Value: 2606
1942Name: PAY_REFUND_SIGNATURE_FAILED
1943Description: The backend failed to sign the refund request.
1944HttpStatus: 0
1945
1946Value: 2607
1947Name: REFUND_LOOKUP_NO_REFUND
1948Description: The merchant backend is not available of any applicable refund(s) for
1949+ this order. Returned with an HTTP status of #MHD_HTTP_NOT_FOUND.
1950HttpStatus: 404
1951
1952Value: 2650
1953Name: RESERVES_POST_UNSUPPORTED_WIRE_METHOD
1954Description: The requested wire method is not supported by the exchange. Returned
1955+ with an HTTP status of #MHD_HTTP_CONFLICT.
1956HttpStatus: 409
1957
1958Value: 2651
1959Name: RESERVES_POST_DB_COMMIT_HARD_ERROR
1960Description: The backend failed to commit the result to the database. Returned with
1961+ an HTTP status of #MHD_HTTP_INTERNAL_SERVER_ERROR.
1962HttpStatus: 500
1963
1964Value: 2652
1965Name: GET_RESERVES_DB_LOOKUP_ERROR
1966Description: The backend failed to fetch the requested information from the
1967+ database. Returned with an HTTP status of
1968+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
1969HttpStatus: 500
1970
1971Value: 2701
1972Name: TIP_AUTHORIZE_INSTANCE_DOES_NOT_TIP
1973Description: The backend knows the instance that was supposed to support the tip,
1974+ but it was not configured for tipping (i.e. has no exchange associated
1975+ with it). Likely to be a configuration error. Returned with an HTTP
1976+ status code of #MHD_HTTP_PRECONDITION_FAILED.
1977HttpStatus: 412
1978
1979Value: 2702
1980Name: TIP_AUTHORIZE_RESERVE_EXPIRED
1981Description: The reserve that was used to fund the tips has expired. Returned with
1982+ an HTTP status code of #MHD_HTTP_GONE.
1983HttpStatus: 410
1984
1985Value: 2703
1986Name: TIP_AUTHORIZE_RESERVE_UNKNOWN
1987Description: The reserve that was used to fund the tips was not found in the DB.
1988+ Returned with an HTTP status code of #MHD_HTTP_SERVICE_UNAVAILABLE.
1989HttpStatus: 503
1990
1991Value: 2704
1992Name: TIP_AUTHORIZE_INSUFFICIENT_FUNDS
1993Description: The backend knows the instance that was supposed to support the tip,
1994+ and it was configured for tipping. However, the funds remaining are
1995+ insufficient to cover the tip, and the merchant should top up the
1996+ reserve. Returned with an HTTP status code of #MHD_HTTP_PRECONDITION
1997+ FAILED.
1998HttpStatus: 0
1999
2000Value: 2705
2001Name: TIP_AUTHORIZE_DB_HARD_ERROR
2002Description: The backend had trouble accessing the database to persist information
2003+ about the tip authorization. Returned with an HTTP status code of
2004+ internal error.
2005HttpStatus: 0
2006
2007Value: 2706
2008Name: TIP_AUTHORIZE_DB_SOFT_ERROR
2009Description: The backend had trouble accessing the database to persist information
2010+ about the tip authorization. The problem might be fixable by repeating
2011+ the transaction.
2012HttpStatus: 0
2013
2014Value: 2707
2015Name: TIP_QUERY_RESERVE_STATUS_FAILED_EXCHANGE_DOWN
2016Description: The backend failed to obtain a reserve status from the exchange. This
2017+ response is provided with HTTP status code
2018+ #MHD_HTTP_FAILED_DEPENDENCY.
2019HttpStatus: 424
2020
2021Value: 2708
2022Name: TIP_QUERY_RESERVE_HISTORY_FAILED_EMPTY
2023Description: The backend got an empty (!) reserve history from the exchange. This
2024+ response is provided with HTTP status code
2025+ #MHD_HTTP_FAILED_DEPENDENCY.
2026HttpStatus: 424
2027
2028Value: 2709
2029Name: TIP_QUERY_RESERVE_HISTORY_INVALID_NO_DEPOSIT
2030Description: The backend got an invalid reserve history (fails to start with a
2031+ deposit) from the exchange. This response is provided with HTTP status
2032+ code #MHD_HTTP_FAILED_DEPENDENCY.
2033HttpStatus: 424
2034
2035Value: 2710
2036Name: TIP_QUERY_RESERVE_UNKNOWN_TO_EXCHANGE
2037Description: The backend got an 404 response from the exchange when it inquired
2038+ about the reserve history. The response is provided with HTTP status
2039+ code #MHD_HTTP_SERVICE_UNAVAILABLE.
2040HttpStatus: 503
2041
2042Value: 2711
2043Name: TIP_QUERY_RESERVE_CURRENCY_MISMATCH
2044Description: The backend got a reserve with a currency that does not match the
2045+ backend's currency. The response is provided with HTTP status code
2046+ #MHD_HTTP_SERVICE_UNAVAILABLE.
2047HttpStatus: 503
2048
2049Value: 2712
2050Name: TIP_QUERY_RESERVE_HISTORY_ARITHMETIC_ISSUE_DEPOSIT
2051Description: The backend got a reserve history with amounts it cannot process
2052+ (addition failure in deposits). The response is provided with HTTP
2053+ status code #MHD_HTTP_FAILED_DEPENDENCY.
2054HttpStatus: 424
2055
2056Value: 2713
2057Name: TIP_QUERY_RESERVE_HISTORY_ARITHMETIC_ISSUE_WITHDRAW
2058Description: The backend got a reserve history with amounts it cannot process
2059+ (addition failure in withdraw amounts). The response is provided with
2060+ HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
2061HttpStatus: 424
2062
2063Value: 2714
2064Name: TIP_QUERY_RESERVE_HISTORY_ARITHMETIC_ISSUE_CLOSED
2065Description: The backend got a reserve history with amounts it cannot process
2066+ (addition failure in closing amounts). The response is provided with
2067+ HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
2068HttpStatus: 424
2069
2070Value: 2715
2071Name: TIP_QUERY_RESERVE_HISTORY_ARITHMETIC_ISSUE_INCONSISTENT
2072Description: The backend got a reserve history with inconsistent amounts.
2073HttpStatus: 0
2074
2075Value: 2716
2076Name: TIP_QUERY_DB_ERROR
2077Description: The backend encountered a database error querying tipping reserves.
2078HttpStatus: 0
2079
2080Value: 2717
2081Name: TIP_QUERY_RESERVE_HISTORY_FAILED
2082Description: The backend got an unexpected resever history reply from the exchange.
2083+ This response is provided with HTTP status code
2084+ #MHD_HTTP_FAILED_DEPENDENCY.
2085HttpStatus: 424
2086
2087Value: 2718
2088Name: TIP_QUERY_RESERVE_HISTORY_ARITHMETIC_ISSUE_RECOUP
2089Description: The backend got a reserve history with amounts it cannot process
2090+ (addition failure in withdraw amounts). The response is provided with
2091+ HTTP status code #MHD_HTTP_FAILED_DEPENDENCY.
2092HttpStatus: 424
2093
2094Value: 2719
2095Name: TIP_QUERY_INSTANCE_DOES_NOT_TIP
2096Description: The backend knows the instance that was supposed to support the tip,
2097+ but it was not configured for tipping (i.e. has no exchange associated
2098+ with it). Likely to be a configuration error. Returned with an HTTP
2099+ status code of #MHD_HTTP_PRECONDITION_FAILED.
2100HttpStatus: 412
2101
2102Value: 2720
2103Name: TIP_QUERY_TIP_ID_UNKNOWN
2104Description: The tip id is unknown. This could happen if the tip id is wrong or
2105+ the tip authorization expired.
2106HttpStatus: 0
2107
2108Value: 2721
2109Name: RESERVES_DELETE_DB_HARD_FAILURE
2110Description: The reserve could not be deleted due to a database failure. Returned
2111+ with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
2112HttpStatus: 500
2113
2114Value: 2722
2115Name: RESERVES_DELETE_NO_SUCH_RESERVE
2116Description: The reserve could not be deleted because it is unknown. Returned with
2117+ HTTP status code #MHD_HTTP_NOT_FOUND.
2118HttpStatus: 404
2119
2120Value: 2723
2121Name: TIP_LOOKUP_RESERVE_DB_FAILURE
2122Description: The backend got an unexpected error trying to lookup reserve details
2123+ from the backend. This response is provided with HTTP status code
2124+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
2125HttpStatus: 500
2126
2127Value: 2724
2128Name: TIP_AUTHORIZE_DB_SERIALIZATION_FAILURE
2129Description: The backend repeatedly failed to serialize the transaction to
2130+ authorize the tip. This response is provided with HTTP status code
2131+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
2132HttpStatus: 500
2133
2134Value: 2725
2135Name: TIP_AUTHORIZE_DB_START_FAILURE
2136Description: The backend failed to start the transaction to authorize the tip. This
2137+ response is provided with HTTP status code
2138+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
2139HttpStatus: 500
2140
2141Value: 2726
2142Name: TIP_AUTHORIZE_DB_LOOKUP_RESERVE_FAILURE
2143Description: The backend failed looking up the reserve needed to authorize the tip.
2144+ This response is provided with HTTP status code
2145+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
2146HttpStatus: 500
2147
2148Value: 2727
2149Name: TIP_AUTHORIZE_DB_RESERVE_NOT_FOUND
2150Description: The backend failed to find a reserve needed to authorize the tip. This
2151+ response is provided with HTTP status code
2152+ #MHD_HTTP_SERVICE_UNAVAILABLE.
2153HttpStatus: 503
2154
2155Value: 2728
2156Name: TIP_AUTHORIZE_DB_RESERVE_INVARIANT_FAILURE
2157Description: The backend encountered an internal invariant violation. This response
2158+ is provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
2159HttpStatus: 500
2160
2161Value: 2729
2162Name: TIP_AUTHORIZE_DB_RESERVE_EXPIRED
2163Description: The selected exchange expired. This response is provided with HTTP
2164+ status code #MHD_HTTP_GONE.
2165HttpStatus: 410
2166
2167Value: 2730
2168Name: TIP_AUTHORIZE_DB_UPDATE_RESERVE_FAILURE
2169Description: The backend failed updating the reserve needed to authorize the tip.
2170+ This response is provided with HTTP status code
2171+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
2172HttpStatus: 500
2173
2174Value: 2750
2175Name: TIP_ENABLE_DB_TRANSACTION_ERROR
2176Description: The backend had trouble accessing the database to persist information
2177+ about enabling tips. Returned with an HTTP status code of internal
2178+ error.
2179HttpStatus: 0
2180
2181Value: 2800
2182Name: TIP_PICKUP_TIP_ID_UNKNOWN
2183Description: The tip ID is unknown. This could happen if the tip has expired.
2184+ Returned with an HTTP status code of #MHD_HTTP_NOT_FOUND.
2185HttpStatus: 404
2186
2187Value: 2801
2188Name: TIP_PICKUP_NO_FUNDS
2189Description: The amount requested exceeds the remaining tipping balance for this
2190+ tip ID. Returned with an HTTP status code of "Conflict" (as it
2191+ conflicts with a previous pickup operation).
2192HttpStatus: 0
2193
2194Value: 2802
2195Name: TIP_PICKUP_DB_ERROR_SOFT
2196Description: We encountered a DB error, repeating the request may work.
2197HttpStatus: 0
2198
2199Value: 2803
2200Name: TIP_PICKUP_DB_ERROR_HARD
2201Description: We encountered a DB error, repeating the request will not help. This
2202+ is an internal server error.
2203HttpStatus: 0
2204
2205Value: 2804
2206Name: TIP_PICKUP_AMOUNT_CHANGED
2207Description: The same pickup ID was already used for picking up a different amount.
2208+ This points to a very strange internal error as the pickup ID is
2209+ derived from the denomination key which is tied to a particular
2210+ amount. Hence this should also be an internal server error.
2211HttpStatus: 0
2212
2213Value: 2805
2214Name: TIP_PICKUP_EXCHANGE_DOWN
2215Description: We failed to contact the exchange to obtain the denomination keys.
2216+ Returned with a response code #MHD_HTTP_FAILED_DEPENDENCY.
2217HttpStatus: 424
2218
2219Value: 2806
2220Name: TIP_PICKUP_EXCHANGE_LACKED_KEYS
2221Description: We contacted the exchange to obtain any denomination keys, but got no
2222+ valid keys. Returned with a response code #MHD_HTTP_FAILED_DEPENDENCY.
2223HttpStatus: 424
2224
2225Value: 2807
2226Name: TIP_PICKUP_EXCHANGE_LACKED_KEY
2227Description: We contacted the exchange to obtain at least one of the denomination
2228+ keys specified in the request. Returned with a response code "not
2229+ found" (404).
2230HttpStatus: 0
2231
2232Value: 2808
2233Name: TIP_PICKUP_EXCHANGE_AMOUNT_OVERFLOW
2234Description: We encountered an arithmetic issue totaling up the amount to withdraw.
2235+ Returned with a response code of #MHD_HTTP_BAD_REQUEST.
2236HttpStatus: 400
2237
2238Value: 2809
2239Name: TIP_PICKUP_EXCHANGE_TOO_MANY_PLANCHETS
2240Description: The number of planchets specified exceeded the limit. Returned with a
2241+ response code of #MHD_HTTP_BAD_REQUEST.
2242HttpStatus: 400
2243
2244Value: 2810
2245Name: TIP_PICKUP_WITHDRAW_FAILED
2246Description: The merchant failed to initialize the withdraw operaiton. Returned
2247+ with a response code of #MHD_HTTP_INTERNAL_SERVER_ERROR.
2248HttpStatus: 500
2249
2250Value: 2811
2251Name: TIP_PICKUP_WITHDRAW_FAILED_AT_EXCHANGE
2252Description: The merchant failed to initialize the withdraw operaiton. Returned
2253+ with a response code of #MHD_HTTP_FAILED_DEPENDENCY.
2254HttpStatus: 424
2255
2256Value: 2812
2257Name: TIP_PICKUP_UNBLIND_FAILURE
2258Description: The client failed to unblind the signature returned by the merchant.
2259+ Generated client-side.
2260HttpStatus: 0
2261
2262Value: 2813
2263Name: GET_TIPS_DB_LOOKUP_ERROR
2264Description: Merchant failed to access its database to lookup the tip. Returned
2265+ with a response code of #MHD_HTTP_INTERNAL_SERVER_ERROR.
2266HttpStatus: 500
2267
2268Value: 2814
2269Name: GET_TIPS_ID_UNKNOWN
2270Description: Merchant failed find the tip in its database. Returned with a response
2271+ code of #MHD_HTTP_NOT_FOUND.
2272HttpStatus: 404
2273
2274Value: 2815
2275Name: TIP_PICKUP_CONTACT_EXCHANGE_ERROR
2276Description: The merchant failed to contact the exchange. Returned with a response
2277+ code of #MHD_HTTP_FAILED_DEPENDENCY.
2278HttpStatus: 424
2279
2280Value: 2816
2281Name: TIP_PICKUP_EXCHANGE_KEYS_ERROR
2282Description: The merchant failed to obtain keys from the exchange. Returned with a
2283+ response code of #MHD_HTTP_FAILED_DEPENDENCY.
2284HttpStatus: 424
2285
2286Value: 2817
2287Name: TIP_PICKUP_DB_STORE_HARD_ERROR
2288Description: The merchant failed to store data in its own database. Returned with a
2289+ response code of #MHD_HTTP_INTERNAL_SERVER_ERROR.
2290HttpStatus: 500
2291
2292Value: 2818
2293Name: TIP_PICKUP_EXCHANGE_TIMEOUT
2294Description: The merchant failed to get a timely response from the exchange.
2295+ Returned with a response code of #MHD_HTTP_REQUEST_TIMEOUT.
2296HttpStatus: 408
2297
2298Value: 2819
2299Name: TIP_PICKUP_EXCHANGE_ERROR
2300Description: The exchange returned a failure code for the withdraw operation.
2301+ Returned with a response code of #MHD_HTTP_FAILED_DEPENDENCY.
2302HttpStatus: 424
2303
2304Value: 2820
2305Name: TIP_PICKUP_SUMMATION_FAILED
2306Description: The merchant failed to add up the amounts to compute the pick up
2307+ value. Returned with a response code of
2308+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
2309HttpStatus: 500
2310
2311Value: 2821
2312Name: TIP_PICKUP_HAS_EXPIRED
2313Description: The tip expired. Returned with a response code of #MHD_HTTP_GONE.
2314HttpStatus: 410
2315
2316Value: 2822
2317Name: TIP_PICKUP_AMOUNT_EXCEEDS_TIP_REMAINING
2318Description: The requested withdraw amount exceeds the amount remaining to be
2319+ picked up. Returned with a response code of #MHD_HTTP_BAD_REQUEST.
2320HttpStatus: 400
2321
2322Value: 2823
2323Name: TIP_PICKUP_DB_STORE_SOFT_ERROR
2324Description: The merchant failed to store data in its own database. Returned with a
2325+ response code of #MHD_HTTP_INTERNAL_SERVER_ERROR.
2326HttpStatus: 500
2327
2328Value: 2824
2329Name: TIP_PICKUP_DENOMINATION_UNKNOWN
2330Description: The merchant did not find the specified denomination key in the
2331+ exchange's key set. Returned with a response code of
2332+ #MHD_HTTP_CONFLICT.
2333HttpStatus: 409
2334
2335Value: 2900
2336Name: GET_ORDERS_DB_LOOKUP_ERROR
2337Description: We failed to fetch contract terms from our merchant database. The
2338+ response is provided with HTTP status code
2339+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
2340HttpStatus: 500
2341
2342Value: 2901
2343Name: GET_ORDERS_ID_UNKNOWN
2344Description: We failed to find the contract terms from our merchant database. The
2345+ response is provided with HTTP status code #MHD_HTTP_NOT_FOUND.
2346HttpStatus: 404
2347
2348Value: 2902
2349Name: GET_ORDERS_WRONG_CONTRACT
2350Description: The contract hash provided by the wallet does not match the order. The
2351+ response is provided with HTTP status code #MHD_HTTP_FORBIDDEN.
2352HttpStatus: 403
2353
2354Value: 2911
2355Name: CHECK_PAYMENT_DB_FETCH_CONTRACT_TERMS_ERROR
2356Description: We failed to contract terms from our merchant database. The response
2357+ is provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
2358HttpStatus: 500
2359
2360Value: 2912
2361Name: CHECK_PAYMENT_DB_FETCH_ORDER_ERROR
2362Description: We failed to contract terms from our merchant database. The response
2363+ is provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
2364HttpStatus: 500
2365
2366Value: 2913
2367Name: CHECK_PAYMENT_ORDER_ID_UNKNOWN
2368Description: The order id we're checking is unknown, likely the frontend did not
2369+ create the order first.
2370HttpStatus: 0
2371
2372Value: 2914
2373Name: CHECK_PAYMENT_FAILED_COMPUTE_PROPOSAL_HASH
2374Description: Failed computing a hash code (likely server out-of-memory). This
2375+ response is provided with HTTP status code
2376+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
2377HttpStatus: 500
2378
2379Value: 2915
2380Name: CHECK_PAYMENT_SESSION_SIGNATURE_INVALID
2381Description: Signature "session_sig" failed to verify. This response is provided
2382+ with HTTP status code #MHD_HTTP_BAD_REQUEST.
2383HttpStatus: 400
2384
2385Value: 2916
2386Name: CHECK_PAYMENT_RESPONSE_MALFORMED
2387Description: The response we received from the merchant is malformed. This error is
2388+ generated client-side.
2389HttpStatus: 0
2390
2391Value: 3000
2392Name: DEPOSIT_CONFIRMATION_SIGNATURE_INVALID
2393Description: The signature from the exchange on the deposit confirmation is
2394+ invalid. Returned with a "400 Bad Request" status code.
2395HttpStatus: 0
2396
2397Value: 3001
2398Name: DEPOSIT_CONFIRMATION_STORE_DB_ERROR
2399Description: The auditor had trouble storing the deposit confirmation in its
2400+ database. Returned with an HTTP status code of
2401+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
2402HttpStatus: 500
2403
2404Value: 3002
2405Name: LIST_EXCHANGES_DB_ERROR
2406Description: The auditor had trouble retrieving the exchange list from its
2407+ database. Returned with an HTTP status code of
2408+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
2409HttpStatus: 500
2410
2411Value: 3003
2412Name: AUDITOR_EXCHANGE_STORE_DB_ERROR
2413Description: The auditor had trouble storing an exchange in its database. Returned
2414+ with an HTTP status code of #MHD_HTTP_INTERNAL_SERVER_ERROR.
2415HttpStatus: 500
2416
2417Value: 3004
2418Name: AUDITOR_EXCHANGES_REPLY_MALFORMED
2419Description: The auditor (!) responded with a reply that did not satsify the
2420+ protocol. This error is not used in the protocol but created client-
2421+ side.
2422HttpStatus: 0
2423
2424Value: 4000
2425Name: TEST_ECDH_ERROR
2426Description: The exchange failed to compute ECDH. This response is provided with
2427+ HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
2428HttpStatus: 500
2429
2430Value: 4001
2431Name: TEST_EDDSA_INVALID
2432Description: The EdDSA test signature is invalid. This response is provided with
2433+ HTTP status code #MHD_HTTP_BAD_REQUEST.
2434HttpStatus: 400
2435
2436Value: 4002
2437Name: TEST_EDDSA_ERROR
2438Description: The exchange failed to compute the EdDSA test signature. This
2439+ response is provided with HTTP status code
2440+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
2441HttpStatus: 500
2442
2443Value: 4003
2444Name: TEST_RSA_GEN_ERROR
2445Description: The exchange failed to generate an RSA key. This response is provided
2446+ with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
2447HttpStatus: 500
2448
2449Value: 4004
2450Name: TEST_RSA_PUB_ERROR
2451Description: The exchange failed to compute the public RSA key. This response is
2452+ provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
2453HttpStatus: 500
2454
2455Value: 4005
2456Name: TEST_RSA_SIGN_ERROR
2457Description: The exchange failed to compute the RSA signature. This response is
2458+ provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
2459HttpStatus: 500
2460
2461Value: 5000
2462Name: SERVER_JSON_INVALID
2463Description: The JSON in the server's response was malformed. This response is
2464+ provided with HTTP status code of 0.
2465HttpStatus: 0
2466
2467Value: 5001
2468Name: SERVER_SIGNATURE_INVALID
2469Description: A signature in the server's response was malformed. This response is
2470+ provided with HTTP status code of 0.
2471HttpStatus: 0
2472
2473Value: 5102
2474Name: BANK_SAME_ACCOUNT
2475Description: Wire transfer attempted with credit and debit party being the same
2476+ bank account.
2477HttpStatus: 0
2478
2479Value: 5103
2480Name: BANK_UNALLOWED_DEBIT
2481Description: Wire transfer impossible, due to financial limitation of the party
2482+ that attempted the payment.
2483HttpStatus: 0
2484
2485Value: 5104
2486Name: BANK_CURRENCY_MISMATCH
2487Description: Arithmetic operation between two amounts of different currency was
2488+ attempted.
2489HttpStatus: 0
2490
2491Value: 5105
2492Name: BANK_PARAMETER_MISSING_OR_INVALID
2493Description: At least one GET parameter was either missing or invalid for the
2494+ requested operation.
2495HttpStatus: 0
2496
2497Value: 5106
2498Name: BANK_JSON_INVALID
2499Description: JSON body sent was invalid for the requested operation.
2500HttpStatus: 0
2501
2502Value: 5107
2503Name: BANK_NEGATIVE_NUMBER_AMOUNT
2504Description: Negative number was used (as value and/or fraction) to initiate a
2505+ Amount object.
2506HttpStatus: 0
2507
2508Value: 5108
2509Name: BANK_NUMBER_TOO_BIG
2510Description: A number too big was used (as value and/or fraction) to initiate a
2511+ amount object.
2512HttpStatus: 0
2513
2514Value: 5109
2515Name: BANK_LOGIN_FAILED
2516Description: Could not login for the requested operation.
2517HttpStatus: 0
2518
2519Value: 5110
2520Name: BANK_UNKNOWN_ACCOUNT
2521Description: The bank account referenced in the requested operation was not found.
2522+ Returned along "400 Not found".
2523HttpStatus: 0
2524
2525Value: 5111
2526Name: BANK_TRANSACTION_NOT_FOUND
2527Description: The transaction referenced in the requested operation (typically a
2528+ reject operation), was not found.
2529HttpStatus: 0
2530
2531Value: 5112
2532Name: BANK_BAD_FORMAT_AMOUNT
2533Description: Bank received a malformed amount string.
2534HttpStatus: 0
2535
2536Value: 5200
2537Name: BANK_REJECT_NO_RIGHTS
2538Description: The client does not own the account credited by the transaction which
2539+ is to be rejected, so it has no rights do reject it. To be returned
2540+ along HTTP 403 Forbidden.
2541HttpStatus: 0
2542
2543Value: 5300
2544Name: BANK_UNMANAGED_EXCEPTION
2545Description: This error code is returned when no known exception types captured the
2546+ exception, and comes along with a 500 Internal Server Error.
2547HttpStatus: 0
2548
2549Value: 5400
2550Name: BANK_SOFT_EXCEPTION
2551Description: This error code is used for all those exceptions that do not really
2552+ need a specific error code to return to the client, but need to signal
2553+ the middleware that the bank is not responding with 500 Internal
2554+ Server Error. Used for example when a client is trying to register
2555+ with a unavailable username.
2556HttpStatus: 0
2557
2558Value: 5500
2559Name: BANK_TRANSFER_REQUEST_UID_REUSED
2560Description: The request UID for a request to transfer funds has already been used,
2561+ but with different details for the transfer.
2562HttpStatus: 0
2563
2564Value: 6000
2565Name: SYNC_DB_FETCH_ERROR
2566Description: The sync service failed to access its database. This response is
2567+ provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
2568HttpStatus: 500
2569
2570Value: 6001
2571Name: SYNC_BACKUP_UNKNOWN
2572Description: The sync service failed find the record in its database. This response
2573+ is provided with HTTP status code #MHD_HTTP_NOT_FOUND.
2574HttpStatus: 404
2575
2576Value: 6002
2577Name: SYNC_ACCOUNT_UNKNOWN
2578Description: The sync service failed find the account in its database. This
2579+ response is provided with HTTP status code #MHD_HTTP_NOT_FOUND.
2580HttpStatus: 404
2581
2582Value: 6003
2583Name: SYNC_BAD_IF_NONE_MATCH
2584Description: The SHA-512 hash provided in the If-None-Match header is malformed.
2585+ This response is provided with HTTP status code #MHD_HTTP_BAD_REQUEST.
2586HttpStatus: 400
2587
2588Value: 6004
2589Name: SYNC_BAD_IF_MATCH
2590Description: The SHA-512 hash provided in the If-Match header is malformed or
2591+ missing. This response is provided with HTTP status code
2592+ #MHD_HTTP_BAD_REQUEST.
2593HttpStatus: 400
2594
2595Value: 6005
2596Name: SYNC_BAD_SYNC_SIGNATURE
2597Description: The signature provided in the "Sync-Signature" header is malformed or
2598+ missing. This response is provided with HTTP status code
2599+ #MHD_HTTP_BAD_REQUEST.
2600HttpStatus: 400
2601
2602Value: 6007
2603Name: SYNC_INVALID_SIGNATURE
2604Description: The signature provided in the "Sync-Signature" header does not match
2605+ the account, old or new Etags. This response is provided with HTTP
2606+ status code #MHD_HTTP_FORBIDDEN.
2607HttpStatus: 403
2608
2609Value: 6008
2610Name: SYNC_BAD_CONTENT_LENGTH
2611Description: The "Content-length" field for the upload is either not a number, or
2612+ too big, or missing. This response is provided with HTTP status code
2613+ #MHD_HTTP_BAD_REQUEST.
2614HttpStatus: 400
2615
2616Value: 6009
2617Name: SYNC_EXCESSIVE_CONTENT_LENGTH
2618Description: The "Content-length" field for the upload is too big based on the
2619+ server's terms of service. This response is provided with HTTP status
2620+ code #MHD_HTTP_PAYLOAD_TOO_LARGE.
2621HttpStatus: 413
2622
2623Value: 6010
2624Name: SYNC_OUT_OF_MEMORY_ON_CONTENT_LENGTH
2625Description: The server is out of memory to handle the upload. Trying again later
2626+ may succeed. This response is provided with HTTP status code
2627+ #MHD_HTTP_PAYLOAD_TOO_LARGE.
2628HttpStatus: 413
2629
2630Value: 6011
2631Name: SYNC_INVALID_UPLOAD
2632Description: The uploaded data does not match the Etag. This response is provided
2633+ with HTTP status code #MHD_HTTP_BAD_REQUEST.
2634HttpStatus: 400
2635
2636Value: 6012
2637Name: SYNC_DATABASE_FETCH_ERROR
2638Description: We failed to check for existing upload data in the database. This
2639+ response is provided with HTTP status code
2640+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
2641HttpStatus: 500
2642
2643Value: 6013
2644Name: SYNC_SHUTDOWN
2645Description: HTTP server was being shutdown while this operation was pending. This
2646+ response is provided with HTTP status code
2647+ #MHD_HTTP_SERVICE_UNAVAILABLE.
2648HttpStatus: 503
2649
2650Value: 6014
2651Name: SYNC_PAYMENT_TIMEOUT
2652Description: HTTP server experienced a timeout while awaiting promised payment.
2653+ This response is provided with HTTP status code
2654+ #MHD_HTTP_REQUEST_TIMEOUT.
2655HttpStatus: 408
2656
2657Value: 6015
2658Name: SYNC_PAYMENT_CREATE_DB_ERROR
2659Description: Sync could not store order data in its own database. This response is
2660+ provided with HTTP status code #MHD_HTTP_INTERNAL_SERVER_ERROR.
2661HttpStatus: 500
2662
2663Value: 6016
2664Name: SYNC_PAYMENT_CONFIRM_DB_ERROR
2665Description: Sync could not store payment confirmation in its own database. This
2666+ response is provided with HTTP status code
2667+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
2668HttpStatus: 500
2669
2670Value: 6017
2671Name: SYNC_PAYMENT_CHECK_ORDER_DB_ERROR
2672Description: Sync could not fetch information about possible existing orders from
2673+ its own database. This response is provided with HTTP status code
2674+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
2675HttpStatus: 500
2676
2677Value: 6018
2678Name: SYNC_PAYMENT_CREATE_BACKEND_ERROR
2679Description: Sync could not setup the payment request with its own backend. This
2680+ response is provided with HTTP status code
2681+ #MHD_HTTP_INTERNAL_SERVER_ERROR.
2682HttpStatus: 500
2683
2684Value: 6019
2685Name: SYNC_PREVIOUS_BACKUP_UNKNOWN
2686Description: The sync service failed find the backup to be updated in its database.
2687+ This response is provided with HTTP status code #MHD_HTTP_NOT_FOUND.
2688HttpStatus: 404
2689
2690Value: 9999
2691Name: END
2692Description: End of error code range.
2693HttpStatus: 0