Skip to content

Commit 53fc5ed

Browse files
authored
Merge pull request #316 from swan-io/DOC-1024/merchant-doc-updates
DOC-1024 Merchant doc updates
2 parents bd13277 + f725951 commit 53fc5ed

File tree

4 files changed

+73
-34
lines changed

4 files changed

+73
-34
lines changed

docs/topics/merchants/index.mdx

Lines changed: 35 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,13 @@ import MerchantsDefinition from '../definitions/_merchants.mdx';
1010
1111
## Overview {#overview}
1212

13+
Merchants are users who want to accept payments by card, SEPA Direct Debit, Internal Direct Debit, or French checks, either directly from a payment link or an invoice.
14+
This includes contractors, healthcare professionals, artisans, and business owners, among others.
15+
1316
With a merchant profile and at least one active merchant payment method, you can help your merchants accept payments with Swan.
1417

1518
:::info Pending review
16-
Before accepting payments, you and your merchant need to complete a risk review.
19+
Before accepting payments, you need to complete a risk review.
1720
To get started, contact your dedicated Technical Account Manager, or send an email to [email protected].
1821
:::
1922

@@ -26,7 +29,8 @@ You might be contacted for more information before Swan accepts or rejects the r
2629

2730
To manage potential risk, if suspicious activity is detected, Swan can **change the status** of both **profiles and payment methods** to `Suspended` or `Rejected`.
2831
Swan can also reinstate a profile or payment method by changing the status to `Enabled`.
29-
Finally, if Swan assigns the status `Rejected` to a profile or payment method, the decision is final and can't be reversed.
32+
Finally, if Swan assigns the status `Rejected` to a profile or payment method, the decision is final and can't be reversed.
33+
The user must create a new request, which Swan will review as a separate submission.
3034

3135
### Webhooks {#webhooks}
3236

@@ -60,26 +64,39 @@ flowchart LR
6064
| Profile status | Explanation |
6165
|---|---|
6266
| `PendingReview` | Profile or payment method request or update was submitted and is pending a review by Swan.<br /><br />**Next steps**: <ul><li>If the request or update doesn't meet requirements or is deemed risky by Swan, the status moves directly to `Rejected`.</li><li>Otherwise, the status moves to `Enabled`.</li></ul> |
63-
| `Enabled` | Profile or payment method is active.<br /><br /><ul><li>Use `Enabled` merchant profiles to request payment methods and accept payments with activated payment methods.</li><li>Use `Enabled` payment methods to accept payments.</li><li>Updates to profiles and payment methods can only occur when they have the status `Enabled`.</li></ul> |
67+
| `Enabled` | Profile or payment method is active.<br /><br /><ul><li>Use `PendingReview` merchant profiles to request payment methods and accept payments with activated payment methods.</li><li>Use `Enabled` payment methods to accept payments.</li><li>Updates to profiles and payment methods can only occur when they have the status `Enabled`.</li></ul> |
6468
| `Suspended` | Status **assigned by Swan** when the merchant's use of their profile or payment method needs to be reviewed. The status can't return to `Enabled` without a review. |
6569
| `Rejected` | Final status **assigned by Swan** when Swan decides the risk of this profile or the risk of this payment method for the associated merchant is too high, or for some other risk-related reason. |
6670
| `Disabled` | Final status **set by you** using the `requestMerchantPaymentMethods` mutation. |
6771

6872
## Merchant profiles {#profiles}
6973

70-
A **merchant profile** is a collection of business, risk, and support information that fulfills two primary requirements: **approve the account holder** as a merchant, and **facilitate accepting payments** with Swan.
74+
A **merchant profile** is a collection of business, risk, and support information that fulfills two primary requirements:
75+
76+
1. **Approve the account holder** as a merchant.
77+
1. **Facilitate accepting payments** with Swan.
78+
79+
If a Swan account holder wants to accept payments from customers, they must have at least one merchant profile.
7180

