Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improved links from OBUK Quick Start and added some Bacs-specific edi… #109

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions _data/glossary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ credit_transfer: "A Credit Transfer or CT is a payment instruction from one acco

direct_debit: "A Direct Debit or DD is a payment initiated by an originator that pulls the requested amount from the payer's bank account. Payers must have agreed to the payment being pulled from their account in advance by signing a mandate or Direct Debit Instruction. "

ddi: "A Direct Debit Instruction - used in the Bacs Direct Debit scheme to gain a payer's authority to debit his/her account; a DDI is the SEPA equivalent of a Direct Debit Mandate."

otp: "One-Time Password"

psu: "Payment Service User - the person using the payment service - the payer."
Expand Down
24 changes: 12 additions & 12 deletions _data/sidebars/np_sidebar.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ entries:
output: web, pdf
folderitems:

- title: Mandate Basics
- title: Mandate / DDI Basics
url: /np_mdtbasics.html
output: web, pdf

Expand Down Expand Up @@ -79,52 +79,52 @@ entries:
output: web, pdf


- title: Mandates
- title: Mandates / DDIs
output: web, pdf
folderitems:

- title: Overview
url: /np_mdtoverview.html
output: web, pdf

- title: Mandate Statuses
- title: Mandate / DDI Statuses
url: /np_mandatestatuses.html
output: web, pdf

subfolders:
- title: Mandate APIs
- title: Mandate / DDI APIs
output: web
subfolderitems:

- title: Create Mandate
- title: Create Mandate / DDI
url: /np_createmandate.html
output: web

- title: Retrieve Mandate
- title: Retrieve Mandate / DDI
url: /np_retrievemandate.html
output: web

- title: Retrieve Mandate Document
- title: Retrieve Mandate / DDI Document
url: /np_retrievemandatedoc.html
output: web

- title: Upload Mandate Document
- title: Upload Mandate / DDI Document
url: /np_uploademandatedoc.html
output: web

- title: List Mandates
- title: List Mandates / DDI
url: /np_listmandates.html
output: web

- title: Update Mandate
- title: Update Mandate / DDI
url: /np_updatemandate.html
output: web

- title: Activate Mandate
- title: Activate Mandate / DDI
url: /np_activatemandate.html
output: web

- title: Cancel Mandate
- title: Cancel Mandate / DDI
url: /np_cancelmandate.html
output: web

Expand Down
37 changes: 34 additions & 3 deletions pages/prodNuapay/np_ddpayments.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,40 @@ summary: "Once your mandate is created you can link single Direct Debit or payme
sidebar: np_sidebar
permalink: np_ddpayments.html
folder: product2
toc: false
---

## Overview

In Direct Debit payments:

* A Direct Debit is linked to a mandate (in SEPA) or to a Direct Debit Instruction - a DDI (in Bacs).
* Direct Debit payments are **pulled** from your payers' accounts on the collection date and credited to your Nuapay merchant account.
* Depending on your business model you may decide to create single Direct Debit payments or, more typically, configure a schedule of recurring payments.
* For more information on Direct Debits see the [Direct Debit Overview](np_ddoverview.html) section.

## Scheme Overview

Every Direct Debit payment must be linked to a mandate or a DDI and every mandate/DDI must be linked to a specific scheme and currency.

Nuapay supports the following Direct Debit schemes:

|**Scheme Name**|**Currency**|
|SEPA CORE| EUR|
|SPEA B2B| EUR|
|Bacs|GBP|

The SEPA scheme is managed by the European Payment Council. In the UK, Bacs is responsible for various payment schemes including the Direct Debit scheme.

Both the EPC and Bacs publish guides and rulebooks (which are generally updated on an anual basis) related to how the schemes should be implemented. Nuapay is fully compliant with these rulebooks and constantly monitor and update our Direct Debit solution as required to ensure that we remain fully compliant.


## Scheme Differences

|**Scheme Name**|**Mandate Lodged with Debtor Bank?**|**Earliest Export Date**|**Pre-Settlement R-Transactions Possible?**|**Post-Settlement Return Period**|**Refunds Allowed?**|**Refund Period (athorised)**|**Refund Period (Unathorised)**|
|SEPA CORE| No| D-1|Yes|D+5|Yes|D+8 weeks|D+13 months|
|SEPA B2B|Yes (Manual Process)|D-1|Yes|D+3|No|N/A|N/A|
|Bacs DD|Yes (Automated)|D-3|No|D+3|Yes|No Time limit|No Time limit|



