Payment links

Create payment links with Moov to collect from cards, bank accounts, or Apple Pay. Payouts coming soon.

Create a payment link from the API or the Dashboard that you can send to merchants through your chosen form of communication, such as email or SMS. Use the generated payment link code to create a QR code for in-person payments. You can use payment links to accept a payment.

The payment link flow authenticates a session that lets your customers securely create a Moov account and link payment methods before submitting payment through the link or QR code.

Payment methods

To accept a payment, you can choose any or all of the following payment methods:

  • Apple Pay
  • Card
  • ACH debit collect

Payout payment links are coming soon

In the future, to send a payment, you’ll be able to choose any or all of the following payment methods:

  • Push to card
  • RTP credit
  • ACH credit same day
  • ACH credit standard

Brand settings

Moov offers light and dark mode brand settings, which you can set in the Dashboard or with the API. Colors you select for light and dark modes will be used as accent colors throughout the customer’s user experience, including the payment link UI.

When creating a payment link, you’re required to provide your partner ID, the merchant’s payment method ID and the payment amount. You have the option to require other data such as customer address or phone number, metadata, and a custom dynamic descriptor for the statement. You can also set an expiration date and limit on the amount of times a payment link can be used.

Once a payment link is created, you’ll receive a sharable URL and QR code. The URL will be in the following format: https://moov.money/{unique-payment-link}. URLs and QR codes can be found again in the Dashboard by navigating to Transfers > Payment links.

Limit the amount of times a payment link can be used with the maxUses field. By setting maxUses to 0, there is no limit on the amount of times the link can be used.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
curl -X POST "https://api.moov.io/accounts/{accountID}/payment-links" \
  -H "Authorization: Bearer {token}" \
  --data-raw '{
    "partnerAccountID": "c197cd40-7745-4413-8f3b-ec962d1b5225",
    "merchantPaymentMethodID": "3afc7533-7095-43bb-b21a-5c4dc5568451",
    "amount": {
      "currency": "USD",
      "value": 1204
    },
    "maxUses": 0,
    "expiresOn": "2025-08-24T14:15:22Z",
    "display": {
      "title": "string",
      "description": "string",
      "callToAction": "pay"
    },
    "customer": {
      "requireAddress": true,
      "requirePhone": true,
      "metadata": {
        "property1": "string",
        "property2": "string"
      }
    },
    "payment": {
      "allowedMethods": [
        "apple-pay",
        "card-payment",
        "ach-debit-collect"
      ],
      "cardDetails": {
        "dynamicDescriptor": "WhlBdy *Yoga 11-12"
      },
      "achDetails": {
        "companyEntryDescription": "Gym Dues",
        "originatingCompanyName": "Whole Body Fit"
      }
    }
  }'\

To limit the number of payments, require a phone number or address, add an expiration date, or save payment details for future use, open the Advanced settings.

Create payment link

Once a payment link is created, you can manage it through the API or the Dashboard. You can list all created payment links, find a specific one, update it, or disable it.

List

View a list of all payment links.

To list all payment links for an account, pass the accountID.

1
2
curl -X GET "https://api.moov.io/accounts/{accountID}/payment-links" \
  -H "Authorization: Bearer {token}" \

Navigate to Transfers > Payment links in the Dashboard to view all payment links.

List payment links

Get

View an individual payment link.

To retrieve a specific payment link for an account, pass the accountID and paymentLinkCode. The payment link code is provided in the initial POSTresponse when created a payment link. You can use the list payment link endpoint to retrieve all payment links and their payment link codes.

1
2
curl -X GET "https://api.moov.io/accounts/{accountID}/payment-links/{paymentLinkCode}" \
  -H "Authorization: Bearer {token}" \

Navigate to Transfers > Payment links in the Dashboard and select a specific link to view details. Use the filter options to search by status (paid, active, expired) or by date.

Get payment links

Update

You have the ability to update certain properties of payment links. You can update the amount, expiration date, display options, customer data, as well as payment and payout options.

To update a payment link, pass the accountID and paymentLinkCode.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
curl -X PATCH "https://api.moov.io/accounts/{accountID}/payment-links/{paymentLinkCode}" \
  -H "Authorization: Bearer {token}" \
  --data-raw '{
    "amount": {
      "currency": "USD",
      "value": 1204
    },
    "expiresOn": "2025-08-24T14:15:22Z",
    "display": {
      "title": "string",
      "description": "string",
      "callToAction": "pay"
    },
    "customer": {
      "requireAddress": true,
      "requirePhone": true,
      "metadata": {
        "property1": "string",
        "property2": "string"
      }
    },
    "payment": {
      "allowedMethods": [
        "apple-pay"
      ],
      "cardDetails": {
        "dynamicDescriptor": "WhlBdy *Yoga 11-12"
      },
      "achDetails": {
        "companyEntryDescription": "Gym Dues",
        "originatingCompanyName": "Whole Body Fit"
      }
    }
  }'\

Navigate to Transfers > Payment links in the Dashboard. Use the ellipsis menu on the main payment links page to edit the details of a payment link. In the individual payment link view, you can also click the More actions button to edit the details of a payment link.

Edit or delete payment links

Disable

You can disable (delete) a payment link at any time. Customers will receive an error page if they try and access a disabled payment link.

To delete (disable) a payment link, pass the accountID and paymentLinkCode.

1
2
curl -X DELETE "https://api.moov.io/accounts/{accountID}/payment-links/{paymentLinkCode}" \
  -H "Authorization: Bearer {token}" \

Navigate to Transfers > Payment links in the Dashboard. Use the ellipsis menu on the main payment links page to disable the payment link. In the individual payment link view, you can also click the More actions button to disable the payment link.

Edit or delete payment links

Get generated QR code

To facilitate in-person payments, you have the ability to generate a QR code for a customer to use.

To generate a QR code, pass the accountID and paymentLinkCode.

1
2
curl -X GET "https://api.moov.io/accounts/{accountID}/payment-links/{paymentLinkCode}/qrcode" \
  -H "Authorization: Bearer {token}" \

A QR code will automatically be generated when creating a payment link through the Dashboard. You can copy it immediately, or find it on the main payment link view by clicking on the QR code icon, or on the individual view by clicking the View QR code button.

Create payment link

Summary Beta