Return a paginated list of matching webhook subscriptions.
- Create Webhook Subscription
April API (3.0)
These endpoints provide various methods for authenticating users from a backend service.
- POST /auth/signin Sign-in from a backend service on behalf of a consumer customer (B2C) or customer delegate (B2B)
A person or business purchasing goods or services from a merchant using Spenda to facilitate the payment. Customers are defined at the merchant level, so if an individual makes payments with multiple merchants, they will have a customer record for each of these merchants.
Spenda supports two broad categories of customers:
Consumer customers are individuals typically making purchases from the merchant via e-commerce websites. They are uniquely identified by emailAddress for a given merchant.
Organisation customers represent businesses wishing to make purchases from the merchant. They are uniquely identified by referenceCustomerId for a given merchant.
- GET /customers Return a paginated list of matching customers
- POST /customers Create a new customer or update the details of an existing customer
- GET /customers/{customerId} Return details of a customer
- POST /customers/kyc Perform a Know Your Customer (KYC) check on a consumer customer
- GET /customers/delegates Return a paginated list of matching customer delegates
- GET /customers/delegates/{customerDelegateId} Return details of a customer delegate
- PATCH /customers/delegates/{customerDelegateId} Various actions for updating a customer delegate such as linking to a new customer
- DELETE /customers/delegates/{customerDelegateId} Delete a customer delegate
A business or individual that uses Spenda to facilitate payments for their customers.
- GET /merchants Return a paginated list of matching merchants
- POST /merchants Create a new sub-merchant within the context of a marketplace
- GET /merchants/{merchantId} Return details of a merchant
- PATCH /merchants/{merchantId} Various actions for updating a merchant such as updating the bank account used for payouts
- GET /merchants/{merchantId}/balances Query the account balances of a merchant
- POST /merchants/{merchantId}/files Upload a document scan as part of the merchant onboarding profile
- GET /merchants/{merchantId}/files/{fileId} Get details on a merchant onboarding file
- GET /merchants/{merchantId}/applepay Get the domains registered for ApplePay for the specified merchant
- GET /merchants/{merchantId}/owners Return details of all beneficial owners for the given merchant
- POST /merchants/{merchantId}/owners Create a beneficial owner for the given merchant
- GET /merchants/{merchantId}/owners/{ownerId} Return details of a beneficial owner
- PUT /merchants/{merchantId}/owners/{ownerId} Overwrite an existing beneficial owner
- DELETE /merchants/{merchantId}/owners/{ownerId} Delete a beneficial owner
- GET /merchants/industries List all industries we currently support
A payment source represents a reusable source of funds to use for payments.
- GET /sources/{sourceId}
- DELETE /sources/{sourceId}
- POST /sources Register a payment source that may be used to pay for one or more payments
- GET /sources Return a paginated list of matching payment sources
- GET /sources/blockedcards Return a paginated list of events related to cards that have been blocked
- PATCH /sources/blockedcards/{cardBlockId} Update actions on blocked cards
A payment token represents a single use reference to a source of funds that can be used to pay for an order.
- POST /tokens Generate a pay-in-full payment token based on the provided payment source
- GET /tokens/{paymentTokenId} Get the details for a pay-in-full payment token
- POST /tokens/{merchantId}/surchargequote Calculates the surcharged amounts for the specified payment type
A pay plan represents a payment where the Spenda platform has extended a loan to make a purchase that the customer pays back over one or more instalments.
- POST /payplans/offer Create a pay plan offer for a registered and KYC'd merchant customer
- GET /payplans Return a paginated list of matching pay plans
- POST /payplans Create a pay plan and payment token from a successful pay plan offer
- GET /payplans/{payPlanId} Return details of a pay plan
- POST /payplans/max Return the maximum loan amount the given customer is currently eligible for
- POST /payplans/parameters Calculate the pay plan parameters for the given amount and list of variants
An order captures the details of the goods or services that the customer is purchasing from the merchant.
- GET /orders Return a paginated list of matching orders
- POST /orders Creates a new order
- POST /orders/{orderId}/pay Pay for an order using a payment token
- GET /orders/{orderId} Retrieves an order
- DELETE /orders/{orderId} Cancels an order, invalidating it from being payable
- PATCH /orders/{orderId} Actions for modifying an existing order
Sandbox only endpoints for simulating external events such as a bank transfer.
- POST /simulation Sandbox only endpoint to simulate external events such as a bank transfer being performed
A transaction is a payment from the perspective of a merchant. The transaction shows how much the merchant will be paid, if they have been paid already and whether there have been any refunds.
- GET /transactions/{transactionId} Return details of a transaction
- GET /transactions Return a paginated list of matching transactions
- PATCH /transactions/{transactionId} Various actions for updating a transaction such as issuing a refund
- POST /transactions/payouts Request to create a manual payout for a merchant
- GET /transactions/payouts Return a paginated list of matching payout summaries
- GET /transactions/payouts/{payoutId} Return an aggregated breakdown of the money movements included in the payout along with details of the disbursement itself
- GET /transactions/invoices Return a paginated list of matching merchant invoices
- GET /transactions/invoices/{invoiceId} Return an aggregated breakdown of the money movements included in the invoice along with billing details
- GET /transactions/invoices/{invoiceId}/pdf Return a PDF of the merchant invoice intended to be sent to the payer merchant
- GET /transactions/settlement Return a paginated list of all settlement entries matching the given search criteria
- GET /transactions/settlement/report Return a list of all settlement entries matching the given search criteria
- GET /transactions/disputes Return a paginated list of all disputes matching the given search criteria
- GET /transactions/refunds Return a paginated list of matching refunds
A B2B2C setup where an entity with business customers (sub-merchants) uses Spenda to facilitate payments for their customers' customers.
- GET /marketplaces/{marketplaceId} Return details of a marketplace
- POST /marketplaces/customer Marketplace customers allow marketplaces to onboard their customers once and have them available over all their sub-merchants
Webhooks are a mechanism where merchants and marketplaces can register an endpoints against one or more events. When these events occur, a POST HTTP request is made to the registered endpoint with the event details.
- GET /webhooks Return a paginated list of matching webhook subscriptions
- POST /webhooks Create a new webhook subscription
- GET /webhooks/{id} Return details of a webhook subscription
- PATCH /webhooks/{id} Update an existing webhook subscription
Comma-delimited list of fields to sort by with sort priority from first to last. Fields are sorted by their natural ordering unless prefixed with a - character.
Only include webhook merchant subscriptions for this given list of sub-merchants. Only relevant for marketplace users interested in merchant level subscriptions.
Only include webhook marketplace subscriptions for the given marketplaceId. Only relevant for admin users interested in marketplace level subscriptions.
- Sandboxhttps://api.sandbox.au.meetapril.io/webhooks
- Productionhttps://api.au.meetapril.io/webhooks
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://api.sandbox.au.meetapril.io/webhooks?limit=0&page=0&sort=string&merchantId=string&marketplaceId=string&status=Active' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'Matching items sorted as specified
The marketplace system identifier for the marketplace for which you will receive webhook events.
Destination endpoint that will be called via an HTTP POST on new events.
An optional description indicating what the webhook is used for.
Optional metadata to include in the payload of all webhooks generated by this subscription.
Is this subscription currently active.
[ { "WebhookMarketplaceSubscription": { … } } ]
Request
Create a new webhook subscription. If called with a marketplace API key, the subscription will be at the marketplace level. If called with merchant credentials or if the Merchant-Id header is provided, the subscription will be at the merchant level.
Destination endpoint that will be called via an HTTP POST on new events. Protocol must be https
An optional description indicating what the webhook is used for.
- Sandboxhttps://api.sandbox.au.meetapril.io/webhooks
- Productionhttps://api.au.meetapril.io/webhooks
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
- CreateWebhookMarketplaceSubscription
- CreateWebhookMerchantSubscription
curl -i -X POST \
https://api.sandbox.au.meetapril.io/webhooks \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-H 'Merchant-Id: string' \
-d '{
"CreateWebhookMarketplaceSubscription": {
"url": "https://api.myservice.io/events",
"events": [
"MerchantCreated"
],
"description": "string",
"metadata": {}
}
}'The marketplace system identifier for the marketplace for which you will receive webhook events.
Destination endpoint that will be called via an HTTP POST on new events.
An optional description indicating what the webhook is used for.
Optional metadata to include in the payload of all webhooks generated by this subscription.
Is this subscription currently active.
- WebhookMarketplaceSubscription
- WebhookMerchantSubscription
{ "WebhookMarketplaceSubscription": { "id": "webhook_aZ-9V_KvllCPqGtA", "marketplaceId": "mktp_aZ-9UfKvllCPqGsi", "url": "https://api.myservice.io/events", "events": [ … ], "description": "string", "metadata": {}, "status": "Active", "secret": "string" } }
- Sandboxhttps://api.sandbox.au.meetapril.io/webhooks/{id}
- Productionhttps://api.au.meetapril.io/webhooks/{id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://api.sandbox.au.meetapril.io/webhooks/{id}' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'The marketplace system identifier for the marketplace for which you will receive webhook events.
Destination endpoint that will be called via an HTTP POST on new events.
An optional description indicating what the webhook is used for.
Optional metadata to include in the payload of all webhooks generated by this subscription.
Is this subscription currently active.
- WebhookMarketplaceSubscription
- WebhookMerchantSubscription
{ "WebhookMarketplaceSubscription": { "id": "webhook_aZ-9V_KvllCPqGtA", "marketplaceId": "mktp_aZ-9UfKvllCPqGsi", "url": "https://api.myservice.io/events", "events": [ … ], "description": "string", "metadata": {}, "status": "Active", "secret": "string" } }
- Sandboxhttps://api.sandbox.au.meetapril.io/webhooks/{id}
- Productionhttps://api.au.meetapril.io/webhooks/{id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PATCH \
'https://api.sandbox.au.meetapril.io/webhooks/{id}' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"UpdateWebhookSubscriptionStatus": {
"status": "Active"
}
}'The marketplace system identifier for the marketplace for which you will receive webhook events.
Destination endpoint that will be called via an HTTP POST on new events.
An optional description indicating what the webhook is used for.
Optional metadata to include in the payload of all webhooks generated by this subscription.
Is this subscription currently active.
- WebhookMarketplaceSubscription
- WebhookMerchantSubscription
{ "WebhookMarketplaceSubscription": { "id": "webhook_aZ-9V_KvllCPqGtA", "marketplaceId": "mktp_aZ-9UfKvllCPqGsi", "url": "https://api.myservice.io/events", "events": [ … ], "description": "string", "metadata": {}, "status": "Active", "secret": "string" } }
Loans are payment products where credit is extended by a loan facility to a borrower. The borrower can be either an individual or a business depending on the loan product in question.
- GET /loans Return a paginated list of matching loan summaries
- GET /loans/statements/{loanStatementId} Return a loan statement summary
- GET /loans/statements Return a paginated list of matching loan statement summaries
- GET /loans/statements/entries Return a paginated list of matching loan statement entries
- GET /loans/enterprise/statements/{loanStatementId}/download Return a loan statement report in either CSV, PDF or XML format
- GET /loans/statements/entries/report Return a list of all loan statement entries matching the given search criteria
Endpoints related to the issuing of digital cards, typically associated with a trade account based loan.
- POST /issuer/card Administer digital card(s)
- GET /issuer/card Return a paginated list of matching digital card summaries