API reference · Getting paid

Collection payment

POST Capture an authorised card payment

POST /collection/attempt/{reference}/capture

Moves the money the authorisation reserved. Capturing less than was authorised is ordinary - a part-shipped order - and the difference simply lapses with the authorisation. Capturing more is refused: the payer agreed to an amount, and a capture that exceeds it is a charge they never approved. The receipt, and so the collector's settlement clock, starts here rather than at authorisation, because an authorisation is a promise and a capture is money.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference

Example

Request body: CaptureAttemptRequest · Response: GenericResponseCollectionAttemptResponse

curl -X POST "https://api.bridgemoni.com/collection/attempt/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/capture" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
  "amount": "string"
}'

Responses

StatusWhen
200Card payment captured successfully

POST Void an authorisation that will not be captured

POST /collection/attempt/{reference}/void

Releases the hold on the payer's line before any money moves. Only available while the authorisation is uncaptured - once captured there is a receipt, and undoing a receipt is a refund, which leaves a different and visible record. Refusing to let a void stand in for a refund is what keeps the two distinguishable in the ledger a year later.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Content-Typeapplication/json

Path parameters

Name
reference

Example

Request body: VoidAttemptRequest · Response: GenericResponseCollectionAttemptResponse

curl -X POST "https://api.bridgemoni.com/collection/attempt/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/void" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Content-Type: application/json" \
  -d '{
  "reason": "string"
}'

Responses

StatusWhen
200Authorisation voided successfully

POST Pay a collection request from your Bridge wallet

POST /collection/{reference}/pay/wallet

One synchronous atomic posting. For an EXACT request the amount comes from the request and any amount in the body is refused rather than silently corrected - a checkout that accepts an amount from the client is a self-service discount. Idempotent on the Idempotency-Key header, namespaced by you, so another caller cannot collide with your key.

Headers

NameNotes
AuthorizationBearer token
X-TenantYour tenant
X-Environmenttest or live
Idempotency-KeyReuse the same value on every retry of this request
Content-Typeapplication/json

Path parameters

Name
reference

Example

Request body: WalletPaymentRequest · Response: GenericResponseCollectionPaymentResponse

curl -X POST "https://api.bridgemoni.com/collection/b3f1c2d4-5e6a-4b7c-8d9e-0f1a2b3c4d5e/pay/wallet" \
  -H "Authorization: Bearer $BRIDGEMONI_TOKEN" \
  -H "X-Tenant: $BRIDGEMONI_TENANT" \
  -H "X-Environment: $BRIDGEMONI_ENV" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
  "termsHash": "string",
  "sourceAccountNumber": "string"
}'

Responses

StatusWhen
200Collection paid successfully

Generated from the OpenAPI document. Branch on the HTTP status: there is no machine-readable error code on the wire. Errors