<p>A Direct Debit payment is linked to a mandate. The Direct Debit is <i>pulled</i> from your payer's account on the settlement date and credited to your merchant account. </p>
<p>Depending on your business model you may decide to create single Direct Debit payments or, more typically, configure a schedule of recurring payments.</p>
<p>For more information on Direct Debits see the <a href= "np_ddoverview.html">Direct Debit Overview</a> section</p>
23 changes: 13 additions & 10 deletions pages/prodNuapay/np_mdtbasics.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,26 @@
---
title: Mandate Basics
keywords: Mandates
summary: "Mandates/Direct Debit Instructions (DDIs) are the starting point for your Direct Debit payments processing. A signed mandates gives your business the legal authority to debit funds from your payers' accounts for the goods or services that you supply. "
title: Mandate / Direct Debit Instruction Basics
keywords: Mandates Direct Debit Instruction
summary: "Mandates/Direct Debit Instructions (DDIs) are the starting point for your Direct Debit payments processing. A signed mandates/DDI gives your business the legal authority to debit funds from your payers' accounts for the goods or services that you supply. "
sidebar: np_sidebar
permalink: np_mdtbasics.html
folder: prodNuapay
---

## What is a Mandate?
## What is a Mandate/ DDI?

{% include important.html content=" Each of your payers must sign a mandate before you can take any Direct Debit payments!" %}
{% include important.html content=" Each of your payers must sign a mandate/DDI before you can take any Direct Debit payments!" %}

