Capture a payment
Capture is the operation that moves the money from the customer's account to the merchant's account. This can take a few days, depending on your bank.
There are two types of capture: full capture or partial capture. With full capture, you capture the entire amount owed. This is the default capture method supported when initiating transactions over the ePayment API.
With partial capture, you have the option to capture portions of the total amount multiple times until the entire balance is fully captured. Please note that this feature may be enabled differently depending on the country. See Partial capture for more details.
You should capture as soon as is legally possible, because some banks will release the funds after some days, making it difficult to capture later. If it's not captured within the payment capture deadlines, it will be automatically cancelled.
However, be aware that it isn't legal to capture before the product or service is provided to the customer, as per the capture regulations.
If you don't plan to capture the entire amount, please make sure to cancel the remainder as soon as possible.
For everything about capturing payments, including deadlines, regulations, and credit card considerations, see Knowledge base: Reserve and Capture.
Full capture
Once the goods or services are delivered or on their way to the customer, it's time to capture the payment.
Capture is done with a
POST:/epayment/v1/payments/{reference}/capture
request.
An example request body:
{
"modificationAmount":{
"currency":"NOK",
"value":49900
}
}
In the response, the aggregate
object will be updated to reflect the capture, for example:
{
"aggregate":{
"authorizedAmount":{
"currency":"NOK",
"value":49900
},
"cancelledAmount":{
"currency":"NOK",
"value":0
},
"capturedAmount":{
"currency":"NOK",
"value":49900
},
"refundedAmount":{
"currency":"NOK",
"value":0
}
}
}
A notification will also be sent once the capture is completed if a
webhook is registered for the event epayments.payment.captured.v1
.
Partial capture
Partial capture through the ePayment API must be enabled for Finnish and Danish sales units. If you need partial capture for your Finnish or Danish sales unit, inquire during onboarding or contact customer service.
Alternatively, you can use the Checkout API which automatically enables you to carry out partial captures without the need for prior approval. In this scenario, create a checkout session to initiate your payment, and do multiple partial captures for this payment using the ePayment API capture endpoint.
It is your responsibility to release any funds you will not charge, as soon as possible. Cancelling the remainder of a reserved payment will benefit the customer, who will then have the amount available for other purposes.
With the partial capture feature, you can capture part of the amount owed, instead of the full amount. This can be done multiple times until the authorized amount has been captured.
Specify the amount in the
POST:/epayment/v1/payments/{reference}/capture
request.
The Idempotency-Key
header is required to ensure that only one operation is done for the same API request.
An example of a partial capture request body (capturing 100.00 NOK of the 499.00 NOK reserved):
{
"modificationAmount":{
"currency":"NOK",
"value":10000
}
}
Once the capture is completed the aggregate
will be updated to reflect this, for example:
{
"aggregate":{
"authorizedAmount":{
"currency":"NOK",
"value":49900
},
"cancelledAmount":{
"currency":"NOK",
"value":0
},
"capturedAmount":{
"currency":"NOK",
"value":10000
},
"refundedAmount":{
"currency":"NOK",
"value":0
}
}
}
Capture regulations
According to regulations, you must not capture a payment until the product or service is provided to the customer.
For more details, see Knowledge base: Capture regulations.
Payment capture deadlines
If payments are not captured within the below time limits, they will be automatically cancelled.
Attempting to handle an older payment will result in HTTP 400 Bad Request - Cannot capture because the payment's capture period has passed
.
In Norway, the time limit for capturing payments is 180 days. Be aware: Credit card payment deadlines may vary.
In Denmark and Finland, the time limit for capturing payments is 14 days. If you require more time, contact your KAM or customer service. You may also consider using Checkout which can provide the possibility for later captures.
Late capture for MobilePay sales units
This is feature must be approved for your sales unit on a case-by-case basis, and it requires a legitimate need for it to run your business. The typical scenario is for online retail, where goods are delivered later (for example, when the product is not in stock), and for this reason, capture must also be done later.
Contact your KAM or customer service.
We cannot guarantee successful captures from 15 to 180 days after reservation, so there is chance of a failed capture, for example in the case of insufficient funds, expired cards, etc. See: Card payment deadlines may vary.
Rate limiting
For rate limiting questions, see: Rate limiting.