Workflow
Journey

Embedded Finance (PSD2)

Learn about our end to end PSD2 compliant customer journey from onboarding a customer through to completing their order. The PSD2 customer journey includes additional eKYC checks for the customer to complete before being onboarded for credit.

createApplication

The applicant enters their personal information into a blank application form and the request is sent, creating the application.

post

/v2/applications

verifyEmailAddress

Check the applicant’s email address exists, if this is false, it is still possible to continue with the acquisition journey.

post

/customers/supported-formats/email-address

verifyPhoneNumber

Check the applicant’s email address exists, if this is false, it is still possible to continue with the acquisition journey.

post

/customers/supported-formats/phone-number

checkEligibility

Complete a soft check on the applicant's eligibility once they have created an application. The response returned will define the next step in the customer journey, for this journey the possible states and substates are defined below. The retrieveSpendOptions endpoint can be called at this stage if offers are shown at the next stage.

post

/v2/applications/{id}/eligibility

updateApplicantInfo

Let the customer provide the additional information to complete a hard credit check.

patch

/v2/applications/{id}

requestDecision

Perform a hard check on the applicant’s credit history using the application identifier. The response returned will define the next step in the customer journey, for this journey the possible states and substates are defined below.

post

/v2/applications/{id}/decision

initiateOtp

Send a One-time Passcode (OTP) to the chosen phone type (mobile or landline) or email address or the respective phone number or email address held on the customer’s application or account (unless a phone number is provided in the request).

post

/v2/applications/{id}/kycauthentications/otp

verifyOtp

Call Validate OTP with the OTP the applicant providers to verify the code sent to the phone number or email address.

post

/v2/applications/{id}/kycauthentications/otp/{authId}/validate

initiatePennyDrop

Check the bank account matches the applicant, and if it does, 1p will be sent to the customer with a code as the reference.

post

/v2/applications/{id}/kycauthentications/pennydrop

verifyPennyDrop

Validate the applicant’s bank account by verifying the code they’ve provided against the code that was sent.

post

/v2/applications/{id}/kycauthentications/pennydrop/{authId}/validate

renderDocument

Retrieve and display an applicant’s Important Customer Information, Pre-contract Credit Information, and the Credit Agreement in HTML or PDF. This endpoint is called once per document that is retrieved.

get

/v2/applications/{id}/document/{documentType}

signature

An applicant will tick their e-signature and submitting this will confirm they have accepted the terms of their agreement. The response returned will define the next step in the customer journey, for this journey the possible states and substates are defined below.

post

/v2/applications/{id}/signature

createCustomer

Onboard the applicant as a customer and complete the credit acquisition process.

post

/v2/customers/{id}

retrieveSpendOptions

Retrieve and display the spend options available based on the customer or product.

get

/merchant/{customerRef}/spend-options

initiate

Check if eKYC checks are required for the customers purchase.

post

/merchant/{customerRef}/initiate

authorise

The customer will select a spend option and press checkout, this will trigger the authorisation request.

post

/merchant/{customerRef}/authorisation

settle

Once the customer has received their order, their order can be settled.

post

/merchant/{customerRef}/authorisation/{authorisationId}/settle

Request Example

Request

1curl --request POST \
2  --url https://dapi.stg-newdaytechnology.net/acquisition/v2/applications \
3  --header 'Device-Endpoint: SOME_STRING_VALUE' \
4  --header 'Device-Type: SOME_STRING_VALUE' \
5  --header 'Merchant-Id: SOME_STRING_VALUE' \
6  --header 'Session-Id: SOME_STRING_VALUE' \
7  --header 'content-type: application/json' \
8  --data '{"productId":"string","customerRef":"string","brand":"string","merchantId":"string","externalRef":"string","title":"mr","firstName":"string","middleNames":"string","lastName":"string","dateOfBirth":"2019-08-24T14:15:22Z","email":"strings","mobile":"string","homePhone":"string","currentAddress":{"flatNumber":"string","houseName":"string","houseNumber":"string","street":"string","district":"string","town":"string","postcode":"string","county":"string","country":"string","movedIn":"2019-08-24T14:15:22Z","timeAtAddress":"string"},"previousAddressOverseas":true,"previousAddress":{"flatNumber":"string","houseName":"string","houseNumber":"string","street":"string","district":"string","town":"string","postcode":"string","county":"string","country":"string","movedIn":"2019-08-24T14:15:22Z","timeAtAddress":"string"},"grossAnnualIncome":0.1,"otherHouseholdIncome":0.1,"accommodationCosts":0.1,"expenditureDependants":0.1,"expenditureEducationCost":0.1,"expenditureUtilitiesCost":0.1,"expenditureOtherCost":0.1,"financialSituation":"decline","dependants":7,"employmentStatus":"fullTime","employmentStartDate":"2019-08-24T14:15:22Z","employerName":"string","residentialStatus":"ownerOccupier","maritalStatus":"married","statementPreference":"eStatements","marketingConsent":{"email":true,"post":true,"sms":true,"phone":true,"online":true},"basketAmount":0.1,"basketRef":"string","loanAmount":0.1,"loanTerm":0,"dcmScore":9999,"marketingRef":"stringstringstringst","verificationId":"stringstri","applicantReferralId":"string","openBankingUserId":"stringstri","source":"other","channel":"Aggregators","kycEvidences":[{"type":"mobilePhoneOtp","status":"authenticated","creationDate":"2019-08-24T14:15:22Z"}],"assistedTransferData":{"flag":"1","urn":"string","primaryRecordIdentifier":"string","accountOpenDate":"2019-08-24T14:15:22Z","customerNameChanged":true,"customerConsentSubmitted":true,"customerDateOfBirthChanged":true,"customerAddressChanged":true,"physicalIdCheckCompleted":true,"physicalIdCheckDateCompleted":"2019-08-24T14:15:22Z","alternativeOtpCompleted":true,"pennyDropSkipped":true,"balanceTransferRequested":true,"consentCreditFraudChecks":true,"instoreCustomerApplicationConsent":true,"accessibilityRequirements":"braille","existingCreditLimit":0.1,"entryMethod":"openDoor","thirdPartyBusinessUnits":[{"businessUnit":"string","timeStamp":"2019-08-24T14:15:22Z"}],"longTermBTOffer":"0"},"employeeId":"string","storeId":"string","cashWithdrawalRequired":true,"cashWithdrawalAmount":0.1,"moneyTransferAmount":0.1,"balanceTransferRequired":true,"balanceTransferAmount":0.1,"chosenPaymentDayOfMonth":1,"checkoutIndicator":true,"nationalityDetails":{"nationality":"str","ukArrivalDate":"string","visaStatus":"string","visaExpiryDate":"string"},"merchantInformation":{"shippingAddress":{"title":"mr","firstName":"string","middleNames":"string","lastName":"string","address1":"string","address2":"string","town":"string","postcode":"string","county":"string","country":"string"}},"creditLimitIncreasePreference":"automatic","occupation":"string"}'

Response Example

Response

JSON

1{
2  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
3  "customerRef": "string",
4  "modifiedDate": "2019-08-24T14:15:22Z"
5}

Was this page helpful?