Payments Sandbox (1.0)
Download OpenAPI specification:Download
This is Plusius Sandbox environment.
Here you can test Card and Bank Transfer payment. You can test creating of a Customer, and updating.
Create Customer
Create a Customer reference for a platform. This is only done once, before the first transaction. Then you should use the same reference number for all other transactions.
Authorizations:
header Parameters
Content-Type required | string Value: "application/json" Indicates the media type of the resource |
Request Body schema: application/json
CustomerReference required | string This is your customer reference that will be used to create quotes for this customer. |
CompanyName | string This should be the name of your company. |
CompanyId | string This should be your business ID. |
CompanyVatNumber | string The VAT number of your business. |
PublicUrl | string This should be your company's website. |
StreetAddress | string This should be your business address. |
ZipCode | string This should be the zip code of the city where your business is located. |
CountryCode | string This should be the country code of the country where your business is located. |
Responses
Request samples
- Payload
{- "CustomerReference": "9c6081b7-0382-4106-8ff9-08d93a303a65",
- "CompanyName": "ExampleCompany_1",
- "CompanyId": "909",
- "CompanyVatNumber": "158658",
- "StreetAddress": "Example Street 123",
- "ZipCode": "321 76",
- "CountryCode": "GB"
}
Response samples
- 200
{- "customerReference": "9c6081b7-0382-4106-8ff9-08d93a303a65",
- "httpStatusCode": 201,
- "success": true,
- "errors": null
}
Update Customer
Update a Customers details.
Authorizations:
query Parameters
Content-Type | string Value: "application/json" |
header Parameters
Content-Type required | string Value: "application/json" Indicates the media type of the resource |
Request Body schema: application/json
CustomerReference required | string The customer with this reference will be updated. |
CompanyName | string |
CompanyId | string |
CompanyVatNumber | string |
PublicUrl | string |
StreetAddress | string |
ZipCode | string |
CountryCode | string |
Responses
Request samples
- Payload
{- "CustomerReference": "9c6081b7-0382-4106-8ff9-08d93a303a65",
- "CompanyName": "ExampleCompany_1",
- "CompanyId": "909",
- "CompanyVatNumber": "158658",
- "StreetAddress": "Example Street 123",
- "ZipCode": "123 67",
- "CountryCode": "GB"
}
Response samples
- 200
{- "customerReference": "1b90b2f6-9a78-4605-af73-62f851d58fbs",
- "httpStatusCode": 200,
- "success": true,
- "errors": null
}
1.0 Create Quote
NOTE: Before creating a Quote make sure that you already created a Customer and that you have "customerReference".
A quote is created before creating or initiating a payment within the Plusius API.
Quotes must be created before a pay in is performed.
Quotes return payment options with appropriate rates and fees applied.
When creating a quote one of the two amount properties should be greater than zero. If collection amount is populated then the system will calculate the settlement amount and return it in the response. If the settlement amount is populated then the system will calculate the collection amount and return that in the response body.
Multiple payment options may be available to your platform and thus multiple payment options maybe returned for a single quote (an example of a payment option is Bank Transfer or Card Payment).
Authorizations:
query Parameters
api-version | string Default: "1.0" Enum: "1.0" "2.0" Used to denote which api version to use |
header Parameters
Content-Type required | string Value: "application/json" Indicates the media type of the resource |
Request Body schema:
Request body for creating a quotation within Plusius' API.
settlementAmount required | number The amount that will be sent to the receiving party. This can be zero or greater. If this is zero then collectionAmount must be greater than zero. |
settlementCurrency required | string The currency the amount will be received in. |
collectionAmount required | number The amount collected from your customer. This can be zero or greater. If this is zero then settlementAmount must be greater than zero. |
collectionCurrency required | string The currency the amount will be paid in with. |
customerReference required | string Your customer reference, who payment will be done for. This is available for you once you create a Customer. |
paymentReference required | string Your payment reference |
paymentProfile | string The payment profile you would like to use. This is specific for your platform, if not included in the request a default payment profile is used |
Responses
Request samples
- Payload
{- "settlementAmount": 100,
- "settlementCurrency": "EUR",
- "collectionAmount": 0,
- "collectionCurrency": "GBP",
- "customerReference": "your-customers-reference",
- "paymentReference": "your-payment-reference",
- "paymentProfile": "normal"
}
Response samples
- 201
- 400
{- "uniqueQuoteId": "string",
- "externalPaymentReference": "string",
- "paymentOptions": [
- {
- "paymentOptionUniqueId": "string",
- "settlementCurrency": "string",
- "settlementAmount": 1000,
- "collectionCurrency": "string",
- "collectionAmount": 800,
- "rate": 0.8,
- "rateUpdatedAt": "string",
- "validUntilEpoch": 0,
- "validForInMins": 0,
- "partialUri": "string",
- "type": "string",
- "feeInSettlementCurrency": 7,
- "feeInCollectionCurrency": 15
}
], - "httpStatusCode": 200,
- "success": true,
- "errors": null
}
2.0 Bank Transfer Pay
NOTE: Before Bank Transfer initiation make sure that you already completed Quote.
Initiate a payment using Bank Transfer.
Bank transfers can be paid a standard bank transfer the reference must be always be exactly as its displayed in the response.
Some bank transfers can be completed using an initiation service provider (as shown in the example), the payment initiation url will not be in the response if this payment cannot be completed in this way.
Authorizations:
header Parameters
Content-Type required | string Value: "application/json" Indicates the media type of the resource |
Request Body schema: application/json
quoteId required | string This should contain the unique quote ID that you can find in the Quote response (uniqueQuoteId) |
paymentOptionId required | string This should contain the unique payment ID that you can find in the Quote response (paymentOptionUniqueId) |
Responses
Request samples
- Payload
{- "quoteId": "string",
- "paymentOptionId": "string"
}
Response samples
- 200
- 404
{- "quoteId": "6ab018c7-d3a7-4091-9fa7-06edaf0c0233",
- "paymentOption": {
- "paymentOptionId": "96ab0add-313a-4af3-bfef-bde1d2f236eed",
- "reference": "GBPGNHS7R",
- "bankAccountName": "Plusius",
- "currencyCode": "GBP",
- "bankAccountNumber": "90220611",
- "sortCode": "602382",
}, - "httpStatusCode": 200,
- "success": true
}
Get Indicative Rates
Retrieve an indicative rate for a currency pairing.
Authorizations:
query Parameters
fromCurrency required | string Default: "EUR" Value: "EUR" The source currency for the indicative rate |
toCurrency required | string Default: "SEK" Value: "SEK" The destination currency for the indicative rate |
Responses
Response samples
- 200
{- "currencyPair": "EURSEK",
- "settlementCurrency": "SEK",
- "collectionCurrency": "EUR",
- "paymentOptions": [
- {
- "rate": 10.21109,
- "rateUpdatedAt": "2022-02-03T10:30:00.0000000+00:00",
- "type": "BankPayment"
}, - {
- "rate": 10.21109,
- "rateUpdatedAt": "2022-02-03T10:30:00.0000000+00:00",
- "type": "CardPayment"
}
], - "httpStatusCode": 200,
- "success": true,
- "errors": null
}
Get Currency pairs
Return all supported currency pairs for your platform.
Authorizations:
Responses
Response samples
- 200
{- "currencyPairs": [
- "SEKGBP",
- "GBPSEK",
- "EURGBP",
- "EUREUR",
- "EURSEK",
- "EURNOK",
- "EURUSD",
- "USDSEK",
- "SEKUSD"
], - "httpStatusCode": 200,
- "success": true,
- "errors": null
}
Get Quote Details
Returns the quote details of an existing quote
Authorizations:
path Parameters
uniqueQuoteId required |
Responses
Response samples
- 200
{- "uniqueQuoteId": "9ef22ce6-fa02-401b-91e6-5fff8dfd370e",
- "externalPaymentReference": "Test123",
- "paymentOptions": [
- {
- "paymentOptionUniqueId": "04aa382e-52cf-45c2-9798-8fdf296ee31a",
- "settlementCurrency": "EUR",
- "settlementAmount": 100,
- "collectionCurrency": "GBP",
- "collectionAmount": 84.049675,
- "rate": 1.201670322,
- "rateUpdatedAt": "2022-03-01T15:00:00.0000000+00:00",
- "type": "bankpayment",
- "feeInSettlementCurrency": 1,
- "feeInCollectionCurrency": 0.832175
}, - {
- "paymentOptionUniqueId": "bcc52801-ef53-4424-9087-c9bd03dab507",
- "settlementCurrency": "EUR",
- "settlementAmount": 100,
- "collectionCurrency": "GBP",
- "collectionAmount": 84.049675,
- "rate": 1.201670322,
- "rateUpdatedAt": "2022-03-01T15:00:00.0000000+00:00",
- "type": "cardpayment",
- "feeInSettlementCurrency": 1,
- "feeInCollectionCurrency": 0.832175
}
]
}
Get Currency Pairs From Payment Profiles
Return all supported currency pairs for your platform. Limited to the payment profile specified.
Authorizations:
path Parameters
paymentProfile required | Default: "" Value: "" |
Responses
Response samples
- 200
{- "currencyPairs": [
- "SEKGBP",
- "GBPSEK",
- "EURGBP",
- "EUREUR",
- "EURSEK",
- "EURNOK",
- "EURUSD",
- "USDSEK",
- "SEKUSD"
], - "httpStatusCode": 200,
- "success": true,
- "errors": null
}
1.0 Create Quote
NOTE: Before creating a Quote make sure that you already created a Customer and that you have "customerReference".
A quote is created before creating or initiating a payment within the Plusius API.
Quotes must be created before a pay in is performed.
Quotes return payment options with appropriate rates and fees applied.
When creating a quote one of the two amount properties should be greater than zero. If collection amount is populated then the system will calculate the settlement amount and return it in the response. If the settlement amount is populated then the system will calculate the collection amount and return that in the response body.
Multiple payment options may be available to your platform and thus multiple payment options maybe returned for a single quote (an example of a payment option is Bank Transfer or Card Payment).
Authorizations:
query Parameters
api-version | string Default: "1.0" Enum: "1.0" "2.0" Used to denote which api version to use |
header Parameters
Content-Type required | string Value: "application/json" Indicates the media type of the resource |
Request Body schema:
Request body for creating a quotation within Plusius' API.
settlementAmount required | number The amount that will be sent to the receiving party. This can be zero or greater. If this is zero then collectionAmount must be greater than zero. |
settlementCurrency required | string The currency the amount will be received in. |
collectionAmount required | number The amount collected from your customer. This can be zero or greater. If this is zero then settlementAmount must be greater than zero. |
collectionCurrency required | string The currency the amount will be paid in with. |
customerReference required | string Your customer reference, who payment will be done for. This is available for you once you create a Customer. |
paymentReference required | string Your payment reference |
paymentProfile | string The payment profile you would like to use. This is specific for your platform, if not included in the request a default payment profile is used |
Responses
Request samples
- Payload
{- "settlementAmount": 100,
- "settlementCurrency": "EUR",
- "collectionAmount": 0,
- "collectionCurrency": "GBP",
- "customerReference": "your-customers-reference",
- "paymentReference": "your-payment-reference",
- "paymentProfile": "normal"
}
Response samples
- 201
- 400
{- "uniqueQuoteId": "string",
- "externalPaymentReference": "string",
- "paymentOptions": [
- {
- "paymentOptionUniqueId": "string",
- "settlementCurrency": "string",
- "settlementAmount": 1000,
- "collectionCurrency": "string",
- "collectionAmount": 800,
- "rate": 0.8,
- "rateUpdatedAt": "string",
- "validUntilEpoch": 0,
- "validForInMins": 0,
- "partialUri": "string",
- "type": "string",
- "feeInSettlementCurrency": 7,
- "feeInCollectionCurrency": 15
}
], - "httpStatusCode": 200,
- "success": true,
- "errors": null
}
2.1 Card Payment Pay
NOTE: Before card payment initiation make sure that you have already created a quote.
Initiates a card payment.
Credit Card Test Data
Visa
Card number: 4925000000000004
Expiry: After the current month
CVC: Any
Mastercard
Card number: 5226600159865967
Expiry: After the current month
CVC: Any
3-D Secure
Visa
Card number: 4761739001010416
Expiry: After the current month
CVC: Any
Mastercard
Card number: 5226612199533406
Expiry: After the current month
CVC: Any
Authorizations:
header Parameters
Content-Type required | string Value: "application/json" Indicates the media type of the resource |
Request Body schema: application/json
quoteId required | string This should contain the unique quote ID that you can find in the Quote response (uniqueQuoteId) |
paymentOptionId required | string This should contain the unique payment ID that you can find in the Quote response (paymentOptionUniqueId) |
isMerchantInitiated | boolean If set to true the card details will be remembered for the next card payment ('reDirectAuthorizationHref' will be NULL on the next card payment if this value is still true and payment will complete without customer needing to enter their card details) |
cancelUrl required | string |
completeUrl required | string |
Responses
Request samples
- Payload
{- "quoteId": "string",
- "paymentOptionId": "string",
- "isMerchantInitiated": false,
- "cancelUrl": "string",
- "completeUrl": "string"
}
Response samples
- 200
- 404
{- "quoteId": "c44e3683-8c7a-4309-a139-fab2472ffdf5",
- "paymentOptionId": "694b6668-575c-451e-b164-3cd1f7d11bcd",
- "receiverCurrency": "GBP",
- "cardDetails": {
- "maskedPAN": "492500******0004",
- "issuingBank": null,
- "brand": "Visa",
- "expiresOn": "2022-12-26",
- "type": "Credit",
- "countryCode": null
}, - "httpStatusCode": 200,
- "success": true,
- "errors": null
}
Get Indicative Rates
Retrieve an indicative rate for a currency pairing.
Authorizations:
query Parameters
fromCurrency required | string Default: "EUR" Value: "EUR" The source currency for the indicative rate |
toCurrency required | string Default: "SEK" Value: "SEK" The destination currency for the indicative rate |
Responses
Response samples
- 200
{- "currencyPair": "EURSEK",
- "settlementCurrency": "SEK",
- "collectionCurrency": "EUR",
- "paymentOptions": [
- {
- "rate": 10.21109,
- "rateUpdatedAt": "2022-02-03T10:30:00.0000000+00:00",
- "type": "BankPayment"
}, - {
- "rate": 10.21109,
- "rateUpdatedAt": "2022-02-03T10:30:00.0000000+00:00",
- "type": "CardPayment"
}
], - "httpStatusCode": 200,
- "success": true,
- "errors": null
}
Get Currency pairs
Return all supported currency pairs for your platform.
Authorizations:
Responses
Response samples
- 200
{- "currencyPairs": [
- "SEKGBP",
- "GBPSEK",
- "EURGBP",
- "EUREUR",
- "EURSEK",
- "EURNOK",
- "EURUSD",
- "USDSEK",
- "SEKUSD"
], - "httpStatusCode": 200,
- "success": true,
- "errors": null
}
Check Card Payment status
Check payment status of your Card payment. Will return 404 if the card payment has not been initialised yet.
Authorizations:
path Parameters
quoteId required |
Responses
Response samples
- 200
- 404
{- "quoteId": "946af600-7c1a-4c95-8115-1077bdd6a343",
- "paymentOptionId": "058ce41b-e183-47ab-a95b-a01febd495b0",
- "amount": "11827.34",
- "currency": "USD",
- "status": "Created"
}
Get Quote Details
Returns the quote details of an existing quote
Authorizations:
path Parameters
uniqueQuoteId required |
Responses
Response samples
- 200
{- "uniqueQuoteId": "9ef22ce6-fa02-401b-91e6-5fff8dfd370e",
- "externalPaymentReference": "Test123",
- "paymentOptions": [
- {
- "paymentOptionUniqueId": "04aa382e-52cf-45c2-9798-8fdf296ee31a",
- "settlementCurrency": "EUR",
- "settlementAmount": 100,
- "collectionCurrency": "GBP",
- "collectionAmount": 84.049675,
- "rate": 1.201670322,
- "rateUpdatedAt": "2022-03-01T15:00:00.0000000+00:00",
- "type": "bankpayment",
- "feeInSettlementCurrency": 1,
- "feeInCollectionCurrency": 0.832175
}, - {
- "paymentOptionUniqueId": "bcc52801-ef53-4424-9087-c9bd03dab507",
- "settlementCurrency": "EUR",
- "settlementAmount": 100,
- "collectionCurrency": "GBP",
- "collectionAmount": 84.049675,
- "rate": 1.201670322,
- "rateUpdatedAt": "2022-03-01T15:00:00.0000000+00:00",
- "type": "cardpayment",
- "feeInSettlementCurrency": 1,
- "feeInCollectionCurrency": 0.832175
}
]
}
Get Currency Pairs From Payment Profiles
Return all supported currency pairs for your platform. Limited to the payment profile specified.
Authorizations:
path Parameters
paymentProfile required | Default: "" Value: "" |
Responses
Response samples
- 200
{- "currencyPairs": [
- "SEKGBP",
- "GBPSEK",
- "EURGBP",
- "EUREUR",
- "EURSEK",
- "EURNOK",
- "EURUSD",
- "USDSEK",
- "SEKUSD"
], - "httpStatusCode": 200,
- "success": true,
- "errors": null
}
Create Payout Request
When required you will need to request a payout to happen. This can be used to add payment reference to the payout so the collector or receiver of the payment will know what the payment is for.
Authorizations:
Request Body schema: application/json
quoteId required | string The quote id generated by create quote |
recipientTransferReference required | string The recipient will use the reference to identify this payment |
Responses
Request samples
- Payload
{- "quoteId": "f03a27a8-18ca-4c72-94a8-0a6cac0c0c2d",
- "recipientTransferReference": "Tax_Payment_1234"
}
Response samples
- 201
- 400
{- "httpStatusCode": 201,
- "success": true,
- "message": "Payout request has been created"
}