72-
The merchant profile contains the following information:
81+
Your users can create merchant profiles during onboarding, but only if you've requested the feature for them.
82+
Since merchants are considered high risk, merchant profiles should only be requested for users who qualify and will accept payments.
83+
Requesting merchant profiles for users that don't qualify may create false expectations about available features.
7384

74-
- Business details
75-
- Description of the business activity
76-
- Link to the merchant's website
77-
- Projected volumes
78-
- Logo (optional), displayed online and on mandate PDFs
79-
- Accent color
85+
A merchant profile contains the following information:
8086

81-
A merchant profile is required of all Swan account holders wanting to accept payments from customers.
82-
If you want to accept payments from customers, you must have at least one merchant profile.
87+
1. Business details
88+
1. Description of the business activity
89+
1. Link to the merchant's website or social network
90+
1. Projected volumes
91+
1. Payment frequency
92+
1. Logo (optional), in `.png` format and less than 1 MB. It's shown online and on the PDF of the payment mandate.
93+
1. Accent color
94+
1. Customer region
95+
96+
:::tip
97+
To speed up **merchant profile enablement**, complete as many input fields as possible.
98+
Providing your `customerRegion`, `paymentFrequency`, and at least a `socialNetwork` or `merchantWebsite` can reduce turnaround time.
99+
:::
83100

84101
The merchant profile is created with the status `PendingReview`, and is visible right away on your Dashboard.
85102

