Connectors

/

DonorPerfect

/

Post DonorPerfect gifts to a Dynamics 365 Business Central journal
Write
Cross-Connector

Turn DonorPerfect gifts into a review-ready Business Central journal

For nonprofit accountants who want gift revenue in a Business Central journal without retyping or duplicates, by asking their AI assistant.

Try PopdockAI free
Get a live demo
Post DonorPerfect gifts to a Dynamics 365 Business Central journal
Put last week's DonorPerfect gifts into a Business Central general journal, balancing to account 1100.
64 cash gifts from 2026-09-28 to 2026-10-04 are ready for the journal. - Lines: 64 lines totalling 18,920, balanced to account 1100 - Already in Business Central: 3 gifts skipped by reference number - Unusable account: 1 gift on GL code 4999, which is blocked - Left out: pledges, soft credits and 2 gifts with no GL code Shall I create these 64 journal lines?
DonorPerfect
Sample figures. Your results come from your own account.
donorperfect-get-gift

On this page

The problem

The problem

The prompt

Who it's for

How it works

Tools used

Connector

DonorPerfect

DonorPerfect
Run it on your own DonorPerfect data.

Connect DonorPerfect, pick your AI tool and paste the prompt.

Try PopdockAI free

The problem

Retyped gift journals bring duplicates and blocked accounts

Getting gifts into Business Central usually means retyping them as journal lines, checking each GL code is valid and hoping none were entered last week. A duplicate or a line against a blocked account means rework.

Without PopdockAI

  • Export cash gifts from DonorPerfect
  • Retype them as journal lines
  • Check each GL code against the chart
  • Find duplicates after posting

With PopdockAI

  • Cash gifts are read, pledges and soft credits left out
  • Each gift is checked for an existing entry by reference
  • Each GL code is checked for a usable posting account
  • Lines are created after you confirm, never posted

The prompt

Use this prompt

Copy it into any AI tool connected to PopdockAI. Swap the values in braces for your own.

Prompt
**Objective:** Create one Business Central general journal line for each DonorPerfect cash gift dated `{from-date}` to `{to-date}` that is not already in Business Central, balanced against account `{balancing-account-number}`. Lines are staged in a journal for an accountant to review and post; this prompt never posts them.

**Step 1: Read the gifts in DonorPerfect**

Call `donorperfect-get-gift` with `gift-date.from` = `{from-date}` and `gift-date.to` = `{to-date}`. Raise `max-records` until the result stops growing. Keep record type G (gifts, including pledge payments) only. Drop pledge headers (P) and soft credits (S), and list any gift with a blank `gl-code` as "cannot stage: no GL code".

**Step 2: Check each gift is not already in Business Central**

Each gift is identified in Business Central by the document number DP-<gift-id>. For each gift:

* call `business-central-get-general-journal-line` with `document-number` = DP-<gift-id>, and
* call `business-central-get-general-ledger-entry` with `document-number` = DP-<gift-id>.

If either returns a row, the gift is already staged or posted. Mark it "skipped: already in Business Central" and do not create a line for it.

**Step 3: Check each GL code is a usable account**

For each distinct `gl-code` left, call `business-central-get-account` with `account-number` = that code. If the account is missing, blocked, not of type Posting, or has `direct-posting` false, mark its gifts "cannot stage: account <code> not usable" and leave them out.

**Step 4: Confirm with the user**

Show the plan before writing anything: the number of gifts to stage, their total, a summary by GL code, and every skipped or unstageable gift with its reason.

If `{journal-id}` is given, the lines go into that journal. If it is blank, propose creating a new journal with `business-central-create-journal` using code DP followed by `{to-date}` as YYMMDD, `display-name` "DonorPerfect gifts `{from-date}` to `{to-date}`", `template-display-name` GENERAL unless the user names another template, and `balancing-account-number` = `{balancing-account-number}`.

Ask the user to confirm. Do not continue without an explicit yes.

**Step 5: Create the lines**

If a new journal was agreed, call `business-central-create-journal` once and take `id` from the result as the journal id.

Then for each gift in the plan, call `business-central-create-journal-line` with:

* `journal-id` = the journal id
* `posting-date` = the gift's `gift-date`
* `document-number` = DP-<gift-id>
* `external-document-number` = the gift's `reference` when it has one
* `account-type` = G/L Account, `account-number` = the gift's `gl-code`
* `amount` = the gift's `amount` as a negative number (a credit to revenue)
* `balance-account-type` = G/L Account, or Bank Account if the user says `{balancing-account-number}` is a bank account; `balancing-account-number` = `{balancing-account-number}`
* `description` = "DonorPerfect gift <gift-id> donor <donor-id>", cut to 100 characters

Create lines one at a time. If a call fails, record the error against that gift and carry on with the next one.

**Step 6: Report**

A table of every gift: `gift-id`, `gift-date`, `donor-id`, `gl-code`, amount, outcome (staged with the new line `id`, skipped, cannot stage, or failed with the error). Then the journal id, the number of lines staged and their total. Remind the user that the journal still has to be reviewed and posted in Business Central.

**Rules & Guidelines:**

* `donorperfect-get-gift` is on the donorperfect server. `business-central-get-general-journal-line`, `business-central-get-general-ledger-entry`, `business-central-get-account`, `business-central-create-journal` and `business-central-create-journal-line` are on the business-central server.
* The only tools that may write are `business-central-create-journal` (at most once) and `business-central-create-journal-line`, and only after the user confirms in Step 4.
* Never change DonorPerfect. Do not call `donorperfect-save-gift` or any other donorperfect save or set tool.
* Do not call `business-central-update-journal-line`. A wrong line is fixed by the accountant in Business Central, not by this prompt.

**Validation:**

* If `{from-date}`, `{to-date}` or `{balancing-account-number}` is missing, ask for it.
* Call `business-central-get-account` on `{balancing-account-number}` before Step 4. If no account comes back, ask whether it is a bank account and check with `business-central-get-bank-account` using `bank-account-number`. If neither matches, stop.
* If more than 200 gifts qualify, stage the first 200 by `gift-date`, report the rest as "not staged: run again", and say so in the report.

Who it's for

One answer, three teams that use it

Nonprofit accountants

Skip retyping gifts

Gifts become journal lines with codes and duplicates already checked.

Create Business Central journal lines from this month's DonorPerfect gifts, balancing to 1100.

Controllers

Review before anything posts

The journal is never posted, so you stay in control.

Put DonorPerfect gifts from October 1 to 15 into a Business Central journal for my review.

Gift processors

See why gifts were skipped

Every skipped gift comes with its reason.

Which of last week's DonorPerfect gifts cannot go into a Business Central journal, and why?

How it works

What PopdockAI does when you ask

You give a date range and a balancing account and your AI assistant plans the journal lines. Lines are created only after you confirm, and the journal is left unposted for review.

01

Ask

You give a date range and a balancing account.

Your AI tool

02

Check

It reads cash gifts and checks each for an existing entry and a usable GL account.

donorperfect-get-gift

03

Confirm

You review the plan with every skipped gift and its reason.

No items found.

04

Create

It creates the journal lines, leaving the journal unposted.

Your AI tool

What PopdockAI provides

The tools behind the answer

Ready made tools for DonorPerfect and one secure connection to your AI tool. No code, no exports.

get-data

donorperfect-get-gift

Returns gift and pledge transactions from DonorPerfect, with amount, date, campaign, solicitation and GL codes, and the donor each one belongs to. Filter by donor, by date range or by campaign to build giving history and campaign totals.
Read only.Nothing in DonorPerfect Changes

This report is built from Get data tools only. PopdockAI applies the row, field and parameter rules your admin sets, and every query is written to the audit trail.

How Popdock AI secures your data

The outcome

A review-ready journal with no duplicates

Try PopdockAI free
Get a live demo

Related use cases

More ways to put this data to work

All Ramp use cases

One prompt template with infinite possibilities.

‍

Your AI assistant adapts its approach, tone, and capabilities to match each unique context while you maintain a single, manageable workflow.

Join forward-thinking companies that are transforming their operations with intelligent, secure AI automation.

Try PopdockAI Free
See Documentation