mtn_open_api 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,2370 @@
1
+ openapi: 3.0.1
2
+ info:
3
+ title: Collection
4
+ description: 'Enable remote collection of bills, fees or taxes'
5
+ version: '1.0'
6
+ servers:
7
+ - url: https://sandbox.momodeveloper.mtn.com/collection
8
+ paths:
9
+ /v1_0/account/balance:
10
+ get:
11
+ summary: GetAccountBalance
12
+ description: Get the balance of own account.
13
+ operationId: GetAccountBalance
14
+ parameters:
15
+ - name: Authorization
16
+ in: header
17
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
18
+ required: true
19
+ schema:
20
+ type: string
21
+ - name: X-Target-Environment
22
+ in: header
23
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
24
+ required: true
25
+ schema:
26
+ type: string
27
+ responses:
28
+ '200':
29
+ description: Ok
30
+ content:
31
+ application/json:
32
+ schema:
33
+ $ref: '#/components/schemas/Balance'
34
+ example:
35
+ availableBalance: string
36
+ currency: string
37
+ Incorrect target environment:
38
+ schema:
39
+ $ref: '#/components/schemas/Balance'
40
+ examples:
41
+ default:
42
+ value:
43
+ '400':
44
+ description: 'Bad request, e.g. invalid data was sent in the request.'
45
+ content:
46
+ application/json: { }
47
+ Incorrect target environment: { }
48
+ '500':
49
+ description: Internal error. The returned response contains details.
50
+ content:
51
+ Incorrect target environment:
52
+ schema:
53
+ $ref: '#/components/schemas/ErrorReason'
54
+ example:
55
+ code: NOT_ALLOWED_TARGET_ENVIRONMENT
56
+ message: Access to target environment is forbidden.
57
+ application/json:
58
+ schema:
59
+ $ref: '#/components/schemas/ErrorReason'
60
+ example:
61
+ code: PAYEE_NOT_FOUND
62
+ message: string
63
+ '/v1_0/accountholder/{accountHolderIdType}/{accountHolderId}/active':
64
+ get:
65
+ summary: ValidateAccountHolderStatus
66
+ description: Operation is used to check if an account holder is registered and active in the system.
67
+ operationId: ValidateAccountHolderStatus
68
+ parameters:
69
+ - name: accountHolderId
70
+ in: path
71
+ description: The AccountHolder number. Validated according to the AccountHolder ID type (case Sensitive). <br> msisdn - Mobile Number validated according to ITU-T E.164. Validated with IsMSISDN<br> email - Validated to be a valid e-mail format. Validated with IsEmail
72
+ required: true
73
+ schema:
74
+ type: string
75
+ - name: accountHolderIdType
76
+ in: path
77
+ description: 'Specifies the type of the AccountHolder ID. Allowed values [msisdn, email]. <br> accountHolderId should explicitly be in small letters.'
78
+ required: true
79
+ schema:
80
+ type: string
81
+ - name: Authorization
82
+ in: header
83
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
84
+ required: true
85
+ schema:
86
+ type: string
87
+ - name: X-Target-Environment
88
+ in: header
89
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
90
+ required: true
91
+ schema:
92
+ type: string
93
+ responses:
94
+ '200':
95
+ description: 'Ok. True if account holder is registered and active, false if the account holder is not active or not found'
96
+ content:
97
+ Incorrect target environment: { }
98
+ '400':
99
+ description: 'Bad request, e.g. invalid data was sent in the request.'
100
+ content:
101
+ Incorrect target environment: { }
102
+ '500':
103
+ description: Internal error. The returned response contains details.
104
+ content:
105
+ Incorrect target environment:
106
+ schema:
107
+ $ref: '#/components/schemas/ErrorReason'
108
+ example:
109
+ code: NOT_ALLOWED_TARGET_ENVIRONMENT
110
+ message: Access to target environment is forbidden.
111
+ /v1_0/requesttopay:
112
+ post:
113
+ summary: RequesttoPay
114
+ description: "This operation is used to request a payment from a consumer (Payer). The payer will be asked to authorize the payment. The transaction will be executed once the payer has authorized the payment. The requesttopay will be in status PENDING until the transaction is authorized or declined by the payer or it is timed out by the system. \n Status of the transaction can be validated by using the GET /requesttopay/\\<resourceId\\>"
115
+ operationId: RequesttoPay
116
+ parameters:
117
+ - name: Authorization
118
+ in: header
119
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
120
+ required: true
121
+ schema:
122
+ type: string
123
+ - name: X-Callback-Url
124
+ in: header
125
+ description: URL to the server where the callback should be sent.
126
+ schema:
127
+ type: string
128
+ - name: X-Reference-Id
129
+ in: header
130
+ description: 'Format - UUID. Recource ID of the created request to pay transaction. This ID is used, for example, validating the status of the request. ‘Universal Unique ID’ for the transaction generated using UUID version 4.'
131
+ required: true
132
+ schema:
133
+ type: string
134
+ - name: X-Target-Environment
135
+ in: header
136
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
137
+ required: true
138
+ schema:
139
+ type: string
140
+ requestBody:
141
+ content:
142
+ application/json:
143
+ schema:
144
+ $ref: '#/components/schemas/RequestToPay'
145
+ example:
146
+ amount: string
147
+ currency: string
148
+ externalId: string
149
+ payer:
150
+ partyIdType: MSISDN
151
+ partyId: string
152
+ payerMessage: string
153
+ payeeNote: string
154
+ responses:
155
+ '202':
156
+ description: Accepted
157
+ content:
158
+ application/json: { }
159
+ ReferenceId already in use: { }
160
+ Unspecified internal error: { }
161
+ '400':
162
+ description: 'Bad request, e.g. invalid data was sent in the request.'
163
+ content:
164
+ application/json: { }
165
+ ReferenceId already in use: { }
166
+ Unspecified internal error: { }
167
+ '409':
168
+ description: 'Conflict, duplicated reference id'
169
+ content:
170
+ ReferenceId already in use:
171
+ schema:
172
+ $ref: '#/components/schemas/ErrorReason'
173
+ example:
174
+ code: RESOURCE_ALREADY_EXIST
175
+ message: Duplicated reference id. Creation of resource failed.
176
+ application/json:
177
+ schema:
178
+ $ref: '#/components/schemas/ErrorReason'
179
+ example:
180
+ code: PAYEE_NOT_FOUND
181
+ message: string
182
+ Unspecified internal error:
183
+ schema:
184
+ $ref: '#/components/schemas/ErrorReason'
185
+ examples:
186
+ default:
187
+ value:
188
+ '500':
189
+ description: Internal Error.
190
+ content:
191
+ Unspecified internal error:
192
+ schema:
193
+ $ref: '#/components/schemas/ErrorReason'
194
+ example:
195
+ code: INTERNAL_PROCESSING_ERROR
196
+ message: An internal error occurred while processing.
197
+ application/json:
198
+ schema:
199
+ $ref: '#/components/schemas/ErrorReason'
200
+ example:
201
+ code: PAYEE_NOT_FOUND
202
+ message: string
203
+ ReferenceId already in use:
204
+ schema:
205
+ $ref: '#/components/schemas/ErrorReason'
206
+ examples:
207
+ default:
208
+ value:
209
+ '/v1_0/requesttopay/{referenceId}':
210
+ get:
211
+ summary: RequesttoPayTransactionStatus
212
+ description: This operation is used to get the status of a request to pay. X-Reference-Id that was passed in the post is used as reference to the request.
213
+ operationId: RequesttoPayTransactionStatus
214
+ parameters:
215
+ - name: referenceId
216
+ in: path
217
+ description: UUID of transaction to get result. Reference id used when creating the request to pay.
218
+ required: true
219
+ schema:
220
+ type: string
221
+ - name: Authorization
222
+ in: header
223
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
224
+ required: true
225
+ schema:
226
+ type: string
227
+ - name: X-Target-Environment
228
+ in: header
229
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
230
+ required: true
231
+ schema:
232
+ type: string
233
+ responses:
234
+ '200':
235
+ description: OK. Note that a failed request to pay will be returned with this status too. The 'status' of the RequestToPayResult can be used to determine the outcome of the request. The 'reason' field can be used to retrieve a cause in case of failure.
236
+ content:
237
+ Successful request to pay:
238
+ schema:
239
+ $ref: '#/components/schemas/RequestToPayResult'
240
+ example:
241
+ amount: 100
242
+ currency: UGX
243
+ financialTransactionId: 23503452
244
+ externalId: 947354
245
+ payer:
246
+ partyIdType: MSISDN
247
+ partyId: 4656473839
248
+ status: SUCCESSFUL
249
+ Payer not found:
250
+ schema:
251
+ $ref: '#/components/schemas/RequestToPayResult'
252
+ example:
253
+ amount: 100
254
+ currency: UGX
255
+ externalId: 947354
256
+ payer:
257
+ partyIdType: MSISDN
258
+ partyId: 4656473839
259
+ status: FAILED
260
+ reason:
261
+ code: PAYER_NOT_FOUND
262
+ message: Payee does not exist
263
+ application/json:
264
+ schema:
265
+ $ref: '#/components/schemas/RequestToPayResult'
266
+ example:
267
+ amount: string
268
+ currency: string
269
+ financialTransactionId: string
270
+ externalId: string
271
+ payer:
272
+ partyIdType: MSISDN
273
+ partyId: string
274
+ payerMessage: string
275
+ payeeNote: string
276
+ status: PENDING
277
+ reason:
278
+ code: PAYEE_NOT_FOUND
279
+ message: string
280
+ Request to pay not found:
281
+ schema:
282
+ $ref: '#/components/schemas/RequestToPayResult'
283
+ examples:
284
+ default:
285
+ value:
286
+ Unspecified internal error:
287
+ schema:
288
+ $ref: '#/components/schemas/RequestToPayResult'
289
+ examples:
290
+ default:
291
+ value:
292
+ '400':
293
+ description: 'Bad request, e.g. an incorrectly formatted reference id was provided.'
294
+ content:
295
+ Successful request to pay: { }
296
+ Payer not found: { }
297
+ application/json: { }
298
+ Request to pay not found: { }
299
+ Unspecified internal error: { }
300
+ '404':
301
+ description: Resource not found.
302
+ content:
303
+ Request to pay not found:
304
+ schema:
305
+ $ref: '#/components/schemas/ErrorReason'
306
+ example:
307
+ code: RESOURCE_NOT_FOUND
308
+ message: Requested resource was not found.
309
+ Successful request to pay:
310
+ schema:
311
+ $ref: '#/components/schemas/ErrorReason'
312
+ examples:
313
+ default:
314
+ value:
315
+ Payer not found:
316
+ schema:
317
+ $ref: '#/components/schemas/ErrorReason'
318
+ examples:
319
+ default:
320
+ value:
321
+ application/json:
322
+ schema:
323
+ $ref: '#/components/schemas/ErrorReason'
324
+ example:
325
+ code: PAYEE_NOT_FOUND
326
+ message: string
327
+ Unspecified internal error:
328
+ schema:
329
+ $ref: '#/components/schemas/ErrorReason'
330
+ examples:
331
+ default:
332
+ value:
333
+ '500':
334
+ description: 'Internal Error. Note that if the retrieved request to pay has failed, it will not cause this status to be returned. This status is only returned if the GET request itself fails.'
335
+ content:
336
+ Unspecified internal error:
337
+ schema:
338
+ $ref: '#/components/schemas/ErrorReason'
339
+ example:
340
+ code: INTERNAL_PROCESSING_ERROR
341
+ message: An internal error occurred while processing.
342
+ Successful request to pay:
343
+ schema:
344
+ $ref: '#/components/schemas/ErrorReason'
345
+ examples:
346
+ default:
347
+ value:
348
+ Payer not found:
349
+ schema:
350
+ $ref: '#/components/schemas/ErrorReason'
351
+ examples:
352
+ default:
353
+ value:
354
+ application/json:
355
+ schema:
356
+ $ref: '#/components/schemas/ErrorReason'
357
+ example:
358
+ code: PAYEE_NOT_FOUND
359
+ message: string
360
+ Request to pay not found:
361
+ schema:
362
+ $ref: '#/components/schemas/ErrorReason'
363
+ examples:
364
+ default:
365
+ value:
366
+ /v1_0/bc-authorize:
367
+ post:
368
+ summary: bc-authorize
369
+ description: This operation is used to claim a consent by the account holder for the requested scopes.
370
+ operationId: bc-authorize
371
+ parameters:
372
+ - name: Authorization
373
+ in: header
374
+ description: Bearer Token. Replace with a valid oauth2 token received from oauth2 token endpoint in Wallet Platform.
375
+ required: true
376
+ schema:
377
+ type: string
378
+ - name: X-Target-Environment
379
+ in: header
380
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
381
+ required: true
382
+ schema:
383
+ type: string
384
+ - name: X-Callback-Url
385
+ in: header
386
+ description: URL to the server where the callback should be sent.
387
+ schema:
388
+ type: string
389
+ requestBody:
390
+ content:
391
+ application/x-www-form-urlencoded:
392
+ example: 'login_hint=ID:{msisdn}/MSISDN&scope={scope}&access_type={online/offline}'
393
+ responses:
394
+ '200':
395
+ description: OK
396
+ content:
397
+ application/json:
398
+ schema:
399
+ $ref: '#/components/schemas/bcauthorizeResponse'
400
+ example:
401
+ auth_req_id: string
402
+ interval: 0
403
+ expires_in: 0
404
+ '/v1_0/accountholder/msisdn/{accountHolderMSISDN}/basicuserinfo':
405
+ get:
406
+ summary: GetBasicUserinfo
407
+ description: This operation returns personal information of the account holder. The operation does not need any consent by the account holder.
408
+ operationId: GetBasicUserinfo
409
+ parameters:
410
+ - name: accountHolderMSISDN
411
+ in: path
412
+ description: MSISDN of the account holder. Mobile number validated according to ITU-T E.164
413
+ required: true
414
+ schema:
415
+ type: string
416
+ - name: Authorization
417
+ in: header
418
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
419
+ required: true
420
+ schema:
421
+ type: string
422
+ - name: X-Target-Environment
423
+ in: header
424
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
425
+ required: true
426
+ schema:
427
+ type: string
428
+ responses:
429
+ '200':
430
+ description: OK
431
+ content:
432
+ application/json:
433
+ schema:
434
+ $ref: '#/components/schemas/BasicUserInfoJsonResponse'
435
+ example:
436
+ given_name: string
437
+ family_name: string
438
+ birthdate: string
439
+ locale: string
440
+ gender: string
441
+ status: string
442
+ '401':
443
+ description: Unauthorized
444
+ content:
445
+ application/json:
446
+ schema:
447
+ $ref: '#/components/schemas/TokenPost401ApplicationJsonResponse'
448
+ example:
449
+ error: string
450
+ '500':
451
+ description: Error
452
+ content:
453
+ application/json: { }
454
+ '/v1_0/requesttopay/{referenceId}/deliverynotification':
455
+ post:
456
+ summary: RequesttoPayDeliveryNotification
457
+ description: This operation is used to send additional Notification to an End User.
458
+ operationId: RequesttoPayDeliveryNotification
459
+ parameters:
460
+ - name: referenceId
461
+ in: path
462
+ description: UUID of transaction to get result. Reference id used when creating the RequesttoPay.
463
+ required: true
464
+ schema:
465
+ type: string
466
+ - name: notificationMessage
467
+ in: header
468
+ description: The message to send in the delivery notification. Max length 160.
469
+ required: true
470
+ schema:
471
+ type: string
472
+ - name: Language
473
+ in: header
474
+ description: An ISO 639-1 or ISO 639-3 language code. The language is used to select the best matching notification template when sending the delivery notification to the end-user. A default value is used if not specified.
475
+ schema:
476
+ type: string
477
+ - name: Authorization
478
+ in: header
479
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
480
+ required: true
481
+ schema:
482
+ type: string
483
+ - name: X-Target-Environment
484
+ in: header
485
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
486
+ required: true
487
+ schema:
488
+ type: string
489
+ requestBody:
490
+ content:
491
+ application/json:
492
+ schema:
493
+ $ref: '#/components/schemas/deliverynotification'
494
+ example:
495
+ notificationMessage: string
496
+ responses:
497
+ '200':
498
+ description: OK. Notification successfully enqueued.
499
+ content:
500
+ application/json: { }
501
+ '400':
502
+ description: Bad request. Invalid data was sent in the request.
503
+ content:
504
+ application/json: { }
505
+ '404':
506
+ description: 'Resource not found. The reference ID does not exist, or the calling user is not the owner of the financial transaction.'
507
+ content:
508
+ application/json: { }
509
+ '409':
510
+ description: Conflict. The transaction is not successfully completed.
511
+ content:
512
+ application/json: { }
513
+ '410':
514
+ description: Gone. The delivery notification opportunity has expired.
515
+ content:
516
+ application/json: { }
517
+ '429':
518
+ description: Too many requests. Too many attempts for the same ID has been made recently. This will only occur if a successful attempt has previously been performed.
519
+ content:
520
+ application/json: { }
521
+ '500':
522
+ description: Internal server error. An unexpected error occurred.
523
+ content:
524
+ application/json: { }
525
+ '/v1_0/account/balance/{currency}':
526
+ get:
527
+ summary: GetAccountBalanceInSpecificCurrency
528
+ description: Get the balance of own account. Currency parameter passed in GET
529
+ operationId: GetAccountBalanceInSpecificCurrency
530
+ parameters:
531
+ - name: currency
532
+ in: path
533
+ description: Should be in ISO4217 Currency
534
+ required: true
535
+ schema:
536
+ type: string
537
+ - name: Authorization
538
+ in: header
539
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
540
+ required: true
541
+ schema:
542
+ type: string
543
+ - name: X-Target-Environment
544
+ in: header
545
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
546
+ required: true
547
+ schema:
548
+ type: string
549
+ responses:
550
+ '200':
551
+ description: Ok
552
+ content:
553
+ application/json:
554
+ schema:
555
+ $ref: '#/components/schemas/Balance'
556
+ example:
557
+ availableBalance: string
558
+ currency: string
559
+ Incorrect target environment:
560
+ schema:
561
+ $ref: '#/components/schemas/Balance'
562
+ examples:
563
+ default:
564
+ value:
565
+ '400':
566
+ description: 'Bad request, e.g. invalid data was sent in the request.'
567
+ content:
568
+ application/json: { }
569
+ Incorrect target environment: { }
570
+ '500':
571
+ description: Internal error. The returned response contains details.
572
+ content:
573
+ Incorrect target environment:
574
+ schema:
575
+ $ref: '#/components/schemas/ErrorReason'
576
+ example:
577
+ code: NOT_ALLOWED_TARGET_ENVIRONMENT
578
+ message: Access to target environment is forbidden.
579
+ application/json:
580
+ schema:
581
+ $ref: '#/components/schemas/ErrorReason'
582
+ example:
583
+ code: PAYEE_NOT_FOUND
584
+ message: string
585
+ /v1_0/requesttowithdraw:
586
+ post:
587
+ summary: RequestToWithdraw-V1
588
+ description: This operation is used to request a withdrawal (cash-out) from a consumer (Payer). The payer will be asked to authorize the withdrawal. The transaction will be executed once the payer has authorized the withdrawal
589
+ operationId: RequestToWithdraw-V1
590
+ parameters:
591
+ - name: Authorization
592
+ in: header
593
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
594
+ required: true
595
+ schema:
596
+ type: string
597
+ - name: X-Callback-Url
598
+ in: header
599
+ description: POST Callback URL to the server where the callback should be sent.
600
+ schema:
601
+ type: string
602
+ - name: X-Reference-Id
603
+ in: header
604
+ description: 'Format - UUID. Recource ID of the created request to pay transaction. This ID is used, for example, validating the status of the request. ‘Universal Unique ID’ for the transaction generated using UUID version 4.'
605
+ required: true
606
+ schema:
607
+ type: string
608
+ - name: X-Target-Environment
609
+ in: header
610
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
611
+ required: true
612
+ schema:
613
+ type: string
614
+ requestBody:
615
+ content:
616
+ application/json:
617
+ schema:
618
+ $ref: '#/components/schemas/RequestToPay'
619
+ example:
620
+ payeeNote: string
621
+ externalId: string
622
+ amount: string
623
+ currency: string
624
+ payer:
625
+ partyIdType: MSISDN
626
+ partyId: string
627
+ payerMessage: string
628
+ responses:
629
+ '202':
630
+ description: Accepted
631
+ content:
632
+ application/json: { }
633
+ ReferenceId already in use: { }
634
+ Unspecified internal error: { }
635
+ '400':
636
+ description: 'Bad request, e.g. invalid data was sent in the request.'
637
+ content:
638
+ application/json: { }
639
+ ReferenceId already in use: { }
640
+ Unspecified internal error: { }
641
+ '409':
642
+ description: 'Conflict, duplicated reference id'
643
+ content:
644
+ ReferenceId already in use:
645
+ schema:
646
+ $ref: '#/components/schemas/ErrorReason'
647
+ example:
648
+ code: RESOURCE_ALREADY_EXIST
649
+ message: Duplicated reference id. Creation of resource failed.
650
+ application/json:
651
+ schema:
652
+ $ref: '#/components/schemas/ErrorReason'
653
+ example:
654
+ code: PAYEE_NOT_FOUND
655
+ message: string
656
+ Unspecified internal error:
657
+ schema:
658
+ $ref: '#/components/schemas/ErrorReason'
659
+ examples:
660
+ default:
661
+ value:
662
+ '500':
663
+ description: Internal Error.
664
+ content:
665
+ Unspecified internal error:
666
+ schema:
667
+ $ref: '#/components/schemas/ErrorReason'
668
+ example:
669
+ code: INTERNAL_PROCESSING_ERROR
670
+ message: An internal error occurred while processing.
671
+ application/json:
672
+ schema:
673
+ $ref: '#/components/schemas/ErrorReason'
674
+ example:
675
+ code: PAYEE_NOT_FOUND
676
+ message: string
677
+ ReferenceId already in use:
678
+ schema:
679
+ $ref: '#/components/schemas/ErrorReason'
680
+ examples:
681
+ default:
682
+ value:
683
+ /v2_0/requesttowithdraw:
684
+ post:
685
+ summary: RequestToWithdraw-V2
686
+ description: This operation is used to request a withdrawal (cash-out) from a consumer (Payer). The payer will be asked to authorize the withdrawal. The transaction will be executed once the payer has authorized the withdrawal
687
+ operationId: RequestToWithdraw-V2
688
+ parameters:
689
+ - name: Authorization
690
+ in: header
691
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
692
+ required: true
693
+ schema:
694
+ type: string
695
+ - name: X-Callback-Url
696
+ in: header
697
+ description: PUT Callback URL to the server where the callback should be sent.
698
+ schema:
699
+ type: string
700
+ - name: X-Reference-Id
701
+ in: header
702
+ description: 'Format - UUID. Recource ID of the created request to pay transaction. This ID is used, for example, validating the status of the request. ‘Universal Unique ID’ for the transaction generated using UUID version 4.'
703
+ required: true
704
+ schema:
705
+ type: string
706
+ - name: X-Target-Environment
707
+ in: header
708
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
709
+ required: true
710
+ schema:
711
+ type: string
712
+ requestBody:
713
+ content:
714
+ application/json:
715
+ schema:
716
+ $ref: '#/components/schemas/RequestToPay'
717
+ example:
718
+ payeeNote: string
719
+ externalId: string
720
+ amount: string
721
+ currency: string
722
+ payer:
723
+ partyIdType: MSISDN
724
+ partyId: string
725
+ payerMessage: string
726
+ responses:
727
+ '202':
728
+ description: Accepted
729
+ content:
730
+ application/json: { }
731
+ ReferenceId already in use: { }
732
+ Unspecified internal error: { }
733
+ '400':
734
+ description: 'Bad request, e.g. invalid data was sent in the request.'
735
+ content:
736
+ application/json: { }
737
+ ReferenceId already in use: { }
738
+ Unspecified internal error: { }
739
+ '409':
740
+ description: 'Conflict, duplicated reference id'
741
+ content:
742
+ ReferenceId already in use:
743
+ schema:
744
+ $ref: '#/components/schemas/ErrorReason'
745
+ example:
746
+ code: RESOURCE_ALREADY_EXIST
747
+ message: Duplicated reference id. Creation of resource failed.
748
+ application/json:
749
+ schema:
750
+ $ref: '#/components/schemas/ErrorReason'
751
+ example:
752
+ code: PAYEE_NOT_FOUND
753
+ message: string
754
+ Unspecified internal error:
755
+ schema:
756
+ $ref: '#/components/schemas/ErrorReason'
757
+ examples:
758
+ default:
759
+ value:
760
+ '500':
761
+ description: Internal Error.
762
+ content:
763
+ Unspecified internal error:
764
+ schema:
765
+ $ref: '#/components/schemas/ErrorReason'
766
+ example:
767
+ code: INTERNAL_PROCESSING_ERROR
768
+ message: An internal error occurred while processing.
769
+ application/json:
770
+ schema:
771
+ $ref: '#/components/schemas/ErrorReason'
772
+ example:
773
+ code: PAYEE_NOT_FOUND
774
+ message: string
775
+ ReferenceId already in use:
776
+ schema:
777
+ $ref: '#/components/schemas/ErrorReason'
778
+ examples:
779
+ default:
780
+ value:
781
+ '/v1_0/requesttowithdraw/{referenceId}':
782
+ get:
783
+ summary: RequestToWithdrawTransactionStatus
784
+ description: This operation is used to get the status of a request to withdraw. X-Reference-Id that was passed in the post is used as reference to the request.
785
+ operationId: RequestToWithdrawTransactionStatus
786
+ parameters:
787
+ - name: referenceId
788
+ in: path
789
+ description: UUID of transaction to get result. Reference id used when creating the RequestToWithdraw.
790
+ required: true
791
+ schema:
792
+ type: string
793
+ - name: Authorization
794
+ in: header
795
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
796
+ required: true
797
+ schema:
798
+ type: string
799
+ - name: X-Target-Environment
800
+ in: header
801
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
802
+ required: true
803
+ schema:
804
+ type: string
805
+ responses:
806
+ '200':
807
+ description: OK. Note that a failed request to pay will be returned with this status too. The 'status' of the RequestToPayResult can be used to determine the outcome of the request. The 'reason' field can be used to retrieve a cause in case of failure.
808
+ content:
809
+ Successful request to pay:
810
+ schema:
811
+ $ref: '#/components/schemas/RequestToPayResult'
812
+ example:
813
+ amount: 100
814
+ currency: UGX
815
+ financialTransactionId: 23503452
816
+ externalId: 947354
817
+ payer:
818
+ partyIdType: MSISDN
819
+ partyId: 4656473839
820
+ status: SUCCESSFUL
821
+ Payer not found:
822
+ schema:
823
+ $ref: '#/components/schemas/RequestToPayResult'
824
+ example:
825
+ amount: 100
826
+ currency: UGX
827
+ externalId: 947354
828
+ payer:
829
+ partyIdType: MSISDN
830
+ partyId: 4656473839
831
+ status: FAILED
832
+ reason:
833
+ code: PAYER_NOT_FOUND
834
+ message: Payee does not exist
835
+ application/json:
836
+ schema:
837
+ $ref: '#/components/schemas/RequestToPayResult'
838
+ example:
839
+ amount: string
840
+ currency: string
841
+ financialTransactionId: string
842
+ externalId: string
843
+ payer:
844
+ partyIdType: MSISDN
845
+ partyId: string
846
+ payerMessage: string
847
+ payeeNote: string
848
+ status: PENDING
849
+ reason:
850
+ code: PAYEE_NOT_FOUND
851
+ message: string
852
+ Request to pay not found:
853
+ schema:
854
+ $ref: '#/components/schemas/RequestToPayResult'
855
+ examples:
856
+ default:
857
+ value:
858
+ Unspecified internal error:
859
+ schema:
860
+ $ref: '#/components/schemas/RequestToPayResult'
861
+ examples:
862
+ default:
863
+ value:
864
+ '400':
865
+ description: 'Bad request, e.g. an incorrectly formatted reference id was provided.'
866
+ content:
867
+ Successful request to pay: { }
868
+ Payer not found: { }
869
+ application/json: { }
870
+ Request to pay not found: { }
871
+ Unspecified internal error: { }
872
+ '404':
873
+ description: Resource not found.
874
+ content:
875
+ Request to pay not found:
876
+ schema:
877
+ $ref: '#/components/schemas/ErrorReason'
878
+ example:
879
+ code: RESOURCE_NOT_FOUND
880
+ message: Requested resource was not found.
881
+ Successful request to pay:
882
+ schema:
883
+ $ref: '#/components/schemas/ErrorReason'
884
+ examples:
885
+ default:
886
+ value:
887
+ Payer not found:
888
+ schema:
889
+ $ref: '#/components/schemas/ErrorReason'
890
+ examples:
891
+ default:
892
+ value:
893
+ application/json:
894
+ schema:
895
+ $ref: '#/components/schemas/ErrorReason'
896
+ example:
897
+ code: PAYEE_NOT_FOUND
898
+ message: string
899
+ Unspecified internal error:
900
+ schema:
901
+ $ref: '#/components/schemas/ErrorReason'
902
+ examples:
903
+ default:
904
+ value:
905
+ '500':
906
+ description: 'Internal Error. Note that if the retrieved request to pay has failed, it will not cause this status to be returned. This status is only returned if the GET request itself fails.'
907
+ content:
908
+ Unspecified internal error:
909
+ schema:
910
+ $ref: '#/components/schemas/ErrorReason'
911
+ example:
912
+ code: INTERNAL_PROCESSING_ERROR
913
+ message: An internal error occurred while processing.
914
+ Successful request to pay:
915
+ schema:
916
+ $ref: '#/components/schemas/ErrorReason'
917
+ examples:
918
+ default:
919
+ value:
920
+ Payer not found:
921
+ schema:
922
+ $ref: '#/components/schemas/ErrorReason'
923
+ examples:
924
+ default:
925
+ value:
926
+ application/json:
927
+ schema:
928
+ $ref: '#/components/schemas/ErrorReason'
929
+ example:
930
+ code: PAYEE_NOT_FOUND
931
+ message: string
932
+ Request to pay not found:
933
+ schema:
934
+ $ref: '#/components/schemas/ErrorReason'
935
+ examples:
936
+ default:
937
+ value:
938
+ /v2_0/invoice:
939
+ post:
940
+ summary: CreateInvoice
941
+ description: A merchant may use this in order to create an invoice that can be paid by an intended payer via any channel at a later stage.
942
+ operationId: CreateInvoice
943
+ parameters:
944
+ - name: Authorization
945
+ in: header
946
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
947
+ required: true
948
+ schema:
949
+ type: string
950
+ - name: X-Callback-Url
951
+ in: header
952
+ description: PUT Callback URL to send callback to once the invoice is completed.
953
+ schema:
954
+ type: string
955
+ - name: X-Reference-Id
956
+ in: header
957
+ description: Format - UUID. An id to uniquely identify the making of an invoice
958
+ required: true
959
+ schema:
960
+ type: string
961
+ - name: X-Target-Environment
962
+ in: header
963
+ description: The desired target environment to use that is allowed for the API user.
964
+ required: true
965
+ schema:
966
+ type: string
967
+ requestBody:
968
+ content:
969
+ application/json:
970
+ schema:
971
+ $ref: '#/components/schemas/CreateInvoice'
972
+ example:
973
+ externalId: string (An external transaction id to tie to the payment.)
974
+ amount: string
975
+ currency: string
976
+ validityDuration: string(The duration that the invoice is valid in seconds.)
977
+ intendedPayer:
978
+ partyIdType: MSISDN
979
+ partyId: string
980
+ payee:
981
+ partyIdType: MSISDN
982
+ partyId: string
983
+ description: string (An optional description of the invoice.)
984
+ responses:
985
+ '202':
986
+ description: Accepted
987
+ content:
988
+ application/json: { }
989
+ ReferenceId already in use: { }
990
+ Unspecified internal error: { }
991
+ '400':
992
+ description: 'Bad request, e.g. invalid data was sent in the request.'
993
+ content:
994
+ application/json: { }
995
+ ReferenceId already in use: { }
996
+ Unspecified internal error: { }
997
+ '409':
998
+ description: 'Conflict, duplicated reference id'
999
+ content:
1000
+ ReferenceId already in use:
1001
+ schema:
1002
+ $ref: '#/components/schemas/ErrorReason'
1003
+ example:
1004
+ code: RESOURCE_ALREADY_EXIST
1005
+ message: Duplicated reference id. Creation of resource failed.
1006
+ application/json:
1007
+ schema:
1008
+ $ref: '#/components/schemas/ErrorReason'
1009
+ example:
1010
+ code: PAYEE_NOT_FOUND
1011
+ message: string
1012
+ Unspecified internal error:
1013
+ schema:
1014
+ $ref: '#/components/schemas/ErrorReason'
1015
+ examples:
1016
+ default:
1017
+ value:
1018
+ '500':
1019
+ description: Internal Error.
1020
+ content:
1021
+ Unspecified internal error:
1022
+ schema:
1023
+ $ref: '#/components/schemas/ErrorReason'
1024
+ example:
1025
+ code: INTERNAL_PROCESSING_ERROR
1026
+ message: An internal error occurred while processing.
1027
+ application/json:
1028
+ schema:
1029
+ $ref: '#/components/schemas/ErrorReason'
1030
+ example:
1031
+ code: PAYEE_NOT_FOUND
1032
+ message: string
1033
+ ReferenceId already in use:
1034
+ schema:
1035
+ $ref: '#/components/schemas/ErrorReason'
1036
+ examples:
1037
+ default:
1038
+ value:
1039
+ '/v2_0/invoice/{x-referenceId}':
1040
+ get:
1041
+ summary: GetInvoiceStatus
1042
+ description: This operation is used to get the status of an invoice. X-Reference-Id that was passed in the post is used as reference to the request
1043
+ operationId: GetInvoiceStatus
1044
+ parameters:
1045
+ - name: x-referenceId
1046
+ in: path
1047
+ description: UUID of transaction to get result. Reference id used when creating the Invoice.
1048
+ required: true
1049
+ schema:
1050
+ type: string
1051
+ - name: Authorization
1052
+ in: header
1053
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
1054
+ required: true
1055
+ schema:
1056
+ type: string
1057
+ - name: X-Target-Environment
1058
+ in: header
1059
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
1060
+ required: true
1061
+ schema:
1062
+ type: string
1063
+ responses:
1064
+ '200':
1065
+ description: OK. Note that a failed CreateInvoice will be returned with this status too. The 'status' of the CreateInvoice can be used to determine the outcome of the request. The 'errorReason' field can be used to retrieve a cause in case of failure.
1066
+ content:
1067
+ Successful Invoice Created:
1068
+ schema:
1069
+ $ref: '#/components/schemas/InvoiceResult'
1070
+ examples:
1071
+ default:
1072
+ value:
1073
+ Payer not found:
1074
+ schema:
1075
+ $ref: '#/components/schemas/InvoiceResult'
1076
+ examples:
1077
+ default:
1078
+ value:
1079
+ application/json:
1080
+ schema:
1081
+ $ref: '#/components/schemas/InvoiceResult'
1082
+ example:
1083
+ referenceId: string
1084
+ externalId: string
1085
+ amount: string
1086
+ currency: string
1087
+ status: CREATED
1088
+ paymentReference: string
1089
+ invoiceId: string
1090
+ expiryDateTime: string
1091
+ payeeFirstName: string
1092
+ payeeLastName: string
1093
+ errorReason:
1094
+ code: PAYEE_NOT_FOUND
1095
+ message: string
1096
+ intendedPayer:
1097
+ partyIdType: MSISDN
1098
+ partyId: string
1099
+ description: string
1100
+ Request to pay not found:
1101
+ schema:
1102
+ $ref: '#/components/schemas/InvoiceResult'
1103
+ examples:
1104
+ default:
1105
+ value:
1106
+ Unspecified internal error:
1107
+ schema:
1108
+ $ref: '#/components/schemas/InvoiceResult'
1109
+ examples:
1110
+ default:
1111
+ value:
1112
+ '400':
1113
+ description: 'Bad request, e.g. an incorrectly formatted reference id was provided.'
1114
+ content:
1115
+ Successful request to pay: { }
1116
+ Payer not found: { }
1117
+ application/json: { }
1118
+ Request to pay not found: { }
1119
+ Unspecified internal error: { }
1120
+ '404':
1121
+ description: Resource not found.
1122
+ content:
1123
+ Request to pay not found:
1124
+ schema:
1125
+ $ref: '#/components/schemas/ErrorReason'
1126
+ example:
1127
+ code: RESOURCE_NOT_FOUND
1128
+ message: Requested resource was not found.
1129
+ Successful request to pay:
1130
+ schema:
1131
+ $ref: '#/components/schemas/ErrorReason'
1132
+ examples:
1133
+ default:
1134
+ value:
1135
+ Payer not found:
1136
+ schema:
1137
+ $ref: '#/components/schemas/ErrorReason'
1138
+ examples:
1139
+ default:
1140
+ value:
1141
+ application/json:
1142
+ schema:
1143
+ $ref: '#/components/schemas/ErrorReason'
1144
+ example:
1145
+ code: PAYEE_NOT_FOUND
1146
+ message: string
1147
+ Unspecified internal error:
1148
+ schema:
1149
+ $ref: '#/components/schemas/ErrorReason'
1150
+ examples:
1151
+ default:
1152
+ value:
1153
+ '500':
1154
+ description: Internal Error
1155
+ content:
1156
+ Unspecified internal error:
1157
+ schema:
1158
+ $ref: '#/components/schemas/ErrorReason'
1159
+ example:
1160
+ code: INTERNAL_PROCESSING_ERROR
1161
+ message: An internal error occurred while processing.
1162
+ application/json:
1163
+ schema:
1164
+ $ref: '#/components/schemas/ErrorReason'
1165
+ example:
1166
+ code: PAYEE_NOT_FOUND
1167
+ message: string
1168
+ Request to pay not found:
1169
+ schema:
1170
+ $ref: '#/components/schemas/ErrorReason'
1171
+ examples:
1172
+ default:
1173
+ value:
1174
+ '/v2_0/invoice/{referenceId}':
1175
+ delete:
1176
+ summary: CancelInvoice
1177
+ description: This operation is used to delete an invoice. The ReferenceId is associated with the invoice to be cancelled
1178
+ operationId: CancelInvoice
1179
+ parameters:
1180
+ - name: referenceId
1181
+ in: path
1182
+ description: UUID of transaction to get result. An id to uniquely identify the cancelling an Invoice
1183
+ required: true
1184
+ schema:
1185
+ type: string
1186
+ - name: Authorization
1187
+ in: header
1188
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
1189
+ required: true
1190
+ schema:
1191
+ type: string
1192
+ - name: X-Target-Environment
1193
+ in: header
1194
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. The desired target environment to use that is allowed for the API user.
1195
+ required: true
1196
+ schema:
1197
+ type: string
1198
+ - name: X-Reference-Id
1199
+ in: header
1200
+ description: 'Format - UUID. Recource ID of the created request to pay transaction. This ID is used, for example, validating the status of the request. ‘Universal Unique ID’ for the transaction generated using UUID version 4.'
1201
+ required: true
1202
+ schema:
1203
+ type: string
1204
+ - name: X-Callback-Url
1205
+ in: header
1206
+ description: PUT Callback URL to send callback to once the invoice is completed.
1207
+ schema:
1208
+ type: string
1209
+ requestBody:
1210
+ content:
1211
+ application/json:
1212
+ schema:
1213
+ properties:
1214
+ externalId:
1215
+ type: string
1216
+ example:
1217
+ externalId: string
1218
+ example:
1219
+ externalId: string
1220
+ responses:
1221
+ '200':
1222
+ description: OK. Note that a failed CreateInvoice will be returned with this status too. The 'status' of the CreateInvoice can be used to determine the outcome of the request. The 'errorReason' field can be used to retrieve a cause in case of failure.
1223
+ content:
1224
+ Successful Invoice Deleted:
1225
+ schema:
1226
+ properties:
1227
+ externalId:
1228
+ type: string
1229
+ description: An external transaction id to tie to the cancelling of an invoice.
1230
+ example:
1231
+ externalId: string (An external transaction id to tie to the payment.)
1232
+ examples:
1233
+ default:
1234
+ value:
1235
+ Payer not found:
1236
+ schema:
1237
+ $ref: '#/components/schemas/InvoiceResult'
1238
+ examples:
1239
+ default:
1240
+ value:
1241
+ application/json:
1242
+ schema:
1243
+ properties:
1244
+ externalId:
1245
+ type: string
1246
+ description: An external transaction id to tie to the cancelling of an invoice.
1247
+ example:
1248
+ externalId: string (An external transaction id to tie to the payment.)
1249
+ example:
1250
+ externalId: string (An external transaction id to tie to the payment.)
1251
+ '400':
1252
+ description: 'Bad request, e.g. an incorrectly formatted reference id was provided.'
1253
+ content:
1254
+ application/json:
1255
+ schema:
1256
+ $ref: '#/components/schemas/ErrorReason'
1257
+ example:
1258
+ code: PAYEE_NOT_FOUND
1259
+ message: string
1260
+ '404':
1261
+ description: Resource not found.
1262
+ content:
1263
+ application/json:
1264
+ schema:
1265
+ $ref: '#/components/schemas/ErrorReason'
1266
+ example:
1267
+ code: PAYEE_NOT_FOUND
1268
+ message: string
1269
+ Unspecified internal error:
1270
+ schema:
1271
+ $ref: '#/components/schemas/ErrorReason'
1272
+ examples:
1273
+ default:
1274
+ value:
1275
+ '500':
1276
+ description: 'Internal Error. Note that if the retrieved request to pay has failed, it will not cause this status to be returned. This status is only returned if the GET request itself fails.'
1277
+ content:
1278
+ Unspecified internal error:
1279
+ schema:
1280
+ $ref: '#/components/schemas/ErrorReason'
1281
+ example:
1282
+ code: INTERNAL_PROCESSING_ERROR
1283
+ message: An internal error occurred while processing.
1284
+ application/json:
1285
+ schema:
1286
+ $ref: '#/components/schemas/ErrorReason'
1287
+ example:
1288
+ code: PAYEE_NOT_FOUND
1289
+ message: string
1290
+ /v2_0/preapproval:
1291
+ post:
1292
+ summary: PreApproval
1293
+ description: Preapproval operation is used to create a pre-approval.
1294
+ operationId: PreApproval
1295
+ parameters:
1296
+ - name: Authorization
1297
+ in: header
1298
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
1299
+ required: true
1300
+ schema:
1301
+ type: string
1302
+ - name: X-Callback-Url
1303
+ in: header
1304
+ description: PUT Callback URL to send callback to once the invoice is completed.
1305
+ schema:
1306
+ type: string
1307
+ - name: X-Reference-Id
1308
+ in: header
1309
+ description: Format - UUID. An id to uniquely identify the making of an invoice
1310
+ required: true
1311
+ schema:
1312
+ type: string
1313
+ - name: X-Target-Environment
1314
+ in: header
1315
+ description: The desired target environment to use that is allowed for the API user.
1316
+ required: true
1317
+ schema:
1318
+ type: string
1319
+ requestBody:
1320
+ content:
1321
+ application/json:
1322
+ schema:
1323
+ $ref: '#/components/schemas/PreApproval'
1324
+ example:
1325
+ payer:
1326
+ partyIdType: MSISDN
1327
+ partyId: string
1328
+ payerCurrency: string(The currency code of the sending account. Amount to be paid.)
1329
+ payerMessage: string (Message to the end user.)
1330
+ validityTime: integer (The time duration in seconds that the pre-approval is valid once it is accepted.)
1331
+ responses:
1332
+ '202':
1333
+ description: Accepted
1334
+ content:
1335
+ application/json: { }
1336
+ ReferenceId already in use: { }
1337
+ Unspecified internal error: { }
1338
+ '400':
1339
+ description: 'Bad request, e.g. invalid data was sent in the request.'
1340
+ content:
1341
+ application/json:
1342
+ schema:
1343
+ $ref: '#/components/schemas/ErrorReason'
1344
+ example:
1345
+ code: PAYEE_NOT_FOUND
1346
+ message: string
1347
+ '409':
1348
+ description: 'Conflict, duplicated reference id'
1349
+ content:
1350
+ ReferenceId already in use:
1351
+ schema:
1352
+ $ref: '#/components/schemas/ErrorReason'
1353
+ example:
1354
+ code: RESOURCE_ALREADY_EXIST
1355
+ message: Duplicated reference id. Creation of resource failed.
1356
+ application/json:
1357
+ schema:
1358
+ $ref: '#/components/schemas/ErrorReason'
1359
+ example:
1360
+ code: PAYEE_NOT_FOUND
1361
+ message: string
1362
+ Unspecified internal error:
1363
+ schema:
1364
+ $ref: '#/components/schemas/ErrorReason'
1365
+ examples:
1366
+ default:
1367
+ value:
1368
+ '500':
1369
+ description: Internal Error.
1370
+ content:
1371
+ application/json:
1372
+ schema:
1373
+ $ref: '#/components/schemas/ErrorReason'
1374
+ example:
1375
+ code: PAYEE_NOT_FOUND
1376
+ message: string
1377
+ '/v2_0/preapproval/{referenceId}':
1378
+ get:
1379
+ summary: GetPreApprovalStatus
1380
+ description: This operation is used to get the status of a pre-approval. X-Reference-Id that was passed in the post is used as reference to the request.
1381
+ operationId: GetPreApprovalStatus
1382
+ parameters:
1383
+ - name: referenceId
1384
+ in: path
1385
+ description: UUID of transaction to get result. Reference id used when creating the PreApproval.
1386
+ required: true
1387
+ schema:
1388
+ type: string
1389
+ - name: Authorization
1390
+ in: header
1391
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
1392
+ required: true
1393
+ schema:
1394
+ type: string
1395
+ - name: X-Target-Environment
1396
+ in: header
1397
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
1398
+ required: true
1399
+ schema:
1400
+ type: string
1401
+ responses:
1402
+ '200':
1403
+ description: OK. Note that a failed CreateInvoice will be returned with this status too. The 'status' of the CreateInvoice can be used to determine the outcome of the request. The 'errorReason' field can be used to retrieve a cause in case of failure.
1404
+ content:
1405
+ Successful Invoice Created:
1406
+ schema:
1407
+ $ref: '#/components/schemas/PreApprovalResult'
1408
+ examples:
1409
+ default:
1410
+ value:
1411
+ Payer not found:
1412
+ schema:
1413
+ $ref: '#/components/schemas/PreApprovalResult'
1414
+ examples:
1415
+ default:
1416
+ value:
1417
+ application/json:
1418
+ schema:
1419
+ $ref: '#/components/schemas/PreApprovalResult'
1420
+ example:
1421
+ payer:
1422
+ partyIdType: MSISDN
1423
+ partyId: string
1424
+ payerCurrency: string
1425
+ payerMessage: string
1426
+ status: PENDING
1427
+ expirationDateTime: 0
1428
+ reason:
1429
+ code: PAYEE_NOT_FOUND
1430
+ message: string
1431
+ '400':
1432
+ description: 'Bad request, e.g. an incorrectly formatted reference id was provided.'
1433
+ content:
1434
+ application/json:
1435
+ schema:
1436
+ $ref: '#/components/schemas/ErrorReason'
1437
+ example:
1438
+ code: PAYEE_NOT_FOUND
1439
+ message: string
1440
+ '404':
1441
+ description: Resource not found.
1442
+ content:
1443
+ application/json:
1444
+ schema:
1445
+ $ref: '#/components/schemas/ErrorReason'
1446
+ example:
1447
+ code: PAYEE_NOT_FOUND
1448
+ message: string
1449
+ Unspecified internal error:
1450
+ schema:
1451
+ $ref: '#/components/schemas/ErrorReason'
1452
+ examples:
1453
+ default:
1454
+ value:
1455
+ '500':
1456
+ description: 'Internal Error. Note that if the retrieved request to pay has failed, it will not cause this status to be returned. This status is only returned if the GET request itself fails.'
1457
+ content:
1458
+ Unspecified internal error:
1459
+ schema:
1460
+ $ref: '#/components/schemas/ErrorReason'
1461
+ example:
1462
+ code: INTERNAL_PROCESSING_ERROR
1463
+ message: An internal error occurred while processing.
1464
+ application/json:
1465
+ schema:
1466
+ $ref: '#/components/schemas/ErrorReason'
1467
+ example:
1468
+ code: PAYEE_NOT_FOUND
1469
+ message: string
1470
+ /oauth2/token/:
1471
+ post:
1472
+ summary: CreateOauth2Token
1473
+ description: This operation is used to claim a consent by the account holder for the requested scopes.
1474
+ operationId: CreateOauth2Token
1475
+ parameters:
1476
+ - name: Authorization
1477
+ in: header
1478
+ description: Basic authentication header containing API user ID and API key. Should be sent in as B64 encoded.
1479
+ required: true
1480
+ schema:
1481
+ type: string
1482
+ - name: X-Target-Environment
1483
+ in: header
1484
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
1485
+ required: true
1486
+ schema:
1487
+ type: string
1488
+ requestBody:
1489
+ content:
1490
+ application/x-www-form-urlencoded:
1491
+ schema:
1492
+ properties:
1493
+ grant_type:
1494
+ type: string
1495
+ auth_req_id:
1496
+ type: string
1497
+ refresh_token:
1498
+ type: string
1499
+ example: 'grant_type=urn:openid:params:grant-type:ciba&auth_req_id={auth_req_id}'
1500
+ responses:
1501
+ '200':
1502
+ description: OK
1503
+ content:
1504
+ application/json:
1505
+ schema:
1506
+ $ref: '#/components/schemas/oauth2TokenResponse'
1507
+ example:
1508
+ access_token: string
1509
+ token_type: string
1510
+ expires_in: 0
1511
+ scope: string
1512
+ refresh_token: string
1513
+ refresh_token_expired_in: 0
1514
+ /oauth2/v1_0/userinfo:
1515
+ get:
1516
+ summary: GetUserInfoWithConsent
1517
+ description: This operation is used to claim a consent by the account holder for the requested scopes.
1518
+ operationId: GetUserInfoWithConsent
1519
+ parameters:
1520
+ - name: Authorization
1521
+ in: header
1522
+ description: Bearer Token. Replace with a valid oauth2 token received from oauth2 token endpoint in Wallet Platform.
1523
+ required: true
1524
+ schema:
1525
+ type: string
1526
+ - name: X-Target-Environment
1527
+ in: header
1528
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
1529
+ required: true
1530
+ schema:
1531
+ type: string
1532
+ responses:
1533
+ '200':
1534
+ description: OK
1535
+ content:
1536
+ application/json:
1537
+ schema:
1538
+ $ref: '#/components/schemas/consentkycResponse'
1539
+ example:
1540
+ sub: string
1541
+ name: string
1542
+ given_name: string
1543
+ family_name: string
1544
+ middle_name: string
1545
+ email: string
1546
+ email_verified: true
1547
+ gender: string
1548
+ locale: string
1549
+ phone_number: string
1550
+ phone_number_verified: true
1551
+ address: string
1552
+ updated_at: 0
1553
+ status: string
1554
+ birthdate: string
1555
+ credit_score: string
1556
+ active: true
1557
+ country_of_birth: string
1558
+ region_of_birth: string
1559
+ city_of_birth: string
1560
+ occupation: string
1561
+ employer_name: string
1562
+ identification_type: string
1563
+ identification_value: string
1564
+ /token/:
1565
+ post:
1566
+ summary: CreateAccessToken
1567
+ description: This operation is used to create an access token which can then be used to authorize and authenticate towards the other end-points of the API.
1568
+ operationId: CreateAccessToken
1569
+ parameters:
1570
+ - name: Authorization
1571
+ in: header
1572
+ description: Basic authentication header containing API user ID and API key. Should be sent in as B64 encoded.
1573
+ required: true
1574
+ schema:
1575
+ type: string
1576
+ responses:
1577
+ '200':
1578
+ description: OK
1579
+ content:
1580
+ application/json:
1581
+ schema:
1582
+ $ref: '#/components/schemas/TokenPost200ApplicationJsonResponse'
1583
+ example:
1584
+ access_token: string
1585
+ token_type: string
1586
+ expires_in: 0
1587
+ '401':
1588
+ description: Unauthorized
1589
+ content:
1590
+ application/json:
1591
+ schema:
1592
+ $ref: '#/components/schemas/TokenPost401ApplicationJsonResponse'
1593
+ example:
1594
+ error: string
1595
+ '500':
1596
+ description: Error
1597
+ content:
1598
+ application/json: { }
1599
+ /v2_0/payment:
1600
+ post:
1601
+ summary: CreatePayments
1602
+ description: Making it possible to perform payments via the partner gateway. This may be used to pay for external bills or to perform air-time top-ups.
1603
+ operationId: CreatePayments
1604
+ parameters:
1605
+ - name: Authorization
1606
+ in: header
1607
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
1608
+ required: true
1609
+ schema:
1610
+ type: string
1611
+ - name: X-Callback-Url
1612
+ in: header
1613
+ description: PUT Callback URL to send callback to once the invoice is completed.
1614
+ schema:
1615
+ type: string
1616
+ - name: X-Reference-Id
1617
+ in: header
1618
+ description: Format - UUID. An id to uniquely identify the making of an invoice
1619
+ required: true
1620
+ schema:
1621
+ type: string
1622
+ - name: X-Target-Environment
1623
+ in: header
1624
+ description: The desired target environment to use that is allowed for the API user.
1625
+ required: true
1626
+ schema:
1627
+ type: string
1628
+ requestBody:
1629
+ content:
1630
+ application/json:
1631
+ schema:
1632
+ $ref: '#/components/schemas/CreatePayments'
1633
+ example:
1634
+ externalTransactionId: string (An external transaction id to tie to the payment.)
1635
+ money:
1636
+ amount: string
1637
+ currency: string
1638
+ customerReference: String(661551442)
1639
+ serviceProviderUserName: String
1640
+ responses:
1641
+ '202':
1642
+ description: Accepted
1643
+ content:
1644
+ application/json: { }
1645
+ ReferenceId already in use: { }
1646
+ Unspecified internal error: { }
1647
+ '400':
1648
+ description: 'Bad request, e.g. invalid data was sent in the request.'
1649
+ content:
1650
+ application/json: { }
1651
+ ReferenceId already in use: { }
1652
+ Unspecified internal error: { }
1653
+ '409':
1654
+ description: 'Conflict, duplicated reference id'
1655
+ content:
1656
+ ReferenceId already in use:
1657
+ schema:
1658
+ $ref: '#/components/schemas/ErrorReason'
1659
+ example:
1660
+ code: RESOURCE_ALREADY_EXIST
1661
+ message: Duplicated reference id. Creation of resource failed.
1662
+ application/json:
1663
+ schema:
1664
+ $ref: '#/components/schemas/ErrorReason'
1665
+ example:
1666
+ code: PAYEE_NOT_FOUND
1667
+ message: string
1668
+ Unspecified internal error:
1669
+ schema:
1670
+ $ref: '#/components/schemas/ErrorReason'
1671
+ examples:
1672
+ default:
1673
+ value:
1674
+ '500':
1675
+ description: Internal Error.
1676
+ content:
1677
+ Unspecified internal error:
1678
+ schema:
1679
+ $ref: '#/components/schemas/ErrorReason'
1680
+ example:
1681
+ code: INTERNAL_PROCESSING_ERROR
1682
+ message: An internal error occurred while processing.
1683
+ application/json:
1684
+ schema:
1685
+ $ref: '#/components/schemas/ErrorReason'
1686
+ example:
1687
+ code: PAYEE_NOT_FOUND
1688
+ message: string
1689
+ ReferenceId already in use:
1690
+ schema:
1691
+ $ref: '#/components/schemas/ErrorReason'
1692
+ examples:
1693
+ default:
1694
+ value:
1695
+ '/v2_0/payment/{x-referenceId}':
1696
+ get:
1697
+ summary: GetPaymentStatus
1698
+ description: This operation is used to get the status of a Payment. X-Reference-Id that was passed in the post is used as reference to the request
1699
+ operationId: GetPaymentStatus
1700
+ parameters:
1701
+ - name: x-referenceId
1702
+ in: path
1703
+ description: UUID of transaction to get result. Reference id used when creating the Payment.
1704
+ required: true
1705
+ schema:
1706
+ type: string
1707
+ - name: Authorization
1708
+ in: header
1709
+ description: Bearer Authentication Token generated using CreateAccessToken API Call
1710
+ required: true
1711
+ schema:
1712
+ type: string
1713
+ - name: X-Target-Environment
1714
+ in: header
1715
+ description: The identifier of the Wallet Platform system where the transaction shall be processed. This parameter is used to route the request to the Wallet Platform system that will initiate the transaction.
1716
+ required: true
1717
+ schema:
1718
+ type: string
1719
+ responses:
1720
+ '200':
1721
+ description: OK. Note that a failed CreateInvoice will be returned with this status too. The 'status' of the CreateInvoice can be used to determine the outcome of the request. The 'errorReason' field can be used to retrieve a cause in case of failure.
1722
+ content:
1723
+ Successful Payment Created:
1724
+ schema:
1725
+ $ref: '#/components/schemas/PaymentResult'
1726
+ examples:
1727
+ default:
1728
+ value:
1729
+ Payer not found:
1730
+ schema:
1731
+ $ref: '#/components/schemas/PaymentResult'
1732
+ examples:
1733
+ default:
1734
+ value:
1735
+ application/json:
1736
+ schema:
1737
+ $ref: '#/components/schemas/PaymentResult'
1738
+ example:
1739
+ referenceId: string
1740
+ status: CREATED
1741
+ financialTransactionId: string
1742
+ reason:
1743
+ code: PAYEE_NOT_FOUND
1744
+ Payment not found:
1745
+ schema:
1746
+ $ref: '#/components/schemas/PaymentResult'
1747
+ examples:
1748
+ default:
1749
+ value:
1750
+ Unspecified internal error:
1751
+ schema:
1752
+ $ref: '#/components/schemas/PaymentResult'
1753
+ examples:
1754
+ default:
1755
+ value:
1756
+ '400':
1757
+ description: 'Bad request, e.g. an incorrectly formatted reference id was provided.'
1758
+ content:
1759
+ Successful request to pay: { }
1760
+ Payer not found: { }
1761
+ application/json: { }
1762
+ Request to pay not found: { }
1763
+ Unspecified internal error: { }
1764
+ '404':
1765
+ description: Resource not found.
1766
+ content:
1767
+ Request to pay not found:
1768
+ schema:
1769
+ $ref: '#/components/schemas/ErrorReason'
1770
+ example:
1771
+ code: RESOURCE_NOT_FOUND
1772
+ message: Requested resource was not found.
1773
+ Successful request to pay:
1774
+ schema:
1775
+ $ref: '#/components/schemas/ErrorReason'
1776
+ examples:
1777
+ default:
1778
+ value:
1779
+ Payer not found:
1780
+ schema:
1781
+ $ref: '#/components/schemas/ErrorReason'
1782
+ examples:
1783
+ default:
1784
+ value:
1785
+ application/json:
1786
+ schema:
1787
+ $ref: '#/components/schemas/ErrorReason'
1788
+ example:
1789
+ code: PAYEE_NOT_FOUND
1790
+ message: string
1791
+ Unspecified internal error:
1792
+ schema:
1793
+ $ref: '#/components/schemas/ErrorReason'
1794
+ examples:
1795
+ default:
1796
+ value:
1797
+ '500':
1798
+ description: 'Internal Error. Note that if the retrieved request to pay has failed, it will not cause this status to be returned. This status is only returned if the GET request itself fails.'
1799
+ content:
1800
+ Unspecified internal error:
1801
+ schema:
1802
+ $ref: '#/components/schemas/ErrorReason'
1803
+ example:
1804
+ code: INTERNAL_PROCESSING_ERROR
1805
+ message: An internal error occurred while processing.
1806
+ Successful request to pay:
1807
+ schema:
1808
+ $ref: '#/components/schemas/ErrorReason'
1809
+ examples:
1810
+ default:
1811
+ value:
1812
+ Payer not found:
1813
+ schema:
1814
+ $ref: '#/components/schemas/ErrorReason'
1815
+ examples:
1816
+ default:
1817
+ value:
1818
+ application/json:
1819
+ schema:
1820
+ $ref: '#/components/schemas/ErrorReason'
1821
+ example:
1822
+ code: PAYEE_NOT_FOUND
1823
+ message: string
1824
+ Request to pay not found:
1825
+ schema:
1826
+ $ref: '#/components/schemas/ErrorReason'
1827
+ examples:
1828
+ default:
1829
+ value:
1830
+ components:
1831
+ schemas:
1832
+ BasicUserInfoJsonResponse:
1833
+ type: object
1834
+ properties:
1835
+ given_name:
1836
+ type: string
1837
+ description: 'Given name(s) or first name(s) of the End-User. Note that in some cultures, people can have multiple given names; all can be present, with the names being separated by space characters.'
1838
+ family_name:
1839
+ type: string
1840
+ description: 'Surname(s) or last name(s) of the End-User. Note that in some cultures, people can have multiple family names or no family name; all can be present, with the names being separated by space characters.'
1841
+ birthdate:
1842
+ type: string
1843
+ description: Account holder birth date.
1844
+ locale:
1845
+ type: string
1846
+ description: 'End-User''s locale, represented as a BCP47 [RFC5646] language tag. This is typically an ISO 639-1 Alpha-2 [ISO639�|�1] language code in lowercase and an ISO 3166-1 Alpha-2 [ISO3166�|�1] country code in uppercase, separated by a dash. For example, en-US or fr-CA. As a compatibility note, some implementations have used an underscore as the separator rather than a dash, for example, en_US; Relying Parties may choose to accept this locale syntax as well.'
1847
+ gender:
1848
+ type: string
1849
+ description: End-User's gender. Values defined by this specification are female and male. Other values may be used when neither of the defined values are applicable.
1850
+ status:
1851
+ type: string
1852
+ description: Accountholder status.
1853
+ bcauthorize:
1854
+ type: object
1855
+ properties:
1856
+ scope:
1857
+ type: string
1858
+ description: Space separated list of scopes.
1859
+ login_hint:
1860
+ type: string
1861
+ description: The identity of the account holder.
1862
+ access_type:
1863
+ enum:
1864
+ - online
1865
+ - offline
1866
+ type: string
1867
+ description: 'Value either online, or offline.'
1868
+ consent_valid_in:
1869
+ type: integer
1870
+ description: The validity time of the consent in secondsThis parameter can only be used together with access type offline.
1871
+ client_notification_token:
1872
+ type: string
1873
+ description: This token is required when the client is using Ping or Push mode.
1874
+ scope_instruction:
1875
+ type: string
1876
+ description: Base64 encoded Instrcution of the financial transaction.
1877
+ bcauthorizeResponse:
1878
+ type: object
1879
+ properties:
1880
+ auth_req_id:
1881
+ type: string
1882
+ description: Authentication request ID as an UUID.
1883
+ interval:
1884
+ type: number
1885
+ description: Indicates how long time the client should wait between retries towards the endpoint /oauth2/token.
1886
+ expires_in:
1887
+ type: number
1888
+ description: 'Shows when the authentication request ID expires, in seconds.'
1889
+ TokenPost200ApplicationJsonResponse:
1890
+ type: object
1891
+ properties:
1892
+ access_token:
1893
+ type: string
1894
+ description: A JWT token which can be used to authrize against the other API end-points. The format of the token follows the JWT standard format (see jwt.io for an example). This is the token that should be sent in in the Authorization header when calling the other API end-points.
1895
+ token_type:
1896
+ type: string
1897
+ description: The token type.
1898
+ expires_in:
1899
+ type: integer
1900
+ description: The validity time in seconds of the token.
1901
+ oauth2TokenRequest:
1902
+ type: object
1903
+ properties:
1904
+ grant_type:
1905
+ type: string
1906
+ description: Value can be either "urn:openid:params:grant-type:ciba" or "refresh_token"
1907
+ auth_req_id:
1908
+ type: string
1909
+ description: Authentication request ID.Value is only mandatory if grant_type is "urn:openid:params:grant-type:ciba"
1910
+ refresh_token:
1911
+ type: string
1912
+ description: UUID.Refresh token retrieved from oauth2 token endpoint for consents with grant_type offline. This parameter is only valid if grant_type is refresh_token.
1913
+ oauth2TokenResponse:
1914
+ type: object
1915
+ properties:
1916
+ access_token:
1917
+ type: string
1918
+ description: Oauth2 JWT access token.The generated token is valid 3600 seconds as default.
1919
+ token_type:
1920
+ type: string
1921
+ description: Value is Bearer
1922
+ expires_in:
1923
+ type: number
1924
+ description: 'Shows when the authentication request ID expires, in seconds.'
1925
+ scope:
1926
+ type: string
1927
+ description: List of scopes that belongs to the authentication request ID.
1928
+ refresh_token:
1929
+ type: string
1930
+ description: UUID of the refresh_token
1931
+ refresh_token_expired_in:
1932
+ type: integer
1933
+ description: 'The time in seconds until the consent can no longer be refreshed. Based on the default value for consent validity, or the value set to parameter consent_valid_in sent in the bc-authorize request.'
1934
+ consentkycResponse:
1935
+ type: object
1936
+ properties:
1937
+ sub:
1938
+ type: string
1939
+ description: Subject - Identifier for the End-User at the Issuer.
1940
+ name:
1941
+ type: string
1942
+ description: End-User's full name in displayable form including all name parts.
1943
+ given_name:
1944
+ type: string
1945
+ description: Given name(s) or first name(s) of the End-User.
1946
+ family_name:
1947
+ type: string
1948
+ description: Surname(s) or last name(s) of the End-User.
1949
+ middle_name:
1950
+ type: string
1951
+ description: Middle name(s) of the End-User.
1952
+ email:
1953
+ type: string
1954
+ description: 'End-User''s preferred e-mail address. Its value MUST conform to the RFC 5322 [RFC5322] address specification syntax.'
1955
+ email_verified:
1956
+ type: boolean
1957
+ description: The response value is True if the End-User's e-mail address has been verified;otherwise false.
1958
+ gender:
1959
+ type: string
1960
+ description: End-User's gender.
1961
+ locale:
1962
+ type: string
1963
+ description: Preffered language.
1964
+ phone_number:
1965
+ type: string
1966
+ description: End-User's preferred telephone number
1967
+ phone_number_verified:
1968
+ type: boolean
1969
+ description: The response value is True if the End-User's phone number has been verified; otherwise false.
1970
+ address:
1971
+ type: string
1972
+ description: User Address
1973
+ updated_at:
1974
+ type: number
1975
+ description: The time the End-User's information was last updated.
1976
+ status:
1977
+ type: string
1978
+ description: Account holder status.
1979
+ birthdate:
1980
+ type: string
1981
+ description: The birth date of the account holder.
1982
+ credit_score:
1983
+ type: string
1984
+ description: The credit score of the account holder.
1985
+ active:
1986
+ type: boolean
1987
+ description: The status of the account holder.
1988
+ country_of_birth:
1989
+ type: string
1990
+ description: Account holder country of birth.
1991
+ region_of_birth:
1992
+ type: string
1993
+ description: The birth region of the account holder.
1994
+ city_of_birth:
1995
+ type: string
1996
+ description: The city of birth for the account holder.
1997
+ occupation:
1998
+ type: string
1999
+ description: Occupation of the account holder.
2000
+ employer_name:
2001
+ type: string
2002
+ description: The name of the employer.
2003
+ identification_type:
2004
+ type: string
2005
+ description: Type of identification.The first non-expired identification is always chosen.
2006
+ identification_value:
2007
+ type: string
2008
+ description: The value of the identification.
2009
+ address:
2010
+ type: object
2011
+ properties:
2012
+ formatted:
2013
+ type: string
2014
+ description: 'Full mailing address, formatted for display or use on a mailing label. This field may contain multiple lines, separated by newlines.'
2015
+ street_address:
2016
+ type: string
2017
+ description: 'Full street address component, which may include house number, street name, Post Office Box, and multi-line extended street address information.'
2018
+ locality:
2019
+ type: string
2020
+ description: City or locality component.
2021
+ region:
2022
+ type: string
2023
+ description: 'State, province, prefecture, or region component.'
2024
+ postal_code:
2025
+ type: string
2026
+ description: Zip code or postal code component.
2027
+ country:
2028
+ type: string
2029
+ description: Country name component.
2030
+ TokenPost401ApplicationJsonResponse:
2031
+ type: object
2032
+ properties:
2033
+ error:
2034
+ type: string
2035
+ description: An error code.
2036
+ Balance:
2037
+ type: object
2038
+ properties:
2039
+ availableBalance:
2040
+ type: string
2041
+ description: The available balance of the account
2042
+ currency:
2043
+ type: string
2044
+ description: ISO4217 Currency
2045
+ description: The available balance of the account
2046
+ Party:
2047
+ type: object
2048
+ properties:
2049
+ partyIdType:
2050
+ enum:
2051
+ - MSISDN
2052
+ - EMAIL
2053
+ - PARTY_CODE
2054
+ type: string
2055
+ partyId:
2056
+ type: string
2057
+ description: 'Party identifies a account holder in the wallet platform. Party consists of two parameters, type and partyId. Each type have its own validation of the partyId<br> MSISDN - Mobile Number validated according to ITU-T E.164. Validated with IsMSISDN<br> EMAIL - Validated to be a valid e-mail format. Validated with IsEmail<br> PARTY_CODE - UUID of the party. Validated with IsUuid'
2058
+ RequestToPay:
2059
+ type: object
2060
+ properties:
2061
+ amount:
2062
+ type: string
2063
+ description: Amount that will be debited from the payer account.
2064
+ currency:
2065
+ type: string
2066
+ description: ISO4217 Currency
2067
+ externalId:
2068
+ type: string
2069
+ description: External id is used as a reference to the transaction. External id is used for reconciliation. The external id will be included in transaction history report. <br>External id is not required to be unique.
2070
+ payer:
2071
+ $ref: '#/components/schemas/Party'
2072
+ payerMessage:
2073
+ type: string
2074
+ description: Message that will be written in the payer transaction history message field.
2075
+ payeeNote:
2076
+ type: string
2077
+ description: Message that will be written in the payee transaction history note field.
2078
+ RequestToPayResult:
2079
+ type: object
2080
+ properties:
2081
+ amount:
2082
+ type: string
2083
+ description: Amount that will be debited from the payer account.
2084
+ currency:
2085
+ type: string
2086
+ description: ISO4217 Currency
2087
+ financialTransactionId:
2088
+ type: string
2089
+ description: Financial transactionIdd from mobile money manager.<br> Used to connect to the specific financial transaction made in the account
2090
+ externalId:
2091
+ type: string
2092
+ description: External id provided in the creation of the requestToPay transaction.
2093
+ payer:
2094
+ $ref: '#/components/schemas/Party'
2095
+ payerMessage:
2096
+ type: string
2097
+ description: Message that will be written in the payer transaction history message field.
2098
+ payeeNote:
2099
+ type: string
2100
+ description: Message that will be written in the payee transaction history note field.
2101
+ status:
2102
+ enum:
2103
+ - PENDING
2104
+ - SUCCESSFUL
2105
+ - FAILED
2106
+ type: string
2107
+ reason:
2108
+ $ref: '#/components/schemas/ErrorReason'
2109
+ Transfer:
2110
+ type: object
2111
+ properties:
2112
+ amount:
2113
+ type: string
2114
+ description: Amount that will be debited from the payer account.
2115
+ currency:
2116
+ type: string
2117
+ description: ISO4217 Currency
2118
+ externalId:
2119
+ type: string
2120
+ description: External id is used as a reference to the transaction. External id is used for reconciliation. The external id will be included in transaction history report. <br>External id is not required to be unique.
2121
+ payee:
2122
+ $ref: '#/components/schemas/Party'
2123
+ payerMessage:
2124
+ type: string
2125
+ description: Message that will be written in the payer transaction history message field.
2126
+ payeeNote:
2127
+ type: string
2128
+ description: Message that will be written in the payee transaction history note field.
2129
+ TransferResult:
2130
+ type: object
2131
+ properties:
2132
+ amount:
2133
+ type: string
2134
+ description: Amount that will be debited from the payer account.
2135
+ currency:
2136
+ type: string
2137
+ description: ISO4217 Currency
2138
+ financialTransactionId:
2139
+ type: string
2140
+ description: Financial transactionIdd from mobile money manager.<br> Used to connect to the specific financial transaction made in the account
2141
+ externalId:
2142
+ type: string
2143
+ description: External id is used as a reference to the transaction. External id is used for reconciliation. The external id will be included in transaction history report. <br>External id is not required to be unique.
2144
+ payee:
2145
+ $ref: '#/components/schemas/Party'
2146
+ payerMessage:
2147
+ type: string
2148
+ description: Message that will be written in the payer transaction history message field.
2149
+ payeeNote:
2150
+ type: string
2151
+ description: Message that will be written in the payee transaction history note field.
2152
+ status:
2153
+ enum:
2154
+ - PENDING
2155
+ - SUCCESSFUL
2156
+ - FAILED
2157
+ type: string
2158
+ reason:
2159
+ $ref: '#/components/schemas/ErrorReason'
2160
+ deliverynotification:
2161
+ type: object
2162
+ properties:
2163
+ notificationMessage:
2164
+ type: string
2165
+ PreApproval:
2166
+ type: object
2167
+ properties:
2168
+ payer:
2169
+ $ref: '#/components/schemas/Party'
2170
+ payerCurrency:
2171
+ type: string
2172
+ description: ISO4217 Currency
2173
+ payerMessage:
2174
+ type: string
2175
+ description: The mesage that is shown to the approver.
2176
+ validityTime:
2177
+ type: integer
2178
+ description: The request validity time of the pre-approval
2179
+ PreApprovalResult:
2180
+ type: object
2181
+ properties:
2182
+ payer:
2183
+ $ref: '#/components/schemas/Party'
2184
+ payerCurrency:
2185
+ type: string
2186
+ description: ISO4217 Currency
2187
+ payerMessage:
2188
+ type: string
2189
+ description: The mesage that is shown to the approver.
2190
+ status:
2191
+ enum:
2192
+ - PENDING
2193
+ - SUCCESSFUL
2194
+ - FAILED
2195
+ type: string
2196
+ expirationDateTime:
2197
+ type: integer
2198
+ description: 'The expiry date +time of the preapproval, in YYYY-MM-DDTHH:mm:SS format'
2199
+ reason:
2200
+ $ref: '#/components/schemas/ErrorReason'
2201
+ CreateInvoice:
2202
+ type: object
2203
+ properties:
2204
+ externalId:
2205
+ type: string
2206
+ description: External id is used as a reference to the transaction. External id is used for reconciliation. The external id will be included in transaction history report. <br>External id is not required to be unique.
2207
+ amount:
2208
+ type: string
2209
+ description: Amount that will be debited from the payer account.
2210
+ currency:
2211
+ type: string
2212
+ description: ISO4217 Currency
2213
+ validityDuration:
2214
+ type: string
2215
+ description: ValidityTime - The duration that the invoice is valid in seconds.
2216
+ intendedPayer:
2217
+ $ref: '#/components/schemas/Party'
2218
+ payee:
2219
+ $ref: '#/components/schemas/Party'
2220
+ description:
2221
+ type: string
2222
+ description: Message that will be written in the payer transaction history message field.
2223
+ InvoiceResult:
2224
+ type: object
2225
+ properties:
2226
+ referenceId:
2227
+ type: string
2228
+ description: The reference id for this invoice.
2229
+ externalId:
2230
+ type: string
2231
+ description: An external transaction id to tie to the payment.
2232
+ amount:
2233
+ type: string
2234
+ description: A positive amount for this invoice.
2235
+ currency:
2236
+ type: string
2237
+ description: ISO4217 Currency - The currency used in this invoice.
2238
+ status:
2239
+ enum:
2240
+ - CREATED
2241
+ - PENDING
2242
+ - SUCCESSFUL
2243
+ - FAILED
2244
+ type: string
2245
+ paymentReference:
2246
+ type: string
2247
+ description: A unique id that identifies a pending invoice.
2248
+ invoiceId:
2249
+ type: string
2250
+ description: An id for the invoice.
2251
+ expiryDateTime:
2252
+ type: string
2253
+ description: 'DateTime for when invoice expires, in YYYY-MM-DD:THH:mm:ss format.'
2254
+ payeeFirstName:
2255
+ type: string
2256
+ description: First name of the payee in this invoice.
2257
+ payeeLastName:
2258
+ type: string
2259
+ description: Surname of the payee in this invoice
2260
+ errorReason:
2261
+ $ref: '#/components/schemas/ErrorReason'
2262
+ intendedPayer:
2263
+ $ref: '#/components/schemas/Party'
2264
+ description:
2265
+ type: string
2266
+ description: An optional description of the invoice.
2267
+ Money:
2268
+ type: object
2269
+ properties:
2270
+ amount:
2271
+ type: string
2272
+ description: A positive amount
2273
+ currency:
2274
+ type: string
2275
+ description: Currency in ISO4217 format
2276
+ CreatePayments:
2277
+ type: object
2278
+ properties:
2279
+ externalTransactionId:
2280
+ type: string
2281
+ description: An external transaction id to tie to the payment.
2282
+ money:
2283
+ $ref: '#/components/schemas/Money'
2284
+ customerReference:
2285
+ type: string
2286
+ description: 'A customer reference for a provider. Example: +46070911111'
2287
+ serviceProviderUserName:
2288
+ type: string
2289
+ description: 'A service provider name. Example: Electricity Inc.'
2290
+ couponId:
2291
+ type: string
2292
+ description: A coupon the user would like to redeem and use the reward as part of this payment.
2293
+ productId:
2294
+ type: string
2295
+ description: 'Optional id of a product, used if paying for a product.'
2296
+ productOfferingId:
2297
+ type: string
2298
+ description: 'Optional id of a product offering, used when paying for a particular offering of a product.'
2299
+ receiverMessage:
2300
+ type: string
2301
+ description: A descriptive note for receiver transaction history.
2302
+ senderNote:
2303
+ type: string
2304
+ description: A descriptive note for sender transaction history.
2305
+ maxNumberOfRetries:
2306
+ type: integer
2307
+ description: maxNumberOfRetries
2308
+ includeSenderCharges:
2309
+ type: boolean
2310
+ description: 'Specifies if sender charges, this is, fee and tax paid by the sender, should be included in the specified transaction amount. This means that the charges will be deducted from the transaction amount before the remaining amount is transferred to the receiver.True indicates that charges shall be included in the specified transaction amount. The default value is false, meaning that sender charges are charged on top of the transaction amount.'
2311
+ PaymentResult:
2312
+ type: object
2313
+ properties:
2314
+ referenceId:
2315
+ type: string
2316
+ description: The reference id for this Payment.
2317
+ status:
2318
+ enum:
2319
+ - CREATED
2320
+ - PENDING
2321
+ - SUCCESSFUL
2322
+ - FAILED
2323
+ type: string
2324
+ financialTransactionId:
2325
+ type: string
2326
+ description: A transaction id associated with this payment.
2327
+ reason:
2328
+ $ref: '#/components/schemas/ErrorReason'
2329
+ ErrorReason:
2330
+ type: object
2331
+ properties:
2332
+ code:
2333
+ enum:
2334
+ - PAYEE_NOT_FOUND
2335
+ - PAYER_NOT_FOUND
2336
+ - NOT_ALLOWED
2337
+ - NOT_ALLOWED_TARGET_ENVIRONMENT
2338
+ - INVALID_CALLBACK_URL_HOST
2339
+ - INVALID_CURRENCY
2340
+ - SERVICE_UNAVAILABLE
2341
+ - INTERNAL_PROCESSING_ERROR
2342
+ - NOT_ENOUGH_FUNDS
2343
+ - PAYER_LIMIT_REACHED
2344
+ - PAYEE_NOT_ALLOWED_TO_RECEIVE
2345
+ - PAYMENT_NOT_APPROVED
2346
+ - RESOURCE_NOT_FOUND
2347
+ - APPROVAL_REJECTED
2348
+ - EXPIRED
2349
+ - TRANSACTION_CANCELED
2350
+ - RESOURCE_ALREADY_EXIST
2351
+ type: string
2352
+ message:
2353
+ type: string
2354
+ BooleanResult:
2355
+ type: object
2356
+ properties:
2357
+ result:
2358
+ type: boolean
2359
+ securitySchemes:
2360
+ apiKeyHeader:
2361
+ type: apiKey
2362
+ name: Ocp-Apim-Subscription-Key
2363
+ in: header
2364
+ apiKeyQuery:
2365
+ type: apiKey
2366
+ name: subscription-key
2367
+ in: query
2368
+ security:
2369
+ - apiKeyHeader: [ ]
2370
+ - apiKeyQuery: [ ]