Skip to main content

Request card payment method

Before you can accept payments with cards, you need to request and be approved for the payment method. You can request several payment methods with the same API call.

Payment method review

All new merchant payment methods are reviewed by Swan. Swan might contact you for more information before accepting or rejecting the payment method.

Guide​

  1. Confirm you have a project access token, or, if you're an account member, a user access token with CanManageAccountMembership user rights.
  2. Call the requestMerchantPaymentMethods mutation. You can request a payment method regardless of the status of the merchant profile.
  3. Set card activate to true.
  4. The new merchant payment method is created with the status PendingReview and the version number 1.
  5. Swan reviews the new merchant payment method and updates the status.
Webhook notification

Go to your Dashboard > Developers > Webhooks to subscribe to the MerchantProfile.updated webhook and receive a notification when the status of your request changes.

Mutation​

🔎 Open the mutation in API Explorer

mutation RequestCards {
requestMerchantPaymentMethods(
input: {
merchantProfileId: "$YOUR _MERCHANT_PROFILE_ID"
card: { activate: true }
}
) {
... on RequestMerchantPaymentMethodsSuccessPayload {
__typename
merchantProfile {
merchantPaymentMethods {
methodId
... on CardMerchantPaymentMethod {
methodId
paymentAmountLimit {
currency
value
}
rollingReserve {
percentage
rollingDays
}
type
statusInfo {
status
}
}
}
}
}
... on ForbiddenRejection {
__typename
message
}
... on ValidationRejection {
__typename
message
}
... on InternalErrorRejection {
__typename
message
}
... on NotFoundRejection {
id
message
}
... on InvalidPaymentMethodRequestRejection {
__typename
message
paymentMethods {
code
id
message
type
}
}
}
}

Payload​

The payload confirms that the payment method Card was requested successfully with the status Enabled.

{
"data": {
"requestMerchantPaymentMethods": {
"__typename": "RequestMerchantPaymentMethodsSuccessPayload",
"merchantProfile": {
"merchantPaymentMethods": [
{
"methodId": "$PAYMENT_METHOD_ID",
"paymentAmountLimit": {
"currency": "EUR",
"value": "150"
},
"rollingReserve": {
"percentage": "100",
"rollingDays": "5"
},
"type": "Card",
"statusInfo": {
"status": "Enabled"
}
}
]
}
}
}
}