Get the list of available banks
If the merchant is in test/sandbox mode, only return sandbox banks.
Need Merchant API Key
Authorizations:
Responses
Response samples
- 200
[- {
- "countries": [
- {
- "countryCode2": "string",
- "displayName": "string"
}
], - "credentialsType": { },
- "environmentType": { },
- "features": [
- "string"
], - "fullName": "string",
- "id": "string",
- "media": [
- {
- "source": "string",
- "type": "string"
}
], - "name": "string"
}
]
Get the list of available banks for merchants
If the merchant is in test/sandbox mode, only return sandbox banks.
Need API Key
Authorizations:
Responses
Response samples
- 200
[- {
- "countries": [
- {
- "countryCode2": "string",
- "displayName": "string"
}
], - "credentialsType": { },
- "environmentType": { },
- "features": [
- "string"
], - "fullName": "string",
- "id": "string",
- "media": [
- {
- "source": "string",
- "type": "string"
}
], - "name": "string"
}
]
Get bank details
No Authentication needed
Authorizations:
path Parameters
institutionId required | string Bank Id provided by Yapily |
Responses
Response samples
- 200
{- "countries": [
- {
- "countryCode2": "string",
- "displayName": "string"
}
], - "credentialsType": { },
- "environmentType": { },
- "features": [
- "string"
], - "fullName": "string",
- "id": "string",
- "media": [
- {
- "source": "string",
- "type": "string"
}
], - "name": "string"
}
Create a payment authorisation
Get Payment authorisation from Yapily and get the authorisation URL and QRCode URL for the client to authorise the payment with their bank.
Need Merchant API Key
Authorizations:
Request Body schema: application/json
institutionId required | string Bank ID provided by Yapily |
cartId required | string Merchant reference for the purchase. Usually called cartID |
Responses
Request samples
- Payload
{- "institutionId": "natwest-sandbox",
- "cartId": "user-cart-c0e9b438cc104be1a448d63fe8f318dc"
}
Response samples
- 201
{- "tracingId": "c0e9b438cc104be1a448d63fe8f318dc",
}
Get the Payment Status
Need a Merchant API Key
Authorizations:
query Parameters
tracingId required | string Example: tracingId=c0e9b438cc104be1a448d63fe8f318dc payment tracing ID, provided by Yapily, sent to gateway with the callback |
Responses
Response samples
- 200
{- "merchantName": "string",
- "paymentStatus": {
- "amountDetails": {
- "amount": 0,
- "currency": "string"
}, - "status": "string",
- "statusDetails": {
- "ISO status": {
- "code": "PDNG",
- "name": "Pending"
}, - "multiAuthorisationStatus": { },
- "status": "DECLINED",
- "statusReason": "string",
- "statusReasonDescription": "string",
- "statusUpdateDate": "2019-08-24T14:15:22Z"
}
}
}
Get a transaction
Get a transaction based on the merchant reference and merchant API key.
** Require Merchant API Key **
Authorizations:
path Parameters
cartId required | string |
Responses
Response samples
- 200
{- "queryData": "string",
- "id": "string",
- "merchantId": "string",
- "clientId": "string",
- "date": "2019-08-24T14:15:22Z",
- "cartTax": 0,
- "totalAmount": 0,
- "totalTax": 0,
- "lineItems": [
- "string"
], - "shippingType": "string",
- "shippingMethods": [
- "string"
], - "status": "string",
- "merchantReference": "string",
- "currency": "string",
- "paymentReference": "string",
- "paymentAuthorisationInfo": "string",
- "tracingId": "string",
- "paymentId": "string",
- "consentToken": "string",
- "statusHistory": "string",
- "refundAmount": 0,
- "lastUpdated": "2019-08-24T14:15:22Z",
- "created": "2019-08-24T14:15:22Z",
- "paymentSuccessUrl": "string",
- "checkoutUrl": "string",
- "secureToken": "string",
- "publicOrderReference": "string",
- "pendingCount": 0,
- "statusDetails": "string",
- "refundReference": "string",
- "charges": 0,
- "yapilyPaymentRequest": "string",
- "sandbox": true,
- "digitalOnly": true,
- "institutionId": "string"
}
Create a transaction. Recreate the transaction with the new data if already exists
Authorizations:
Request Body schema: application/json
cartId required | string Internal reference from your e-commerce platform. |
totalAmount required | object Total amount to be paid. Can be a number or a String representing a number |
required | Array of objects (CartItem) List of Items in the customer cart |
currency | string Currency code for the payment |
publicOrderReference | string Reference number visible by the customer. |
secureToken | string token to be used by the API to update the payment status on the e-commerce site. |
paymentSuccessUrl required | string URL to redirect user after successful payment. |
checkoutUrl required | string URL to redirect user to the checkout page if payment fails. |
digitalOnly | object Whether or not this transaction only has digital items. This will mean customers don't need to specify a shipping address |
customerEmail required | string |
customerFirstName | string |
customerLastName | string |
Responses
Request samples
- Payload
{- "cartId": "wc_cart_12345678ab",
- "totalAmount": "28.95",
- "lineItems": [
- {
- "id": "string",
- "name": "string",
- "quantity": "3",
- "imageUrl": "string",
- "price": { },
- "sku": "string",
- "tax": { }
}
], - "currency": "GBP",
- "publicOrderReference": "Order 25",
- "secureToken": "string",
- "digitalOnly": { },
- "customerEmail": "string",
- "customerFirstName": "string",
- "customerLastName": "string"
}
Response samples
- 201
{- "queryData": "string",
- "gatewayUrl": "string",
- "transaction": { }
}
Update a transaction
Authorizations:
Request Body schema: application/json
cartId required | string Internal reference from your e-commerce platform. |
totalAmount required | object Total amount to be paid. Can be a number or a String representing a number |
required | Array of objects (CartItem) List of Items in the customer cart |
currency | string Currency code for the payment |
publicOrderReference | string Reference number visible by the customer. |
secureToken | string token to be used by the API to update the payment status on the e-commerce site. |
paymentSuccessUrl required | string URL to redirect user after successful payment. |
checkoutUrl required | string URL to redirect user to the checkout page if payment fails. |
digitalOnly | object Whether or not this transaction only has digital items. This will mean customers don't need to specify a shipping address |
customerEmail | string |
customerFirstName | string |
customerLastName | string |
Responses
Request samples
- Payload
{- "cartId": "wc_cart_12345678ab",
- "totalAmount": "28.95",
- "lineItems": [
- {
- "id": "string",
- "name": "string",
- "quantity": "3",
- "imageUrl": "string",
- "price": { },
- "sku": "string",
- "tax": { }
}
], - "currency": "GBP",
- "publicOrderReference": "Order 25",
- "secureToken": "string",
- "digitalOnly": { },
- "customerEmail": "string",
- "customerFirstName": "string",
- "customerLastName": "string"
}
Response samples
- 200
- 201
{- "queryData": "string",
- "gatewayUrl": "string",
- "transaction": { }
}
Update the client details of a Transaction
Authorizations:
Request Body schema: application/json
cartId required | string |
customerEmail required | string |
customerFirstName required | string |
customerLastName required | string |
Responses
Request samples
- Payload
{- "cartId": "string",
- "customerEmail": "string",
- "customerFirstName": "string",
- "customerLastName": "string"
}
Response samples
- 200
{ }
Save the merchant settings
Authorizations:
Request Body schema: application/json
sandboxed | boolean <"true", "false", "yes", "no", "0", "1", true or false> Set if the PayIO API should be used on test/sandbox mode or not |
logoUrl | string Logo file URL |
logoText | string Alt text for the logo |
buttonMainColor | string <Hexadecimal with leading #> PayIo button color |
pluginActive | boolean <boolean> whether the merchant plugin has been activated or not |
platformBackendBaseUrl | string Base path of the backend of your platform. Needed to be able to send payment status update for supported platforms |
paymentStatusUpdateUrl | string Full path URL to update the payment status to your platform. Needed for the custom API integration |
shippingCalculationCallback | string Full path URL to get the shipping information from the e-commerce platform. Needed for the custom API integration |
Responses
Request samples
- Payload
{- "sandboxed": "true",
- "logoUrl": "string",
- "logoText": "Brand Name Logo",
- "buttonMainColor": "#fc6603",
- "pluginActive": "true",
- "platformBackendBaseUrl": "string",
- "paymentStatusUpdateUrl": "string",
- "shippingCalculationCallback": "string"
}
Response samples
- 200
{- "sandboxed": true,
- "logo": "string",
- "logoText": "string",
- "buttonMainColor": "string",
- "pluginActive": true,
- "paymentStatusUpdateUrl": "string",
- "platformBackendBaseUrl": "string",
- "shippingCalculationCallback": "string"
}