@@ -94,7 +111,11 @@ Updating a merchant profile produces the following events:
94111
1. The [**merchant profile status**](#statuses) doesn't change, remaining `Enabled`. The merchant continues to use their merchant profile with the existing information.
95112
1. The **update status** is `PendingReview`. Swan reviews the new information to ensure it meets requirements.
96113
1. After Swan reviews and validates the update request, the update status changes to `Enabled` and the update is published to the merchant profile.
97-
1. If Swan rejects the update request, the merchant profile remains `Enabled`, but with the existing information. The update isn't published.
114+
1. If Swan rejects the update request, the merchant profile remains `Enabled` by default, unless Swan decides otherwise.
115+
The merchant profile status doesn't change.
116+
117+
When a merchant payment method is requested, Swan may ask for additional information even if the merchant profile is already `Enabled`.
118+
Swan will contact you or your user directly, based on your communication preferences.
98119

99120
If you requested an update and your update status is `PendingReview`, but you need to **make another change**, submit a new update request.
100121
Swan reviews both requests, but only the most recent is made public.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
:::info Webhook notification
22
Go to your **Dashboard** > **Developers** > **Webhooks** to subscribe to the `MerchantPaymentMethod` [webhook](../../../developers/using-api/webhooks.mdx) and receive a notification when the [status](../index.mdx#statuses) of your request changes.
3-
You'll be notified when changes are made to the rolling reserve and payment amount limit.
3+
You'll also be notified when changes are made to the rolling reserve and payment amount limit.
44
:::

docs/topics/merchants/profiles/guide-request.mdx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ Swan might contact you for more information before accepting or rejecting the me
2323
1. The new merchant is created with the status `PendingReview`.
2424
1. Swan [reviews the new merchant profile](../index.mdx#risk) and updates the status.
2525

26+
:::tip
27+
Provide your `customerRegion`, `paymentFrequency`, and at least one `socialNetwork` or `merchantWebsite` to speed up **merchant profile enablement**.
28+
:::
29+
2630
## Mutation {#mutation}
2731

2832
<a href="https://explorer.swan.io?query=bXV0YXRpb24gTWVyY2hhbnRQcm9maWxlIHsKICByZXF1ZXN0TWVyY2hhbnRQcm9maWxlKAogICAgaW5wdXQ6IHsKICAgICAgYWNjb3VudElkOiAiJFlPVVJfQUNDT1VOVF9JRCIKICAgICAgbWVyY2hhbnROYW1lOiAiTWVyY2hhbnQgQ29tcGFueSBOYW1lIgogICAgICBwcm9kdWN0VHlwZTogR29vZHMKICAgICAgZXhwZWN0ZWRNb250aGx5UGF5bWVudFZvbHVtZTogeyB2YWx1ZTogIjMwMDAiLCBjdXJyZW5jeTogIkVVUiIgfQogICAgICBleHBlY3RlZEF2ZXJhZ2VCYXNrZXQ6IHsgdmFsdWU6ICI1MCIsIGN1cnJlbmN5OiAiRVVSIiB9CiAgICB9CiAgKSB7CiAgICAuLi4gb24gUmVxdWVzdE1lcmNoYW50UHJvZmlsZVN1Y2Nlc3NQYXlsb2FkIHsKICAgICAgX190eXBlbmFtZQogICAgICBtZXJjaGFudFByb2ZpbGUgewogICAgICAgIGFjY291bnRJZAogICAgICAgIGlkCiAgICAgICAgc3RhdHVzSW5mbyB7CiAgICAgICAgICBzdGF0dXMKICAgICAgICAgIC4uLiBvbiBFbmFibGVkTWVyY2hhbnRQcm9maWxlU3RhdHVzSW5mbyB7CiAgICAgICAgICAgIF9fdHlwZW5hbWUKICAgICAgICAgICAgZW5hYmxlZEF0CiAgICAgICAgICAgIHN0YXR1cwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBwcm9kdWN0VHlwZQogICAgICB9CiAgICB9CiAgICAuLi4gb24gRm9yYmlkZGVuUmVqZWN0aW9uIHsKICAgICAgX190eXBlbmFtZQogICAgICBtZXNzYWdlCiAgICB9CiAgICAuLi4gb24gQWNjb3VudE5vdEZvdW5kUmVqZWN0aW9uIHsKICAgICAgaWQKICAgICAgbWVzc2FnZQogICAgfQogICAgLi4uIG9uIEludGVybmFsRXJyb3JSZWplY3Rpb24gewogICAgICBfX3R5cGVuYW1lCiAgICAgIG1lc3NhZ2UKICAgIH0KICAgIC4uLiBvbiBWYWxpZGF0aW9uUmVqZWN0aW9uIHsKICAgICAgX190eXBlbmFtZQogICAgICBtZXNzYWdlCiAgICAgIGZpZWxkcyB7CiAgICAgICAgY29kZQogICAgICAgIG1lc3NhZ2UKICAgICAgICBwYXRoCiAgICAgIH0KICAgIH0KICB9Cn0K&tab=api" className="explorer-badge">Open in API Explorer</a>

docs/topics/merchants/sandbox.mdx

Lines changed: 33 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,23 @@ When testing your integration, you might need to simulate certain events with th
1010

1111
### Simulate updating merchant profile status {#simulate-profile-status}
1212

13-
In Sandbox only, you need to update the merchant profile status to `Enabled`.
13+
In Sandbox, you need to update the merchant profile status to `Enabled`.
1414

1515
1. Open your Swan Dashboard.
1616
1. Go to **Developers** > **Event Simulator**.
17-
1. Go to **Merchant payments**.
17+
1. Go to **Merchant profiles**.
1818
1. Go to the tab to update the merchant profile status.
1919
1. Change the merchant profile status to `Enabled`.
2020

21+
:::info Testing API
22+
You can simulate enabling or updating a merchant profile using the `simulateMerchantProfileRequestOutcome` and `simulateMerchantProfileUpdateRequestOutcome` mutations in the Testing API.
23+
:::
24+
2125
## Merchant payment methods {#simulate-payment-method}
2226

2327
### Simulate updating merchant payment method status {#simulate-payment-method-status}
2428

25-
In Sandbox only, you need to update the merchant payment method status to `Enabled`.
29+
In Sandbox, you need to update the merchant payment method status to `Enabled`.
2630

2731
1. Open your Swan Dashboard.
2832
1. Go to **Developers** > **Event Simulator**.
@@ -32,32 +36,42 @@ In Sandbox only, you need to update the merchant payment method status to `Enabl
3236

3337
### Simulate enabling a payment method {#simulate-payment-method-enable}
3438

35-
You can also use the **Partner Testing API**.
39+
You can also use the **Testing API** to simulate updating a merchant payment method.
40+
41+
#### Guide {#guide}
42+
43+
1. Call the `simulateMerchantPaymentMethodRequestOutcome` mutation (line 2).
44+
1. Add the `merchantPaymentMethodId` (line 4).
45+
1. Add `merchantPaymentMethodStatus` and select `Enabled` (line 5).
46+
1. Select the payment method type you want to simulate, for example `SepaDirectDebitB2BMerchantPaymentMethod`. (line 8).
47+
1. Add relevant rejection details to your mutation (lines 11 and 14).
48+
49+
:::info Testing API
50+
Use the `simulateMerchantPaymentMethodUpdateRequestOutcome` mutation to simulate updating the merchant payment method.
51+
:::
3652

37-
- Line 4: Enter the corresponding `merchantProfileId`.
38-
- Line 5: Choose the `methodType` you'd like to simulate activating.
53+
#### Mutation {#mutation}
3954

40-
```graphql {4-5} showLineNumbers
55+
<a href="https://explorer.swan.io?query=bXV0YXRpb24gRW5hYmxlUGF5bWVudE1ldGhvZCB7CiAgc2ltdWxhdGVNZXJjaGFudFBheW1lbnRNZXRob2RSZXF1ZXN0T3V0Y29tZSgKICAgIGlucHV0OiB7CiAgICAgIG1lcmNoYW50UGF5bWVudE1ldGhvZElkOiAiJFlPVVJfUEFZTUVOVF9NRVRIT0RfSUQiCiAgICAgIG1lcmNoYW50UGF5bWVudE1ldGhvZFN0YXR1czogRW5hYmxlZAogICAgfQogICkgewogICAgLi4uIG9uIFNlcGFEaXJlY3REZWJpdEIyQk1lcmNoYW50UGF5bWVudE1ldGhvZCB7CiAgICAgIGlkCiAgICB9CiAgICAuLi4gb24gTm90Rm91bmRSZWplY3Rpb24gewogICAgICBtZXNzYWdlCiAgICB9CiAgICAuLi4gb24gTWVyY2hhbnRQYXltZW50TWV0aG9kV3JvbmdTdGF0dXNSZWplY3Rpb24gewogICAgICBfX3R5cGVuYW1lCiAgICAgIG1lc3NhZ2UKICAgIH0KICB9Cn0K&tab=test-api" className="explorer-badge">Open Testing API</a>
56+
57+
```graphql {2,4-5,8,11,14} showLineNumbers
4158
mutation EnablePaymentMethod {
42-
simulateUpdateMerchantProfile(
59+
simulateMerchantPaymentMethodRequestOutcome(
4360
input: {
44-
merchantProfileId: "$YOUR_MERCHANT_PROFILE_ID"
45-
merchantPaymentMethod: { methodType: $METHOD_TYPE, status: Enabled }
61+
merchantPaymentMethodId: "$YOUR_PAYMENT_METHOD_ID"
62+
merchantPaymentMethodStatus: Enabled
4663
}
4764
) {
48-
... on SimulateUpdateMerchantProfileSuccessPayload {
49-
__typename
65+
... on SepaDirectDebitB2BMerchantPaymentMethod {
66+
id
5067
}
5168
... on NotFoundRejection {
52-
id
69+
message
5370
}
54-
... on MerchantProfileWrongStatusRejection {
71+
... on MerchantPaymentMethodWrongStatusRejection {
5572
__typename
73+
message
5674
}
5775
}
5876
}
59-
```
60-
61-
:::caution SEPA Direct Debit
62-
For SEPA Direct Debit, you can *only* use the Partner Testing API to update the status of your payment methods.
63-
:::
77+
```

0 commit comments

Comments
 (0)