Skip to main content

Get Merchant

Endpoint​

GET /api/{merchantId}

Header parameters​

HeaderTypeRequiredDescription
Ocp-Apim-Subscription-KeystringYesYour PaySuite subscription key

Response parameters​

Status Code: 200 OK​

ParameterTypeDescription
merchantIduuidA unique identifier for the customer created by the Merchant API.
customerIdstringA unique identifier for the customer in the SoftCo product.
sessionIdstringA unique identifier to track the session.
creditRiskobjectObject containing the status of the credit risk assessment.
→ workflowRuntimeIdstringThe credit risk assessment identifier.
→ dataCaptureobjectObject contining the status of the credit risk data capture.
    → statusstringThe status of the credit risk data capture. This will return values Pending or Complete.
    → updatedDatedateTimeThe date and time of last modification.
→ craobjectObject contining the status of the credit risk assessment.
    → statusstringThe status of the credit risk data capture. This will return values Pending, Approved or Rejected.
    → updatedDatedateTimeThe date and time of last updated.
stripeobjectObject containing the status of Stripe KYC.
→ connectAccountIdstringThe Stripe Connect identifier for the customer. This will be required during payment processing.
→ dataCaptureobjectObject contining the status of the KYC data capture.
    → statusstringThe status of the KYC data capture. This will return values Pending or Complete.

Note, ongoing verification can trigger a change to the status that requires further action to provide updated information.
    → updatedDatedateTimeThe date and time of last updated.
→ kycobjectObject contining the status of the KYC check.
    → statusstringThe status of the KYC check. This will return values Pending, Active or Inactive.

Note, the status can also return a null. This should be treated the same as Pending.
    → updatedDatedateTimeThe date and time of last updated.
    → paymentsEnabledbooleanIndicates whether payments are enabled to be processed for the customer.
    → payoutsEnabledbooleanIndicates whether payouts are enabled for funds to be settled into the customers account.

Payload example​

{
"merchantId": "e4f585be-5705-4e41-985e-4c0af3099887",
"customerId": "customer_123",
"sessionId": "66c0df2ec03d8a3b582e615b83274816",
"creditRisk": {
"merchantId": "cmcx47znh01wyob0k3skac3t4",
"dataCapture": {
"status": "Complete",
"updatedDate": "2025-07-10T08:41:05.8070869"
},
"cra": {
"status": "Approved",
"updatedDate": "2025-07-10T08:41:05.8070889"
}
},
"stripe": {
"connectAccountId": "acct_12345",
"dataCapture": {
"status": "Complete",
"updatedDate": "2025-07-10T08:41:26.0475293"
},
"kyc": {
"status": "Active",
"updatedDate": "2025-07-10T08:41:26.0475299",
"paymentsEnabled": true,
"payoutsEnabled": true
}
}
}

Payload statuses​

Credit Risk Data Capture Status​

The creditRisk.dataCapture.status field can contain the following values.

StatusDescription
PendingCredit risk information has not yet been completed
CompleteCredit risk information has been fully captured

Credit Risk Assessment Status​

The creditRisk.cra.status field can contain the following values.

StatusDescription
PendingCredit risk assessment not yet performed
ApprovedCredit risk assessment approved
RejectedCredit risk assessment rejected

Credit Risk Status Combination Interpretation​

The overall credit risk state is determined by the combination of creditRisk.dataCapture.status and creditRisk.cra.status.

creditRisk.dataCapture.statuscreditRisk.cra.statusDescription
PendingPendingInformation not yet filled in
CompletePendingWaiting for credit risk assessment
CompleteApprovedCredit risk assessment approved
CompleteRejectedCredit risk assessment rejected

Note: creditRisk.cra.status should only transition to Approved or Rejected once creditRisk.dataCapture.status is Complete.

Stripe Data Capture Status​

The stripe.dataCapture.status field can contain the following values.

StatusDescription
PendingStripe data capture not started or not completed
CompleteStripe data capture completed

Stripe KYC Status​

The stripe.kyc.status field can contain the following values.

StatusDescription
Pending or nullKYC verification not yet completed
ActiveThe account is active for payment processing and payouts
InactiveThe account is not active for payment processing

Payload handling​

The SoftCo product should handle the webhook payload as follows. The data returned will help to answer the following questions.

Is data capture pending?​

When a customer begins onboarding, the status of data capture will be Pending, indicating that the customer must provide information before payment processing can be enabled.

There are two data capture status fields that indicate the stage of onboarding

  • creditRisk.dataCapture.status
  • stripe.dataCapture.status

If either field is Pending, then the SoftCo product must perform an API request to the PUT endpoint. The response will return the next action to be performed in order to complete data capture.

If both fields are Complete, then no further information is required from the customer at this stage. Note: the status may change later.

Are payments enabled?​

Before enabling payment processing in the SoftCo product for the customer, the status of credit risk assessment and know-your-customer must be verified.

The following fields will indicate the statuses

  • creditRisk.cra.status - must be Approved
  • stripe.kyc.status - must be Active

If both fields are not as set as above, then payments must be prevented.

Is the customer rejected?​

On some occasions, the risk of onboarding a customer may be too high and therefore rejected from onboarding onto the platform.

The following fields will indicate the status

  • creditRisk.cra.status - must be Rejected

There will be no further indication identifying the reason for rejection. This will be communicated to the customer via Risk & Compliance.

Timestamp Format​

All timestamps use ISO 8601 format with UTC timezone:

  • Format: YYYY-MM-DDTHH:mm:ssZ
  • Example: 2024-01-16T14:30:00Z