Download OpenAPI specification:Download
Get InstructionRole Requirements
tenant-transaction-read
or tenant-admin
Description
Gets an Order Instruction by the orderRef
and instructionRef
.
path Parameters orderRefrequired
string <= 50 characters ^[a-zA-Z0-9-_\.]+$
instructionRefrequired
string <= 50 characters ^[a-zA-Z0-9-_\.]+$
The Instruction reference.
header Parameters x-account-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-tenant-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-correlation-id string
Correlation Id for the request.
200 OK - Returns the Instruction response.
400 Bad Request - Validation error response, containing errors such as:
Order not found.
Instruction not found.
default All other managed 4xx and 5xx errors
get /v2/order-management/{orderRef}/instruction/{instructionRef} curl JavaScript C# Java Node.js Python Go PHP
Copy
Expand all Collapse all { "_links" :
{ "financialInstruments" :
[ { "href" : "/v1/customer-vault/customer1/financial-instrument/6105540a-1f16-46e0-b16d-0d3cdfe79411" ,
"name" : "6105540a-1f16-46e0-b16d-0d3cdfe79411"
} ] , "transactions" :
[ { "href" : "/v1/customer-vault/customer1/financial-instrument/6105540a-1f16-46e0-b16d-0d3cdfe79411/transaction/a16699d2-454d-6bec-785d-0823cb79e86a" ,
"name" : "a16699d2-454d-6bec-785d-0823cb79e86a"
} ] } , "created" : 1662105575226 ,
"lastUpdated" : 1662105912747 ,
"direction" : "DEBIT" ,
"status" : "COMPLETED" ,
"customerRef" : "customer1" ,
"amount" : 10 ,
"currency" : "EUR" ,
"country" : "AT" ,
"settledByDate" : "2023-12-15" ,
"forecastedSettlementDate" : null ,
"actualSettlementDate" : null ,
"executionTimestamp" : null ,
"financialInstrument" :
{ } , "scheme" :
{ "schemeId" : "EEAB9BBF6F8FA16D711798D14B65E066" ,
"source" : "MANUALLY_SET" ,
"canUpdate" : true
} , "metadata" :
{ "key1" : "payment/1" ,
"key2" : "payment/2"
} , "transaction" :
{ "transactionId" : "a16699d2-454d-6bec-785d-0823cb79e86a" ,
"financialInstrumentId" : "6105540a-1f16-46e0-b16d-0d3cdfe79411" ,
"createdTimestamp" : 1662543264053 ,
"lastUpdatedTimestamp" : 1662543264006 ,
"amount" : 12.34 ,
"netAmount" : 10 ,
"status" : "PROCESSING" ,
"additionalInformation" : "Test" ,
"refunds" :
[ { "refundId" : "07924e91-3470-442d-8c8a-81282b41b74e" ,
"createdTimestamp" : 1662543387150 ,
"lastUpdatedTimestamp" : 1662543388793 ,
"status" : "COMPLETED" ,
"amount" : 2.34
} ] , } , "failed" :
{ "failedTimestamp" : 0 ,
"errorCode" : null ,
"reason" : null
} , "cancelled" :
{ "cancelledTimestamp" : 0 ,
"identity" : null ,
"reason" : null
} }
Update InstructionRole Requirements
tenant-transaction-write
or tenant-admin
Description
Updates a new Instruction by orderRef
and instructionRef
.
path Parameters orderRefrequired
string <= 50 characters ^[a-zA-Z0-9-_\.]+$
instructionRefrequired
string <= 50 characters ^[a-zA-Z0-9-_\.]+$
The Instruction reference.
header Parameters x-account-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-tenant-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-correlation-id string
Correlation Id for the request.
Request Body schema: application/json financialInstrumentIdstring <uuid> (FinancialInstrumentId)
The system generated Financial Instrument identifier.
amountnumber <decimal> (Amount)
Currency amount. The number of decimal digits is validated against the currency code of the payment.
currencystring (Currency) ^[A-Z]{3}$
ISO 4217 code (3 uppercase letters) for the chosen currency.
countrystring (Country) ^[A-Z]{2}$
The ISO 3166-1 alpha 2 country code (2 letter code) for the chosen country of the future transaction.
settledByDatestring <date>
The date in which a payment is to be settled by, or, if automated, will be taken on.
schemeIdstring (SchemeId)
The Payout or Collect scheme Id from the tenant portal.
metadataobject or null (Metadata)
A collection of key-value pairs defined by the client.
This object is subject to the following limits:
Maximum of 15 keys.
Keys have a maximum length of 64 characters.
Values have a maximum length of 256 characters.
400 Bad Request - Validation error response, containing errors such as:
Order not found
Instruction not found
Instruction cancelled
Instruction processing
default All other managed 4xx and 5xx errors
put /v2/order-management/{orderRef}/instruction/{instructionRef} Payload curl JavaScript C# Java Node.js Python Go PHP 4 more Node.js Python Go PHP 4 more Copy
Expand all Collapse all { "financialInstrumentId" : "35596f91-fea9-4297-b70b-01fdad24e25a" ,
"amount" : 20 ,
"currency" : "GBP" ,
"country" : "GB" ,
"settledByDate" : "2019-08-24" ,
"schemeId" : "ef1c9dbe-017b-4011-8bd1-352897f8dfef" ,
}
Order not found Instruction not found Instruction cancelled Instruction processing Order not found Order {orderRef} does not exist.
Copy
Expand all Collapse all { "timestamp" : 1692016778499 ,
"correlationId" : "0HMB2TA322CA7:00000001" ,
"errors" :
[ { "errorCode" : "ORDER_NOT_FOUND" ,
"message" : "Order [orderRef] does not exist." ,
"messageTemplate" : "Order {orderRef} does not exist." ,
} ] }
Create InstructionRole Requirements
tenant-transaction-write
or tenant-admin
Description
Create a new Order Instruction for the specified orderRef
.
path Parameters orderRefrequired
string <= 50 characters ^[a-zA-Z0-9-_\.]+$
header Parameters x-account-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-tenant-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-correlation-id string
Correlation Id for the request.
Request Body schema: application/json instructionRefrequired
string (InstructionRef) <= 50 characters ^[a-zA-Z0-9-_\.]+$
The instruction reference. [Required].
customerRefrequired
string (CustomerRef) <= 50 characters ^[a-zA-Z0-9-_\.]+$
The client defined unique Customer Reference.
directionrequired
string (Direction)
The direction of the instruction: Debit or Credit.
The Scheme used must match this direction.
Enum: "Debit" "Credit" financialInstrumentIdstring <uuid> (FinancialInstrumentId)
The system generated Financial Instrument identifier.
amountrequired
number <decimal> (Amount)
Currency amount. The number of decimal digits is validated against the currency code of the payment.
currencyrequired
string (Currency) ^[A-Z]{3}$
ISO 4217 code (3 uppercase letters) for the chosen currency.
countryrequired
string (Country) ^[A-Z]{2}$
The ISO 3166-1 alpha 2 country code (2 letter code) for the chosen country of the future transaction.
settledByDaterequired
string <date>
The date in which a payment is to be settled by, or, if automated, will be taken on.
schemeIdstring (SchemeId)
The Payout or Collect scheme Id from the tenant portal.
metadataobject or null (Metadata)
A collection of key-value pairs defined by the client.
This object is subject to the following limits:
Maximum of 15 keys.
Keys have a maximum length of 64 characters.
Values have a maximum length of 256 characters.
400 Bad Request - Validation error response, containing errors such as:
Order not found.
InstructionRef is required.
Instruction already exists.
CustomerRef is required.
Direction is required.
Amount is required.
Amount out of range. It must be greater than zero.
Amount is invalid.
Currency is required.
Currency length out of range. It must be in ISO 4217 currency code.
Country is required.
Country length out of range. It must be an ISO 3166 Alpha-2 code.
SettledByDate is required.
SettledByDate is invalid. It must be in the format YYYY-MM-DD.
SchemeId not recognised.
default All other managed 4xx and 5xx errors
post /v2/order-management/{orderRef}/instruction Payload curl JavaScript C# Java Node.js Python Go PHP 4 more Node.js Python Go PHP 4 more Copy
Expand all Collapse all { "instructionRef" : "instruction1" ,
"customerRef" : "customer1" ,
"direction" : "DEBIT" ,
"financialInstrumentId" : "35596f91-fea9-4297-b70b-01fdad24e25a" ,
"amount" : 20 ,
"currency" : "GBP" ,
"country" : "GB" ,
"settledByDate" : "2019-08-24" ,
"schemeId" : "ef1c9dbe-017b-4011-8bd1-352897f8dfef" ,
}
Order not found InstructionRef is required Instruction already exists CustomerRef is required Direction is required Amount is required Amount out of range Amount is invalid Currency is required Currency length out of range Country is required Country length out of range SettledByDate is required SettledByDate is invalid SchemeId not recognised Order not found Order {orderRef} does not exist.
Copy
Expand all Collapse all { "timestamp" : 1692016778499 ,
"correlationId" : "0HMB2TA322CA7:00000001" ,
"errors" :
[ { "errorCode" : "ORDER_NOT_FOUND" ,
"message" : "Order [orderRef] does not exist." ,
"messageTemplate" : "Order {orderRef} does not exist." ,
} ] }
Cancel InstructionRole Requirements
tenant-transaction-write
or tenant-admin
Description
Cancels an Instruction.
path Parameters orderRefrequired
string <= 50 characters ^[a-zA-Z0-9-_\.]+$
instructionRefrequired
string <= 50 characters ^[a-zA-Z0-9-_\.]+$
The Instruction reference.
header Parameters x-account-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-tenant-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-correlation-id string
Correlation Id for the request.
Request Body schema: application/json reasonstring <= 256 characters
Optional cancellation reason.
400 Bad Request - Validation error response, containing errors such as:
Order not found.
Instruction not found.
Instruction cancelled.
Instruction processing.
default All other managed 4xx and 5xx errors
post /v2/order-management/{orderRef}/instruction/{instructionRef}/cancel Payload curl JavaScript C# Java Node.js Python Go PHP 4 more Node.js Python Go PHP 4 more
Order not found Instruction not found Instruction cancelled Instruction processing Order not found Order {orderRef} does not exist.
Copy
Expand all Collapse all { "timestamp" : 1692016778499 ,
"correlationId" : "0HMB2TA322CA7:00000001" ,
"errors" :
[ { "errorCode" : "ORDER_NOT_FOUND" ,
"message" : "Order [orderRef] does not exist." ,
"messageTemplate" : "Order {orderRef} does not exist." ,
} ] }
Correct InstructionRole Requirements
imburse-write
or imburse-admin
Description
Corrects the final state of an Instruction.
path Parameters orderRefrequired
string <= 50 characters ^[a-zA-Z0-9-_\.]+$
instructionRefrequired
string <= 50 characters ^[a-zA-Z0-9-_\.]+$
The Instruction reference.
header Parameters x-account-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-tenant-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-correlation-id string
Correlation Id for the request.
Request Body schema: application/json statusrequired
string
The new status of the instruction.
Enum: "SETTLED" "FAILED" "COMPLETED" errorCodestring (TransactionErrorCode)
The error code when transaction has failed.
Enum: "ACCOUNT_BLOCKED" "ACCOUNT_CLOSED" "ACCOUNT_TRANSFERRED" "APP_CONFIGURATION" "AUTHENTICATION_REQUIRED" "DECEASED" "DISPUTED_TRANSACTION" "INSUFFICIENT_FUNDS" "INVALID_ACCOUNT_IDENTIFIER" "REFUSED_TRANSACTION" "TIMEOUT" "VALIDATION" "UNAUTHORIZED_TRANSACTION" "UNKNOWN" reasonstring
The reason for the transaction error.
internalNotesrequired
string
Notes about the correction for internal reference.
suppressInstructionNotificationsrequired
boolean
Flag to suppress webhook notifications for the instruction.
400 Bad Request - Validation error response, containing errors such as:
Order not found.
Instruction not found.
Status is required.
Invalid status supplied.
Error code is required (when status is FAILED).
Error code is invalid.
Instruction in wrong state.
State transition is invalid (i.e. from SETTLED to COMPLETED or vice versa).
Chargebacks/Refunds of the instruction has already been processed.
default All other managed 4xx and 5xx errors
post /v2/order-management/{orderRef}/instruction/{instructionRef}/correction Payload curl JavaScript C# Java Node.js Python Go PHP 4 more Node.js Python Go PHP 4 more Failed Settled Completed Failed { "status" : "FAILED" ,
"errorCode" : "TIMEOUT" ,
"reason" : "The instruction timed out." ,
"internalNotes" : "Corrected to FAILED as payment service provider marked the transaction as Settled prematurely while the instruction was still in progress." ,
"suppressInstructionNotifications" : false
}
Order not found Instruction not found Instruction status is required Instruction status is invalid Transaction Error Code is required Transaction Error Code is invalid Instruction invalid for correction Invalid instruction state transition Order not found Order {orderRef} does not exist.
Copy
Expand all Collapse all { "timestamp" : 1692016778499 ,
"correlationId" : "0HMB2TA322CA7:00000001" ,
"errors" :
[ { "errorCode" : "ORDER_NOT_FOUND" ,
"message" : "Order [orderRef] does not exist." ,
"messageTemplate" : "Order {orderRef} does not exist." ,
} ] }
Get OrderRole Requirements
tenant-transaction-read
or tenant-admin
Description
Gets an Order by the orderRef
.
path Parameters orderRefrequired
string <= 50 characters ^[a-zA-Z0-9-_\.]+$
header Parameters x-account-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-tenant-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-correlation-id string
Correlation Id for the request.
200 OK - Returns the Order response.
400 Bad Request - Validation error response, containing errors such as:
default All other managed 4xx and 5xx errors
get /v2/order-management/{orderRef} curl JavaScript C# Java Node.js Python Go PHP
Copy
Expand all Collapse all
Create OrderRole Requirements
tenant-transaction-write
or tenant-admin
Description
Create a new Order.
If you create the Order without any instructions
then the response will be 201 - Created
.
If you create the Order with instructions
then the response will be 202 - Accepted
.
header Parameters x-account-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-tenant-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-correlation-id string
Correlation Id for the request.
Request Body schema: application/json orderRefrequired
string (OrderRef) <= 50 characters ^[a-zA-Z0-9-_\.]+$
The order reference. [Required].
instructionsArray of objects (CreateInstructionRequest)
A optional list of the instructions to create against the order.
metadataobject or null (Metadata)
A collection of key-value pairs defined by the client.
This object is subject to the following limits:
Maximum of 15 keys.
Keys have a maximum length of 64 characters.
Values have a maximum length of 256 characters.
400 Bad Request - Validation error response, containing errors such as:
Order already exists.
OrderRef is required.
InstructionRef is required.
CustomerRef is required.
Direction is required.
Amount is required.
Amount out of range. It must be greater than zero.
Amount is invalid.
Currency is required.
Currency length out of range. It must be in ISO 4217 currency code.
Country is required.
Country length out of range. It must be an ISO 3166 Alpha-2 code.
SettledByDate is required.
SettledByDate is invalid. It must be in the format YYYY-MM-DD.
SchemeId not recognised.
default All other managed 4xx and 5xx errors
Payload curl JavaScript C# Java Node.js Python Go PHP 4 more Node.js Python Go PHP 4 more Copy
Expand all Collapse all { "orderRef" : "order1" ,
"instructions" :
[ { "instructionRef" : "instruction1" ,
"customerRef" : "customer1" ,
"direction" : "DEBIT" ,
"financialInstrumentId" : "35596f91-fea9-4297-b70b-01fdad24e25a" ,
"amount" : 20 ,
"currency" : "GBP" ,
"country" : "GB" ,
"settledByDate" : "2019-08-24" ,
"schemeId" : "ef1c9dbe-017b-4011-8bd1-352897f8dfef" ,
} ,
{ "instructionRef" : "instruction2" ,
"customerRef" : "customer1" ,
"direction" : "DEBIT" ,
"financialInstrumentId" : "35596f91-fea9-4297-b70b-01fdad24e25a" ,
"amount" : 5 ,
"currency" : "GBP" ,
"country" : "GB" ,
"settledByDate" : "2019-08-24" ,
"schemeId" : "ef1c9dbe-017b-4011-8bd1-352897f8dfef" ,
} ] , }
Order already exists OrderRef is required InstructionRef is required CustomerRef is required Direction is required Amount is required Amount out of range Amount is invalid Currency is required Currency length out of range Country is required Country length out of range SettledByDate is required SettledByDate is invalid SchemeId not recognised Order already exists Order {orderRef} already exists.
Copy
Expand all Collapse all { "timestamp" : 1692016778499 ,
"correlationId" : "0HMB2TA322CA7:00000001" ,
"errors" :
[ { "errorCode" : "ORDER_ALREADY_EXISTS" ,
"message" : "Order [orderRef] already exists." ,
"messageTemplate" : "Order {orderRef} already exists." ,
} ] }
Authorize RewardRole Requirements
tenant-transaction-write
or tenant-admin
Description
Authorizes a Reward by the customerRef
and instructionRef
.
path Parameters orderRefrequired
string <= 50 characters ^[a-zA-Z0-9-_\.]+$
instructionRefrequired
string <= 50 characters ^[a-zA-Z0-9-_\.]+$
The Instruction reference.
header Parameters x-account-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-tenant-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-correlation-id string
Correlation Id for the request.
400 Bad Request - Validation error response, containing errors such as:
Order not found.
Instruction not found.
Instruction cancelled.
Instruction processing.
default All other managed 4xx and 5xx errors
post /v2/order-management/{orderRef}/instruction/{instructionRef}/authorize-reward curl JavaScript C# Java Node.js Python Go PHP
Order not found Instruction not found Instruction cancelled Instruction processing Order not found Order {orderRef} does not exist.
Copy
Expand all Collapse all { "timestamp" : 1692016778499 ,
"correlationId" : "0HMB2TA322CA7:00000001" ,
"errors" :
[ { "errorCode" : "ORDER_NOT_FOUND" ,
"message" : "Order [orderRef] does not exist." ,
"messageTemplate" : "Order {orderRef} does not exist." ,
} ] }
Claim RewardRole Requirements
tenant-transaction-write
or tenant-admin
Description
Claims a Reward by the customerRef
and instructionRef
.
The response location
header value will contain the URL to call while the reward is claimed by the reward provider.
The time taken to claim a reward can vary so we give you a TransactionId to check against while we process the claim in the background.
See Get a Reward by Transaction Id for more information.
path Parameters orderRefrequired
string <= 50 characters ^[a-zA-Z0-9-_\.]+$
instructionRefrequired
string <= 50 characters ^[a-zA-Z0-9-_\.]+$
The Instruction reference.
header Parameters x-account-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-tenant-id required
string <uuid> = 36 characters
Example: 00000000-0000-0000-0000-000000000000
x-correlation-id string
Correlation Id for the request.
Request Body schema: application/json 202 Accepted - Returns a link in the location
header response.
400 Bad Request - Validation error response, containing errors such as:
Order not found.
Instruction not found.
Instruction cancelled.
Instruction processing.
Reward id not recognised.
Invalid reward id.
Transaction already exists.
default All other managed 4xx and 5xx errors
post /v2/order-management/{orderRef}/instruction/{instructionRef}/claim-reward Payload curl JavaScript C# Java Node.js Python Go PHP 4 more Node.js Python Go PHP 4 more
Order not found Instruction not found Instruction cancelled Instruction processing RewardId not recognised Invalid rewardId Transaction already exists Order not found Order {orderRef} does not exist.
Copy
Expand all Collapse all { "timestamp" : 1692016778499 ,
"correlationId" : "0HMB2TA322CA7:00000001" ,
"errors" :
[ { "errorCode" : "ORDER_NOT_FOUND" ,
"message" : "Order [orderRef] does not exist." ,
"messageTemplate" : "Order {orderRef} does not exist." ,
} ] }