Sarraf API
    Preparing search index...

    Interface FakeProvider<Id>

    interface FakeProvider<Id extends ProviderId> {
        capabilities: Capabilities;
        id: Id;
        payments: Map<string, Payment>;
        attach?(ctx: Ctx): void;
        cancel?(lookup: PaymentLookup, ctx: Ctx): Promise<Payment>;
        capture?(input: CaptureInput, ctx: Ctx): Promise<Payment>;
        createCheckout(input: CreateCheckoutInput<Id>, ctx: Ctx): Promise<Checkout>;
        getPayment(lookup: PaymentLookup, ctx: Ctx): Promise<Payment>;
        inspectWebhook(
            req: RawWebhookRequest,
            ctx: Ctx,
        ): Promise<WebhookInspection>;
        parseWebhook(verified: VerifiedWebhook, ctx: Ctx): Promise<SarrafEvent>;
        refund?(input: RefundInput, ctx: Ctx): Promise<Refund>;
        simulate(reference: string, status: PaymentStatus): RawWebhookRequest;
        verifyRedirect?(
            query: Record<string, string>,
            ctx: Ctx,
        ): Promise<RedirectResult>;
        verifyWebhook(req: RawWebhookRequest, ctx: Ctx): Promise<VerifiedWebhook>;
    }

    Type Parameters

    • Id extends ProviderId

    Hierarchy

    • PaymentProvider<Id>
      • FakeProvider
    Index
    capabilities: Capabilities
    id: Id
    payments: Map<string, Payment>
    • Called once by Sarraf with its context, for adapters that expose extra APIs.

      Parameters

      • ctx: Ctx

      Returns void

    • Void a same-day payment or cancel an unpaid reference code.

      Parameters

      • lookup: PaymentLookup
      • ctx: Ctx

      Returns Promise<Payment>

    • Capture an authorized payment, fully or partially.

      Parameters

      • input: CaptureInput
      • ctx: Ctx

      Returns Promise<Payment>

    • Parameters

      • input: CreateCheckoutInput<Id>
      • ctx: Ctx

      Returns Promise<Checkout>

    • Parameters

      • lookup: PaymentLookup
      • ctx: Ctx

      Returns Promise<Payment>

    • Parameters

      • req: RawWebhookRequest
      • ctx: Ctx

      Returns Promise<WebhookInspection>

    • Parameters

      • verified: VerifiedWebhook
      • ctx: Ctx

      Returns Promise<SarrafEvent>

    • Parameters

      • input: RefundInput
      • ctx: Ctx

      Returns Promise<Refund>

    • Move a payment to status and return a signed webhook request for it.

      Parameters

      • reference: string
      • status: PaymentStatus

      Returns RawWebhookRequest

    • Parameters

      • query: Record<string, string>
      • ctx: Ctx

      Returns Promise<RedirectResult>

    • Throws WEBHOOK_SIGNATURE_INVALID when the signature does not match.

      Parameters

      • req: RawWebhookRequest
      • ctx: Ctx

      Returns Promise<VerifiedWebhook>