Skip to main content

Add a merchant profile

Before your merchant can use Swan to accept payments from customers, you need to add a merchant profile.

Profile review

All new merchant profiles are reviewed by Swan. Swan might contact you for more information before accepting or rejecting the merchant profile.

Guide​

  1. Confirm your account meets the following prerequisites:
    • Account holder type: Company.
    • You have a project access token, or, if you're an account member, a user access token with CanManageAccountMembership permissions.
  2. Call the addMerchantProfile mutation.
  3. Include all mandatory information: accountId, merchantName, productType, expectedMonthlyPaymentVolume, and expectedAverageBasket.
  4. Add relevant payload and rejection details to your mutation.
  5. (Optional) Use merchantLogo to include a logo for your merchant. The image must be converted to a base64 encoded string.
  6. The new merchant is created with the status PendingReview.
  7. Swan reviews the new merchant profile and updates the status.

Mutation​

🔎 Open the mutation in API Explorer

mutation MerchantProfile {
addMerchantProfile(
input: {
accountId: "$YOUR_ACCOUNT_ID"
merchantName: "MyBrand Paper Goods"
productType: Goods
expectedMonthlyPaymentVolume: {
value: "3000"
currency: "EUR"
}
expectedAverageBasket: {
value: "50"
currency: "EUR"
}
}
) {
... on AddMerchantProfileSuccessPayload {
__typename
merchantProfile {
accountId
id
statusInfo {
status
... on EnabledMerchantProfileStatusInfo {
__typename
enabledAt
status
}
}
productType
}
}
... on ForbiddenRejection {
__typename
message
}
... on AccountNotFoundRejection {
id
message
}
... on InternalErrorRejection {
__typename
message
}
}
}

Payload​

The payload confirms your new merchant profile with the status PendingReview.

{
"data": {
"addMerchantProfile": {
"__typename": "AddMerchantProfileSuccessPayload",
"merchantProfile": {
"accountId": "$YOUR_ACCOUNT_ID",
"id": "$YOUR_MERCHANT_PROFILE_ID",
"statusInfo": {
"status": "PendingReview"
},
"productType": "Goods"
}
}
}
}