Direct Debits are a Pull payment method (you are <i>pulling</i> funds from your payers' accounts).

When paying for your service with Credit or Debit Cards, for example, your payers are fully in control of the payment and they decide when to credit funds to you. Card payments are Push payments (your payers <i>push</i> payments to you).
When paying for your service with Credit or Debit Cards, for example, note that your payers:

* Are fully in control of the payment and they decide when to credit funds to you.
* Card payments are Push payments (your payers <i>push</i> payments to you).

As a merchant, having the ability to initiate a pull payment is very powerful. To ensure that payers are safeguarded and are fully aware that you will be taking (pulling) payments from their accounts at certain points in time, they must formally agree to allow you to take these pull payments.

{% include note.html content="This agreement between the payer and merchant is the <b>Mandate</b>. It is a legal agreement that informs users that they are agreeing to have their bank account debited periodically and also provides them with full details of their refund rights." %}
{% include note.html content="This agreement between the payer and merchant is the <b>Mandate</b> (in SEPA) and the <b>Direct Debit Instruction</b> (in Bacs). It is a legal agreement that informs users that they are agreeing to have their bank account debited periodically and also provides them with full details of their refund rights." %}


## SEPA Guarantee
Expand All @@ -34,13 +37,13 @@ For Bacs the Direct Debit Guarantee and Direct Debit logo must be provided on al
<img src="images/bacs-guarantee.png">


## Mandate Types
## Mandate/DDI Types

You may chose to collect mandates on paper, with a normal ink signature; alternatively mandates can be handled electronically (with authorisation being provided via a check box or SMS code, for example). Nuapay offers you the flexibility to choose either approach.
You may chose to collect mandates on paper, with a normal ink signature; alternatively mandates/DDIs can be handled electronically (with authorisation being provided via a check box or SMS code, for example). Nuapay offers you the flexibility to choose either approach.

For more information on electronic mandates, see the <a href ="em_landing_page.html">E-Mandates</a> section.

{% include note.html content="All your mandates must be linked to a specific originator identifier that is unique to your business. This identifier is the Creditor Scheme ID (in the SEPA CORE schemes) or the Service User Number (SUN in the Bacs Direct Debit scheme)." %}
{% include note.html content="All your mandates/DDIs must be linked to a specific originator identifier that is unique to your business. This identifier is the Creditor Scheme ID (in the SEPA schemes) or the Service User Number (SUN in the Bacs Direct Debit scheme)." %}


{% include links.html %}
Expand Down
4 changes: 2 additions & 2 deletions pages/prodOpenBanking/ob_checkoutoverview.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,9 @@ An API Key or OAuth token uniquely identifies you on Nuapay and is required to a
For more on API Keys and OAuth, see the <a href="ob_generalrules.html">API Basics</a> section.


## Generating a Unique Payment ID
## Calling the Payment Endpoint

The Open Banking payment endpoint returns a payment identifier on a sucessful invocation.
The Open Banking payment endpoint returns a payment identifier on a successful invocation.

To generate a payment ID:

Expand Down
1 change: 1 addition & 0 deletions pages/prodOpenBanking/ob_checkoutoverviewmerch.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ A detailed overview of the various steps involved in this flow is provided in th

{% include tip.html content="Click Extend from the top menu to enlarge or click the image itself to open it in a new browser tab/window" %}


{% include image.html file="ob_checkout_flow-merchant.png" url="images/ob_checkout_flow-merchant.png" target = "_new" alt="Checkout Flow - Merchant" caption="CHECKOUT Flow - Merchant" %}

## Authorisation
Expand Down
3 changes: 3 additions & 0 deletions pages/prodOpenBanking/ob_createpayment.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,9 @@ If you do not specify an account in this request, and assuming the PSU has more

{% include urls-ob.html %}

## Create Payment Endpoint


<ul id="profileTabs" class="nav nav-tabs">


Expand Down
2 changes: 2 additions & 0 deletions pages/prodOpenBanking/ob_getbank.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ Where you specify two or more value for the `supportedcurrencies` array (in the

{% include urls-ob.html %}

## Retrieve Banks Endpoint

<ul id="profileTabs" class="nav nav-tabs">


Expand Down
2 changes: 2 additions & 0 deletions pages/prodOpenBanking/ob_paymentcallback.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ The Forward Payment Callback service allows you to pass the callback parameters

{% include urls-ob.html %}

## Forward Payment Callback Endpoint

<ul id="profileTabs" class="nav nav-tabs">


Expand Down
26 changes: 13 additions & 13 deletions pages/prodOpenBanking/ob_quickstart.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,36 +25,36 @@ The following sections give a high-level summary of the calls required for each

Call the following services in this order:

|<span class="label label-success">GET</span>| [Access Token](ob_partnerintegration.html#api-details---post-tokens)| (Optional) Use this service to retrieve an OAuth token. Alternatively you may call Create Payment with your API Key.|
|<span class="label label-info">POST</span>|[Create Payment](ob_createpayment.html)| The Create Payment service generates an Open Banking payment object, returning a unique `paymentId` with an (initial) status of PENDING_APPROVAL. Manage the returned payment identifier with some Nuapay-provided JS and CSS to render the Bank Selection screen for your payers.|
|[<span class="label label-info">POST</span>](ob_partnerintegration.html#api-details---post-tokens)| [Access Token](ob_partnerintegration.html#api-details---post-tokens)| (Optional) Use this service to retrieve an OAuth token. Alternatively you may call Create Payment with your API Key.|
|[<span class="label label-info">POST</span>](ob_createpayment.html#create-payment-endpoint)|[Create Payment](ob_createpayment.html#create-payment-endpoint)| The Create Payment service generates an Open Banking payment object, returning a unique `paymentId` with an (initial) status of PENDING_APPROVAL. Manage the returned payment identifier with some Nuapay-provided JS and CSS to render the Bank Selection screen for your payers.|
|-|-|The <a href="#" data-toggle="tooltip" data-original-title="{{site.data.glossary.psu}}">PSU</a> selects a bank (also referred to as the <a href="#" data-toggle="tooltip" data-original-title="{{site.data.glossary.aspsp}}">ASPSP</a>) and is redirected to authenticate and approve the payment on that ASPSP's online banking portal.|
|<span class="label label-success">GET</span>|[Retrieve Payment Status](ob_retrievepayment.html)| Retrieve the status of the payment|
|[<span class="label label-success">GET</span>](ob_retrievepayment.html#retrieve-payment-endpoint)|[Retrieve Payment Status](ob_retrievepayment.html#retrieve-payment-endpoint)| Retrieve the status of the payment|

For more details on this see the [Merchant-level Checkout Setup](ob_checkoutoverviewmerch.html).

## Self-Hosted

Call the following services in this order:

|<span class="label label-success">GET</span>| [Access Token](ob_partnerintegration.html#api-details---post-tokens)| Use this service to retrieve an OAuth token.|
|<span class="label label-success">GET</span>| [Retrieve Banks](ob_getbank.html)| Use this service to give your <a href="#" data-toggle="tooltip" data-original-title="{{site.data.glossary.psu}}">PSU</a> a list of banks from which to choose|
|<span class="label label-info">POST</span>|[Create Payment](ob_createpayment.html)| Once the user select a bank, pass the payment request to the ASPSP.|
|[<span class="label label-info">POST</span>](ob_partnerintegration.html#api-details---post-tokens)| [Access Token](ob_partnerintegration.html#api-details---post-tokens)| Use this service to retrieve an OAuth token.|
|[<span class="label label-success">GET</span>](ob_getbank.html#retrieve-banks-endpoint)| [Retrieve Banks](ob_getbank.html#retrieve-banks-endpoint)| Use this service to give your <a href="#" data-toggle="tooltip" data-original-title="{{site.data.glossary.psu}}">PSU</a> a list of banks from which to choose|
|[<span class="label label-info">POST</span>](ob_createpayment.html#create-payment-endpoint)|[Create Payment](ob_createpayment.html#create-payment-endpoint)| Once the user select a bank, pass the payment request to the ASPSP.|
|-|-|The <a href="#" data-toggle="tooltip" data-original-title="{{site.data.glossary.psu}}">PSU</a> selects a bank (also referred to as the <a href="#" data-toggle="tooltip" data-original-title="{{site.data.glossary.aspsp}}">ASPSP</a>) and is redirected to authenticate and approve the payment on that ASPSP's online banking portal.|
|<span class="label label-success">GET</span>|[Retrieve Payment Status](ob_retrievepayment.html)| Retrieve the status of the payment.|
|[<span class="label label-success">GET</span>](ob_retrievepayment.html#retrieve-payment-endpoint)|[Retrieve Payment Status](ob_retrievepayment.html#retrieve-payment-endpoint)| Retrieve the status of the payment.|

For more details on this see the [Merchant-Level Self-Hosted Setup](ob_selfsetupoverviewmerch.html)

## Self-Hosted Callback

Call the following services in this order:

|<span class="label label-success">GET</span>| [Access Token](ob_partnerintegration.html#api-details---post-tokens)| Use this service to retrieve an OAuth token.|
|<span class="label label-success">GET</span>| [Retrieve Banks](ob_getbank.html)| Use this service to give your <a href="#" data-toggle="tooltip" data-original-title="{{site.data.glossary.psu}}">PSU</a> a list of banks from which to choose|
|<span class="label label-info">POST</span>|[Create Payment](ob_createpayment.html)| Once the user selects a bank, pass the payment request to the ASPSP.|
|[<span class="label label-info">POST</span>](ob_partnerintegration.html#api-details---post-tokens)| [Access Token](ob_partnerintegration.html#api-details---post-tokens)| Use this service to retrieve an OAuth token.|
|[<span class="label label-success">GET</span>](ob_getbank.html#retrieve-banks-endpoint)| [Retrieve Banks](ob_getbank.html#retrieve-banks-endpoint)| Use this service to give your <a href="#" data-toggle="tooltip" data-original-title="{{site.data.glossary.psu}}">PSU</a> a list of banks from which to choose|
|[<span class="label label-info">POST</span>](ob_createpayment.html#create-payment-endpoint)|[Create Payment](ob_createpayment.html#create-payment-endpoint)| Once the user select a bank, pass the payment request to the ASPSP.|
|-|-|The <a href="#" data-toggle="tooltip" data-original-title="{{site.data.glossary.psu}}">PSU</a> selects a bank (also referred to as the <a href="#" data-toggle="tooltip" data-original-title="{{site.data.glossary.aspsp}}">ASPSP</a>) and is redirected to authenticate and approve the payment on that ASPSP's online banking portal.|
|<span class="label label-success">GET</span>|[Access Token](ob_partnerintegration.html#api-details---post-tokens)| Pass your merchantAPIKey with scope = `openbanking_callback`|
|<span class="label label-info">POST</span>|[Forward Payment Callback](ob_paymentcallback.html)| In this mode as the callback/redirect from the ASPSP does not go directly to the Nuapay TPP, it is required to forward the details via this service; you must pass your `callbackAccessToken` and the `callbackParams`|
|<span class="label label-success">GET</span>|[Retrieve Payment Status](ob_retrievepayment.html)| Retrieve the status of the payment.|
|[<span class="label label-info">POST</span>](ob_partnerintegration.html#api-details---post-tokens)| [Access Token](ob_partnerintegration.html#api-details---post-tokens)| Pass your merchantAPIKey with scope = `openbanking_callback`|
|[<span class="label label-info">POST</span>](ob_paymentcallback.html#forward-payment-callback-endpoint)|[Forward Payment Callback](ob_paymentcallback.html#forward-payment-callback-endpoint)| In this mode as the callback/redirect from the ASPSP does not go directly to the Nuapay TPP, it is required to forward the details via this service; you must pass your `callbackAccessToken` and the `callbackParams`|
|[<span class="label label-success">GET</span>](ob_retrievepayment.html#retrieve-payment-endpoint)|[Retrieve Payment Status](ob_retrievepayment.html#retrieve-payment-endpoint)| Retrieve the status of the payment.|

For more details, see [Merchant Self-Hosted-Callback Payment Page Setup](ob_selfcallbackmerch.html).

Expand Down
Loading