구글 워크스페이스를 활용한 전자결재 시스템 간단 구축 방법
목차
결재 흐름도 자동화가 되어야 조직이 움직인다
Google Forms 기반 결재 요청 시스템 설계
승인 처리부터 PDF 저장까지 자동화 구성
결재 시스템은 복잡하지 않아도 완전할 수 있다
결재 흐름도 자동화가 되어야 조직이 움직인다
:결재 흐름도 간단하고 일관되게 자동화되어야 한다
중소기업이나 스타트업에서는 전자결재 시스템이 별도로 없는 경우가 많다.
회식비, 출장비, 보고서 승인 등 다양한 결재 요청이 이메일이나 메신저로 이루어지고, 상급자 승인이 누락되거나 뒤늦게 확인되는 일이 빈번하다.
이로 인해 비용 처리나 업무 승인 과정에서 혼선이 발생하고, 기록도 남지 않아 나중에 문제가 될 소지가 생긴다.
하지만 별도 결재 솔루션을 도입하기엔 예산이나 복잡도 측면에서 부담이 크고, 기존 Google Workspace 환경과도 연동이 어렵다.
이럴 때 가장 현실적인 해법은 Google Workspace 기반의 결재 시스템을 구성하는 것이다.
Google Forms, Sheets, Gmail, Apps Script만으로도 단계별 결재 흐름과 자동 승인 통보 시스템을 갖춘 전자결재 구조를 구축할 수 있다.
이번 글에서는 실무자가 손쉽게 도입할 수 있는 방식으로, Google 도구를 활용한 전자결재 시스템을 단계별로 설계하고 자동화하는 방법을 구체적으로 소개한다.
Google Forms 기반 결재 요청 시스템 설계
:Google Forms 기반 결재 요청 흐름 설계
전자결재 시스템은 ‘요청 → 승인 → 기록 → 통보’라는 흐름을 따라야 한다.
이를 위해 가장 먼저, 요청을 수집할 수 있는 표준화된 Google Forms 양식을 설계하고, 해당 데이터를 Google Sheets에 저장한다.
a. Google Forms 구성
제목: 전자결재 요청서
필수 항목:
요청자 이름
부서
이메일
요청 유형 (드롭다운): 지출, 출장, 회의 승인, 문서 결재 등
상세 내용
결재 금액 (선택)
첨부파일 (Drive 링크 or 이미지 첨부)
결재자 이메일 주소
제출 시 자동 응답 기록
b. Google Sheets 연동 구조
시트명: 전자결재_접수현황
자동 입력 열 외에 다음 항목 추가:
승인 상태 (대기 / 승인 / 반려)
결재 일자
결재자 메모
알림 전송 여부 (Y/N)
c. 자동 승인 요청 메일 발송 Apps Script
javascript
복사
편집
function sendApprovalRequest() {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("전자결재_접수현황");
const data = sheet.getDataRange().getValues();
for (let i = 1; i < data.length; i++) {
const status = data[i][7]; // 승인 상태
const notified = data[i][10]; // 알림 여부
const approverEmail = data[i][6]; // 결재자 이메일
if (status === "대기" && notified !== "Y") {
const requester = data[i][0];
const content = data[i][4];
const subject = `[전자결재 요청] ${requester}님의 요청입니다`;
const body = `내용: ${content}\n승인 또는 반려 여부를 Google Sheet에서 입력해주세요.`;
MailApp.sendEmail(approverEmail, subject, body);
sheet.getRange(i + 1, 11).setValue("Y");
}
}
}
트리거 설정: 5분마다 실행 또는 신규 응답 시 실행
결재자는 Google Sheets에서 승인 상태를 직접 변경
이 구조만으로도 별도 솔루션 없이 ‘요청 → 승인 요청 메일 → 결재자 승인’이라는 기본 전자결재 흐름이 자동화된다.
승인 처리부터 PDF 저장까지 자동화 구성
:승인 후 처리, 기록, 알림까지 완전 자동화 구성
요청이 승인되었을 때 사후 처리까지 자동화되어야 업무의 흐름이 매끄럽고, 실질적인 전자결재 시스템으로 기능할 수 있다.
a. 승인 결과 알림 자동화
javascript
복사
편집
function notifyApprovalResult() {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("전자결재_접수현황");
const data = sheet.getDataRange().getValues();
for (let i = 1; i < data.length; i++) {
const status = data[i][7];
const resultSent = data[i][12];
const requesterEmail = data[i][2];
if ((status === "승인" || status === "반려") && resultSent !== "Y") {
const subject = `[전자결재 ${status}] 요청 결과 알림`;
const body = `귀하의 요청이 ${status} 처리되었습니다.\nGoogle Sheets에서 상세 내역을 확인하세요.`;
MailApp.sendEmail(requesterEmail, subject, body);
sheet.getRange(i + 1, 13).setValue("Y");
}
}
}
승인 또는 반려 상태로 변경되면 자동 알림
관리자도 참조(Cc)로 알림 받을 수 있도록 설정 가능
b. 결재 문서 PDF 자동 저장
요청 내용을 기반으로 Docs 문서 자동 생성 → PDF 변환 → Drive에 보관
향후 회계팀 제출이나 근거 기록용으로 활용 가능
javascript
복사
편집
function generateApprovalPdf() {
// Docs 템플릿 복사, 텍스트 치환, PDF 저장 등 기존 방식 동일
}
c. 승인 요청 이력 대시보드 구성
Google Sheets에 피벗 테이블 및 필터로 대시보드 구성
부서별 승인률
승인 평균 소요시간
지출 항목 분류 및 금액 합계
Looker Studio 연동 가능 (PDF 보고용)
d. 결재 마감 알림 기능
결재자가 3일 이상 승인하지 않을 경우 리마인드 메일 발송
javascript
복사
편집
if (경과일수 > 3 && 상태 === "대기") {
MailApp.sendEmail(결재자, "결재 요청 미처리 알림", "다음 결재 요청이 3일간 미처리 상태입니다.");
}
e. 보안 설정 및 관리 팁
Google Drive 문서 공유 권한 최소화 (내부 도메인 제한)
문서 생성 후 승인된 항목만 별도 Drive 폴더로 이동
결재 양식과 문서 수정 이력은 자동 기록 → 증빙 보존 가능
이런 자동화 구조를 통해 ‘결재 요청부터 승인, 알림, PDF 저장, 기록 관리’까지 완결된 전자결재 시스템을 구성할 수 있다.
결재 시스템은 복잡하지 않아도 완전할 수 있다
:결재 시스템도 관리보다 흐름이 중요하다
전자결재 시스템이 없는 조직에서는 메일, 메신저, 말로 요청이 오가고, 누가 언제 승인했는지 기록조차 남지 않는다.
Google Workspace를 활용하면 추가 솔루션 없이도 효율적인 결재 흐름을 만들 수 있으며, Apps Script를 통해 조직 맞춤형 결재 시스템을 자유롭게 설계하고 자동화할 수 있다.
결재는 단순한 승인 절차가 아니라, 업무의 흐름과 책임의 근거가 되어야 한다.
오늘부터 Google Forms로 결재 요청을 받아보고, 승인 메일을 자동 발송하고, PDF 문서로 기록을 남겨보자.
그 작은 시작이 결국 수작업이 없는 결재 문화와 체계적인 업무 기록으로 이어질 수 있다.