generated from DEFRA/ffc-template-node
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathopenapi.yaml
222 lines (222 loc) · 5.39 KB
/
openapi.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
swagger: '2.0'
info:
title: FFC Pay Processing
version: '1.0.0'
host: ffc-pay-processing
schemes:
- http
paths:
/payment-holds:
get:
summary: Get all payment holds
produces:
- application/json
parameters:
- name: open
in: query
description: Filter by open payment holds
required: false
type: boolean
responses:
'200':
description: OK
schema:
type: array
items:
$ref: '#/definitions/PaymentHold'
/payment-hold-categories:
get:
summary: Get all payment hold categories
produces:
- application/json
responses:
'200':
description: OK
schema:
type: array
items:
$ref: '#/definitions/PaymentHoldCategory'
/add-payment-hold:
post:
summary: Add a payment hold
parameters:
- name: paymentHold
in: body
description: Payment hold to add
required: true
schema:
$ref: '#/definitions/AddPaymentHold'
responses:
'200':
description: OK
'400':
description: Bad request
/remove-payment-hold:
post:
summary: Remove a payment hold
parameters:
- name: paymentHold
in: body
description: Payment hold to remove
required: true
schema:
$ref: '#/definitions/RemovePaymentHold'
responses:
'200':
description: OK
'400':
description: Bad request
/payment-schemes:
get:
summary: Get all payment schemes
produces:
- application/json
responses:
'200':
description: OK
schema:
type: array
items:
$ref: '#/definitions/PaymentScheme'
/change-payment-status:
post:
summary: Change payment status
parameters:
- name: paymentStatus
in: body
description: Activate or deactivate a payment scheme
required: true
schema:
$ref: '#/definitions/ChangePaymentStatus'
responses:
'200':
description: OK
'400':
description: Bad request
'500':
description: Internal server error
/payment-request/reset:
post:
summary: Reset payment request
parameters:
- name: paymentRequest
in: body
description: Payment request to reset
required: true
schema:
$ref: '#/definitions/PaymentRequestReset'
responses:
'200':
description: OK
'400':
description: Bad request
'412':
description: Precondition failed
definitions:
PaymentHold:
type: object
properties:
holdId:
$ref: '#/definitions/HoldId'
frn:
$ref: '#/definitions/FRN'
holdCategoryName:
$ref: '#/definitions/HoldCategoryName'
holdCategorySchemeId:
$ref: '#/definitions/SchemeId'
holdCategorySchemeName:
$ref: '#/definitions/SchemeName'
dateTimeAdded:
$ref: '#/definitions/DateTimeAdded'
dateTimeClosed:
$ref: '#/definitions/DateTimeClosed'
PaymentHoldCategory:
type: object
properties:
holdCategoryId:
$ref: '#/definitions/HoldCategoryId'
name:
$ref: '#/definitions/HoldCategoryName'
schemeId:
$ref: '#/definitions/SchemeId'
schemeName:
$ref: '#/definitions/SchemeName'
AddPaymentHold:
type: object
properties:
frn:
$ref: '#/definitions/FRN'
holdCategoryId:
$ref: '#/definitions/HoldCategoryId'
RemovePaymentHold:
type: object
properties:
holdId:
$ref: '#/definitions/HoldId'
PaymentScheme:
type: object
properties:
schemeId:
$ref: '#/definitions/SchemeId'
name:
$ref: '#/definitions/SchemeName'
active:
$ref: '#/definitions/Active'
ChangePaymentStatus:
type: object
properties:
schemeId:
$ref: '#/definitions/SchemeId'
active:
$ref: '#/definitions/Active'
PaymentRequestReset:
type: object
properties:
invoiceNumber:
$ref: '#/definitions/InvoiceNumber'
HoldId:
type: integer
format: int32
description: Unique identifier for the payment hold
example: 1
HoldCategoryId:
type: integer
format: int32
description: Unique identifier for the payment hold category
example: 1
FRN:
type: integer
format: int64
description: Firm Reference Number
example: 1234567890
HoldCategoryName:
type: string
description: Name of the payment hold category
example: 'Payment Hold'
SchemeId:
type: integer
format: int32
description: Scheme identifier for the payment hold category
example: 1
SchemeName:
type: string
description: Scheme name for the payment hold category
example: 'SFI'
DateTimeAdded:
type: string
format: date-time
description: Date and time the payment hold was added
example: '2019-01-01T12:00:00Z'
DateTimeClosed:
type: string
format: date-time
description: Date and time the payment hold was closed
example: '2019-01-01T12:00:00Z'
Active:
type: boolean
description: Whether the payment scheme is active
example: true
InvoiceNumber:
type: string
description: Invoice number
example: 'S1234567C1234567V001'